Skip to main content

Nouveautés de la version 4.7

1. Mise à jour du socle technique

Migration vers WildFly 38.

Les versions minimales des navigateurs supportés sont les mêmes que depuis la 4.3.

La version 25 LTS de Java est maintenant supporté en plus des versions 17 et 21.
La version 25 permet de réduire la mémoire occupée de quatre octets par objet instancié (soit environ 13 % de mémoire économisée sur le tas) si le paramètre -XX:+UseCompactObjectHeaders est activé (ce qui est le cas par défaut).

L’ancienne librairie JavaSysMon a été remplacé par la librairie OSHI qui nous permet d’afficher le débit réseau (avec graphique) dans la page de supervision de la plateforme.

Les conversions via LibreOffice ne sont plus appelées en ligne de commandes, mais via le mode API par la librairie JODConverter ce qui permet de lancer LibreOffice en mode listen et de manière anticipé pour gagner en performances. Cela permet désormais des conversions en parallèle ainsi que la mise à jour des Tables des Matières avant la conversion.

La librairie Puppeteer JavascriptJavaScript a été remplacée par sa conversion Java nommée Jvppeteer permettant de gagner en performances.

En conséquence, NodeJS n’est plus utilisé par le Player, uniquement lors de l’édition des feuilles de styles CSS pour l’exécution de la librairie JaaScriptJavaScript autoprefixer. La version 16 de NodeJS estest, en conséquence, de nouveau compatible avec la plateforme. Il est donc possible et recommandé de supprimer NodeJS des serveurs de Production.

Chrome ou Chrome Headless Shell peuvent être utilisés à la place du Chromium installé par l’O.S. en récupérant la dernière version stable à cette adresse : https://googlechromelabs.github.io/chrome-for-testing/#stable.
Pour l’installer, décompressez-le dans le répertoire /opt/ontomantics puis faire un lien symbolique « chromium » pointant sur son dossier, la plateforme l’utilisera en priorité sur celui du système. Cela offre une alternative au paquet SNAP sous Ubuntu.

2. Autres fonctionnalités

Les rapports PDF ont un mode performant disponible avec Chromium version 131 minimum (qui est la version minimale recommandée désormais).
Ce mode permet de se passer de la librairie Pages.JS qui s’occupait de découper le contenu HTML en pages avec des en-têtes et pied de pages complexes. Le mode performant évite certains bugs de mise en pages, mais ne gères pas les fonctionnalités suivantes : 

  • Le code HTML dans les marges ;
  • Les composants qui ne sont pas des étiquettes dans les marges ;
  • Certains styles CSS ne sont pas supportés dans les marges ;
  • Les noms des chapitres en cours dans les marges ;
  • Les notes de bas de pages (avec le style float: footnote;).

Les rapports PDF gèrent dorénavant les variables CSS : --page-header-text-color,color, --page-header-bg-color,color, --page-footer-text-color et  –page-footer-bg-color.

Sur le composant carte, les types de tuiles GeoJSON et WMS ont été fusionnés avec le type surimpression pour permettre de passer d’un type à l’autre plus facilement par comportement. Ils fonctionnent à présent également comme tuile de base.

Le support des fichiers de type ShapeFile, sur le composant carte, a été retiré de la plateforme en raison de sa lourdeur les rendant souvent inutilisable. Il faudra les convertir en fichier GeoJSON avec un outil tiers.

La librairie ComplexMail à une nouvelle fonction addAttendee() permettant de définir les participants d’une invitation avec les paramètres rôle (Parmi : CHAIR,CHAIR, REQ-PARTICIPANT,PARTICIPANT, OPT-PARTICIPANT ou NON-PARTICIPANT) et status (Parmi : NEEDS-ACTION, NEEDS-ACTION,ACCEPTED, ACCEPTED, DECLINED ou TENTATIVE).

Les fonctions durationToString() et les champs de jeux de données de type durées acceptent des patterns avec des parenthèses qui seront supprimées si la valeur à l’intérieur est 0 :
(y ‘année(s)’) (M ‘moi(s)’) d ‘jour(s)’ renverra les années et les mois seulement s'ils n'ont pas à 0 et toujours les jours ;

Possibilité de créer des colonnes supplémentaires sur les Tableaux Croisés, Plannings et GANTTs.
Ces nouvelles colonnes peuvent être soit d’un type spécial où l’on choisit le type de valeur parmi Nom de la ligne, Date de début et Date de fin ;
Soit d’un type simple (lié à un champ d’un jeu de données) mais nécessite de sélectionner un agrégat au cas où plusieurs lignes du JDD pour une ligne de tableau parmi Première valeur, MIN, MAX, AVG, SUM.

L’action affectation de contrôle à une nouvelle propriété Affecter le focus qui fonctionne aussi sur les composants conteneur et a pour effet de défiler la page sur l’élément si nécessaire ;