Projet d’API Classfile, Spring Boot, GlassFish, Project Reactor, Micronaut

Le tour d’horizon Java de cette semaine du 20 juin 2022 présente des actualités d’OpenJDK, JDK 19, JDK 20, les versions Spring point, GlassFish 7.0.0-M6, GraalVM Native Build Tools 0.9.12, Micronaut 3.5.2, Quarkus 2.10.0, Project Reactor 2022.0.0-M3, Apache Camel Quarkus 2.10.0 et Apache Tika versions 2.4.1 et 1.28.4.

OpenJDK

Brian Goetz, architecte du langage Java chez Oracle, a récemment mis à jour le brouillon JEP 828039, Classfile API, pour fournir des informations générales sur la façon dont ce brouillon évoluera et remplacera finalement le cadre de manipulation et d’analyse de bytecode Java, ASM, que Goetz caractérise comme “une ancienne base de code avec beaucoup de bagages hérités.” Cette JEP propose de fournir une API pour analyser, générer et transformer des fichiers de classe Java. Ce JEP servira initialement de remplacement interne pour ASM dans le JDK avec des plans pour l’ouvrir en tant qu’API publique.

JDK 19

La version 28 des versions à accès anticipé du JDK 19 a été mise à disposition la semaine dernière, avec des mises à jour de la version 27 qui incluent des correctifs à divers problèmes. Plus de détails peuvent être trouvés dans les notes de version.

JDK 20

La version 3 des versions à accès anticipé du JDK 20 a également été mise à disposition la semaine dernière, avec des mises à jour de la version 2 qui incluent des correctifs à divers problèmes. Les notes de version ne sont pas encore disponibles.

Pour JDK 19 et JDK 20, les développeurs sont encouragés à signaler les bogues via la base de données de bogues Java.

Cadre de printemps

Spring Boot 2.7.1 a été publié avec 66 corrections de bogues, des améliorations dans la documentation et des mises à niveau de dépendance telles que : Spring Framework 5.3.21, Spring Data 2021.2.1, Spring Security 5.7.2, Reactive Streams 1.0.4, Groovy 3.0.11 , Hazelcast 5.1.2 et Kotlin Coroutines 1.6.3. Plus de détails sur cette version peuvent être trouvés dans les notes de version.

Spring Boot 2.6.9 a été publié avec 44 corrections de bogues, des améliorations dans la documentation et des mises à niveau de dépendance similaires à Spring Boot 2.7.1. Vous trouverez plus de détails sur cette version dans les notes de version.

VMware a publié CVE-2022-22980, Spring Data MongoDB SpEL Expression Injection Vulnerability, une vulnérabilité dans laquelle une « application Spring Data MongoDB est vulnérable à l’injection SpEL lors de l’utilisation @Query ou @Aggregation– des méthodes de requête annotées avec des expressions SpEL qui contiennent des espaces réservés de paramètre de requête pour la liaison de valeur si l’entrée n’est pas nettoyée.” Les versions 3.4.1 et 3.3.5 de Spring Data MongoDB ont résolu cette vulnérabilité.

Les versions 2021.2.1 et 2021.1.5 de Spring Data ont été publiées avec des mises à niveau de tous les sous-projets Spring Data tels que : Spring Data MongoDB, Spring Data Cassandra, Spring Data JDBC et Spring Data Commons. Ces versions seront également consommées par Spring Boot 2.7.1 et 2.6.9, respectivement, et traiteront le CVE-2022-22980 susmentionné.

Spring Authorization Server 0.3.1 a été publié avec quelques améliorations et corrections de bogues. Cependant, l’équipe a décidé de rétrograder de JDK 11 à JDK 8 pour maintenir la compatibilité et la cohérence avec Spring Framework, Spring Security 5.x et Spring Boot 2.x. Par conséquent, la dépendance HyperSQL (HSQLDB) a également été rétrogradée vers la version 2.5.2 car HSQLDB 2.6.0 et supérieur nécessite JDK 11. Plus de détails sur cette version peuvent être trouvés dans les notes de version.

Les versions 5.7.2 et 5.6.6 de Spring Security ont été publiées avec des corrections de bogues et des mises à niveau de dépendance. Les deux versions partagent une nouvelle fonctionnalité dans laquelle les exemples de test ont été mis à jour pour utiliser JUnit Jupiter, une partie intégrante de JUnit 5. De plus amples détails sur ces versions peuvent être trouvés dans les notes de version pour la version 5.7.2 et la version 5.6.6.

Poisson en verre éclipse

Sur la route de GlassFish 7.0.0, le sixième version marquante a été mis à disposition par la Fondation Eclipse qui apporte un certain nombre de modifications liées à la réussite du kit de compatibilité technologique (TCK) pour les spécifications Jakarta Contexts and Dependency Injection 4.0 et Jakarta Concurrency 3.0. Cependant, cette version marquante n’a pas encore dépassé le Jakarta EE 10 TCK complet. GlassFish 7.0.0-M6, considérée comme une version bêta, compile et s’exécute sur JDK 11 à JDK 18. Plus de détails sur cette version peuvent être trouvés dans les notes de version.

Outils de construction natifs GrailVM

En route vers la version 1.0, Oracle Labs a sorti la version 0.9.12 de Native Build Tools, un projet GraalVM composé de plugins pour l’interopérabilité avec GraalVM Native Image. Cette dernière version fournit : une documentation de support pour Mockito et Byte Buddy ; empêcher les builds d’échouer si aucune liste de test n’a été fournie ; prendre en charge différents modes d’agent dans le native-image Plugin Gradle, un changement de rupture ; et prise en charge des métadonnées d’accessibilité JVM dans Maven. Vous trouverez plus de détails sur cette version dans les notes de version.

micronaute

La Fondation Micronaut a publié Micronaut 3.5.2 avec des corrections de bogues et des versions ponctuelles des projets Micronaut Oracle Cloud 2.1.4, Micronaut Email 1.2.3 et Micronaut Spring 4.1.1. Documents pour le ApplicationContextConfigurer L’interface a également été mise à jour pour inclure une recommandation sur la façon de définir un environnement Micronaut par défaut. Plus de détails sur cette version peuvent être trouvés dans les notes de version.

Quarkus

Red Hat a publié Quarkus 2.10.0.Final avec : un travail préliminaire sur les threads virtuels (JEP 425) de Project Loom ; prendre en charge les charges de travail non bloquantes dans les extensions GraphQL ; une mise à niveau de dépendance vers SmallRye Reactive Messaging 3.16.0 ; prise en charge de la liaison de service Kubernetes pour les extensions Reactive SQL Clients ; et un nouveau contrat CacheKeyGenerator pour permettre la personnalisation des clés de cache générées à partir des paramètres de méthode.

Réacteur de projet

Sur la route de Project Reactor 2022.0.0, la troisième version d’étape a été mise à disposition avec des mises à niveau de dépendance pour reactor-core 3.5.0-M3reactor-pool 1.0.0-M3reactor-netty 1.1.0-M3reactor-addons 3.5.0-M3 et reactor-kotlin-extensions 1.2.0-M3

Apache Chameau Quarkus

En maintenant l’alignement avec Quarkus, l’Apache Software Foundation a publié Camel Quarkus 2.10.0 contenant Camel 3.17.0 et Quarkus 2.10.0.Final. Les nouvelles fonctionnalités incluent : de nouvelles extensions, Azure Key Vault et DataSonnet ; et la suppression des extensions obsolètes dans Camel 3.17.0. Vous trouverez plus de détails sur cette version dans la liste des problèmes.

Apache Tika

L’équipe Apache Tika a publié la version 2.4.1 de sa boîte à outils d’extraction de métadonnées. Anciennement un sous-projet d’Apache Lucene, cette dernière version est livrée avec une personnalisation et une configuration améliorées telles que : ajouter un stop() méthode à la TikaServerCli classe afin qu’elle puisse être exécutée avec Apache Commons Daemon ; permettre le passage de Content-Length en-tête aux métadonnées dans le TikaResource classer; et la prise en charge des utilisateurs pour étendre les propriétés du système du processus de fork au fork tika-server processus.

Apache Tika 1.28.4 a également été publié avec des correctifs de sécurité et des mises à niveau de dépendance. Plus de détails dans cette version peuvent être trouvés dans le changelog. Le train de versions 1.x arrivera en fin de vie le 30 septembre 2022.

1 thought on “Projet d’API Classfile, Spring Boot, GlassFish, Project Reactor, Micronaut”

  1. דירות בבת ים

    A fascinating discussion is definitely worth comment. I do think that you ought to publish more about this topic, it may not be a taboo subject but typically people dont speak about such issues. To the next! Many thanks!!

Leave a Comment

Your email address will not be published.