7 hours ago
spring-boot

v4.0.0

⭐ New Features

  • Change tomcat and jetty runtime modules to starters #48175
  • Rename spring-boot-kotlin-serialization to align with the name of the Kotlinx module that it pulls in #48076

🐞 Bug Fixes

  • Error properties are a general web concern and should not be located beneath server.* #48201
  • With both Jackson 2 and 3 on the classpath, @JsonTest fails due to duplicate jacksonTesterFactoryBean #48198
  • Gradle war task does not exclude starter POMs from lib-provided #48197
  • spring.test.webclient.mockrestserviceserver.enabled is not aligned with its module's name #48193
  • SslMeterBinder doesn't register metrics for dynamically added bundles if no bundles exist at bind time #48182
  • Properties bound in the child management context ignore the parent's environment prefix #48177
  • ssl.chain.expiry metrics doesn't update for dynamically registered SSL bundles #48171
  • Starter for spring-boot-micrometer-metrics is missing #48161
  • Elasticsearch client's sniffer functionality should not be enabled by default #48155
  • spring-boot-starter-elasticsearch should depend on elasticsearch-java #48141
  • Auto-configuration exclusions are checked using a different class loader to the one that loads auto-configuration classes #48132
  • New arm64 macbooks fail to bootBuildImage due to incorrect platform image #48128
  • Properties for configuring an isolated JsonMapper or ObjectMapper are incorrectly named #48116
  • Buildpack fails with recent Docker installs due to hardcoded version in URL #48103
  • Image building may fail when specifying a platform if an image has already been built with a different platform #48099
  • Default values of Kotlinx Serialization JSON configuration properties are not documented #48097
  • Custom XML converters should override defaults in HttpMessageConverters #48096
  • Kotlin serialization is used too aggressively when other JSON libraries are available #48070
  • PortInUseException incorrectly thrown on failure to bind port due to Netty IP misconfiguration #48059
  • Auto-configured JCacheMetrics cannot be customized #48057
  • WebSecurityCustomizer beans are excluded by WebMvcTest #48055
  • Deprecated EnvironmentPostProcessor does not resolve arguments #48047
  • RetryPolicySettings should refer to maxRetries, not maxAttempts #48023
  • Devtools Restarter does not work with a parameterless main method #47996
  • Dependency management for Kafka should not manage Scala 2.12 libraries #47991
  • spring-boot-mail should depend on jakarta.mail:jakarta.mail-api and org.eclipse.angus:angus-mail instead of org.eclipse.angus:jakarta.mail #47983
  • spring-boot-starter-data-mongodb-reactive has dependency on reactor-test #47982
  • Support for ReactiveElasticsearchClient is in the wrong module #47848

📔 Documentation

  • Removed property spring.test.webclient.register-rest-template is still documented #48199
  • Mention support for detecting AWS ECS in "Deploying to the Cloud" #48170
  • Revise AWS section of "Deploying to the Cloud" in reference manual #48163
  • Fix typo in PortInUseException Javadoc #48134
  • Correct section about required setters in "Type-safe Configuration Properties" #48131
  • Use since attribute in configuration properties deprecation consistently #48122
  • Document EndpointJsonMapper and management.endpoints.jackson.isolated-json-mapper #48115
  • Document support for configuring servlet context init parameters using properties #48112
  • Some configuration properties are not documented in the appendix #48095
  • Clarify how warnings about soon-to-expire SSL certificates are reported #48063
  • Document how to use ContextPropagatingTaskDecorator for propagating trace context over thread boundaries #48053
  • Document the level of support for the OpenTelemetry APIs #47960
  • Document that you need to build with Java 25 for buildpack build-image Graal support #45501

🔨 Dependency Upgrades

  • Upgrade to Cassandra Driver 4.19.2 #48184
  • Upgrade to DB2 JDBC 12.1.3.0 #48087
  • Upgrade to Elasticsearch Client 9.2.1 #48137
  • Upgrade to GraphQL Java 25.0 #48034
  • Upgrade to Hibernate 7.1.8.Final #48150
  • Upgrade to Jackson Bom 3.0.2 #48089
  • Upgrade to Jetty 12.1.4 #48120
  • Upgrade to Jetty Reactive HTTPClient 4.1.4 #48151
  • Upgrade to jOOQ 3.19.28 #48090
  • Upgrade to Kafka 4.1.1 #48185
  • Upgrade to Logback 1.5.21 #48091
  • Upgrade to Micrometer 1.16.0 #47820
  • Upgrade to Micrometer Tracing 1.6.0 #47821
  • Upgrade to MySQL 9.5.0 #48092
  • Upgrade to Native Build Tools Plugin 0.11.3 #48051
  • Upgrade to Neo4j Java Driver 6.0.2 #47997
  • Upgrade to Prometheus Client 1.4.3 #48093
  • Upgrade to Reactor Bom 2025.0.0 #47822
  • Upgrade to Spring AMQP 4.0.0 #47823
  • Upgrade to Spring Batch 6.0.0 #47834
  • Upgrade to Spring Data Bom 2025.1.0 #47824
  • Upgrade to Spring Framework 7.0.1 #48168
  • Upgrade to Spring GraphQL 2.0.0 #47826
  • Upgrade to Spring HATEOAS 3.0.0 #47827
  • Upgrade to Spring Integration 7.0.0 #47828
  • Upgrade to Spring Kafka 4.0.0 #47829
  • Upgrade to Spring LDAP 4.0.0 #47999
  • Upgrade to Spring Pulsar 2.0.0 #47830
  • Upgrade to Spring RESTDocs 4.0.0 #47831
  • Upgrade to Spring Security 7.0.0 #47832
  • Upgrade to Spring Session 4.0.0 #48000
  • Upgrade to Spring WS 5.0.0 #47833
  • Upgrade to Testcontainers 2.0.2 #48152
  • Upgrade to Tomcat 11.0.14 #48094

❤️ Contributors

Thank you to all the contributors who worked on this release:

@K-jun98, @TerryTaoYY, @filiphr, @hojooo, @linw-bai, @nosan, @scottfrederick, @stevearmstrong-dev, @stewue, and @vpavic

11 hours ago
jedis

7.1.0

Changes

  • Adding a registry that maps command names to their flags (#4332)
  • Reduce log level to warn on reconnect in JedisSentinelPool (#4336)

🚀 New Features

  • Add support for CAS/CAD, DELEX, DIGEST commands (#4363)
  • Add support for CLAIM arg in XREADGROUP (#4344)
  • Add MSETEX command support (#4361)

🐛 Bug Fixes

  • Fix connection leak in scanIteration with JedisSentineled #4323 (#4328)

🧰 Maintenance

  • Bump org.jacoco:jacoco-maven-plugin from 0.8.13 to 0.8.14 (#4327)
  • Bump org.apache.httpcomponents.client5:httpclient5-fluent from 5.5 to 5.5.1 (#4325)
  • Increase timeout for countDownLatch await (#4333)
  • docs: Correct builder to use hostAndPort method (#4322)
  • docs: document required optional dependency resilience4j-all (#4321)
  • Enable code highlighting in the docs (#4319)

Contributors

We'd like to thank all the contributors who worked on this release!

@ChrisMcD1, @a-TODO-rov, @dependabot, @dependabot[bot], @ggivo and @uglide

11 hours ago
spring-boot

v3.5.8

⚠️ Noteworthy changes

🐞 Bug Fixes

  • Gradle war task does not exclude starter POMs from lib-provided #48196
  • Testcontainers integration fails on Docker 29.0.0 #48192
  • SslMeterBinder doesn't register metrics for dynamically added bundles if no bundles exist at bind time #48180
  • Properties bound in the child management context ignore the parent's environment prefix #48176
  • ssl.chain.expiry metrics doesn't update for dynamically registered SSL bundles #48153
  • Auto-configuration exclusions are checked using a different class loader to the one that loads auto-configuration classes #48129
  • New arm64 macbooks fail to bootBuildImage due to incorrect platform image #48127
  • NullPointerException when using @ConditionalOnSingleCandidate with multiple manually registered singletons #48123
  • Buildpack fails with recent Docker installs due to hardcoded version in URL #48102
  • Image building may fail when specifying a platform if an image has already been built with a different platform #48098
  • Undertow's ServletContext is destroy too early, making it unusable in @PreDestroy methods #48061
  • PortInUseException incorrectly thrown on failure to bind port due to Netty IP misconfiguration #48058
  • Auto-configured JCacheMetrics cannot be customized #48056
  • WebSecurityCustomizer beans are excluded by WebMvcTest #48054
  • Devtools Restarter does not work with a parameterless main method #47987
  • Setting 'max-uri-tags' does not prevent unlimited meter growth on any AutoConfiguredCompositeMeterRegistry #47923
  • Docker response 407 is not handled correctly resulting in no error message #47900
  • spring-boot-maven-plugin process-aot goal does not find package-private main method #47780

📔 Documentation

  • Revise AWS section of "Deploying to the Cloud" in reference manual #48156
  • Fix typo in PortInUseException Javadoc #48133
  • Correct section about required setters in "Type-safe Configuration Properties" #48130
  • Document EndpointObjectMapper and management.endpoints.jackson.isolated-object-mapper #48114
  • Document support for configuring servlet context init parameters using properties #48111
  • Clarify how warnings about soon-to-expire SSL certificates are reported #48062
  • Document how to use ContextPropagatingTaskDecorator for propagating trace context over thread boundaries #48052
  • Use since attribute in configuration properties deprecation consistently #47980
  • BootstrapContext#getOrElseThrow has incorrect reference to IllegalStateException #47905
  • Clarify when BootstrapContext get methods may return null rather than throwing an exception or calling the fallback supplier #47898
  • Document that Actuator endpoint may have at most one extension of each type #47873
  • Limit Kotlin API documentation to Kotlin-specific APIs #47859
  • Adapt AOTCache documentation to JEP 514 #47274

🔨 Dependency Upgrades

  • Downgrade to Cassandra Driver 4.19.0 #47926
  • Upgrade to AspectJ 1.9.25 #48005
  • Upgrade to Caffeine 3.2.3 #48006
  • Upgrade to Cassandra Driver 4.19.2 #48183
  • Upgrade to DB2 JDBC 12.1.3.0 #48083
  • Upgrade to Hibernate 6.6.36.Final #48148
  • Upgrade to Jackson Bom 2.19.4 #48008
  • Upgrade to Jetty 12.0.30 #48118
  • Upgrade to Jetty Reactive HTTPClient 4.0.13 #48149
  • Upgrade to jOOQ 3.19.28 #48084
  • Upgrade to Logback 1.5.21 #48085
  • Upgrade to Micrometer 1.15.6 #48009
  • Upgrade to Micrometer Tracing 1.5.6 #48010
  • Upgrade to MySQL 9.5.0 #48011
  • Upgrade to Neo4j Java Driver 5.28.10 #48044
  • Upgrade to Quartz 2.5.1 #48012
  • Upgrade to R2DBC Postgresql 1.0.9.RELEASE #48013
  • Upgrade to Reactor Bom 2024.0.12 #48014
  • Upgrade to Spring Data Bom 2025.0.6 #48039
  • Upgrade to Spring Framework 6.2.14 #48166
  • Upgrade to Spring Integration 6.5.4 #48040
  • Upgrade to Spring Kafka 3.3.11 #48041
  • Upgrade to Spring Pulsar 1.2.12 #48042
  • Upgrade to Spring Security 6.5.7 #48043
  • Upgrade to Tomcat 10.1.49 #48086

❤️ Contributors

Thank you to all the contributors who worked on this release:

@K-jun98, @TerryTaoYY, @hojooo, @linw-bai, @mipo256, @namest504, @ngocnhan-tran1996, @nosan, @scottfrederick, @siva-sai-udaygiri, @tschut, and @vpavic

14 hours ago
spring-boot

v3.4.12

⚠️ Noteworthy changes

This release contains a fix to get Testcontainers working with modern Docker versions. If this causes problems in your setup, you can downgrade the minimum Docker API, effectively reverting that change.

🐞 Bug Fixes

  • Gradle war task does not exclude starter POMs from lib-provided #48195
  • Testcontainers integration fails on Docker 29.0.0 #48104
  • NullPointerException when using @ConditionalOnSingleCandidate with multiple manually registered singletons #48117
  • Buildpack fails with recent Docker installs due to hardcoded version in URL #48050
  • PortInUseException incorrectly thrown on failure to bind port due to Netty IP misconfiguration #47618
  • Image building may fail when specifying a platform if an image has already been built with a different platform #47292
  • Setting 'max-uri-tags' does not prevent unlimited meter growth on any AutoConfiguredCompositeMeterRegistry #47285
  • WebSecurityCustomizer beans are excluded by WebMvcTest #47255
  • Docker response 407 is not handled correctly resulting in no error message #47180
  • Undertow's ServletContext is destroy too early, making it unusable in @PreDestroy methods #47141
  • New arm64 macbooks fail to bootBuildImage due to incorrect platform image #46665
  • Auto-configured JCacheMetrics cannot be customized #46212
  • Properties bound in the child management context ignore the parent's environment prefix #45858

📔 Documentation

  • Fix typo in PortInUseException Javadoc #48124
  • Document support for configuring servlet context init parameters using properties #47951
  • BootstrapContext#getOrElseThrow has incorrect reference to IllegalStateException #47903
  • Clarify when BootstrapContext get methods may return null rather than throwing an exception or calling the fallback supplier #47896
  • Document how to use ContextPropagatingTaskDecorator for propagating trace context over thread boundaries #47893
  • Limit Kotlin API documentation to Kotlin-specific APIs #47763
  • Document that Actuator endpoint may have at most one extension of each type #47740
  • Some spring.test.* properties are not documented #47236
  • Document EndpointObjectMapper and management.endpoints.jackson.isolated-object-mapper #47039
  • Clarify how warnings about soon-to-expire SSL certificates are reported #45564
  • Correct section about required setters in "Type-safe Configuration Properties" #43138

🔨 Dependency Upgrades

  • Upgrade to AspectJ 1.9.25 #48015
  • Upgrade to Hibernate 6.6.36.Final #48146
  • Upgrade to Jackson Bom 2.18.5 #48017
  • Upgrade to Jetty 12.0.30 #48119
  • Upgrade to Jetty Reactive HTTPClient 4.0.13 #48147
  • Upgrade to jOOQ 3.19.28 #48078
  • Upgrade to Logback 1.5.21 #48079
  • Upgrade to Micrometer 1.14.13 #48018
  • Upgrade to Micrometer Tracing 1.4.12 #48019
  • Upgrade to MySQL 9.5.0 #48020
  • Upgrade to Neo4j Java Driver 5.28.10 #48030
  • Upgrade to R2DBC Postgresql 1.0.9.RELEASE #48021
  • Upgrade to Reactor Bom 2024.0.12 #48022
  • Upgrade to Spring Data Bom 2024.1.12 #48024
  • Upgrade to Spring Framework 6.2.14 #48165
  • Upgrade to Spring Integration 6.4.9 #48026
  • Upgrade to Spring Kafka 3.3.11 #48027
  • Upgrade to Spring Pulsar 1.2.12 #48028
  • Upgrade to Spring Security 6.4.13 #48029
  • Upgrade to Tomcat 10.1.49 #48080

❤️ Contributors

Thank you to all the contributors who worked on this release:

@K-jun98, @hojooo, @mipo256, @namest504, @ngocnhan-tran1996, @nosan, @siva-sai-udaygiri, and @tschut

14 hours ago
spring-framework

v7.0.1

⭐ New Features

  • Align RestOperations Kotlin extensions nullability with Java one #35852
  • Add resetCaches() method to Caffeine/ConcurrentMapCacheManager #35840
  • Fix single-check idiom in UnmodifiableMultiValueMap #35822
  • Fix Spliterator characteristics in ConcurrentReferenceHashMap #35817
  • RestTestClient does not configure JsonPathAssertions in the same way as WebTestClient #35793

🐞 Bug Fixes

  • Fix JdbcOperations Kotlin extensions #35846
  • Fix getCacheNames() concurrent access in NoOpCacheManager #35842
  • Annotation discovery regression for interfaces extending BeanNameAware and co. #35835
  • MissingPathVariableException produces wrong status code in ProblemDetail #35829
  • Refine ParameterizedPreparedStatementSetter nullability #35749
  • Fix HtmlUtils unescape for supplementary chars #35477

📔 Documentation

  • Fix cross-reference links in HtmlUnit sections #35853
  • Remove @see Javadoc references to deprecated PropertiesBeanDefinitionReader #35836
  • Replace kotlin-issues attribute reference #35820
  • Document semantics and behavior of SpringExtension.getApplicationContext() #35764

❤️ Contributors

Thank you to all the contributors who worked on this release:

@juntae6942, @kilink, @ngocnhan-tran1996, and @quaff

15 hours ago
spring-framework

v6.2.14

⭐ New Features

  • Add resetCaches() method to Caffeine/ConcurrentMapCacheManager #35841
  • Fix single-check idiom in UnmodifiableMultiValueMap #35831
  • Fix Spliterator characteristics in ConcurrentReferenceHashMap #35828

🐞 Bug Fixes

  • MissingPathVariableException produces wrong status code in ProblemDetail #35856
  • Fix getCacheNames() concurrent access in NoOpCacheManager #35844
  • Annotation discovery regression for interfaces extending BeanNameAware and co. #35838
  • Fix HtmlUtils unescape for supplementary chars #35832

📔 Documentation

  • Fix cross-reference links in HtmlUnit sections #35857
  • Remove @see Javadoc references to deprecated PropertiesBeanDefinitionReader #35854