最近,Spring 生态系统活动频繁,主要发布了 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 和 Spring Shell 的新版本。
Spring Boot
Spring Boot的3.4.1版本和3.3.7版本改进了文档、升级了依赖关系并解决了一些值得注意的问题,例如,由于Log4J2LoggingSystem
类中定义的getShutdownHandler()
方法持有对底层环境的引用,导致SpringApplicationShutdownHandlers
接口的实现无法按确定的顺序运行;在启用虚拟线程的 Java 21 上启动 Maven shaded 应用程序时出现UnsupportedOperationException
异常。有关这些版本的更多详细信息,请参阅3.4.1版本和3.3.7版本的发布说明。
Spring Security
Spring Security的 6.4.2 版本和 6.3.6 版本包含了缺陷修复、依赖关系升级和 6.4.2 版本中的新特性,例如,改进了AuthorizationManager
接口错误信息的配置;新的WebAuthnWebDriverTests
类可验证完整的端到端 Web 身份认证流程,包括默认登录和注销页面中打包的 JavaScript 代码。关于这些版本的更多详细信息,请参阅6.4.2版本和6.3.6版本的发布说明。
Spring Authorization Server
Spring Authorization Server 1.4.1 版本和 1.3.4 版本提供了缺陷修复、依赖关系升级和 1.4.1 版本中的新特性,例如,用emptyMap()
方法取代unmodifiableMap()
方法(这两种方法都定义在 Java Collections
类中),因为emptyMap()
返回的是声明为final
的 Java Map
实例;如果缺少参数,则使用一致的方法为令牌类(如OAuth2DeviceVerificationAuthenticationToken
类)创建空 Map。有关这些版本的更多详细信息,请参阅1.4.1版本和1.3.4版本的发布说明。
Spring Session
Spring Session的 3.4.1 版本和 3.3.5 版本分别对 Spring Framework 6.2.1 和 6.1.16、Spring Security6.4.1 和 6.3.6、Spring Data 2024.1.1 和 2024.0.7 以及 Project Reactor 2023.0.13 进行了依赖关系升级。关于这些版本的更多详细信息,请参阅3.4.1版本和3.3.5版本的发布说明。
Spring Integration
Spring Integration的 6.4.1 版本和 6.3.7 版本提供了缺陷修复、依赖关系升级和一项新功能,即在不需要回复的AbstractReplyProducingMessageHandler
类实例未启用日志记录时,可避免记录消息。关于这些版本的更多详细信息,请参阅6.4.1版本和6.3.7版本的发布说明。
Spring Modulith
Spring Modulith的 1.3.1 版本、1.2.7 版本和 1.1.12 版本发布,提供了缺陷修复、依赖关系升级和功能改进,例如,Spring Boot 兼容性矩阵;更新了Asciidoctor
类,以增强应用模块画布的渲染;允许在调用ApplicationsModules
类中定义的detectViolations()
方法时过滤Violations
类。关于这些版本的更多详细信息,请参阅1.3.1版本、1.2.7版本和1.1.12版本的发布说明。
Spring Batch
Spring Batch的 5.2.1 版本和 5.1.3 版本发布,提供了缺陷修复、文档改进、依赖关系升级和一项新功能,即解决由于 PostgreSQL 数据库与DatabaseType
枚举类中的EnterpriseDB
引用之间关联缺失而导致的IllegalArgumentException
异常。有关这些版本的更多详细信息,请参阅5.2.1版本和v5.1.3版本的发布说明。
Spring AMQP
Spring AMQP 3.2.1 发布,提供了缺陷修复、文档改进、依赖关系升级以及一项新特性,该特性提供了CachingConnectionFactory
类与 Spring Boot RabbitProperties
类之间的兼容性。关于该版本的更多详细信息,请参阅RabbitProperties
发布说明。
Spring for Apache Kafka
Spring for Apache Kafka的 3.3.1 版本和 3.2.6 版本发布,提供了缺陷修复、文档改进、依赖关系升级和新功能,例如,与Kafka Client 3.9.0 兼容;移除synchronized
关键字,改用可重入锁,以确保这些方法对虚拟线程友好,从而避免阻塞和锚定(pinning);能够直接配置观测注册表,而不是从应用程序上下文中获取。这些版本分别包含在了 Spring Boot 3.3.7 和 3.4.1 中。关于这些版本的更多详细信息,请参阅3.3.1版本和3.2.6版本的发布说明。
Spring for Apache Pulsar
Spring for Apache Pulsar 1.2.1 和 1.1.7发布,提供了文档改进和相应的依赖关系升级,例如,它们分别对应了 Spring Framework 6.2.1 和 6.1.16、Micrometer Metrics 1.14.2 和 1.13.9 以及 Project Reactor 2024.0.1 和 2023.0.13。这些版本分别包含在了 Spring Boot 3.3.7 和 3.4.1 中。关于这些版本的更多详细信息,请参阅1.2.1版本和1.1.7版本的发布说明。
Spring Shell
Spring Shell 3.3.4发布,该版本将依赖关系升级到了 Spring Boot 3.3.6 和Apache Commons IO 2.18.0。关于该版本的更多详细信息,请参阅发布说明和更新日志。
原文链接:
Spring News Roundup: Delivering Point Releases of Boot, Security, Authorization Server, Session
评论