v0.10
v0.10.10
Improvements
- Change
Response.StatusCode
property type toHttpStatusCode
VerifySent
now haveallowErrorResponse
parameter as optionalMockMe.TheClient<T>
can now set response with onlystatusCode
parameter
Bugfixes
VerifySent
was throwing key not found exception when header key was not present, fixed
Library Upgrades
Package | Old Version | New Version |
---|---|---|
Microsoft.AspNetCore.Mvc.NewtonsoftJson | 8.0.7 | 8.0.8 |
Microsoft.AspNetCore.Mvc.Testing | 8.0.6 | 8.0.8 |
Microsoft.CodeAnalysis.CSharp | 4.10.0 | 4.11.0 |
Microsoft.Data.Sqlite.Core | 8.0.7 | 8.0.8 |
Microsoft.Extensions.TimeProvider.Testing | 8.7.0 | 8.8.0 |
Microsoft.NET.Test.Sdk | 17.10.0 | 17.11.0 |
NUnit | 4.1.0 | 4.2.1 |
NUnit3TestAdapter | 4.5.0 | 4.6.0 |
SQLitePCLRaw.bundle_e_sqlite3 | 2.1.8 | 2.1.9 |
Swashbuckle.AspNetCore | 6.6.2 | 6.7.1 |
Swashbuckle.AspNetCore.Annotations | 6.6.2 | 6.7.1 |
v0.10.9
Improvements
InMemory
andSqlite
data base features were not working under ARM processors, fixed- Automatic schema update is removed from
Sqlite
database becauseMicrosoft.Data.Sqlite.Core
does not supportSchemaUpdate
autoExportSchema
parameter is introduced toSqlite
database with default valuetrue
to use automatic schema for development databases which clears data each time your application runs. You may set it to false if you want your data to retain.Client.Send
now has option to disable ensure success status code check to return error response data
Library Upgrades
Package | Old Version | New Version |
---|---|---|
Microsoft.Data.Sqlite.Core | new | 8.0.7 |
NHibernate.Extensions.Sqlite | new | 8.0.8 |
SQLitePCLRaw.bundle_e_sqlite3 | new | 2.1.8 |
System.Data.SQLite | 1.0.118 | removed |
v0.10.8
Library Upgrades
Package | Old Version | New Version |
---|---|---|
FluentNHibernate | 3.3.0 | 3.4.0 |
Microsoft.AspNetCore.Authorization | 8.0.6 | 8.0.7 |
Microsoft.AspNetCore.Mvc.NewtonsoftJson | 8.0.6 | 8.0.7 |
Microsoft.Extensions.Configuration.Binder | 8.0.1 | 8.0.2 |
Microsoft.Extensions.TimeProvider.Testing | 8.6.0 | 8.7.0 |
MySql.Data | 8.4.0 | 9.0.0 |
NHibernate | 5.5.1 | 5.5.2 |
v0.10.7
Improvements
- Add support for including entity and record (response) properties in swagger
- Request and response examples are included in swagger
- Allow multi scheme IDs in security requirement filter
- Tag documentation was causing empty tags to appear, fixed
Bugfixes
- Newlines in XML comments were causing code generation to fail, fixed
Library Upgrades
Package | Old Version | New Version |
---|---|---|
Microsoft.AspNetCore.Authorization | 8.0.5 | 8.0.6 |
Microsoft.AspNetCore.Mvc.NewtonsoftJson | 8.0.5 | 8.0.6 |
Microsoft.AspNetCore.Mvc.Testing | 8.0.5 | 8.0.6 |
Microsoft.CodeAnalysis.CSharp | 4.9.2 | 4.10.0 |
Microsoft.Extensions.TimeProvider.Testing | 8.5.0 | 8.6.0 |
v0.10.6
Improvements
- Existing swashbuckle configuration and filters now allow a multi document
setup
FixedBearerToken
now accepts document names and description of token parameter- Document based security definition extension is added
json
request and response types were documented as more than one type, restricted toapplication/json
- Domain model now contains xml comments as
XmlNode
instances - Swagger now includes xml documentation coming from doman model
v0.10.5
Improvements
- DO is renamed as Baked (Objects)
- Root namespace is
Baked
Forge
is nowBake
Blueprints
is nowRecipe
- Root namespace is
Authentication.Disabled
was removed- NHibernate logs are now redirected to logger instead of direct console logging
- Default levels are added to enable request/response and sql logging for development, only error for production
Bugfixes
- NHibernate proxies were causing serialization error, fixed
v0.10.4
Improvements
- Log now includes, domain type and method, timestamp and trace id in log message
4xx
is now logged in warning level leaving only5xx
in error level- Single line is now configurable from outside of
RequestLoggingFeature
v0.10.3
Improvements
- Add
Lock
toIEntityContext
to enable select for update for making critical updates in sync
v0.10.2
Improvements
ObjectAsJson
coding style feature now supports renderingobject
parameter asFromBody
without generating a request class- Only concrete classes are now included in
EntityExtensionViaComposition
andEntitySubclassViaComposition
coding style features RequireClaim
andRequireNoClaim
renamed toRequireUser
andAllowAnonymous
respectivelyRequireUser
now accepts list of claims and can keep the base claimRequireUser
andAllowAnonymous
can now be added to classAuthorization
now expects authenticated user when no base claim is givenAuthorization
now allows multiple base claims- Transients having only one initializer with not api input paramteres are now not marked as api service
Create
is now added as alias to add child methods
v0.10.1
Improvements
- NFR tests now run faster.
Nfr
andServiceNfr
is redesigned to built only once for the complete test run.Nfr
environment is added to environment extensions for NFR specific configuration underProgram.cs
ServiceNfr
now runs only forNfr
environment- Forge configurations of
ServiceNfr
is removed completely, it uses automatically generatedProgram
class- To enable test projects to see internal
Program
class, addInternalsVisibleTo
to your application
- To enable test projects to see internal
- Test projects don't need to have
GenerateProgramFile
set tofalse
any more
WelcomePage
greeting feature is now removed
Bugfixes
- Fixes a bug where casters fails because of service providers during nfr tests
Library Upgrades
Package | Old Version | New Version |
---|---|---|
BenchmarkDotNet | 0.13.11 | 0.13.12 |
Microsoft.AspNetCore.Authorization | 8.0.3 | 8.0.5 |
Microsoft.AspNetCore.Mvc.NewtonsoftJson | 8.0.3 | 8.0.5 |
Microsoft.AspNetCore.Mvc.Testing | 8.0.3 | 8.0.5 |
Microsoft.CodeAnalysis.CSharp | 4.8.0 | 4.9.2 |
Microsoft.Extensions.TimeProvider.Testing | 8.3.0 | 8.5.0 |
Microsoft.NET.Test.Sdk | 17.9.0 | 17.10.0 |
MySql.Data | 8.3.0 | 8.4.0 |
NHibernate | 5.5.0 | 5.5.1 |
Swashbuckle.AspNetCore | 6.5.0 | 6.6.2 |
v0.10.0
Features
- Beta features are available in do-blueprints-service package;
CodeGenerationLayer
is introduced, now it is possible to generate code during initialization of a serviceDomainLayer
now provides;- an inherited factory mechanism to individually configure level of
reflected details for registered types. Models for types are now built as
following inherited levels;
TypeModel
TypeModelGenerics
TypeModelInheritance
TypeModelMetadata
TypeModelMembers
- a metadata mechanism that allows you to add custom attributes to domain model
- an indexer mechanism that allows you to index models based on their attributes
- an inherited factory mechanism to individually configure level of
reflected details for registered types. Models for types are now built as
following inherited levels;
RestApiLayer
now provides;- api model to generate controller code from domain model
- model binder configuration to allow custom parameter types from action parameters
Forge.New.Service
now automatically generates;- api controllers and actions from domain model
- entity lookup calls for entity and entity extension parameters
- all types of parameters and return types
- stylized routes with default conventions
- additional attributes for controller actions
- multi unique property instead of just id route
- commands as actions
- entity extension services under entity route
- entity subclass services under entity route via a discriminator unique property
- add/remove child routes
- null check for not-null parameters
- redirect result for uri returning methods
Business
andOrm
is split into two featuresLifetimeFeature
is introduced with three implementationsSingleton
,Scoped
andTransient
CodingStyleFeature
is introduced with existing coding styles to separate them from business feature
Business
now allows service casting,service.Cast().To<AnotherService>()
Authorization
feature is now added withClaimBasedAuthorization
implementation which supports;- Individual claim requirements for actions
- Default claim requirement for all actions
- Anonymous access to specific actions
HttpServerLayer
now registers authentication services and adds authentication middleware- provides
AuthenticationCollection
configuration target which supports forwarding request to appropriate handlers
- provides
Improvements
MvcNewtonsoftJsonOptions
is added toRestApiLayer
as configuration targetIScoped
marker interface is removed,[Name]Context
convention is introduced to configure scoped lifetime by conventionFixedToken
authentication is now the default inService
blueprintDefault
business feature is renamed asDomainAssemblies
Default
orm feature is renamed asAutoMap
Documentation
feature is refactored into coding styles and removed completelyAuthentication
feature is now a multi-feature- Not null parameters throw bad request when null value is received
FixedToken
authentication feature is now renamed toFixedBearerToken
- Feature now have
TokenOptions
parameter to configure token names and associated claims with given tokens - Feature now automatically adds
hash
andrequestId
parameters to actions when form post authentication is required
- Feature now have
Bugfixes
TypeModel
's which are not business types were throwing null reference exception for collection properties, fixed
Library Upgrades
Package | Old Version | New Version |
---|---|---|
Humanizer.Core | new | 2.14.1 |
Microsoft.AspNetCore.Authorization | new | 8.0.3 |