Skip to main content

Version 7.0 release note

danger

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

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.

note

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.

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.

Server-side components

The following outdated third party Java libs have been removed:

  • legacy Apache commons commons-fileupload v1 library, note that the commons-fileupload2-* v2 libraries are present since major version 5
tip

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).

tip

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 methods HTMLTool.bootstrapJS/bootstrapCSS should be used instead of hardcoded paths).
  • Bootstrap date/datetime picker: /scripts/jquery/bootstrap5-datetimepicker/* to /scripts/bootstrap5-datetimepicker/* (the Java methods HTMLTool.bootstrapDatetimePickerJS/bootstrapDatetimePickerCSS should be used instead of hardcoded paths).

Long text fields behavior vs truncation

  • FeatureFlag.TRUNCATE_TOO_LONG_TEXT is set to false 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

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