Version 7.0 release note
Warning: This release note corresponds to the future first minor version of the next major version 7.
It is in EARLY ALPHA heavy development stage. It means it is ABSOLUTELY not yet suitable for production nor just for development and testing.
This release note is also in its early redaction stage.
Compatibility breaking changes
Among the reasons for this version to be the first minor version of a new major version are the changes at the level of the underlying technical components:
- JVM level
- Tomcat version
JVM related
The platform is now compiled at JVM level 21 (vs 17 for previous major version 6 and 11 for previous major version 5).
This has no impact except if you where using in your some some Java APIs marked as deprecated for several Java versions and that may have been finally removed from the JVM.
Our latest
Docker images are built with a JVM 21 since major version 6,
if you had deprecated Java APIs usage in your code you should have already seen it as warnings or errors when
compiling your code within the platform and thus should not be impacted by the JVM level change at platform level.
Note that this major version 7 images will use a JVM 25 as soon as it is released.
Tomcat related
The target Tomcat version for major version 7 is now Tomcat 11.
The impact is that Tomcat 11 is using Jakarta EE 11 instead of JEE 8 for previous Simplicité version's Tomcat 9 target.
This means if your code is using imports like javax.servlet.*
you MUST refactor them to jakarta.servlet.*
.
Except if you have some other very specific code, the only potential usages of these package are in the following platform hooks:
customStartPage
, customErrorResponse
and customAuth/customAuthPage
.
Third party components related
Server-side components
The following outdated third party Java libs have been removed:
- legacy Apache commons
commons-fileupload
v1 library, note that thecommons-fileupload2-*
v2 libraries are present since major version 5
If you use them in your code and can't refactor their usage you can still re-add them specifically.
As announced in the version v6.2 release note and again in the version v6.3 release note,
the legacy iText libraries have been removed and the associated helpers PDFTool
and PDFDocumentExternalObject
have been completely refactored to use the PDFBox libraries.
Any code written for iText and/or with the help of the above helper classes must be rewritten accordingly.
Client-side components
The historical locations of Bootstrap libs have (finally) been changed.
This may have an impact but only if you include them specifically using hardcoded paths (e.g. in a standalone external object page).
This should not be the case as we provide Java methods to include these libs properly without having to know where they are located (see bellow).
There is no reason to re-include these Bootstrap libs specifically within a custom component of the generic UI because they are already included.
The changed locations are:
- Bootstrap:
/scripts/jquery/bootstrap5/*
to/scripts/bootstrap5/*
(the Java methodsHTMLTool.bootstrapJS/bootstrapCSS
should be used instead of hardcoded paths). - Bootstrap date/datetime picker:
/scripts/jquery/bootstrap5-datetimepicker/*
to/scripts/bootstrap5-datetimepicker/*
(the Java methodsHTMLTool.bootstrapDatetimePickerJS/bootstrapDatetimePickerCSS
should be used instead of hardcoded paths).
Long text fields behavior vs truncation
FeatureFlag.TRUNCATE_TOO_LONG_TEXT
is set tofalse
by default.- the UX/UI is not impacted because field inputs are already limited to the max size
- but the API create/update will get an error if a data is too long (against data truncation in 6.3)
Deprecations
JVM related
All JVM core APIs marked as deprecated since version 17 should be refactored in your code as of now if you use them in order to avoid potential JVM-level compatibility breaking change in the future (see above).
Features
- Nothing so far...
Enhancements
- Nothing so far...
Maker Experience
- Nothing so far...
Technical
- Nothing so far...
Docker images
There is no impact if you use out of the box images.
If you customize these images at Tomcat level there might be some impacts because the version 7.x images are using Tomcat 11 which configuration files may slightly differ from Tomcat 9 used in previous versions' images. Make sure to review, and potentially adapt, your customization Dockerfiles.
Simplicité Instances Manager (SIM)
See this document for details on how to add version 7.0 on an existing SIM server