Skip to content

v3.4.0

Latest
Compare
Choose a tag to compare
@spring-builds spring-builds released this 21 Nov 17:55
· 64 commits to main since this release

⭐ New Features

  • Add withDefaultRequestConfigCustomizer method to HttpComponentsClientHttpRequestFactoryBuilder #43139
  • Fail JsonWriter if duplicate names are detected #43041
  • Add JsonObjectDeserializer.nullSafeValue method that accepts a mapper Function #42972
  • Support timeout property for GraphQL over SSE #42966
  • Improve performance of ConfigurationPropertiesBinder by storing bind handlers on first access #42950
  • Improve performance of ConcurrentReferenceCachingMetadataReaderFactory #42949
  • Log warning in HikariCheckpointRestoreLifecycle if pool suspension isn't configured #42937
  • Remove spring-boot-starter-aop dependency from spring-boot-starter-data-jpa and spring-boot-starter-integration #42934

🐞 Bug Fixes

  • Jersey body handling is inconsistent with Spring Webflux and Spring MVC #43209
  • Classes are accidentally named "structure logging" instead of "structured logging" #43203
  • StructuredLoggingJsonProperties customizer should be a Class reference rather than a String #43202
  • Cannot package OCI image when 'docker.io/paketobuildpacks/new-relic' is provided as a buildpack #43171
  • Incorrect Type for 'management.endpoints.access.default' defined in additional-spring-configuration-metadata.json #43154
  • WebServerPortFileWriter fails when using a portfile without extension #43117
  • SslOptions.isSpecified() only returns true if ciphers and enabled protocols are set #43084
  • SslHealthIndicator throws NullPointerException when using SslBundle with SslStoreBundle.NONE #43078
  • JdkClientHttpRequestFactoryBuilder and JettyClientHttpRequestFactoryBuilder do not set Ciphers or Enabled Protocols #43077
  • Root cause of errors is hidden when loading images from archive #43070
  • mvn spring-boot:run fails on Windows with "Could Not Find or Load Main Class" when path contains non-ASCII characters #43062
  • A @SpyBean on the output of a FactoryBean is not reset #43053
  • Logback logging system does not process URLs with paths not ending in .xml #42990
  • Bean-based conditions do not consider factory beans correctly when determining if they are a candidate #42970
  • NPE in bootBuildImage when setting DOCKER_CONTEXT=default #42960
  • Warning due to duplicate MockResolver extensions #42957
  • HttpHostConnectException is thrown when using buildpacks with Gradle or Maven on Windows #42952
  • build-info doesn't support seconds since the epoch from project.build.outputTimestamp #42936
  • NPE in OnClassCondition.resolveOutcomesThreaded following thread interruption because firstHalf is null #42926
  • Default WebSocketMessageBrokerConfigurer is always overriding custom channel executor #42924
  • X-Registry-Auth header sent to Docker Engine API contains field "authHeader" #42915
  • ApplicationContextRunner has inconsistent behaviour with duplicate auto-configuration class names #17963

📔 Documentation

  • Migrate class references to full javadoc links #43239
  • Documentation for 'spring.datasource.type' is misleading #43199
  • Update "Upgrading From" section to use "2.x" #43160
  • Include spring-boot-loader in API documentation #43153
  • Document how and where to add custom GraalVM configuration files #43074
  • Rework DataSource configuration examples to separate defining an additional DataSource and defining a DataSource of a different type #43059
  • Location of the layers schema is incorrect in the Maven Plugin's examples #43033
  • Link to Eclipse setup instructions #42954
  • Fix link to Checkpoint and Restore status page #42939

🔨 Dependency Upgrades

  • Upgrade to ActiveMQ 6.1.4 #43128
  • Upgrade to Byte Buddy 1.15.10 #43097
  • Upgrade to Couchbase Client 3.7.5 #43098
  • Upgrade to Elasticsearch Client 8.15.4 #43129
  • Upgrade to Flyway 10.20.1 #43130
  • Upgrade to Groovy 4.0.24 #43099
  • Upgrade to Hibernate 6.6.2.Final #43100
  • Upgrade to HttpClient5 5.4.1 #43102
  • Upgrade to Infinispan 15.0.11.Final #43131
  • Upgrade to Jackson Bom 2.18.1 #43103
  • Upgrade to Jetty 12.0.15 #43104
  • Upgrade to jOOQ 3.19.15 #43105
  • Upgrade to Kafka 3.8.1 #43106
  • Upgrade to Lettuce 6.4.1.RELEASE #43185
  • Upgrade to Logback 1.5.12 #43107
  • Upgrade to Lombok 1.18.36 #43186
  • Upgrade to Maven Dependency Plugin 3.8.1 #43108
  • Upgrade to Maven Failsafe Plugin 3.5.2 #43109
  • Upgrade to Maven Surefire Plugin 3.5.2 #43110
  • Upgrade to Micrometer 1.14.1 #43187
  • Upgrade to Micrometer Tracing 1.4.0 #43120
  • Upgrade to MongoDB 5.2.1 #43111
  • Upgrade to Netty 4.1.115.Final #43133
  • Upgrade to Prometheus Client 1.3.3 #43112
  • Upgrade to Pulsar Reactive 0.5.9 #43188
  • Upgrade to Reactor Bom 2024.0.0 #43015
  • Upgrade to Spring AMQP 3.2.0 #43016
  • Upgrade to Spring Authorization Server 1.4.0 #43017
  • Upgrade to Spring Batch 5.2.0 #43018
  • Upgrade to Spring Data Bom 2024.1.0 #43019
  • Upgrade to Spring Framework 6.2.0 #43020
  • Upgrade to Spring HATEOAS 2.4.0 #43021
  • Upgrade to Spring Integration 6.4.0 #43022
  • Upgrade to Spring Kafka 3.3.0 #43023
  • Upgrade to Spring LDAP 3.2.8 #43189
  • Upgrade to Spring Pulsar 1.2.0 #43024
  • Upgrade to Spring RESTDocs 3.0.3 #43025
  • Upgrade to Spring Security 6.4.1 #43232
  • Upgrade to Spring Session 3.4.0 #43027
  • Upgrade to Testcontainers 1.20.4 #43243
  • Upgrade to Tomcat 10.1.33 #43134
  • Upgrade to Undertow 2.3.18.Final #43166
  • Upgrade to WebJars Locator Lite 1.0.1 #43135

❤️ Contributors

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

@ahoehma, @deki, @izeye, @ngocnhan-tran1996, @nosan, @quaff, and @wickdynex