There was a flurry of activity in the Spring ecosystem during the week of December 16th, 2024, highlighting point releases of: Spring Boot, Spring Security, Spring Authorization Server, Spring Session, Spring Integration, Spring Modulith, Spring Batch, Spring AMQP, Spring for Apache Kafka, Spring for Apache Pulsar and Spring Shell.
Spring Boot
Versions 3.4.1 and 3.3.7 of Spring Boot feature improvements in documentation, dependency upgrades and resolutions to notable issue such as: an implementation of the SpringApplicationShutdownHandlers
interface does not run in deterministic order due to the getShutdownHandler()
method, defined in the Log4J2LoggingSystem
class, held a reference to the underlying environment; and an UnsupportedOperationException
upon starting a Maven shaded application on Java 21 with virtual threads enabled. More details on these releases may be found in the release notes for version 3.4.1 and version 3.3.7.
Spring Security
Versions 6.4.2 and 6.3.6 of Spring Security ship with bug fixes, dependency upgrades and new features such as: bug fixes, dependency upgrades and new features in version 6.4.2 such as: improved configuration of error messages from the AuthorizationManager
interface; and a new WebAuthnWebDriverTests
class to verify the full end-to-end web authentication flow that includes the JavaScript code bundled in the default login and logout pages. Further details on these releases may be found in the release notes for version 6.4.2 and version 6.3.6.
Spring Authorization Server
Versions 1.4.1 and 1.3.4 of Spring Authorization Server deliver bug fixes, dependency upgrades and new features in version 1.4.1 such as: replace the use of the unmodifiableMap()
method with the emptyMap()
method, both defined in the Java Collections
class, because the latter returns an instance of a Java Map
declared as final
; and a consistent use of creating an empty Map for token classes, e.g, the OAuth2DeviceVerificationAuthenticationToken
class, should there be missing parameters. More details on these releases may be found in the release notes for version 1.4.1 and version 1.3.4.
Spring Session
Versions 3.4.1 and 3.3.5 of Spring Session provide notable respective dependency upgrades to Spring Framework 6.2.1 and 6.1.16, Spring Security 6.4.1 and 6.3.6, Spring Data 2024.1.1 and 2024.0.7 and Project Reactor 2023.0.13. Further details on these releases may be found in the release notes for version 3.4.1 and version 3.3.5.
Spring Integration
Version 6.4.1 and 6.3.7 of Spring Integration ship with bug fixes, dependency upgrades and a new feature that avoids logging a message, should logging not be enabled for an instance of the AbstractReplyProducingMessageHandler
class, where a reply is not required. More details on these releases may be found in the release notes for version 6.4.1 and version 6.3.7.
Spring Modulith
The release of Spring Modulith 1.3.1, 1.2.7 and 1.1.12 features bug fixes, dependency upgrades and improvements such as: a Spring Boot compatibility matrix; an updated Asciidoctor
class for enhanced rendering of an application module canvas; and allow the filtering of the Violations
class upon calling the detectViolations()
method defined in the ApplicationsModules
class. Further details on these releases may be found in the release notes for version 1.3.1, version 1.2.7 and version 1.1.12.
Spring Batch
Versions 5.2.1 and 5.1.3 of Spring Batch have been released to provide bug fixes, improvements in documentation, dependency upgrades and a new feature that resolves an IllegalArgumentException
due to a missing association between the PostgreSQL database and a reference to EnterpriseDB
in the DatabaseType
enum class. More details on these releases may be found in the release notes for version 5.2.1 and version 5.1.3.
Spring AMQP
The release of Spring AMQP 3.2.1 ships with bug fixes, improvements in documentation, dependency upgrades and a new feature that provides compatibility between the CachingConnectionFactory
class and the Spring Boot RabbitProperties
class. Further details on this release may be found in the release notes.
Spring for Apache Kafka
Versions 3.3.1 and 3.2.6 of Spring for Apache Kafka have been released with bug fixes, improvements in documentation, dependency upgrades and new features: compatibility with Kafka Client 3.9.0; removal of the synchronized
keyword in favor of a reentrant lock to ensure that methods are friendly for virtual threads to avoid blocking and pinning; and the ability to directly configure the observation registry instead of obtaining it from the application context. These releases are included in Spring Boot 3.3.7 and 3.4.1, respectively. More details on these releases may be found in the release notes for version 3.3.1 and version 3.2.6.
Spring for Apache Pulsar
The release of Spring for Apache Pulsar 1.2.1 and 1.1.7 provide improvements in documentation and respective dependency upgrades such as: Spring Framework 6.2.1 and 6.1.16; Micrometer Metrics 1.14.2 and 1.13.9 and Project Reactor 2024.0.1 and 2023.0.13. These releases are included in Spring Boot 3.3.7 and 3.4.1, respectively. Further details on these releases may be found in the release notes for version 1.2.1 and version 1.1.7.
Spring Shell
The release of Spring Shell 3.3.4 ships with dependency upgrades to Spring Boot 3.3.6 and Apache Commons IO 2.18.0. More details on this release may be found in the release notes and changelog.