包阅导读总结
1. 关键词:Spring、Ecosystem、Milestone Releases、Bug Fixes、New Features
2. 总结:2024 年 7 月 15 日这周,Spring 生态系统有众多里程碑版本发布,包括多个项目,各版本在文档、依赖升级、Bug 修复和新功能等方面有不同程度的改进。
3. 主要内容:
– Spring Boot
– 3.4.0-M1 发布,有 Bug 修复、文档改进、依赖升级和新功能,如支持结构化日志等。
– 3.3.2 和 3.2.8 版本在文档、依赖和问题解决方面有改进。
– Spring Framework
– 6.2.0-M6 发布,解决二进制向后兼容性,有新功能,如按需初始化 RequestPath 接口等。
– Spring Security
– 6.4.0-M1 发布,有 Bug 修复、依赖升级和新功能,如新的缓存类和 Kotlin 支持。
– Spring for GraphQL
– 1.3.2 和 1.2.8 版本发布,Bug 修复和问题改进。
– Spring Session
– 3.4.0-M1 发布,有 Bug 修复、依赖升级和新功能,如解决用户详情接口默认实现问题。
– Spring Integration
– 6.4.0-M1 发布,有 Bug 修复、文档改进、依赖升级和新功能。
– 6.3.2 和 6.2.7 版本在依赖和问题解决方面有改进。
– Spring Modulith
– 1.3.0-M1、1.2.2 和 1.1.7 版本发布,有 Bug 修复、依赖升级和新功能。
– Spring AMQP
– 3.2.0-M1 发布,有 Bug 修复、依赖升级和新功能。
– Spring for Apache Kafka
– 3.3.0-M1 发布,有 Bug 修复、依赖升级和新功能。
– 3.2.2 和 3.1.7 版本在依赖和问题解决方面有改进。
– Spring for Apache Pulsar
– 1.1.2 和 1.0.8 版本发布,有众多依赖升级。
思维导图:
文章来源:infoq.com
作者:Michael Redlich
发布时间:2024/7/22 0:00
语言:英文
总字数:991字
预计阅读时间:4分钟
评分:90分
标签:Spring 生态,Spring Boot,Spring 框架,Spring 安全,Spring 集成
以下为原文内容
本内容来源于用户推荐转载,旨在分享知识与观点,如有侵权请联系删除 联系邮箱 media@ilingban.com
There was a flurry of activity in the Spring ecosystem during the week of July 15th, 2024, highlighting milestone releases of: Spring Boot 3.4.0-M1; Spring Framework 6.2.0-M6; Spring Security 6.4.0-M1; Spring Session 3.4.0-M1; Spring Integration 6.4.0-M1; and Spring Modulith 1.3.0-M1; Spring AMQP 3.2.0-M1; and Spring for Apache Kafka 3.3.0-M1.
Spring Boot
The first milestone release of Spring Boot 3.4.0 delivers bug fixes, improvements in documentation, dependency upgrades and new features such as: support for structured logging as alternative to pattern layout logging; AssertJ support for the Spring Framework MockMvc
class with auto-configuration of the MockMvcTester
class; and improved support for Testcontainers and Docker Compose. More details on this release may be found in the release notes.
Similarly, versions 3.3.2 and 3.2.8 of Spring Boot provide improvements in documentation, dependency upgrades and resolutions to notable issues such as: a NullPointerException
during auto-configuration from the resolveOutcomesThreaded()
method, defined in the OnClassCondition
class, due to an instance of a ConditionOutcome
array being full; and an instance of the TestcontainersLifecycleBeanPostProcessor
class does not work correctly with scoped beans. Further details on these releases may be found in the release notes for version 3.3.2 and version 3.2.8.
Spring Framework
A week after the release of Spring Framework 6.2.0-M5, the sixth milestone release of Spring Framework 6.2.0 addresses a binary backward compatibility with previous 6.x generations, but also delivers new features such as: the ability to initialize the RequestPath
interface on demand in the AbstractServerHttpRequest
class; support for making the MapAccessor
class as read-only to align with the ReflectivePropertyAccessor
class; and the DefaultPartHttpMessageReader
should not eagerly instantiate the reactor scheduler. More details on this release may be found in the release notes.
Spring Security
The first milestone release of Spring Security 6.4.0 provides bug fixes, dependency upgrades and new features such as: a new CachingRelyingPartyRegistrationRepository
class as an implementation of the RelyingPartyRegistrationRepository
interface that defers the loading of the underlying registrations; and Kotlin support for the DefaultMethodSecurityExpressionHandler
class that eliminates this class attempting to mutate the state of immutable Kotlin Collections and Maps. There is also breaking change by adapting to form data not adding charset if it is UTF-8. Further details on this release may be found in the release notes.
Spring for GraphQL
Versions 1.3.2 and 1.2.8 of Spring for GraphQL have been released providing bug fixes and a notable improvement to resolve an issue where a schema field mapped to a Kotlin function was reported as unmapped by the SchemaMappingInspector
class. More details on these releases may be found in the release notes for version 1.3.2 and version 1.2.8.
Spring Session
The first milestone release of Spring Session 3.4.0 ships with bug fixes, dependency upgrades and new features such as: a resolution to an issue in which a default implementation of the UserDetails
interface, User
, is returned instead of a user-defined custom implementation; and a return to the MongoSession
class established as public
as it prevented developers from implementing the methods in the AbstractMongoSessionConverter
class. Further details on this release may be found in the release notes.
Spring Integration
The first milestone release of Spring Integration 6.4.0 delivers bug fixes, improvements in documentation, dependency upgrades and new features such as: implementations of the distributed LockRegistry
interface now throw a ConcurrentModificationException
from the unlock()
operation if ownership of the lock is lost in the database; and an improved subscription identifier for the channel adapters defined in the MQTT 5.0 specification. More details on this release may be found in the release notes and what’s new page.
Similarly, versions 6.3.2 and 6.2.7 of Spring Integration feature dependency upgrades and resolutions to notable issues such as: the spring-integration
actuator endpoint not working when multiple beans of the Micrometer MeterRegistry
class are registered; and a fix to the obtainObservationPatterns()
method, defined in the IntegrationManagementConfiguration
class, for a Java HashSet
sort to retain order of the provided patterns. Further details on these releases may be found in the release notes for version 6.3.2 and version 6.2.7.
Spring Modulith
Versions 1.3.0-M1, 1.2.2 and 1.1.7 of Spring Modulith have been released with bug fixes, dependency upgrades and new features such as: the addition of an option to allow the Documenter
class to clear the target folder before rendering documentation; and allow the use of the @ApplicationModuleTest
annotation outside of a module package. These releases also upgrade to Spring Boot 3.4.0-M1 and Spring Framework 6.2.0-M6. More details on these releases may be found in the release notes for version 1.3.0-M1, version 1.2.2 and version 1.1.7.
Spring AMQP
The first milestone release of Spring AMQP 3.2.0 provides bug fixes, dependency upgrades and new features such as: support for the RabbitMQ Consistent Hash Exchange Type (x-consistent-hash
); and a removal of methods deprecated in the RabbitListenerErrorHandler
interface. Further details on this release may be found in the release notes.
Spring for Apache Kafka
The first milestone release of Spring for Apache Kafka 3.3.0 ships with bug fixes, dependency upgrades and new features such as: a new ConcurrentContainerStoppedEvent
class to ensure all concurrent messages are processed before the application receives an instance of the ContainerStoppedEvent
class; and the ability for the RecordFilterStrategy
interface to receive an empty list when using batch messages. More details on this release may be found in the release notes.
Similarly, versions 3.2.2 and 3.1.7 of Spring for Apache Kafka provide dependency upgrades and a resolution to an issue where the getUnregisteredListenerContainer()
method, defined in the KafkaListenerEndpointRegistry
class, returns null
upon manually registering custom containers instead of using the @KafkaListener
annotation. Further details on these releases may be found in the release notes for version 3.2.2 and version 3.1.7.
Spring for Apache Pulsar
Versions 1.1.2 and 1.0.8 of Spring for Apache Pulsar have been released featuring numerous dependency upgrades such as: Spring Framework 6.1.10; Micrometer Metrics 1.13.2 and 1.12.8, respectively; and JUnit 5.10.3. These versions will be included in Spring Boot 3.3.2 and 3.2.8. More details on these releases may be found in the release notes for version 1.1.2 and version 1.0.8.