Skip to content

v4.0.0-M2

Pre-release
Pre-release
Compare
Choose a tag to compare
@spring-builds spring-builds released this 21 Aug 22:32
· 14 commits to main since this release

⭐ New Features

  • Rename metrics, observation, and tracing modules to include micrometer in their names and packages #46925
  • Drop support for Undertow as it is not Servlet 6.1 compatible #46917
  • Harmonize Logback's console and file logging charset #46846
  • Make spring-boot-starter-opentelemetry produce OTLP output from instrumentation #46842
  • Add '@HttpServiceClient' scanning auto-configuration #46782
  • Add dependency management for JSpecify #46776
  • Drop Actuator endpoint parameter support for javax.annotations.NonNull #46773
  • Remove StreamBuilderFactoryBeanCustomizer in favor of Spring Kafka's StreamsBuilderFactoryBeanConfigurer #46675
  • Rely on org.springframework.core.Nullness to determine if an Actuator endpoint is optional #46593
  • Provide configuration property to disable console logging #46592
  • Add JSpecify nullability annotations #46587
  • Add auto-configuration and properties support for Spring Framework's new API Versioning #46519
  • Ensure RestClient uses Virtual Thread Executor when spring.threads.virtual.enabled=true and JdkClientHttpRequestFactoryBuilder #46404
  • Create spring-boot-autoconfigure-classic module #46233
  • Auto-configure Elasticsearch's new Rest5Client rather than the legacy RestClient #46061
  • Raise the minimum supported version of Gradle to 8.14 #43574
  • Support Gradle 9 #43573
  • Make auto-configurations final and remove public members #32883

🐞 Bug Fixes

  • HTTP Service Client properties are not applied #46915
  • Hazelcast health indicator reports the wrong status when Hazelcast has shut down due to an out-of-memory error #46910
  • Configuration Metadata for Actuator endpoints does not take Nullness into account #46854
  • Performance critical tracing code has high overhead due to the use of the Stream API #46845
  • Default authorization server filter chain configuration is excluded in M1 release when actuator starter is on the classpath #46841
  • SpringLiquibaseCustomizer is exposed outside its defined visibility scope #46759
  • Race condition in OutputCapture can result in stale data #46722
  • Auto-configured WebClient no longer uses context's ReactorResourceFactory #46684
  • WebTestClientAutoConfiguration fails when WebFlux is on the classpath and spring-boot-http-codec is not #46678
  • Default value not detected for a field annoted with @Name #46667
  • Missing metadata when using @Name with a constructor-bound property #46664
  • Missing property for Spring Authorization Server's PAR endpoint #46648
  • Auto-configured MockMvc ignores @FilterRegistration annotation #46647
  • Property name is incorrect when reporting a mis-configured OAuth 2 Resource Server JWT public key location #46637
  • Memory not freed on context restart in JpaMetamodel#CACHE with spring.main.lazy-initialization=true #46635
  • Failure to discover default value for a primitive should not lead to document its default value #46562
  • WebTestClient is now bound to previous test server port when test application context is paused #46557
  • Spring Boot 4.0.0-M1 has a typo in spring-boot-dependencies.pom for spring-boot-starter-opentelemetry #46549
  • spring-boot-metrics with micrometer-registry-otlp throws exception if spring-boot-opentelemetry is missing #46303

📔 Documentation

  • Update Servlet container system requirements #46918
  • Kotlin samples for configuration metadata are in the wrong package #46858
  • Observability examples in the reference guide are missing the Kotlin version #46799
  • Align method descriptions for SslOptions getCiphers and getEnabledProtocols with '@returns' #46770
  • Tracing samples in the reference guide are missing the Kotlin version #46768
  • Improve Virtual Threads section to mention the changes in Java 24 #46611
  • spring.test.webtestclient.timeout is not documented #46589
  • spring-boot-test-autoconfigure should use the configuration properties annotation processor like other modules #46586
  • spring.test.mockmvc properties are not documented #46579

🔨 Dependency Upgrades

  • Upgrade to Angus Mail 2.0.4 #46735
  • Upgrade to AssertJ 3.27.4 #46736
  • Upgrade to Byte Buddy 1.17.7 #46887
  • Upgrade to Couchbase Client 3.9.0 #46797
  • Upgrade to Elasticsearch 9.1.0 #46686
  • Upgrade to Elasticsearch Client 9.1.1 #46827
  • Upgrade to Flyway 11.11.1 #46894
  • Upgrade to GraphQL Java 25.0.beta-5 #46880
  • Upgrade to Hibernate 7.1.0.Final #46738
  • Upgrade to HikariCP 7.0.1 #46739
  • Upgrade to HtmlUnit 4.15.0 #46895
  • Upgrade to Jackson Bom 2.20.0-rc1 #46815
  • Upgrade to Jedis 6.1.0 #46687
  • Upgrade to Jetty 12.1.0 #46906
  • Upgrade to Jetty Reactive HTTPClient 4.0.11 #46888
  • Upgrade to jOOQ 3.19.25 #46809
  • Upgrade to Json-smart 2.6.0 #46742
  • Upgrade to Lettuce 6.8.0.RELEASE #46750
  • Upgrade to MariaDB 3.5.5 #46810
  • Upgrade to Maven Javadoc Plugin 3.11.3 #46889
  • Upgrade to Micrometer 1.16.0-M2 #46811
  • Upgrade to Micrometer Tracing 1.6.0-M2 #46812
  • Upgrade to Mockito 5.19.0 #46896
  • Upgrade to MSSQL JDBC 13.2.0.jre11 #46897
  • Upgrade to MySQL 9.4.0 #46743
  • Upgrade to Native Build Tools Plugin 0.11.0 #46501
  • Upgrade to Netty 4.2.4.Final #46829
  • Upgrade to OpenTelemetry 1.53.0 #46813
  • Upgrade to Oracle Database 23.9.0.25.07 #46744
  • Upgrade to Prometheus Client 1.4.1 #46898
  • Upgrade to Pulsar 4.0.6 #46745
  • Upgrade to Reactor Bom 2025.0.0-M6 #46814
  • Upgrade to REST Assured 5.5.6 #46850
  • Upgrade to Selenium 4.35.0 #46899
  • Upgrade to Selenium HtmlUnit 4.35.0 #46900
  • Upgrade to Spring AMQP 4.0.0-M4 #46803
  • Upgrade to Spring Authorization Server 2.0.0-M2 #46617
  • Upgrade to Spring Batch 6.0.0-M2 #46618
  • Upgrade to Spring Data Bom 2025.1.0-M5 #46619
  • Upgrade to Spring Framework 7.0.0-M8 #46620
  • Upgrade to Spring GraphQL 2.0.0-M2 #46628
  • Upgrade to Spring HATEOAS 3.0.0-M4 #46804
  • Upgrade to Spring Integration 7.0.0-M2 #46805
  • Upgrade to Spring Kafka 4.0.0-M4 #46806
  • Upgrade to Spring LDAP 4.0.0-M2 #46621
  • Upgrade to Spring Pulsar 2.0.0-M2 #46622
  • Upgrade to Spring RESTDocs 4.0.0-M2 #46623
  • Upgrade to Spring Security 7.0.0-M2 #46624
  • Upgrade to Spring Session 4.0.0-M2 #46901
  • Upgrade to Tomcat 11.0.10 #46747

❤️ Contributors

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

@Kguswo, @deejay1, @ganjisriver, @izeye, @jetflo, @ngocnhan-tran1996, @nicolasgarea, @nosan, @prishedko, @quaff, @schmidti159, @scordio, @shakuzen, @smartandhandsome, @spencergibb, @tommyk-gears, @wonyongg, and @zakaria-shahen