Eclipse Scout Release Notes
About This Release
The latest version of this release is: 25.1.0-beta.5.
You can see the detailed change log on GitHub.
Coming from an older Scout version? Check out the Migration Guide for instructions on how to obtain the new version and upgrade existing applications.
The here described functionality has not yet been released and is part of an upcoming release. |
New Data Object API for Scout JS
Scout JS now supports DataObjects to be written as classes in TypeScript.
A new serialization mechanisms takes care of recursively (de)serializing such DataObjects in a way compatible with the Scout Java backends.
It supports base types like number
, string
, boolean
, but also more complex types like Array
, Date
, Map
, Set
or nested Data Objects.
Also, TypeScript specific types like Record
or string literal types are supported.
Please read the DO documentation for Scout JS for more details and the advantages of the new API. It is recommended to switch to the new API where ever possible by following the steps from the migration guide. An example implementation can be found in the REST HowTo which might be helpful to understand the new concepts.
Behavior Change of Scout JS Utilities objects.valueCopy, objects.equals And objects.equalsRecursive
In order to support the new class-based Data Objects, these functions had to be improved as follows:
-
Date
: is compared by its value (rather than the reference===
as before) and copied by value (new instance is created). -
Map
: is deeply compared by its content (rather than the reference===
as before) and deeply copied. -
Set
: is deeply compared by its content (rather than the reference===
as before) and deeply copied. -
The function
objects.valueCopy
uses the functionclone
if existing to create deep clones (except forWidgets
). -
The function
objects.equalsRecursive
uses the same equals logic asobjects.equals
which includes equality for empty arrays and the use of theequals
functions of the objects, if available.
IId signature
The mechanism that adds signatures to IId
is now available for the service tunnel.
For more information see IId signatures in service tunnel.
Migration handler for deletion of data object contributions
The new AbstractRemoveDoEntityContributionValueMigrationHandler
can be used when a data object contribution class is completely deleted.
This migration handler will remove the contribution with the given type name and type version from the data objects.