Enhancement
Critical
Major
Detail
Detail
#25907
Layout editor: inconsistent behavior of unfold state, selection and reaction to object creation
#25951
Application tests: CheckLabeledExecutabilityOp fails to assert non-executability of literal ResKey reasons.
#25952
Model Editor: Enum default provider does not work for enum references for which singleton link storage was explicitly selected
#26002
ConfigurationItem-valued properties with format annotations may cause an attempt to create abstract config items when deserializing null values
#26012
Help editor crashes when a user has chosen a language that is not in the supported languages of the application
#26039
Gridcomponent: Display of context menu for new (transient) row object leads to UnsupportedOperationException
#26085
An attribute of type tl.model.search:Expr is not displayed in the form above a TL script editor
#26111
Context menu commands for table rows are erroneously executed on the table model when opening the context menu in the background of the table
#26153
Migration: Replay fails if string values with line breaks are contained in the dataset where a line ends with a semicolon
#26171
A TL script expression entered in a wizard template is reformatted when transferred to the final template
#26223
TL script: Under unfavorable conditions wrong parameter values when evaluating local functions
Bugfix
Detail
#25801
NamedConfiguration and NamedConfigMandatory must be @Abstract
All direct usages must be replaced by concrete derivations of the interfaces. Otherwise you will get completely meaningless selections whenever a declarative form contains a property of questionable type.
Code migration
The types NamedConfiguration and NamedConfigMandatory must no longer appear directly as types of properties. Instead, a derivation must be used.
It is better to change the property type to String:
#!patch @@ -181,7 +181,8 @@ * The database modules. */ @Name(MODULES_NAME) - List<NamedConfigMandatory> getModules(); + @ListBinding(attribute = "name") + List<String> getModules(); /** * The algorithm that is used to encrypt temporary files.
The values supplied by properties with the @MapBinding or @ListBinding annotation are now not modifiable. This prevents surprises when trying to save configurations with such internally modified values (such properties are not written).
Test
Refactoring, no test.