Serene v3.12.3 Release Notes
Release Date: 2020-02-22 // about 4 years ago-
🔋 Features:
- if null value handling is set to include, row converter should also serialize null fields
- define JsonSettings.StrictIncludeNulls and JsonSettings.TolerantIncludeNulls which serializes null values, and checks them on deserialization. JSON class methods also has an additional includeNulls (default = false) to be able to use these settings.
- added NavigationPermissionAttribute which takes precedence over ReadPermissionAttribute on a row to determine permission for page and navigation item of the row.
- add AsSqlValue method which calls AsObject by default to Field object. this will be useful for fields which has a different storage type then their value type, e.g. JsonField
- added JsonField type. it has no attributes that controls serialization options like nulls so such options must be set through Field.Settings property if required for now.
- don't show an error if xhr status is abort
- added async source support to Select2Editor
- added async option to use getLookupAsync to lookup editor
- added ServiceLookupEditor type
- don't use type delay for initial load, hide select2 spinner while waiting for type delay
- add async option to lookupeditor which makes it work like a service lookup editor
- added FieldReadPermissionAttribute which determines the default permission required to read fields of a row, optionally excluding [LookupInclude] and Id/Name fields. This will make it easier to use a ServiceLookupEditor with a row, for example by setting [ReadPermission("Northwind:Lookups")], [FieldReadPermission("Northwind:General", ApplyToLookups = false)], [NavigationPermission("Northwind:General")], so only users with Northwind.General can see the page and read all the fields through the list service / grid, while a user with Northwind.Lookups permission can call List service but can only read ID + Name + LookupInclude fields through it.
- adding missing field HeaderHtmlUrl to IHtmlToPdfOptions
- include pdb file for serenity.web for source link debug support
- ensure connection is open for better compatibility with mvc version in dapper interface
🛠 Bugfixes:
- fix Q.getLookupAsync not actually working async
- avoid double initSelection by setting select2-change-triggered
- fix layout timer registration cleanup
- title text should be read from child with .title-text class
- avoid exception while determining url when a controller has multiple action methods with same name