v1.7

v1.7.2

Improvements

  • LabelAttribute were included in non-public properties, fixed
  • SimpleForm now hides title in inline mode, to show it set AlwaysShowTitle to true
  • IsNot(null) were not evaluating undefined values correctly, fixed

v1.7.1

Improvements

  • Conventions that require a level that doesn't exist on application is now skipped
    • UI conventions won't run during test runs
    • UI conventions won't be added in DataSource recipe
    • Not found level to default level warning is now completely removed, instead an info diagnostic is added
  • Horizontal SimpleForm submit button shifting on input height changes, fixed
  • Side panel affecting main content height in Contents, fixed
  • Is and IsNot constraints now accept object? type values
    • It is now possible to check for null values
  • SimpleForm submit button now shows validation messages as a tooltip, in dialogs

Bugfixes

  • Transaction rollback was not working as properly, fixed

v1.7.0

Features

  • Domain layer now introduces a level system to improve managing convention execution orders.
    configurator.Domain.ConfigureBuilder(builder =>
    {
      builder.ConventionOrderMatrix.Bases.Add("Base");
      ...
      builder.ConventionOrderMatrix.Levels.Add("Level");
      ...
      builder.ConventionOrderMatrix.Extensions.Add("Ext");
      ...
    
      builder.ConventionOrderMatrix.FallbackBase = convention => ...;
      builder.ConventionOrderMatrix.FallbackLevel = convention => ...;
      builder.ConventionOrderMatrix.FallbackExtension = convention => ...;
    
      builder.DefaultConventionLevel = "...";
    });
    
    configurator.Domain.ConfigureConventions(conventions =>
    {
      conventions.SetTypeAttribute(
        when: _ => true,
        attribute: () => new GroupAttribute(),
        order: Order.At.WithBase("Base").WithLevel("Level").WithExtension("Ext")
      );
    });
    

Breaking Changes

  • requireIndex convention flag is renamed to beforeBuildingIndexes
  • ConfigureDomainModelBuilder is renamed to ConfigureBuilder
    // old usage
    configurator.Domain.ConfigureDomainModelBuilder(builder =>
    {
        ...
    });
    
    // current usage
    configurator.Domain.ConfigureBuilder(builder =>
    {
        ...
    });
    
  • IDomainModelConventionCollection is now provided as a configuration target
    // old usage
    configurator.Domain.ConfigureBuilder(builder =>
    {
        builder.Conventions.Add(...);
    });
    
    // current usage
    configurator.Domain.ConfigureConventions(conventions =>
    {
        conventions.Add(...);
    });
    
  • order: {int} will now be cast to an Order which will fallback to default convention level having (-5000, 4999) range, previous usages like below will result errors;
    // this will throw error
    conventions.Add(..., order: int.MinValue + 10);
    
    // use below instead
    conventions.Add(..., order: Order.At.Global.Min);
    
  • Inpect is now moved to DomainModelBuilderOptions
    // old usage
    configurator.Domain.ConfigureInspect(inspect =>
    {
        inspect.Attribute<...>();
    });
    
    // new usage
    configurator.Domain.ConfigurBuilder(builder =>
    {
        builder.Inspect.Attribute<...>();
    });
    
  • CacheApplicationPlugin and CacheUserPlugin no longer has ExpirationInMinutes property and are now configured in options exposed through baked module options
    export default defineNuxtConfig({
      baked: {
        plugins: {
          cacheApplication: {
            expirationInMinutes: 40
          },
          cacheUser: {
            expirationInMinutes: 40
          },
        }
      }
    }
    

Bugfixes

  • Adding locate action by conventions was missing claim requirements, fixed

Library Upgrades

NuGet PackageOld VersionNew Version
Microsoft.AspNetCore.Authentication.JwtBearer10.0.810.0.9
Microsoft.AspNetCore.Mvc.NewtonsoftJson10.0.810.0.9
Microsoft.AspNetCore.Mvc.Testing10.0.810.0.9
Microsoft.Data.Sqlite.Core10.0.810.0.9
Microsoft.Extensions.Caching.Abstractions10.0.810.0.9
Microsoft.Extensions.Configuration.Abstractions10.0.810.0.9
Microsoft.Extensions.Configuration.Binder10.0.810.0.9
Microsoft.Extensions.FileProviders.Abstractions10.0.810.0.9
Microsoft.Extensions.Localization.Abstractions10.0.810.0.9
Microsoft.Extensions.Logging.Abstractions10.0.810.0.9
Microsoft.Extensions.TimeProvider.Testing10.6.010.7.0
Microsoft.Testing.Extensions.CodeCoverage18.7.018.8.0
NHibernate.Extensions.Sqlite10.0.210.0.2
Spectre.Console0.55.20.57.0
Spectre.Console.Testing0.55.20.57.0
Swashbuckle.AspNetCore10.1.710.2.1
Swashbuckle.AspNetCore.Annotations10.1.710.2.1
System.IdentityModel.Tokens.Jwt8.18.08.19.1