Update dependency org.springframework.boot:spring-boot-starter-json to v4 #38

Open
renovate wants to merge 1 commits from renovate/org.springframework.boot-spring-boot-starter-json-4.x into main
Collaborator

This PR contains the following updates:

Package Type Update Change
org.springframework.boot:spring-boot-starter-json (source) compile major 3.5.114.1.0

Release Notes

spring-projects/spring-boot (org.springframework.boot:spring-boot-starter-json)

v4.1.0

Compare Source

Full release notes for Spring Boot 4.1 are available on the wiki.

New Features

  • Add public constructor to InvalidConfigurationPropertyValueException that accepts a cause #​50211
  • Reduce memory consumption when repeatedly calling WritableJson.toByteArray #​49428

🐞 Bug Fixes

  • MailSender auto-configuration does not enable hostname verification #​50747
  • Artemis auto-configuration uses a predictable default location for the embedded broker's data #​50745
  • Embedded LDAP SSL should not be enabled when its bundle is empty #​50700
  • InetAddressFilter.externalAddresses does not exclude special purpose addresses from RFC 6890 #​50668
  • NullPointerException in reactor-netty SniProvider and unmapped SSL bundle with RSocket #​50645
  • SSL should not be enabled when a SSL bundle is overridden to an empty string #​50635
  • Test auto-configuration no longer integrates Spring Security with HtmlUnitDriver #​50633
  • Configuration property metadata includes incorrect class references #​50632
  • Docker Compose support does not restore thread interrupt flag when catching InterruptedException #​50618
  • RabbitProperties enables SSL even when spring.rabbitmq.ssl.bundle is overridden to an empty string #​50612
  • NullPointerException in reactor-netty SniProvider when SSL bundle uses client-auth or server truststore without server-name-bundles #​50610
  • SpringJtaPlatform should have been deprecated since 4.1.0-M3 #​50592
  • Layer written outside the output location of '//' exception is thrown when using extract layers in root directory #​50510
  • ConfigurationPropertiesReportEndpoint exposes AOP proxy internals #​50417
  • Created StackTracePrinter instances have no access to the Environment #​50414
  • MappingsEndpoint reports the context's own ID as parentId when a parent exists #​50412
  • Buildpack module does not validate long-to-int casts #​50410
  • Gradle gRPC support fails if protobuf-java dependency is used instead of protobuf-java-util #​50405
  • GraphQL WebSocket support does not configure allowed origins #​50394
  • Spring Boot Loader Does Not Support RSA and EC Signed Jars #​50298
  • Meter registries are not removed from the global registry when the context is closed #​50287
  • DataSourceBuilder cannot derive a DataSource from a lazy connection proxy #​50271
  • Nullable annotations from AbstractErrorController.getErrorAttributes are not aligned with implementation #​50266
  • Bean definitions can be added with an initializer before setAllowBeanDefinitionOverriding is called #​50264
  • EndpointRequest links matcher unnecessarily matches HTTP methods other than GET #​50261
  • Actuator's '/cloudfoundryapplication' endpoint does not work if restrictive CORS configuration is provided using a bean named corsConfigurationSource #​50258
  • ThreadPoolTaskScheduleBuilder unnecessarily loses precision when configuring await termination time #​50234
  • NimbusJwtDecoder silently accepts unknown values for spring.security.oauth2.resourceserver.jwt.jws-algorithms #​50228
  • Missing dependency management for spring-boot-web-server-test #​50224
  • Spring Batch support for MongoDB modules are not included in dependency management #​50223
  • Apply HTML escaping to timestamp attribute in Whitelabel error page #​50216
  • GrpcServerHealthScheduler is not started in servlet environments #​50209
  • Setting server.servlet.session.cookie.partitioned=true has no effect when using Tomcat #​50204

📔 Documentation

  • Fix reference to Gradle documentation for module replacement #​50647
  • Document SSL reloading with Let's Encrypt #​50630
  • Remove the use of Optional from Data Neo4j repository examples #​50622
  • Fix typos in documentation #​50620
  • Clarify dependency requirement for Bean Validation support #​50614
  • Document Java 25 requirement for AOT cache #​50485
  • Add links for Java CAS Client Spring Boot Starter #​50285
  • Document known testcontainers lifecycle issues #​50220
  • Document adding multiple connectors for Jetty #​50218
  • Polish InvalidConfigurationPropertyValueException constructor javadoc #​50214
  • Fix typo in Spring Security OAuth2 client registration documentation #​50199

🔨 Dependency Upgrades

❤️ Contributors

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

@​Abdlatif-nabgha, @​DragonFSKY, @​Kapil-chn7, @​Kimgyuilli, @​SJvaca30, @​SebTardif, @​ares333, @​codingkiddo, @​dlwldnjs1009, @​eddumelendez, @​henriquejsza, @​igormukhin, @​johnnypwong, @​kwondh5217, @​leestana01, @​mheath, @​mmoayyed, @​msridhar, @​ngocnhan-tran1996, @​nosan, @​quaff, @​scordio, @​vinhhieu21, @​vpavic, @​won-seoop, and @​zxuhan

v4.0.7

Compare Source

🐞 Bug Fixes

  • MailSender auto-configuration does not enable hostname verification #​50746
  • Artemis auto-configuration uses a predictable default location for the embedded broker's data #​50744
  • NullPointerException in reactor-netty SniProvider and unmapped SSL bundle with RSocket #​50640
  • SSL should not be enabled when a SSL bundle is overridden to an empty string #​50634
  • Docker Compose support does not restore thread interrupt flag when catching InterruptedException #​50617
  • RabbitProperties enables SSL even when spring.rabbitmq.ssl.bundle is overridden to an empty string #​50611
  • NullPointerException in reactor-netty SniProvider when SSL bundle uses client-auth or server truststore without server-name-bundles #​50609
  • Test auto-configuration no longer integrates Spring Security with HtmlUnitDriver #​50602
  • Layer written outside the output location of '//' exception is thrown when using extract layers in root directory #​50509
  • ConfigurationPropertiesReportEndpoint exposes AOP proxy internals #​50416
  • Created StackTracePrinter instances have no access to the Environment #​50413
  • MappingsEndpoint reports the context's own ID as parentId when a parent exists #​50411
  • Buildpack module does not validate long-to-int casts #​50409
  • GraphQL WebSocket support does not configure allowed origins #​50393
  • Configuration property metadata includes incorrect class references #​50375
  • Spring Boot Loader Does Not Support RSA and EC Signed Jars #​50297
  • Meter registries are not removed from the global registry when the context is closed #​50286
  • Nullable annotations from AbstractErrorController.getErrorAttributes are not aligned with implementation #​50265
  • EndpointRequest links matcher unnecessarily matches HTTP methods other than GET #​50260
  • Actuator's '/cloudfoundryapplication' endpoint does not work if restrictive CORS configuration is provided using a bean named corsConfigurationSource #​50257
  • ThreadPoolTaskScheduleBuilder unnecessarily loses precision when configuring await termination time #​50233
  • NimbusJwtDecoder silently accepts unknown values for spring.security.oauth2.resourceserver.jwt.jws-algorithms #​50227
  • Apply HTML escaping to timestamp attribute in Whitelabel error page #​50215
  • Setting server.servlet.session.cookie.partitioned=true has no effect when using Tomcat #​50201

📔 Documentation

  • Fix reference to Gradle documentation for module replacement #​50646
  • Document SSL reloading with Let's Encrypt #​50629
  • Remove the use of Optional from Data Neo4j repository examples #​50621
  • Fix typos in documentation #​50619
  • Clarify dependency requirement for Bean Validation support #​50613
  • Document Java 25 requirement for AOT cache #​50484
  • Add links for Java CAS Client Spring Boot Starter #​50281
  • Document known testcontainers lifecycle issues #​50219
  • Document adding multiple connectors for Jetty #​50217
  • Polish InvalidConfigurationPropertyValueException constructor javadoc #​50213
  • Fix typo in Spring Security OAuth2 client registration documentation #​50198

🔨 Dependency Upgrades

❤️ Contributors

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

@​Abdlatif-nabgha, @​DragonFSKY, @​Kapil-chn7, @​Kimgyuilli, @​SJvaca30, @​SebTardif, @​ares333, @​codingkiddo, @​dlwldnjs1009, @​henriquejsza, @​igormukhin, @​johnnypwong, @​kwondh5217, @​leestana01, @​mheath, @​mmoayyed, @​msridhar, @​ngocnhan-tran1996, @​nosan, @​quaff, @​scordio, @​vinhhieu21, @​won-seoop, and @​zxuhan

v4.0.6

Compare Source

🐞 Bug Fixes

  • Default security is misconfigured when spring-boot-actuator-autoconfigure is present and spring-boot-health is not #​50188
  • Elasticsearch Rest5Client auto-configuration misconfigures underlying HTTP client #​50187
  • ApplicationPidFileWriter does not handle symlinks correctly #​50185
  • RandomValuePropertySource is not suitable for secrets #​50183
  • Cassandra auto-configuration misconfigures CqlSessionBuilder #​50180
  • ApplicationTemp does not handle symlinks correctly #​50178
  • Remote DevTools performs comparison incorrectly #​50176
  • spring.rabbitmq.ssl.verify-hostname is applied inconsistently #​50174
  • Whole number values are ignored when configuring min and max expected values and SLO boundaries for a distribution summary meter #​50077
  • Classic starters are missing several modules #​50071
  • Module spring-boot-resttestclient is missing from spring-boot-starter-test-classic #​50069
  • Annotations like @Ssl don't work on @Bean methods when using @ServiceConnection #​50064
  • EnversRevisionRepositoriesRegistrar should reuse @EnableEnversRepositories rather than configuring the JPA counterpart #​50039
  • WebFlux Cloud Foundry links endpoint includes query string from received request in resolved links #​50017
  • Imports on a containing test class are ignored when a nested class has imports #​50012
  • With spring.jackson.use-jackson2-defaults set to true, FAIL_ON_UNKNOWN_PROPERTIES is enabled #​49951
  • 500 response from env endpoint when supplied pattern is invalid #​49946
  • Reactive MongoDB starter has a transitive dependency on the synchronous MongoDB driver #​49945
  • HTTP method is lost when configuring excludes in EndpointRequest #​49943
  • Honor HttpMethod for reactive additional endpoint paths #​49880
  • Docker Compose support doesn't work with apache/artemis image #​49869
  • Docker Compose support doesn't work with apache/activemq image #​49866
  • Spring Security's PathPatternRequestMatcher.Builder is not auto-configured when using WebMvcTest and spring-boot-security-test #​49854
  • API versioning path strategy should be applied path last as it is not meant to yield #​49800

📔 Documentation

  • Update docs to encourage Java fundamentals for beginners that prefer to learn that way #​50146
  • HTTP Service Interface Clients still document that API versioning can be configured via properties #​50126
  • Link to the observability section of the Lettuce documentation is broken #​50097
  • Javadoc for StaticResourceLocation.FAVICON doesn't describe icons location #​50085
  • MySamlRelyingPartyConfiguration is missing a Kotlin sample #​50024
  • Incorrect default value for management.httpexchanges.recording.include in configuration metadata #​50019
  • Link to the Kubernetes documentation when discussing startup probes #​50015
  • Typo in JdbcSessionAutoConfiguration Javadoc #​49873
  • Clarify that configuration property default values are not available through the Environment #​49851
  • Document the need for Liquibase and Flyway starters #​49839
  • Kafka documentation refers to deprecated JSON serializer and deserializer classes #​49826

🔨 Dependency Upgrades

❤️ Contributors

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

@​GollapudiSrikanth, @​MohammedGhallab, @​bachhs, @​dlwldnjs1009, @​edwardsre, @​kodama-kcc, @​kwondh5217, @​ppapaj, @​quaff, @​refeccd, @​scordio, and @​xxxxxxjun

v4.0.5

Compare Source

🐞 Bug Fixes

  • Test starter for Spring Integration does not include Spring Integration test module #​49784
  • Some sliced tests that import TransactionAutoConfiguration do not import TransactionManagerCustomizationAutoConfiguration #​49782
  • WebSocket messaging's task executors are only auto-configured and stompWebSocketHandlerMapping is only forced to be eager when using Jackson #​49753
  • WebSocket app fails to start when Jackson is on the classpath but there's no JsonMapper bean #​49749
  • Metadata annotation processor ignores method-level @NestedConfigurationProperty when using constructor binding #​49738
  • Override of property in external 'application.properties' or 'application.yaml' is ignored #​49731
  • NativeImageResourceProvider does not find Flyway migration scripts in subdirectories #​49706
  • Add @ConditionalOnWebApplication to NettyReactiveWebServerAutoConfiguration #​49695
  • @GraphQlTest does not include @ControllerAdvice #​49672

📔 Documentation

  • Fix incorrect indefinite articles in Javadoc #​49727
  • Add some more Kotlin examples and trivial style fixes #​49714
  • Overhaul Spring Session documentation following modularization #​49704

🔨 Dependency Upgrades

❤️ Contributors

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

@​Joowon-Seo, @​deejay1, @​dlwldnjs1009, @​kwondh5217, @​ljrmorgan, and @​quaff

v4.0.4

Compare Source

⚠️ Attention Required

  • OpenTelemetry's ZipkinSpanExporter has been deprecated and its support will be removed in Spring Boot 4.2. #​49453
  • Jackson 2 has been upgraded to 2.21.1 in response to the Jackson team ending support for Jackson 2.20.x. #​49389
  • Jackson has been upgraded to 3.1.0 in response to the Jackson team ending support for Jackson 3.0.x. #​49383
  • The default value for server.tomcat.max-part-count has been increased from 10 to 50. This aligns it with Tomcat's own default and the default in Spring Boot 3.x. #​49311

🐞 Bug Fixes

  • EndpointRequest request matcher for health groups is too complex #​49649
  • "/cloudfoundryapplication" web path is not limited to Actuator #​49646
  • Fix EndpointRequest.toLinks() when base-path is '/' #​49617
  • Docker fails when a 'tcp://' address ends with a slash (for example 'tcp://docker:2375/') #​49596
  • RSocket exposes duplicate endpoint for websocket setups #​49593
  • Failure analysis for a missing mail sender is misleading #​49582
  • SpringBootContextLoader mentions class that no longer exists in message for classes or locations assertion #​49535
  • Ordering of 'spring.config.import' is inconsistent when defined in environment or system properties #​49482
  • "spring.main.cloud-platform=none" does not disable cloud features #​49479
  • SSL support with Docker Compose does not work as documented #​49385
  • Auto-configuration overrides authorization server configuration applied by Customizer beans #​49367
  • Using @AutoConfigureWebTestClient prevents separate configuration of spring.test.webtestclient.timeout from taking effect #​49344
  • NoSuchMethodException when forcing the use of Log4J2LoggingSystem using org.springframework.boot.logging.LoggingSystem system property #​49343
  • RouterFunctions descriptions in Actuator do not support nesting #​49302
  • Maven plugin does not set '-parameters' option when processing AOT code #​49295
  • HTTP Service Interface Client doesn't work in a native image due to missing property binding #​49274
  • ErrorPageRegistrarBeanPostProcessor is not auto-configured in war deployments and the ErrorPageCustomizer is not applied #​49176
  • Missing starter for spring-boot-restdocs #​48289

📔 Documentation

  • Document support for Java 26 #​49604
  • List all supported colors when describing color-coded log output #​49562
  • Improve EndpointRequest matcher documentation #​49520
  • Clarify that running is the only supported input state when triggering a Quartz job through the Actuator endpoint #​49514
  • Document security considerations for forwarded headers in cloud deployments #​49507
  • Tutorial in the reference guide has outdated instructions #​49429
  • Document additional repositories required for shibboleth.net #​49392
  • Javadoc of JettyHttpClientBuilder refers to the wrong type #​49387
  • Example spring-devtools.properties file is shown in the wrong format #​49362
  • Clarify inferred relationships between OAuth 2 registrations and providers #​49327
  • Mention using org.springframework.boot.aot Gradle plugin directly for AOT processing with the JVM #​49321
  • Remove superfluous semi-colon from read timeout configuration example for HTTP service interface clients #​49306
  • Update CLI's INSTALL.txt to reflect Groovy no longer being bundled #​49298
  • JDK requirement for the CLI still refers to Java 8 #​49293
  • Java and Kotlin samples of an environment post processor are inconsistent #​49287

🔨 Dependency Upgrades

❤️ Contributors

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

@​FBibonne, @​answndud, @​bbbbooo, @​chandanv89, @​giyeon95, @​itsmevichu, @​jayychoi, @​l2yujw, @​ngocnhan-tran1996, @​qnnn, @​quaff, and @​sbrannen

v4.0.3

Compare Source

New Features

  • Add TWENTY_SIX to JavaVersion enum #​49193

🐞 Bug Fixes

  • Jackson properties may not be applied correctly to RestClients #​49223
  • ClassNotFoundException when using Actuator without spring-boot-health #​49196
  • Using the OTel and Zipkin starters together creates invalid configuration #​49183
  • Whitespace can be incorrectly removed when spring-boot-configuration-processor runs on multi-line javadoc #​49060
  • Jackson2HttpMessageConvertersConfiguration uses ConditionOn Jackson3 XMLMapper class #​49015
  • server.jetty.threads.max is ignored when using virtual threads #​48989
  • Slice test includes fail to load when using spring-boot-starter-test-classic #​48981
  • Docker credential helpers with file extensions cannot be executed on Windows #​48979
  • Java version requirement check for native image is confusing if AOT didn't run #​48963
  • TestPropertyValues.Pair.fromMapEntry(Entry<String, String>) does not comply with its nullability contract #​48948

📔 Documentation

  • Couchbase and Kafka are incorrectly listed as supporting SSL with Docker Compose #​49212
  • Document that use of non idiomatic format for '@Value' still apply for environment variables #​49109
  • Document naming convention for custom test-scoped starters #​49017
  • Delay removal of Jackson 2 support until 4.3 at the earliest #​49010
  • LICENSE.txt and NOTICE.txt files have the wrong content in the latest releases #​49003
  • ApplicationContextAssert documents a non-existent assertion in getFailure() #​48977
  • Highlight the importance of the preStop hook when configuring Kubernetes probes #​48946

🔨 Dependency Upgrades

❤️ Contributors

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

@​GaetanoCerciello, @​dsyer, @​linkian209, @​nosan, @​quaff, @​scordio, and @​srt

v4.0.2

Compare Source

⚠️ Noteworthy Changes

  • The dependency on org.eclipse.jetty.ee11:jetty-ee11-servlets has been removed from spring-boot-jetty as it was unnecessary and unused. If your application code depends on a class from jetty-ee11-servlets, declare a dependency on it in your build configuration. #​48677

🐞 Bug Fixes

  • No TransactionAutoConfiguration with spring-boot-starter-kafka for Spring Boot 4 #​48880
  • Evaluation of bean conditions unnecessarily queries the bean factory for types that are not present #​48840
  • When a bean condition references a type that is not present, it appears as ? in the condition evaluation report #​48838
  • SessionAutoConfiguration creates a DefaultCookieSerializer with a default SameSite of null instead of Lax #​48830
  • Setting graphql schema location to "classpath*:graphql/**/" causes failure due to incorrectly packaged test resource #​48829
  • Message interpolation by MVC and WebFlux's Validators does not work correctly in a native image #​48828
  • CloudFoundry integration fails in Servlet-based web app without a dependency on spring-boot-starter-restclient #​48826
  • RestTestClientAutoConfiguration and TestRestTemplateAutoConfiguration should be package-private #​48820
  • SSL metrics are no longer auto-configured #​48819
  • Actuator /info endpoint fails in Java 25 Native Image (VirtualThreadSchedulerMXBean support) #​48812
  • DataSourceBuilder cannot create oracle.ucp.jdbc.PoolDataSourceImpl in a native image #​48703
  • The spring-boot-cloudfoundry module should only have an optional dependency on spring-boot-security #​48685
  • Application JAR created by extract command is not reproductible #​48678
  • AOT processing of tests should not be disabled when 'skipTests' is set #​48662
  • @SpringBootTest(webEnvironment = WebEnvironment.RANDOM_PORT) is no longer applied to the management server #​48653
  • Fix zero-length byte buffer in InspectedContent #​48650
  • Can no longer override JacksonJsonHttpMessageConverter with ServerHttpMessageConvertersCustomizer #​48635
  • HttpServiceClientProperties incorrectly uses the @ConfigurationProperties annotation on a LinkedHashMap class #​48616
  • spring-boot-micrometer-tracing-opentelemetry fails if spring-boot-opentelemetry isn't there #​48585
  • App fails to start with starter-webmvc and starter-zipkin #​48581
  • Micrometer test modules should have an api dependency on micrometer-observation-test #​48386

📔 Documentation

  • Fix typo in REST client documentation #​48907
  • Remove duplicate word #​48874
  • Document support for configuring arguments passed to Docker Compose #​48806
  • The documentation related to EnvironmentPostProcessor links to deprecated interface #​48803
  • Update documentation for Buildpack's AOT Cache support #​48769
  • Correct docs to use new location for error handling configuration properties #​48767
  • Document spring-boot-starter-cloudfoundry on Cloud Foundry Support Page #​48675
  • Clarify javadoc to make it clear that HazelcastConfigCustomizer beans are only applied if Hazelcast is configured via a config file #​48659
  • Example using excludeDevtools property should document that optional dependencies should be enabled #​48641
  • Fix grammar and typos in the reference guide #​48601
  • Update Tracing section for Spring Boot 4's modularity #​48576

🔨 Dependency Upgrades

❤️ Contributors

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

@​GaoSSR, @​ShaunHaldane, @​Zuohuang-Cai, @​izeye, @​mspiess, @​ngocnhan-tran1996, and @​philipbolting

v4.0.1

Compare Source

⚠️ Noteworthy Changes

  • Hibernate has been upgraded to 7.2.0.Final in response to Hibernate 7.1 moving to limited support
  • spring-boot-starter-kotlin-serialization has been renamed to to spring-boot-starter-kotlinx-serialization-json and spring-boot-starter-kotlin-serialization-test has been renamed to spring-boot-starter-kotlinx-serialization-json-test. This change aligns the starters' names with those of their respective modules
  • Using TestRestTemplate now requires a dependency on spring-boot-restclient

🐞 Bug Fixes

  • JsonMixinModuleEntriesBeanRegistrationAotProcessor does not handle deprecated code #​48564
  • JdbcSessionAutoConfiguration may not match when using the auto-configured DataSource #​48552
  • @ServiceConnection for LgtmStackContainer fails when logging endpoint is configured due to multiple OtlpLoggingConnectionDetails beans #​48536
  • WebApplicationType does not consider modules when deduced from classpath #​48517
  • Spring Session auto-configuration fails in a war deployment as ServerProperties is not available #​48493
  • Opentelemetry logging export requires actuator module #​48488
  • RabbitHealthIndicator reports an error when version is missing from the connection's server properties #​48487
  • Actuator Info class has inconsistent nullability annotations and cannot be built with null value #​48480
  • Profiles retained during AOT processing are not configured in a native image #​48476
  • Security matchers and WebServerNamespace resolution can fail with NoClassDefFoundError when used in a traditional WAR deployment #​48388
  • HealthEndpointGroupMembershipValidator does not consider reactive health indicators causing NoSuchHealthContributorException to be thrown #​48387
  • spring.jackson.default-property-inclusion is not applied to content inclusion #​48343
  • TestRestTemplate.getRootUri() returns empty string #​48330
  • Redis health check reports an error when redis_version is missing from the INFO response #​48328
  • Parent's MeterRegistry beans are closed when child context closes #​48325
  • HttpMessageConverters picks up converter beans for both client and server #​48310
  • Conditions to auto-configure a RestClient are outdated with the modularization #​48308
  • A custom JwtTypeValidator that replaces the default can no longer be configured #​48301
  • PropertiesRestClientHttpServiceGroupConfigurer has highest precedence, preventing other configurers from being ordered ahead of it #​48296
  • SpringBootTest.UseMainMethod.WHEN_AVAILABLE and ALWAYS are incompatible with package-private or parameter-less main method #​48275
  • Conditions to auto-configure RestClient-based HTTP service clients are outdated with the modularization #​48274
  • Starter for Kotlinx Serialization Json is misnamed #​48262
  • ApplicationServletEnvironment is no longer configured in war deployments #​48254
  • RestClient.Builder bean present in @SpringBootTest due to spring-boot-starter-webmvc-test, but missing at runtime without restclient starter #​48253
  • ProblemDetail is rendered to XML incorrectly #​48222

📔 Documentation

  • Harmonize Kotlin example for HTTP Service client support #​48577
  • Document HttpMessageConverters detection changes in 4.0.1 #​48574
  • Improve javadoc for when to use class names rather than class references #​48569
  • Documentation has an outdated reference to the Jackson Kotlin Module #​48534
  • Caching documentation should clarify how to use a no-op implementation to run a test suite #​48532
  • Document that the default rolling policy for Log4j2 requires logging.file.path to be set #​48527
  • Review documentation and migration guide about changes in @AutoConfigureCache #​48522
  • License header in build samples is displayed in the reference documentation #​48478
  • Configuring Two DataSources How-To code sample is inconsistent #​48449
  • Fix links to source files on GitHub #​48398
  • Documentation contains broken links to GitHub source files #​48394
  • Document that org.aspectj.weaver.Advice must be on the classpath to enable support for Micrometer's annotations #​48360
  • Correct the annotation in the Kotlin @ConfigurationPropertiesSource example #​48357
  • Polish TestRestTemplate examples in the reference guide #​48336
  • Documentation missing for LocalTestWebServer #​48333
  • Update "Creating Your Own Starter" following modularisation #​48317
  • Fix links to javadoc in the reference documentation #​48300
  • Update references for RestTemplateCustomizer and RestTemplateBuilder classes in documentation #​48295
  • Remove modules section of the README following modularisation #​48291
  • Wrong number in Graceful Shutdown chapter #​48284
  • Mention new spring-boot-h2console module when describing how to use H2 Console #​48278
  • Clarify that @EnableBatchProcessing turns off all batch auto-configuration, including schema initialization #​48266
  • Documented replacements for spring.jackson.generator and spring.jackson.parser are inverted #​48255
  • Document the need for a JdbcDialect bean when using Spring Data JDBC and AOT #​48240
  • Update reference documentation as Spring Batch's resourceless infrastructure means that it no longer always requires a DataSource #​48233
  • Kotlin auto-configuration examples are not annotated with @AutoConfiguration #​48228
  • Revise "Use Liquibase for test-only migrations" section in reference manual #​48219
  • Infinispan Cache Documentation is outdated #​48218
  • Removed max-attempts properties metadata don't have replacement #​48206
  • Polish documentation on testing web applications and the various testing clients that are available #​47948

🔨 Dependency Upgrades

❤️ Contributors

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

@​Nhahan, @​arey, @​banseok1216, @​berry120, @​candrews, @​dmitrysulman, @​geopark021, @​hktechn0, @​igslznev, @​jwalter, @​kzander91, @​michaldo, @​mzeijen, @​ngocnhan-tran1996, @​noojung, @​scottfrederick, @​vpavic, and @​youngledo

v4.0.0

Compare Source

Full release notes for Spring Boot 4.0 are available on the wiki. There is also a migration guide to help you upgrade from Spring Boot 3.5.

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

❤️ 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

v3.5.16

Compare Source

🔨 Dependency Upgrades

v3.5.15

Compare Source

🐞 Bug Fixes

  • Artemis auto-configuration uses a predictable default location for the embedded broker's data #​50743
  • MailSender auto-configuration does not enable hostname verification #​50742
  • SSL should not be enabled when a SSL bundle is overridden to an empty string #​50624
  • Layer written outside the output location of '//' exception is thrown when using extract layers in root directory #​50501
  • Docker Compose support does not restore thread interrupt flag when catching InterruptedException #​50451
  • RabbitProperties enables SSL even when spring.rabbitmq.ssl.bundle is overridden to an empty string #​50429
  • GraphQL WebSocket support does not configure allowed origins #​50391
  • Buildpack module does not validate long-to-int casts #​50382
  • MappingsEndpoint reports the context's own ID as parentId when a parent exists #​50373
  • Created StackTracePrinter instances have no access to the Environment #​50303
  • NullPointerException in reactor-netty SniProvider when SSL bundle uses client-auth or server truststore without server-name-bundles #​50301
  • Spring Boot Loader Does Not Support RSA and EC Signed Jars #​50292
  • ConfigurationPropertiesReportEndpoint exposes AOP proxy internals #​50273
  • Actuator's '/cloudfoundryapplication' endpoint does not work if restrictive CORS configuration is provided using a bean named corsConfigurationSource #​50254
  • Meter registries are not removed from the global registry when the context is closed #​50235
  • ThreadPoolTaskScheduleBuilder unnecessarily loses precision when configuring await termination time #​50225
  • Apply HTML escaping to timestamp attribute in Whitelabel error page #​50205
  • NimbusJwtDecoder silently accepts unknown values for spring.security.oauth2.resourceserver.jwt.jws-algorithms #​50118
  • EndpointRequest links matcher unnecessarily matches HTTP methods other than GET #​50095

📔 Documentation

  • Fix reference to Gradle documentation for module replacement #​50641
  • Remove the use of Optional from Data Neo4j repository examples #​50600
  • Fix typos in documentation #​50593
  • Document Java 25 requirement for AOT cache #​50482
  • Clarify dependency requirement for Bean Validation support #​50290
  • Document SSL reloading with Let's Encrypt #​50222
  • Polish InvalidConfigurationPropertyValueException constructor javadoc #​50212
  • Document known testcontainers lifecycle issues #​50210
  • Document configuring multiple connectors with Jetty #​50206
  • Fix typo in Spring Security OAuth2 client registration documentation #​50193

🔨 Dependency Upgrades

❤️ Contributors

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

@​Abdlatif-nabgha, @​DragonFSKY, @​Kapil-chn7, @​SJvaca30, @​SebTardif, @​ares333, @​codingkiddo, @​dlwldnjs1009, @​henriquejsza, @​igormukhin, @​johnnypwong, @​kwondh5217, @​leestana01, @​mheath, @​ngocnhan-tran1996, @​nosan, @​quaff, @​scordio, @​vinhhieu21, @​won-seoop, and @​zxuhan

v3.5.14

Compare Source

🐞 Bug Fixes

  • ApplicationPidFileWriter does not handle symlinks correctly #​50173
  • RandomValuePropertySource is not suitable for secrets #​50172
  • Cassandra auto-configuration misconfigures CqlSessionBuilder #​50171
  • ApplicationTemp does not handle symlinks correctly #​50170
  • Remote DevTools performs comparison incorrectly #​50169
  • spring.rabbitmq.ssl.verify-hostname is applied inconsistently #​50168
  • EnversRevisionRepositoriesRegistrar should reuse @EnableEnversRepositories rather than configuring the JPA counterpart #​50035
  • Annotations like @Ssl don't work on @Bean methods when using @ServiceConnection #​50033
  • Whole number values are ignored when configuring min and max expected values and SLO boundaries for a distribution summary meter #​50021
  • WebFlux Cloud Foundry links endpoint includes query string from received request in resolved links #​50008
  • 500 response from env endpoint when supplied pattern is invalid #​49942
  • HTTP method is lost when configuring excludes in EndpointRequest #​49885
  • Docker Compose support doesn't work with apache/artemis image #​49865
  • Honor HttpMethod for reactive additional endpoint paths #​49864
  • Docker Compose support doesn't work with apache/activemq image #​49863
  • Imports on a containing test class are ignored when a nested class has imports #​49860

📔 Documentation

  • Link to the observability section of the Lettuce documentation is broken #​50092
  • Javadoc for StaticResourceLocation.FAVICON doesn't describe icons location #​50083
  • MySamlRelyingPartyConfiguration is missing a Kotlin sample #​50023
  • Incorrect default value for management.httpexchanges.recording.include in configuration metadata #​50010
  • Link to the Kubernetes documentation when discussing startup probes #​50007
  • Update docs to encourage Java fundamentals for beginners that prefer to learn that way #​49895
  • Clarify that configuration property default values are not available through the Environment #​49835

🔨 Dependency Upgrades

❤️ Contributors

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

@​MohammedGhallab, @​dlwldnjs1009, @​edwardsre, @​kodama-kcc, @​kwondh5217, @​quaff, @​refeccd, and @​scordio

v3.5.13

Compare Source

⚠️ Attention Required

  • Jackson has been upgraded to 2.21.2 in response to the Jackson team ending support for Jackson 2.19.x and 2.20.x. #​49365

🐞 Bug Fixes

  • WebSocket messaging's task executors are only auto-configured and stompWebSocketHandlerMapping is only forced to be eager when using Jackson #​49750
  • Metadata annotation processor ignores method-level @NestedConfigurationProperty when using constructor binding #​49734
  • Override of property in external 'application.properties' or 'application.yaml' is ignored #​49724
  • Some sliced tests that import TransactionAutoConfiguration do not import TransactionManagerCustomizationAutoConfiguration #​49716
  • NativeImageResourceProvider does not find Flyway migration scripts in subdirectories #​49661
  • @GraphQlTest does not include @ControllerAdvice #​49660

📔 Documentation

  • Fix incorrect indefinite articles in Javadoc #​49723
  • Add some more Kotlin examples and trivial style fixes #​49710

🔨 Dependency Upgrades

❤️ Contributors

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

@​Joowon-Seo, @​deejay1, @​dlwldnjs1009, and @​ljrmorgan

v3.5.12

Compare Source

🐞 Bug Fixes

  • EndpointRequest request matcher for health groups is too complex #​49648
  • "/cloudfoundryapplication" web path is not limited to Actuator #​49645
  • RSocket exposes duplicate endpoint for websocket setups #​49592
  • Fix EndpointRequest.toLinks() when base-path is '/' #​49591
  • SpringBootContextLoader mentions class that no longer exists in message for classes or locations assertion #​49518
  • "spring.main.cloud-platform=none" does not disable cloud features #​49478
  • Using @AutoConfigureWebTestClient prevents separate configuration of spring.test.webtestclient.timeout from taking effect #​49340
  • Ordering of 'spring.config.import' is inconsistent when defined in environment or system properties #​49324
  • RouterFunctions descriptions in Actuator do not support nesting #​49289
  • Maven plugin does not set '-parameters' option when processing AOT code #​49268
  • SSL support with Docker Compose does not work as documented #​49210
  • Docker fails when a 'tcp://' address ends with a slash (for example 'tcp://docker:2375/') #​49055

📔 Documentation

  • List all supported colors when describing color-coded log output #​49561
  • Clarify that running is the only supported input state when triggering a Quartz job through the Actuator endpoint #​49506
  • Tutorial in the reference guide has outdated instructions #​49411
  • Javadoc of JettyHttpClientBuilder refers to the wrong type #​49364
  • Example spring-devtools.properties file is shown in the wrong format #​49357
  • Mention using org.springframework.boot.aot Gradle plugin directly for AOT processing with the JVM #​49307
  • Update CLI's INSTALL.txt to reflect Groovy no longer being bundled #​49297
  • JDK requirement for the CLI still refers to Java 8 #​49290
  • Java and Kotlin samples of an environment post processor are inconsistent #​49282
  • Document additional repositories required for shibboleth.net #​49260
  • Clarify inferred relationships between OAuth 2 registrations and providers #​49240

🔨 Dependency Upgrades

❤️ Contributors

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

@​bbbbooo, @​chandanv89, @​itsmevichu, @​jayychoi, @​l2yujw, @​ngocnhan-tran1996, @​qnnn, @​quaff, and @​sbrannen


Configuration

📅 Schedule: (UTC)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate.

This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [org.springframework.boot:spring-boot-starter-json](https://spring.io/projects/spring-boot) ([source](https://github.com/spring-projects/spring-boot)) | compile | major | `3.5.11` → `4.1.0` | --- ### Release Notes <details> <summary>spring-projects/spring-boot (org.springframework.boot:spring-boot-starter-json)</summary> ### [`v4.1.0`](https://github.com/spring-projects/spring-boot/releases/tag/v4.1.0) [Compare Source](https://github.com/spring-projects/spring-boot/compare/v4.0.7...v4.1.0) Full [release notes for Spring Boot 4.1](https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-4.1-Release-Notes) are available on the wiki. #### :star: New Features - Add public constructor to InvalidConfigurationPropertyValueException that accepts a cause [#&#8203;50211](https://github.com/spring-projects/spring-boot/issues/50211) - Reduce memory consumption when repeatedly calling WritableJson.toByteArray [#&#8203;49428](https://github.com/spring-projects/spring-boot/issues/49428) #### :lady\_beetle: Bug Fixes - MailSender auto-configuration does not enable hostname verification [#&#8203;50747](https://github.com/spring-projects/spring-boot/issues/50747) - Artemis auto-configuration uses a predictable default location for the embedded broker's data [#&#8203;50745](https://github.com/spring-projects/spring-boot/issues/50745) - Embedded LDAP SSL should not be enabled when its bundle is empty [#&#8203;50700](https://github.com/spring-projects/spring-boot/pull/50700) - InetAddressFilter.externalAddresses does not exclude special purpose addresses from RFC 6890 [#&#8203;50668](https://github.com/spring-projects/spring-boot/issues/50668) - NullPointerException in reactor-netty SniProvider and unmapped SSL bundle with RSocket [#&#8203;50645](https://github.com/spring-projects/spring-boot/issues/50645) - SSL should not be enabled when a SSL bundle is overridden to an empty string [#&#8203;50635](https://github.com/spring-projects/spring-boot/issues/50635) - Test auto-configuration no longer integrates Spring Security with HtmlUnitDriver [#&#8203;50633](https://github.com/spring-projects/spring-boot/issues/50633) - Configuration property metadata includes incorrect class references [#&#8203;50632](https://github.com/spring-projects/spring-boot/issues/50632) - Docker Compose support does not restore thread interrupt flag when catching InterruptedException [#&#8203;50618](https://github.com/spring-projects/spring-boot/issues/50618) - RabbitProperties enables SSL even when spring.rabbitmq.ssl.bundle is overridden to an empty string [#&#8203;50612](https://github.com/spring-projects/spring-boot/issues/50612) - NullPointerException in reactor-netty SniProvider when SSL bundle uses client-auth or server truststore without server-name-bundles [#&#8203;50610](https://github.com/spring-projects/spring-boot/issues/50610) - SpringJtaPlatform should have been deprecated since 4.1.0-M3 [#&#8203;50592](https://github.com/spring-projects/spring-boot/issues/50592) - Layer written outside the output location of '//' exception is thrown when using extract layers in root directory [#&#8203;50510](https://github.com/spring-projects/spring-boot/issues/50510) - ConfigurationPropertiesReportEndpoint exposes AOP proxy internals [#&#8203;50417](https://github.com/spring-projects/spring-boot/issues/50417) - Created StackTracePrinter instances have no access to the Environment [#&#8203;50414](https://github.com/spring-projects/spring-boot/issues/50414) - MappingsEndpoint reports the context's own ID as parentId when a parent exists [#&#8203;50412](https://github.com/spring-projects/spring-boot/issues/50412) - Buildpack module does not validate long-to-int casts [#&#8203;50410](https://github.com/spring-projects/spring-boot/issues/50410) - Gradle gRPC support fails if protobuf-java dependency is used instead of protobuf-java-util [#&#8203;50405](https://github.com/spring-projects/spring-boot/pull/50405) - GraphQL WebSocket support does not configure allowed origins [#&#8203;50394](https://github.com/spring-projects/spring-boot/issues/50394) - Spring Boot Loader Does Not Support RSA and EC Signed Jars [#&#8203;50298](https://github.com/spring-projects/spring-boot/issues/50298) - Meter registries are not removed from the global registry when the context is closed [#&#8203;50287](https://github.com/spring-projects/spring-boot/issues/50287) - DataSourceBuilder cannot derive a DataSource from a lazy connection proxy [#&#8203;50271](https://github.com/spring-projects/spring-boot/pull/50271) - Nullable annotations from AbstractErrorController.getErrorAttributes are not aligned with implementation [#&#8203;50266](https://github.com/spring-projects/spring-boot/issues/50266) - Bean definitions can be added with an initializer before setAllowBeanDefinitionOverriding is called [#&#8203;50264](https://github.com/spring-projects/spring-boot/issues/50264) - EndpointRequest links matcher unnecessarily matches HTTP methods other than GET [#&#8203;50261](https://github.com/spring-projects/spring-boot/issues/50261) - Actuator's '/cloudfoundryapplication' endpoint does not work if restrictive CORS configuration is provided using a bean named corsConfigurationSource [#&#8203;50258](https://github.com/spring-projects/spring-boot/issues/50258) - ThreadPoolTaskScheduleBuilder unnecessarily loses precision when configuring await termination time [#&#8203;50234](https://github.com/spring-projects/spring-boot/issues/50234) - NimbusJwtDecoder silently accepts unknown values for spring.security.oauth2.resourceserver.jwt.jws-algorithms [#&#8203;50228](https://github.com/spring-projects/spring-boot/issues/50228) - Missing dependency management for spring-boot-web-server-test [#&#8203;50224](https://github.com/spring-projects/spring-boot/issues/50224) - Spring Batch support for MongoDB modules are not included in dependency management [#&#8203;50223](https://github.com/spring-projects/spring-boot/pull/50223) - Apply HTML escaping to timestamp attribute in Whitelabel error page [#&#8203;50216](https://github.com/spring-projects/spring-boot/issues/50216) - GrpcServerHealthScheduler is not started in servlet environments [#&#8203;50209](https://github.com/spring-projects/spring-boot/issues/50209) - Setting server.servlet.session.cookie.partitioned=true has no effect when using Tomcat [#&#8203;50204](https://github.com/spring-projects/spring-boot/issues/50204) #### :notebook\_with\_decorative\_cover: Documentation - Fix reference to Gradle documentation for module replacement [#&#8203;50647](https://github.com/spring-projects/spring-boot/issues/50647) - Document SSL reloading with Let's Encrypt [#&#8203;50630](https://github.com/spring-projects/spring-boot/issues/50630) - Remove the use of Optional from Data Neo4j repository examples [#&#8203;50622](https://github.com/spring-projects/spring-boot/issues/50622) - Fix typos in documentation [#&#8203;50620](https://github.com/spring-projects/spring-boot/issues/50620) - Clarify dependency requirement for Bean Validation support [#&#8203;50614](https://github.com/spring-projects/spring-boot/issues/50614) - Document Java 25 requirement for AOT cache [#&#8203;50485](https://github.com/spring-projects/spring-boot/issues/50485) - Add links for Java CAS Client Spring Boot Starter [#&#8203;50285](https://github.com/spring-projects/spring-boot/issues/50285) - Document known testcontainers lifecycle issues [#&#8203;50220](https://github.com/spring-projects/spring-boot/issues/50220) - Document adding multiple connectors for Jetty [#&#8203;50218](https://github.com/spring-projects/spring-boot/issues/50218) - Polish InvalidConfigurationPropertyValueException constructor javadoc [#&#8203;50214](https://github.com/spring-projects/spring-boot/issues/50214) - Fix typo in Spring Security OAuth2 client registration documentation [#&#8203;50199](https://github.com/spring-projects/spring-boot/issues/50199) #### :hammer: Dependency Upgrades - Upgrade to ActiveMQ 6.2.6 [#&#8203;50652](https://github.com/spring-projects/spring-boot/issues/50652) - Upgrade to Byte Buddy 1.18.10 [#&#8203;50693](https://github.com/spring-projects/spring-boot/issues/50693) - Upgrade to [Caffeine 3.2.4](https://github.com/ben-manes/caffeine/releases/tag/v3.2.4) [#&#8203;50338](https://github.com/spring-projects/spring-boot/issues/50338) - Upgrade to Cassandra Driver 4.19.3 [#&#8203;50654](https://github.com/spring-projects/spring-boot/issues/50654) - Upgrade to [Couchbase Client 3.11.3](https://docs.couchbase.com/java-sdk/current/project-docs/sdk-release-notes.html) [#&#8203;50576](https://github.com/spring-projects/spring-boot/issues/50576) - Upgrade to Elasticsearch Client 9.4.2 [#&#8203;50655](https://github.com/spring-projects/spring-boot/issues/50655) - Upgrade to Glassfish JAXB 4.0.9 [#&#8203;50656](https://github.com/spring-projects/spring-boot/issues/50656) - Upgrade to Groovy 5.0.6 [#&#8203;50340](https://github.com/spring-projects/spring-boot/issues/50340) - Upgrade to Hibernate 7.4.1.Final [#&#8203;50732](https://github.com/spring-projects/spring-boot/issues/50732) - Upgrade to [Infinispan 16.1.4](https://github.com/infinispan/infinispan/releases/tag/16.1.4) [#&#8203;50342](https://github.com/spring-projects/spring-boot/issues/50342) - Upgrade to Jackson 2 Bom 2.21.4 [#&#8203;50657](https://github.com/spring-projects/spring-boot/issues/50657) - Upgrade to Jackson Bom 3.1.4 [#&#8203;50658](https://github.com/spring-projects/spring-boot/issues/50658) - Upgrade to Jakarta Json Bind 3.0.2 [#&#8203;50659](https://github.com/spring-projects/spring-boot/issues/50659) - Upgrade to [Jakarta XML Bind 4.0.5](https://github.com/jakartaee/jaxb-api/releases/tag/4.0.5) [#&#8203;50345](https://github.com/spring-projects/spring-boot/issues/50345) - Upgrade to Jaxen 2.0.6 [#&#8203;50710](https://github.com/spring-projects/spring-boot/issues/50710) - Upgrade to [Jetty 12.1.10](https://github.com/jetty/jetty.project/releases/tag/jetty-12.1.10) [#&#8203;50661](https://github.com/spring-projects/spring-boot/issues/50661) - Upgrade to Jetty Reactive HTTPClient 4.1.5 [#&#8203;50711](https://github.com/spring-projects/spring-boot/issues/50711) - Upgrade to jOOQ 3.21.5 [#&#8203;50712](https://github.com/spring-projects/spring-boot/issues/50712) - Upgrade to [Kafka 4.2.1](https://downloads.apache.org/kafka/4.2.1/RELEASE_NOTES.html) [#&#8203;50662](https://github.com/spring-projects/spring-boot/issues/50662) - Upgrade to [Kotlin 2.3.21](https://github.com/JetBrains/kotlin/releases/tag/v2.3.21) [#&#8203;50347](https://github.com/spring-projects/spring-boot/issues/50347) - Upgrade to [Lettuce 7.5.2.RELEASE](https://github.com/redis/lettuce/releases/tag/7.5.2.RELEASE) [#&#8203;50581](https://github.com/spring-projects/spring-boot/issues/50581) - Upgrade to [Liquibase 5.0.3](https://github.com/liquibase/liquibase/releases/tag/v5.0.3) [#&#8203;50582](https://github.com/spring-projects/spring-boot/issues/50582) - Upgrade to Logback 1.5.34 [#&#8203;50663](https://github.com/spring-projects/spring-boot/issues/50663) - Upgrade to [Maven Enforcer Plugin 3.6.3](https://github.com/apache/maven-enforcer/releases/tag/enforcer-3.6.3) [#&#8203;50583](https://github.com/spring-projects/spring-boot/issues/50583) - Upgrade to [Maven Failsafe Plugin 3.5.6](https://github.com/apache/maven-surefire/releases/tag/surefire-3.5.6) [#&#8203;50664](https://github.com/spring-projects/spring-boot/issues/50664) - Upgrade to [Maven Surefire Plugin 3.5.6](https://github.com/apache/maven-surefire/releases/tag/surefire-3.5.6) [#&#8203;50665](https://github.com/spring-projects/spring-boot/issues/50665) - Upgrade to [Micrometer 1.17.0](https://github.com/micrometer-metrics/micrometer/releases/tag/v1.17.0) [#&#8203;50559](https://github.com/spring-projects/spring-boot/issues/50559) - Upgrade to [Micrometer Tracing 1.7.0](https://github.com/micrometer-metrics/tracing/releases/tag/v1.7.0) [#&#8203;50560](https://github.com/spring-projects/spring-boot/issues/50560) - Upgrade to MongoDB 5.8.0 [#&#8203;50608](https://github.com/spring-projects/spring-boot/issues/50608) - Upgrade to [Native Build Tools Plugin 1.1.1](https://github.com/graalvm/native-build-tools/releases/tag/1.1.1) [#&#8203;50585](https://github.com/spring-projects/spring-boot/issues/50585) - Upgrade to [Neo4j Java Driver 6.1.0](https://github.com/neo4j/neo4j-java-driver/releases/tag/6.1.0) [#&#8203;50586](https://github.com/spring-projects/spring-boot/issues/50586) - Upgrade to Netty 4.2.15.Final [#&#8203;50666](https://github.com/spring-projects/spring-boot/issues/50666) - Upgrade to [OpenTelemetry 1.62.0](https://github.com/open-telemetry/opentelemetry-java/releases/tag/v1.62.0) [#&#8203;50588](https://github.com/spring-projects/spring-boot/issues/50588) - Upgrade to Oracle Database 23.26.2.0.0 [#&#8203;50667](https://github.com/spring-projects/spring-boot/issues/50667) - Upgrade to [Postgresql 42.7.11](https://github.com/pgjdbc/pgjdbc/releases/tag/REL42.7.11) [#&#8203;50349](https://github.com/spring-projects/spring-boot/issues/50349) - Upgrade to [Protobuf Java 4.34.2](https://github.com/protocolbuffers/protobuf/releases/tag/v4.34.2) [#&#8203;50590](https://github.com/spring-projects/spring-boot/issues/50590) - Upgrade to [Protobuf Maven Plugin 5.1.4](https://github.com/ascopes/protobuf-maven-plugin/releases/tag/v5.1.4) [#&#8203;50589](https://github.com/spring-projects/spring-boot/issues/50589) - Upgrade to Pulsar 4.2.2 [#&#8203;50713](https://github.com/spring-projects/spring-boot/issues/50713) - Upgrade to [R2DBC MySQL 1.4.2](https://github.com/asyncer-io/r2dbc-mysql/releases/tag/r2dbc-mysql-1.4.2) [#&#8203;50351](https://github.com/spring-projects/spring-boot/issues/50351) - Upgrade to [Reactor Bom 2025.0.6](https://github.com/reactor/reactor/releases/tag/2025.0.6) [#&#8203;50561](https://github.com/spring-projects/spring-boot/issues/50561) - Upgrade to SAAJ Impl 3.0.6 [#&#8203;50714](https://github.com/spring-projects/spring-boot/issues/50714) - Upgrade to SLF4J 2.0.18 [#&#8203;50591](https://github.com/spring-projects/spring-boot/issues/50591) - Upgrade to [Spring AMQP 4.1.0](https://github.com/spring-projects/spring-amqp/releases/tag/v4.1.0) [#&#8203;50562](https://github.com/spring-projects/spring-boot/issues/50562) - Upgrade to [Spring Batch 6.0.4](https://github.com/spring-projects/spring-batch/releases/tag/v6.0.4) [#&#8203;50563](https://github.com/spring-projects/spring-boot/issues/50563) - Upgrade to [Spring Data Bom 2026.0.0](https://github.com/spring-projects/spring-data-bom/releases/tag/2026.0.0) [#&#8203;50564](https://github.com/spring-projects/spring-boot/issues/50564) - Upgrade to [Spring Framework 7.0.8](https://github.com/spring-projects/spring-framework/releases/tag/v7.0.8) [#&#8203;50565](https://github.com/spring-projects/spring-boot/issues/50565) - Upgrade to [Spring GraphQL 2.0.4](https://github.com/spring-projects/spring-graphql/releases/tag/v2.0.4) [#&#8203;50741](https://github.com/spring-projects/spring-boot/issues/50741) - Upgrade to [Spring gRPC 1.1.0](https://github.com/spring-projects/spring-grpc/releases/tag/v1.1.0) [#&#8203;50566](https://github.com/spring-projects/spring-boot/issues/50566) - Upgrade to [Spring HATEOAS 3.1.1](https://github.com/spring-projects/spring-hateoas/releases/tag/3.1.1) [#&#8203;50567](https://github.com/spring-projects/spring-boot/issues/50567) - Upgrade to [Spring Integration 7.1.0](https://github.com/spring-projects/spring-integration/releases/tag/v7.1.0) [#&#8203;50568](https://github.com/spring-projects/spring-boot/issues/50568) - Upgrade to [Spring Kafka 4.1.0](https://github.com/spring-projects/spring-kafka/releases/tag/v4.1.0) [#&#8203;50569](https://github.com/spring-projects/spring-boot/issues/50569) - Upgrade to [Spring LDAP 4.1.0](https://github.com/spring-projects/spring-ldap/releases/tag/4.1.0) [#&#8203;50570](https://github.com/spring-projects/spring-boot/issues/50570) - Upgrade to [Spring Pulsar 2.0.6](https://github.com/spring-projects/spring-pulsar/releases/tag/v2.0.6) [#&#8203;50571](https://github.com/spring-projects/spring-boot/issues/50571) - Upgrade to [Spring RESTDocs 4.0.1](https://github.com/spring-projects/spring-restdocs/releases/tag/v4.0.1) [#&#8203;50572](https://github.com/spring-projects/spring-boot/issues/50572) - Upgrade to [Spring Security 7.1.0](https://github.com/spring-projects/spring-security/releases/tag/7.1.0) [#&#8203;50573](https://github.com/spring-projects/spring-boot/issues/50573) - Upgrade to [Spring Session 4.1.0](https://github.com/spring-projects/spring-session/releases/tag/4.1.0) [#&#8203;50574](https://github.com/spring-projects/spring-boot/issues/50574) - Upgrade to [Spring WS 5.0.2](https://github.com/spring-projects/spring-ws/releases/tag/v5.0.2) [#&#8203;50575](https://github.com/spring-projects/spring-boot/issues/50575) - Upgrade to SQLite JDBC 3.53.2.0 [#&#8203;50715](https://github.com/spring-projects/spring-boot/issues/50715) - Upgrade to [Tomcat 11.0.22](https://tomcat.apache.org/tomcat-11.0-doc/changelog.html) [#&#8203;50354](https://github.com/spring-projects/spring-boot/issues/50354) #### :heart: Contributors Thank you to all the contributors who worked on this release: [@&#8203;Abdlatif-nabgha](https://github.com/Abdlatif-nabgha), [@&#8203;DragonFSKY](https://github.com/DragonFSKY), [@&#8203;Kapil-chn7](https://github.com/Kapil-chn7), [@&#8203;Kimgyuilli](https://github.com/Kimgyuilli), [@&#8203;SJvaca30](https://github.com/SJvaca30), [@&#8203;SebTardif](https://github.com/SebTardif), [@&#8203;ares333](https://github.com/ares333), [@&#8203;codingkiddo](https://github.com/codingkiddo), [@&#8203;dlwldnjs1009](https://github.com/dlwldnjs1009), [@&#8203;eddumelendez](https://github.com/eddumelendez), [@&#8203;henriquejsza](https://github.com/henriquejsza), [@&#8203;igormukhin](https://github.com/igormukhin), [@&#8203;johnnypwong](https://github.com/johnnypwong), [@&#8203;kwondh5217](https://github.com/kwondh5217), [@&#8203;leestana01](https://github.com/leestana01), [@&#8203;mheath](https://github.com/mheath), [@&#8203;mmoayyed](https://github.com/mmoayyed), [@&#8203;msridhar](https://github.com/msridhar), [@&#8203;ngocnhan-tran1996](https://github.com/ngocnhan-tran1996), [@&#8203;nosan](https://github.com/nosan), [@&#8203;quaff](https://github.com/quaff), [@&#8203;scordio](https://github.com/scordio), [@&#8203;vinhhieu21](https://github.com/vinhhieu21), [@&#8203;vpavic](https://github.com/vpavic), [@&#8203;won-seoop](https://github.com/won-seoop), and [@&#8203;zxuhan](https://github.com/zxuhan) ### [`v4.0.7`](https://github.com/spring-projects/spring-boot/releases/tag/v4.0.7) [Compare Source](https://github.com/spring-projects/spring-boot/compare/v4.0.6...v4.0.7) #### :lady\_beetle: Bug Fixes - MailSender auto-configuration does not enable hostname verification [#&#8203;50746](https://github.com/spring-projects/spring-boot/issues/50746) - Artemis auto-configuration uses a predictable default location for the embedded broker's data [#&#8203;50744](https://github.com/spring-projects/spring-boot/issues/50744) - NullPointerException in reactor-netty SniProvider and unmapped SSL bundle with RSocket [#&#8203;50640](https://github.com/spring-projects/spring-boot/pull/50640) - SSL should not be enabled when a SSL bundle is overridden to an empty string [#&#8203;50634](https://github.com/spring-projects/spring-boot/issues/50634) - Docker Compose support does not restore thread interrupt flag when catching InterruptedException [#&#8203;50617](https://github.com/spring-projects/spring-boot/issues/50617) - RabbitProperties enables SSL even when spring.rabbitmq.ssl.bundle is overridden to an empty string [#&#8203;50611](https://github.com/spring-projects/spring-boot/issues/50611) - NullPointerException in reactor-netty SniProvider when SSL bundle uses client-auth or server truststore without server-name-bundles [#&#8203;50609](https://github.com/spring-projects/spring-boot/issues/50609) - Test auto-configuration no longer integrates Spring Security with HtmlUnitDriver [#&#8203;50602](https://github.com/spring-projects/spring-boot/pull/50602) - Layer written outside the output location of '//' exception is thrown when using extract layers in root directory [#&#8203;50509](https://github.com/spring-projects/spring-boot/issues/50509) - ConfigurationPropertiesReportEndpoint exposes AOP proxy internals [#&#8203;50416](https://github.com/spring-projects/spring-boot/issues/50416) - Created StackTracePrinter instances have no access to the Environment [#&#8203;50413](https://github.com/spring-projects/spring-boot/issues/50413) - MappingsEndpoint reports the context's own ID as parentId when a parent exists [#&#8203;50411](https://github.com/spring-projects/spring-boot/issues/50411) - Buildpack module does not validate long-to-int casts [#&#8203;50409](https://github.com/spring-projects/spring-boot/issues/50409) - GraphQL WebSocket support does not configure allowed origins [#&#8203;50393](https://github.com/spring-projects/spring-boot/issues/50393) - Configuration property metadata includes incorrect class references [#&#8203;50375](https://github.com/spring-projects/spring-boot/pull/50375) - Spring Boot Loader Does Not Support RSA and EC Signed Jars [#&#8203;50297](https://github.com/spring-projects/spring-boot/issues/50297) - Meter registries are not removed from the global registry when the context is closed [#&#8203;50286](https://github.com/spring-projects/spring-boot/issues/50286) - Nullable annotations from AbstractErrorController.getErrorAttributes are not aligned with implementation [#&#8203;50265](https://github.com/spring-projects/spring-boot/pull/50265) - EndpointRequest links matcher unnecessarily matches HTTP methods other than GET [#&#8203;50260](https://github.com/spring-projects/spring-boot/issues/50260) - Actuator's '/cloudfoundryapplication' endpoint does not work if restrictive CORS configuration is provided using a bean named corsConfigurationSource [#&#8203;50257](https://github.com/spring-projects/spring-boot/issues/50257) - ThreadPoolTaskScheduleBuilder unnecessarily loses precision when configuring await termination time [#&#8203;50233](https://github.com/spring-projects/spring-boot/issues/50233) - NimbusJwtDecoder silently accepts unknown values for spring.security.oauth2.resourceserver.jwt.jws-algorithms [#&#8203;50227](https://github.com/spring-projects/spring-boot/issues/50227) - Apply HTML escaping to timestamp attribute in Whitelabel error page [#&#8203;50215](https://github.com/spring-projects/spring-boot/issues/50215) - Setting server.servlet.session.cookie.partitioned=true has no effect when using Tomcat [#&#8203;50201](https://github.com/spring-projects/spring-boot/issues/50201) #### :notebook\_with\_decorative\_cover: Documentation - Fix reference to Gradle documentation for module replacement [#&#8203;50646](https://github.com/spring-projects/spring-boot/issues/50646) - Document SSL reloading with Let's Encrypt [#&#8203;50629](https://github.com/spring-projects/spring-boot/issues/50629) - Remove the use of Optional from Data Neo4j repository examples [#&#8203;50621](https://github.com/spring-projects/spring-boot/issues/50621) - Fix typos in documentation [#&#8203;50619](https://github.com/spring-projects/spring-boot/issues/50619) - Clarify dependency requirement for Bean Validation support [#&#8203;50613](https://github.com/spring-projects/spring-boot/issues/50613) - Document Java 25 requirement for AOT cache [#&#8203;50484](https://github.com/spring-projects/spring-boot/issues/50484) - Add links for Java CAS Client Spring Boot Starter [#&#8203;50281](https://github.com/spring-projects/spring-boot/pull/50281) - Document known testcontainers lifecycle issues [#&#8203;50219](https://github.com/spring-projects/spring-boot/issues/50219) - Document adding multiple connectors for Jetty [#&#8203;50217](https://github.com/spring-projects/spring-boot/issues/50217) - Polish InvalidConfigurationPropertyValueException constructor javadoc [#&#8203;50213](https://github.com/spring-projects/spring-boot/issues/50213) - Fix typo in Spring Security OAuth2 client registration documentation [#&#8203;50198](https://github.com/spring-projects/spring-boot/issues/50198) #### :hammer: Dependency Upgrades - Upgrade to [Caffeine 3.2.4](https://github.com/ben-manes/caffeine/releases/tag/v3.2.4) [#&#8203;50322](https://github.com/spring-projects/spring-boot/issues/50322) - Upgrade to Cassandra Driver 4.19.3 [#&#8203;50681](https://github.com/spring-projects/spring-boot/issues/50681) - Upgrade to Glassfish JAXB 4.0.9 [#&#8203;50682](https://github.com/spring-projects/spring-boot/issues/50682) - Upgrade to Groovy 5.0.6 [#&#8203;50324](https://github.com/spring-projects/spring-boot/issues/50324) - Upgrade to Hibernate 7.2.19.Final [#&#8203;50733](https://github.com/spring-projects/spring-boot/issues/50733) - Upgrade to Jackson 2 Bom 2.21.4 [#&#8203;50684](https://github.com/spring-projects/spring-boot/issues/50684) - Upgrade to Jackson Bom 3.1.4 [#&#8203;50685](https://github.com/spring-projects/spring-boot/issues/50685) - Upgrade to Jakarta Json Bind 3.0.2 [#&#8203;50686](https://github.com/spring-projects/spring-boot/issues/50686) - Upgrade to [Jakarta XML Bind 4.0.5](https://github.com/jakartaee/jaxb-api/releases/tag/4.0.5) [#&#8203;50328](https://github.com/spring-projects/spring-boot/issues/50328) - Upgrade to Jaxen 2.0.6 [#&#8203;50717](https://github.com/spring-projects/spring-boot/issues/50717) - Upgrade to [Jetty 12.1.10](https://github.com/jetty/jetty.project/releases/tag/jetty-12.1.10) [#&#8203;50688](https://github.com/spring-projects/spring-boot/issues/50688) - Upgrade to Jetty Reactive HTTPClient 4.1.5 [#&#8203;50718](https://github.com/spring-projects/spring-boot/issues/50718) - Upgrade to jOOQ 3.19.35 [#&#8203;50719](https://github.com/spring-projects/spring-boot/issues/50719) - Upgrade to [Liquibase 5.0.3](https://github.com/liquibase/liquibase/releases/tag/v5.0.3) [#&#8203;50554](https://github.com/spring-projects/spring-boot/issues/50554) - Upgrade to Logback 1.5.34 [#&#8203;50689](https://github.com/spring-projects/spring-boot/issues/50689) - Upgrade to [Maven Enforcer Plugin 3.6.3](https://github.com/apache/maven-enforcer/releases/tag/enforcer-3.6.3) [#&#8203;50555](https://github.com/spring-projects/spring-boot/issues/50555) - Upgrade to [Maven Failsafe Plugin 3.5.6](https://github.com/apache/maven-surefire/releases/tag/surefire-3.5.6) [#&#8203;50690](https://github.com/spring-projects/spring-boot/issues/50690) - Upgrade to [Maven Surefire Plugin 3.5.6](https://github.com/apache/maven-surefire/releases/tag/surefire-3.5.6) [#&#8203;50691](https://github.com/spring-projects/spring-boot/issues/50691) - Upgrade to [Micrometer 1.16.6](https://github.com/micrometer-metrics/micrometer/releases/tag/v1.16.6) [#&#8203;50535](https://github.com/spring-projects/spring-boot/issues/50535) - Upgrade to [Micrometer Tracing 1.6.6](https://github.com/micrometer-metrics/tracing/releases/tag/v1.6.6) [#&#8203;50536](https://github.com/spring-projects/spring-boot/issues/50536) - Upgrade to [Neo4j Java Driver 6.1.0](https://github.com/neo4j/neo4j-java-driver/releases/tag/6.1.0) [#&#8203;50556](https://github.com/spring-projects/spring-boot/issues/50556) - Upgrade to Netty 4.2.15.Final [#&#8203;50692](https://github.com/spring-projects/spring-boot/issues/50692) - Upgrade to [Postgresql 42.7.11](https://github.com/pgjdbc/pgjdbc/releases/tag/REL42.7.11) [#&#8203;50332](https://github.com/spring-projects/spring-boot/issues/50332) - Upgrade to [R2DBC MySQL 1.4.2](https://github.com/asyncer-io/r2dbc-mysql/releases/tag/r2dbc-mysql-1.4.2) [#&#8203;50333](https://github.com/spring-projects/spring-boot/issues/50333) - Upgrade to [Reactor Bom 2025.0.6](https://github.com/reactor/reactor/releases/tag/2025.0.6) [#&#8203;50537](https://github.com/spring-projects/spring-boot/issues/50537) - Upgrade to SAAJ Impl 3.0.6 [#&#8203;50720](https://github.com/spring-projects/spring-boot/issues/50720) - Upgrade to SLF4J 2.0.18 [#&#8203;50558](https://github.com/spring-projects/spring-boot/issues/50558) - Upgrade to [Spring AMQP 4.0.4](https://github.com/spring-projects/spring-amqp/releases/tag/v4.0.4) [#&#8203;50538](https://github.com/spring-projects/spring-boot/issues/50538) - Upgrade to [Spring Batch 6.0.4](https://github.com/spring-projects/spring-batch/releases/tag/v6.0.4) [#&#8203;50539](https://github.com/spring-projects/spring-boot/issues/50539) - Upgrade to [Spring Data Bom 2025.1.6](https://github.com/spring-projects/spring-data-bom/releases/tag/2025.1.6) [#&#8203;50540](https://github.com/spring-projects/spring-boot/issues/50540) - Upgrade to [Spring Framework 7.0.8](https://github.com/spring-projects/spring-framework/releases/tag/v7.0.8) [#&#8203;50541](https://github.com/spring-projects/spring-boot/issues/50541) - Upgrade to [Spring GraphQL 2.0.4](https://github.com/spring-projects/spring-graphql/releases/tag/v2.0.4) [#&#8203;50740](https://github.com/spring-projects/spring-boot/issues/50740) - Upgrade to [Spring HATEOAS 3.0.4](https://github.com/spring-projects/spring-hateoas/releases/tag/3.0.4) [#&#8203;50542](https://github.com/spring-projects/spring-boot/issues/50542) - Upgrade to [Spring Integration 7.0.5](https://github.com/spring-projects/spring-integration/releases/tag/v7.0.5) [#&#8203;50543](https://github.com/spring-projects/spring-boot/issues/50543) - Upgrade to [Spring Kafka 4.0.6](https://github.com/spring-projects/spring-kafka/releases/tag/v4.0.6) [#&#8203;50544](https://github.com/spring-projects/spring-boot/issues/50544) - Upgrade to [Spring LDAP 4.0.4](https://github.com/spring-projects/spring-ldap/releases/tag/4.0.4) [#&#8203;50545](https://github.com/spring-projects/spring-boot/issues/50545) - Upgrade to [Spring Pulsar 2.0.6](https://github.com/spring-projects/spring-pulsar/releases/tag/v2.0.6) [#&#8203;50546](https://github.com/spring-projects/spring-boot/issues/50546) - Upgrade to [Spring RESTDocs 4.0.1](https://github.com/spring-projects/spring-restdocs/releases/tag/v4.0.1) [#&#8203;50547](https://github.com/spring-projects/spring-boot/issues/50547) - Upgrade to [Spring Security 7.0.6](https://github.com/spring-projects/spring-security/releases/tag/7.0.6) [#&#8203;50548](https://github.com/spring-projects/spring-boot/issues/50548) - Upgrade to [Spring Session 4.0.4](https://github.com/spring-projects/spring-session/releases/tag/4.0.4) [#&#8203;50549](https://github.com/spring-projects/spring-boot/issues/50549) - Upgrade to [Spring WS 5.0.2](https://github.com/spring-projects/spring-ws/releases/tag/v5.0.2) [#&#8203;50550](https://github.com/spring-projects/spring-boot/issues/50550) - Upgrade to [Tomcat 11.0.22](https://tomcat.apache.org/tomcat-11.0-doc/changelog.html) [#&#8203;50335](https://github.com/spring-projects/spring-boot/issues/50335) #### :heart: Contributors Thank you to all the contributors who worked on this release: [@&#8203;Abdlatif-nabgha](https://github.com/Abdlatif-nabgha), [@&#8203;DragonFSKY](https://github.com/DragonFSKY), [@&#8203;Kapil-chn7](https://github.com/Kapil-chn7), [@&#8203;Kimgyuilli](https://github.com/Kimgyuilli), [@&#8203;SJvaca30](https://github.com/SJvaca30), [@&#8203;SebTardif](https://github.com/SebTardif), [@&#8203;ares333](https://github.com/ares333), [@&#8203;codingkiddo](https://github.com/codingkiddo), [@&#8203;dlwldnjs1009](https://github.com/dlwldnjs1009), [@&#8203;henriquejsza](https://github.com/henriquejsza), [@&#8203;igormukhin](https://github.com/igormukhin), [@&#8203;johnnypwong](https://github.com/johnnypwong), [@&#8203;kwondh5217](https://github.com/kwondh5217), [@&#8203;leestana01](https://github.com/leestana01), [@&#8203;mheath](https://github.com/mheath), [@&#8203;mmoayyed](https://github.com/mmoayyed), [@&#8203;msridhar](https://github.com/msridhar), [@&#8203;ngocnhan-tran1996](https://github.com/ngocnhan-tran1996), [@&#8203;nosan](https://github.com/nosan), [@&#8203;quaff](https://github.com/quaff), [@&#8203;scordio](https://github.com/scordio), [@&#8203;vinhhieu21](https://github.com/vinhhieu21), [@&#8203;won-seoop](https://github.com/won-seoop), and [@&#8203;zxuhan](https://github.com/zxuhan) ### [`v4.0.6`](https://github.com/spring-projects/spring-boot/releases/tag/v4.0.6) [Compare Source](https://github.com/spring-projects/spring-boot/compare/v4.0.5...v4.0.6) #### :lady\_beetle: Bug Fixes - Default security is misconfigured when spring-boot-actuator-autoconfigure is present and spring-boot-health is not [#&#8203;50188](https://github.com/spring-projects/spring-boot/issues/50188) - Elasticsearch Rest5Client auto-configuration misconfigures underlying HTTP client [#&#8203;50187](https://github.com/spring-projects/spring-boot/issues/50187) - ApplicationPidFileWriter does not handle symlinks correctly [#&#8203;50185](https://github.com/spring-projects/spring-boot/issues/50185) - RandomValuePropertySource is not suitable for secrets [#&#8203;50183](https://github.com/spring-projects/spring-boot/issues/50183) - Cassandra auto-configuration misconfigures CqlSessionBuilder [#&#8203;50180](https://github.com/spring-projects/spring-boot/issues/50180) - ApplicationTemp does not handle symlinks correctly [#&#8203;50178](https://github.com/spring-projects/spring-boot/issues/50178) - Remote DevTools performs comparison incorrectly [#&#8203;50176](https://github.com/spring-projects/spring-boot/issues/50176) - spring.rabbitmq.ssl.verify-hostname is applied inconsistently [#&#8203;50174](https://github.com/spring-projects/spring-boot/issues/50174) - Whole number values are ignored when configuring min and max expected values and SLO boundaries for a distribution summary meter [#&#8203;50077](https://github.com/spring-projects/spring-boot/issues/50077) - Classic starters are missing several modules [#&#8203;50071](https://github.com/spring-projects/spring-boot/issues/50071) - Module spring-boot-resttestclient is missing from spring-boot-starter-test-classic [#&#8203;50069](https://github.com/spring-projects/spring-boot/pull/50069) - Annotations like `@Ssl` don't work on `@Bean` methods when using `@ServiceConnection` [#&#8203;50064](https://github.com/spring-projects/spring-boot/issues/50064) - EnversRevisionRepositoriesRegistrar should reuse `@EnableEnversRepositories` rather than configuring the JPA counterpart [#&#8203;50039](https://github.com/spring-projects/spring-boot/issues/50039) - WebFlux Cloud Foundry links endpoint includes query string from received request in resolved links [#&#8203;50017](https://github.com/spring-projects/spring-boot/issues/50017) - Imports on a containing test class are ignored when a nested class has imports [#&#8203;50012](https://github.com/spring-projects/spring-boot/issues/50012) - With spring.jackson.use-jackson2-defaults set to true, FAIL\_ON\_UNKNOWN\_PROPERTIES is enabled [#&#8203;49951](https://github.com/spring-projects/spring-boot/issues/49951) - 500 response from env endpoint when supplied pattern is invalid [#&#8203;49946](https://github.com/spring-projects/spring-boot/issues/49946) - Reactive MongoDB starter has a transitive dependency on the synchronous MongoDB driver [#&#8203;49945](https://github.com/spring-projects/spring-boot/issues/49945) - HTTP method is lost when configuring excludes in EndpointRequest [#&#8203;49943](https://github.com/spring-projects/spring-boot/issues/49943) - Honor HttpMethod for reactive additional endpoint paths [#&#8203;49880](https://github.com/spring-projects/spring-boot/issues/49880) - Docker Compose support doesn't work with apache/artemis image [#&#8203;49869](https://github.com/spring-projects/spring-boot/issues/49869) - Docker Compose support doesn't work with apache/activemq image [#&#8203;49866](https://github.com/spring-projects/spring-boot/issues/49866) - Spring Security's PathPatternRequestMatcher.Builder is not auto-configured when using WebMvcTest and spring-boot-security-test [#&#8203;49854](https://github.com/spring-projects/spring-boot/issues/49854) - API versioning path strategy should be applied path last as it is not meant to yield [#&#8203;49800](https://github.com/spring-projects/spring-boot/issues/49800) #### :notebook\_with\_decorative\_cover: Documentation - Update docs to encourage Java fundamentals for beginners that prefer to learn that way [#&#8203;50146](https://github.com/spring-projects/spring-boot/issues/50146) - HTTP Service Interface Clients still document that API versioning can be configured via properties [#&#8203;50126](https://github.com/spring-projects/spring-boot/issues/50126) - Link to the observability section of the Lettuce documentation is broken [#&#8203;50097](https://github.com/spring-projects/spring-boot/issues/50097) - Javadoc for StaticResourceLocation.FAVICON doesn't describe icons location [#&#8203;50085](https://github.com/spring-projects/spring-boot/issues/50085) - MySamlRelyingPartyConfiguration is missing a Kotlin sample [#&#8203;50024](https://github.com/spring-projects/spring-boot/issues/50024) - Incorrect default value for management.httpexchanges.recording.include in configuration metadata [#&#8203;50019](https://github.com/spring-projects/spring-boot/issues/50019) - Link to the Kubernetes documentation when discussing startup probes [#&#8203;50015](https://github.com/spring-projects/spring-boot/issues/50015) - Typo in JdbcSessionAutoConfiguration Javadoc [#&#8203;49873](https://github.com/spring-projects/spring-boot/pull/49873) - Clarify that configuration property default values are not available through the Environment [#&#8203;49851](https://github.com/spring-projects/spring-boot/issues/49851) - Document the need for Liquibase and Flyway starters [#&#8203;49839](https://github.com/spring-projects/spring-boot/pull/49839) - Kafka documentation refers to deprecated JSON serializer and deserializer classes [#&#8203;49826](https://github.com/spring-projects/spring-boot/pull/49826) #### :hammer: Dependency Upgrades - Upgrade to Elasticsearch Client 9.2.8 [#&#8203;50027](https://github.com/spring-projects/spring-boot/issues/50027) - Upgrade to Groovy 5.0.5 [#&#8203;49911](https://github.com/spring-projects/spring-boot/issues/49911) - Upgrade to Hibernate 7.2.12.Final [#&#8203;50134](https://github.com/spring-projects/spring-boot/issues/50134) - Upgrade to Jackson Bom 3.1.2 [#&#8203;50051](https://github.com/spring-projects/spring-boot/issues/50051) - Upgrade to [Jaxen 2.0.1](https://github.com/jaxen-xpath/jaxen/releases/tag/v2.0.1) [#&#8203;50104](https://github.com/spring-projects/spring-boot/issues/50104) - Upgrade to [Jaybird 6.0.5](https://github.com/FirebirdSQL/jaybird/releases/tag/v6.0.5) [#&#8203;49914](https://github.com/spring-projects/spring-boot/issues/49914) - Upgrade to [Jetty 12.1.8](https://github.com/jetty/jetty.project/releases/tag/jetty-12.1.8) [#&#8203;49915](https://github.com/spring-projects/spring-boot/issues/49915) - Upgrade to [jOOQ 3.19.32](https://github.com/jOOQ/jOOQ/releases/tag/version-3.19.32) [#&#8203;50105](https://github.com/spring-projects/spring-boot/issues/50105) - Upgrade to [Log4j2 2.25.4](https://github.com/apache/logging-log4j2/releases/tag/rel%2F2.25.4) [#&#8203;49916](https://github.com/spring-projects/spring-boot/issues/49916) - Upgrade to Lombok 1.18.46 [#&#8203;50150](https://github.com/spring-projects/spring-boot/issues/50150) - Upgrade to [MariaDB 3.5.8](https://mariadb.com/kb/en/mariadb-connector-j-3-5-8-release-notes) [#&#8203;49917](https://github.com/spring-projects/spring-boot/issues/49917) - Upgrade to [Micrometer 1.16.5](https://github.com/micrometer-metrics/micrometer/releases/tag/v1.16.5) [#&#8203;49972](https://github.com/spring-projects/spring-boot/issues/49972) - Upgrade to [Micrometer Tracing 1.6.5](https://github.com/micrometer-metrics/tracing/releases/tag/v1.6.5) [#&#8203;49973](https://github.com/spring-projects/spring-boot/issues/49973) - Upgrade to [MongoDB 5.6.5](https://github.com/mongodb/mongo-java-driver/releases/tag/r5.6.5) [#&#8203;50028](https://github.com/spring-projects/spring-boot/issues/50028) - Upgrade to [MySQL 9.7.0](https://dev.mysql.com/doc/relnotes/connector-j/en/news-9-7-0.html) [#&#8203;50159](https://github.com/spring-projects/spring-boot/issues/50159) - Upgrade to Neo4j Java Driver 6.0.5 [#&#8203;50075](https://github.com/spring-projects/spring-boot/issues/50075) - Upgrade to [Reactor Bom 2025.0.5](https://github.com/reactor/reactor/releases/tag/2025.0.5) [#&#8203;49974](https://github.com/spring-projects/spring-boot/issues/49974) - Upgrade to [Spring AMQP 4.0.3](https://github.com/spring-projects/spring-amqp/releases/tag/v4.0.3) [#&#8203;49975](https://github.com/spring-projects/spring-boot/issues/49975) - Upgrade to [Spring Data Bom 2025.1.5](https://github.com/spring-projects/spring-data-bom/releases/tag/2025.1.5) [#&#8203;49976](https://github.com/spring-projects/spring-boot/issues/49976) - Upgrade to [Spring Framework 7.0.7](https://github.com/spring-projects/spring-framework/releases/tag/v7.0.7) [#&#8203;49977](https://github.com/spring-projects/spring-boot/issues/49977) - Upgrade to [Spring GraphQL 2.0.3](https://github.com/spring-projects/spring-graphql/releases/tag/v2.0.3) [#&#8203;49978](https://github.com/spring-projects/spring-boot/issues/49978) - Upgrade to [Spring Kafka 4.0.5](https://github.com/spring-projects/spring-kafka/releases/tag/v4.0.5) [#&#8203;49979](https://github.com/spring-projects/spring-boot/issues/49979) - Upgrade to [Spring LDAP 4.0.3](https://github.com/spring-projects/spring-ldap/releases/tag/4.0.3) [#&#8203;49980](https://github.com/spring-projects/spring-boot/issues/49980) - Upgrade to [Spring Pulsar 2.0.5](https://github.com/spring-projects/spring-pulsar/releases/tag/v2.0.5) [#&#8203;49981](https://github.com/spring-projects/spring-boot/issues/49981) - Upgrade to [Spring Security 7.0.5](https://github.com/spring-projects/spring-security/releases/tag/7.0.5) [#&#8203;49982](https://github.com/spring-projects/spring-boot/issues/49982) - Upgrade to [Spring Session 4.0.3](https://github.com/spring-projects/spring-session/releases/tag/4.0.3) [#&#8203;49983](https://github.com/spring-projects/spring-boot/issues/49983) - Upgrade to [Testcontainers 2.0.5](https://github.com/testcontainers/testcontainers-java/releases/tag/2.0.5) [#&#8203;50135](https://github.com/spring-projects/spring-boot/issues/50135) - Upgrade to Thymeleaf 3.1.5.RELEASE [#&#8203;50152](https://github.com/spring-projects/spring-boot/issues/50152) - Upgrade to Thymeleaf Extras SpringSecurity 3.1.5.RELEASE [#&#8203;50153](https://github.com/spring-projects/spring-boot/issues/50153) - Upgrade to [Tomcat 11.0.21](https://tomcat.apache.org/tomcat-11.0-doc/changelog.html) [#&#8203;49918](https://github.com/spring-projects/spring-boot/issues/49918) #### :heart: Contributors Thank you to all the contributors who worked on this release: [@&#8203;GollapudiSrikanth](https://github.com/GollapudiSrikanth), [@&#8203;MohammedGhallab](https://github.com/MohammedGhallab), [@&#8203;bachhs](https://github.com/bachhs), [@&#8203;dlwldnjs1009](https://github.com/dlwldnjs1009), [@&#8203;edwardsre](https://github.com/edwardsre), [@&#8203;kodama-kcc](https://github.com/kodama-kcc), [@&#8203;kwondh5217](https://github.com/kwondh5217), [@&#8203;ppapaj](https://github.com/ppapaj), [@&#8203;quaff](https://github.com/quaff), [@&#8203;refeccd](https://github.com/refeccd), [@&#8203;scordio](https://github.com/scordio), and [@&#8203;xxxxxxjun](https://github.com/xxxxxxjun) ### [`v4.0.5`](https://github.com/spring-projects/spring-boot/releases/tag/v4.0.5) [Compare Source](https://github.com/spring-projects/spring-boot/compare/v4.0.4...v4.0.5) #### :lady\_beetle: Bug Fixes - Test starter for Spring Integration does not include Spring Integration test module [#&#8203;49784](https://github.com/spring-projects/spring-boot/issues/49784) - Some sliced tests that import TransactionAutoConfiguration do not import TransactionManagerCustomizationAutoConfiguration [#&#8203;49782](https://github.com/spring-projects/spring-boot/issues/49782) - WebSocket messaging's task executors are only auto-configured and stompWebSocketHandlerMapping is only forced to be eager when using Jackson [#&#8203;49753](https://github.com/spring-projects/spring-boot/issues/49753) - WebSocket app fails to start when Jackson is on the classpath but there's no JsonMapper bean [#&#8203;49749](https://github.com/spring-projects/spring-boot/issues/49749) - Metadata annotation processor ignores method-level `@NestedConfigurationProperty` when using constructor binding [#&#8203;49738](https://github.com/spring-projects/spring-boot/issues/49738) - Override of property in external 'application.properties' or 'application.yaml' is ignored [#&#8203;49731](https://github.com/spring-projects/spring-boot/issues/49731) - NativeImageResourceProvider does not find Flyway migration scripts in subdirectories [#&#8203;49706](https://github.com/spring-projects/spring-boot/issues/49706) - Add `@ConditionalOnWebApplication` to NettyReactiveWebServerAutoConfiguration [#&#8203;49695](https://github.com/spring-projects/spring-boot/pull/49695) - `@GraphQlTest` does not include `@ControllerAdvice` [#&#8203;49672](https://github.com/spring-projects/spring-boot/issues/49672) #### :notebook\_with\_decorative\_cover: Documentation - Fix incorrect indefinite articles in Javadoc [#&#8203;49727](https://github.com/spring-projects/spring-boot/issues/49727) - Add some more Kotlin examples and trivial style fixes [#&#8203;49714](https://github.com/spring-projects/spring-boot/issues/49714) - Overhaul Spring Session documentation following modularization [#&#8203;49704](https://github.com/spring-projects/spring-boot/issues/49704) #### :hammer: Dependency Upgrades - Upgrade to Brave 6.3.1 [#&#8203;49763](https://github.com/spring-projects/spring-boot/issues/49763) - Upgrade to Jackson 2 Bom 2.21.2 [#&#8203;49764](https://github.com/spring-projects/spring-boot/issues/49764) - Upgrade to jOOQ 3.19.31 [#&#8203;49765](https://github.com/spring-projects/spring-boot/issues/49765) - Upgrade to Netty 4.2.12.Final [#&#8203;49794](https://github.com/spring-projects/spring-boot/issues/49794) - Upgrade to Tomcat 11.0.20 [#&#8203;49767](https://github.com/spring-projects/spring-boot/issues/49767) - Upgrade to Zipkin Reporter 3.5.3 [#&#8203;49762](https://github.com/spring-projects/spring-boot/issues/49762) #### :heart: Contributors Thank you to all the contributors who worked on this release: [@&#8203;Joowon-Seo](https://github.com/Joowon-Seo), [@&#8203;deejay1](https://github.com/deejay1), [@&#8203;dlwldnjs1009](https://github.com/dlwldnjs1009), [@&#8203;kwondh5217](https://github.com/kwondh5217), [@&#8203;ljrmorgan](https://github.com/ljrmorgan), and [@&#8203;quaff](https://github.com/quaff) ### [`v4.0.4`](https://github.com/spring-projects/spring-boot/releases/tag/v4.0.4) [Compare Source](https://github.com/spring-projects/spring-boot/compare/v4.0.3...v4.0.4) #### :warning: Attention Required - OpenTelemetry's ZipkinSpanExporter has been deprecated and its support will be removed in Spring Boot 4.2. [#&#8203;49453](https://github.com/spring-projects/spring-boot/issues/49453) - Jackson 2 has been upgraded to 2.21.1 in response to the Jackson team ending support for Jackson 2.20.x. [#&#8203;49389](https://github.com/spring-projects/spring-boot/issues/49389) - Jackson has been upgraded to 3.1.0 in response to the Jackson team ending support for Jackson 3.0.x. [#&#8203;49383](https://github.com/spring-projects/spring-boot/issues/49383) - The default value for `server.tomcat.max-part-count` has been increased from 10 to 50. This aligns it with Tomcat's own default and the default in Spring Boot 3.x. [#&#8203;49311](https://github.com/spring-projects/spring-boot/issues/49311) #### :lady\_beetle: Bug Fixes - EndpointRequest request matcher for health groups is too complex [#&#8203;49649](https://github.com/spring-projects/spring-boot/issues/49649) - "/cloudfoundryapplication" web path is not limited to Actuator [#&#8203;49646](https://github.com/spring-projects/spring-boot/issues/49646) - Fix EndpointRequest.toLinks() when base-path is '/' [#&#8203;49617](https://github.com/spring-projects/spring-boot/issues/49617) - Docker fails when a 'tcp\://' address ends with a slash (for example 'tcp\://docker:2375/') [#&#8203;49596](https://github.com/spring-projects/spring-boot/issues/49596) - RSocket exposes duplicate endpoint for websocket setups [#&#8203;49593](https://github.com/spring-projects/spring-boot/issues/49593) - Failure analysis for a missing mail sender is misleading [#&#8203;49582](https://github.com/spring-projects/spring-boot/pull/49582) - SpringBootContextLoader mentions class that no longer exists in message for classes or locations assertion [#&#8203;49535](https://github.com/spring-projects/spring-boot/issues/49535) - Ordering of 'spring.config.import' is inconsistent when defined in environment or system properties [#&#8203;49482](https://github.com/spring-projects/spring-boot/issues/49482) - "spring.main.cloud-platform=none" does not disable cloud features [#&#8203;49479](https://github.com/spring-projects/spring-boot/issues/49479) - SSL support with Docker Compose does not work as documented [#&#8203;49385](https://github.com/spring-projects/spring-boot/issues/49385) - Auto-configuration overrides authorization server configuration applied by Customizer<HttpSecurity> beans [#&#8203;49367](https://github.com/spring-projects/spring-boot/issues/49367) - Using `@AutoConfigureWebTestClient` prevents separate configuration of spring.test.webtestclient.timeout from taking effect [#&#8203;49344](https://github.com/spring-projects/spring-boot/issues/49344) - NoSuchMethodException when forcing the use of Log4J2LoggingSystem using org.springframework.boot.logging.LoggingSystem system property [#&#8203;49343](https://github.com/spring-projects/spring-boot/pull/49343) - RouterFunctions descriptions in Actuator do not support nesting [#&#8203;49302](https://github.com/spring-projects/spring-boot/issues/49302) - Maven plugin does not set '-parameters' option when processing AOT code [#&#8203;49295](https://github.com/spring-projects/spring-boot/issues/49295) - HTTP Service Interface Client doesn't work in a native image due to missing property binding [#&#8203;49274](https://github.com/spring-projects/spring-boot/issues/49274) - ErrorPageRegistrarBeanPostProcessor is not auto-configured in war deployments and the ErrorPageCustomizer is not applied [#&#8203;49176](https://github.com/spring-projects/spring-boot/pull/49176) - Missing starter for spring-boot-restdocs [#&#8203;48289](https://github.com/spring-projects/spring-boot/issues/48289) #### :notebook\_with\_decorative\_cover: Documentation - Document support for Java 26 [#&#8203;49604](https://github.com/spring-projects/spring-boot/issues/49604) - List all supported colors when describing color-coded log output [#&#8203;49562](https://github.com/spring-projects/spring-boot/issues/49562) - Improve EndpointRequest matcher documentation [#&#8203;49520](https://github.com/spring-projects/spring-boot/issues/49520) - Clarify that running is the only supported input state when triggering a Quartz job through the Actuator endpoint [#&#8203;49514](https://github.com/spring-projects/spring-boot/issues/49514) - Document security considerations for forwarded headers in cloud deployments [#&#8203;49507](https://github.com/spring-projects/spring-boot/issues/49507) - Tutorial in the reference guide has outdated instructions [#&#8203;49429](https://github.com/spring-projects/spring-boot/issues/49429) - Document additional repositories required for shibboleth.net [#&#8203;49392](https://github.com/spring-projects/spring-boot/issues/49392) - Javadoc of JettyHttpClientBuilder refers to the wrong type [#&#8203;49387](https://github.com/spring-projects/spring-boot/issues/49387) - Example spring-devtools.properties file is shown in the wrong format [#&#8203;49362](https://github.com/spring-projects/spring-boot/issues/49362) - Clarify inferred relationships between OAuth 2 registrations and providers [#&#8203;49327](https://github.com/spring-projects/spring-boot/issues/49327) - Mention using org.springframework.boot.aot Gradle plugin directly for AOT processing with the JVM [#&#8203;49321](https://github.com/spring-projects/spring-boot/issues/49321) - Remove superfluous semi-colon from read timeout configuration example for HTTP service interface clients [#&#8203;49306](https://github.com/spring-projects/spring-boot/pull/49306) - Update CLI's INSTALL.txt to reflect Groovy no longer being bundled [#&#8203;49298](https://github.com/spring-projects/spring-boot/issues/49298) - JDK requirement for the CLI still refers to Java 8 [#&#8203;49293](https://github.com/spring-projects/spring-boot/issues/49293) - Java and Kotlin samples of an environment post processor are inconsistent [#&#8203;49287](https://github.com/spring-projects/spring-boot/issues/49287) #### :hammer: Dependency Upgrades - Upgrade to Commons Logging 1.3.6 [#&#8203;49545](https://github.com/spring-projects/spring-boot/issues/49545) - Upgrade to DB2 JDBC 12.1.4.0 [#&#8203;49546](https://github.com/spring-projects/spring-boot/issues/49546) - Upgrade to Elasticsearch Client 9.2.6 [#&#8203;49421](https://github.com/spring-projects/spring-boot/issues/49421) - Upgrade to Hibernate 7.2.7.Final [#&#8203;49608](https://github.com/spring-projects/spring-boot/issues/49608) - Upgrade to Jakarta XML WS 4.0.3 [#&#8203;49469](https://github.com/spring-projects/spring-boot/issues/49469) - Upgrade to JBoss Logging 3.6.3.Final [#&#8203;49632](https://github.com/spring-projects/spring-boot/issues/49632) - Upgrade to Jetty 12.1.7 [#&#8203;49470](https://github.com/spring-projects/spring-boot/issues/49470) - Upgrade to Kafka 4.1.2 [#&#8203;49627](https://github.com/spring-projects/spring-boot/issues/49627) - Upgrade to Liquibase 5.0.2 [#&#8203;49471](https://github.com/spring-projects/spring-boot/issues/49471) - Upgrade to Lombok 1.18.44 [#&#8203;49575](https://github.com/spring-projects/spring-boot/issues/49575) - Upgrade to Maven Failsafe Plugin 3.5.5 [#&#8203;49472](https://github.com/spring-projects/spring-boot/issues/49472) - Upgrade to Maven Shade Plugin 3.6.2 [#&#8203;49473](https://github.com/spring-projects/spring-boot/issues/49473) - Upgrade to Maven Surefire Plugin 3.5.5 [#&#8203;49474](https://github.com/spring-projects/spring-boot/issues/49474) - Upgrade to Micrometer 1.16.4 [#&#8203;49413](https://github.com/spring-projects/spring-boot/issues/49413) - Upgrade to Micrometer Tracing 1.6.4 [#&#8203;49414](https://github.com/spring-projects/spring-boot/issues/49414) - Upgrade to MongoDB 5.6.4 [#&#8203;49422](https://github.com/spring-projects/spring-boot/issues/49422) - Upgrade to Native Build Tools Plugin 0.11.5 [#&#8203;49475](https://github.com/spring-projects/spring-boot/issues/49475) - Upgrade to Neo4j Java Driver 6.0.3 [#&#8203;49431](https://github.com/spring-projects/spring-boot/issues/49431) - Upgrade to Pulsar 4.1.3 [#&#8203;49476](https://github.com/spring-projects/spring-boot/issues/49476) - Upgrade to Reactor Bom 2025.0.4 [#&#8203;49415](https://github.com/spring-projects/spring-boot/issues/49415) - Upgrade to Spring Batch 6.0.3 [#&#8203;49416](https://github.com/spring-projects/spring-boot/issues/49416) - Upgrade to Spring Data Bom 2025.1.4 [#&#8203;49417](https://github.com/spring-projects/spring-boot/issues/49417) - Upgrade to Spring Framework 7.0.6 [#&#8203;49418](https://github.com/spring-projects/spring-boot/issues/49418) - Upgrade to Spring HATEOAS 3.0.3 [#&#8203;49587](https://github.com/spring-projects/spring-boot/issues/49587) - Upgrade to Spring Integration 7.0.4 [#&#8203;49529](https://github.com/spring-projects/spring-boot/issues/49529) - Upgrade to Spring Kafka 4.0.4 [#&#8203;49419](https://github.com/spring-projects/spring-boot/issues/49419) - Upgrade to Spring Pulsar 2.0.4 [#&#8203;49420](https://github.com/spring-projects/spring-boot/issues/49420) - Upgrade to Spring Security 7.0.4 [#&#8203;49530](https://github.com/spring-projects/spring-boot/issues/49530) - Upgrade to Spring WS 5.0.1 [#&#8203;49531](https://github.com/spring-projects/spring-boot/issues/49531) - Upgrade to Testcontainers 2.0.4 [#&#8203;49655](https://github.com/spring-projects/spring-boot/issues/49655) #### :heart: Contributors Thank you to all the contributors who worked on this release: [@&#8203;FBibonne](https://github.com/FBibonne), [@&#8203;answndud](https://github.com/answndud), [@&#8203;bbbbooo](https://github.com/bbbbooo), [@&#8203;chandanv89](https://github.com/chandanv89), [@&#8203;giyeon95](https://github.com/giyeon95), [@&#8203;itsmevichu](https://github.com/itsmevichu), [@&#8203;jayychoi](https://github.com/jayychoi), [@&#8203;l2yujw](https://github.com/l2yujw), [@&#8203;ngocnhan-tran1996](https://github.com/ngocnhan-tran1996), [@&#8203;qnnn](https://github.com/qnnn), [@&#8203;quaff](https://github.com/quaff), and [@&#8203;sbrannen](https://github.com/sbrannen) ### [`v4.0.3`](https://github.com/spring-projects/spring-boot/releases/tag/v4.0.3) [Compare Source](https://github.com/spring-projects/spring-boot/compare/v4.0.2...v4.0.3) #### :star: New Features - Add TWENTY\_SIX to JavaVersion enum [#&#8203;49193](https://github.com/spring-projects/spring-boot/issues/49193) #### :lady\_beetle: Bug Fixes - Jackson properties may not be applied correctly to RestClients [#&#8203;49223](https://github.com/spring-projects/spring-boot/issues/49223) - ClassNotFoundException when using Actuator without spring-boot-health [#&#8203;49196](https://github.com/spring-projects/spring-boot/issues/49196) - Using the OTel and Zipkin starters together creates invalid configuration [#&#8203;49183](https://github.com/spring-projects/spring-boot/issues/49183) - Whitespace can be incorrectly removed when spring-boot-configuration-processor runs on multi-line javadoc [#&#8203;49060](https://github.com/spring-projects/spring-boot/issues/49060) - Jackson2HttpMessageConvertersConfiguration uses ConditionOn Jackson3 XMLMapper class [#&#8203;49015](https://github.com/spring-projects/spring-boot/issues/49015) - server.jetty.threads.max is ignored when using virtual threads [#&#8203;48989](https://github.com/spring-projects/spring-boot/issues/48989) - Slice test includes fail to load when using spring-boot-starter-test-classic [#&#8203;48981](https://github.com/spring-projects/spring-boot/issues/48981) - Docker credential helpers with file extensions cannot be executed on Windows [#&#8203;48979](https://github.com/spring-projects/spring-boot/issues/48979) - Java version requirement check for native image is confusing if AOT didn't run [#&#8203;48963](https://github.com/spring-projects/spring-boot/issues/48963) - TestPropertyValues.Pair.fromMapEntry(Entry\<String, String>) does not comply with its nullability contract [#&#8203;48948](https://github.com/spring-projects/spring-boot/issues/48948) #### :notebook\_with\_decorative\_cover: Documentation - Couchbase and Kafka are incorrectly listed as supporting SSL with Docker Compose [#&#8203;49212](https://github.com/spring-projects/spring-boot/issues/49212) - Document that use of non idiomatic format for '`@Value`' still apply for environment variables [#&#8203;49109](https://github.com/spring-projects/spring-boot/issues/49109) - Document naming convention for custom test-scoped starters [#&#8203;49017](https://github.com/spring-projects/spring-boot/issues/49017) - Delay removal of Jackson 2 support until 4.3 at the earliest [#&#8203;49010](https://github.com/spring-projects/spring-boot/issues/49010) - LICENSE.txt and NOTICE.txt files have the wrong content in the latest releases [#&#8203;49003](https://github.com/spring-projects/spring-boot/issues/49003) - ApplicationContextAssert documents a non-existent assertion in getFailure() [#&#8203;48977](https://github.com/spring-projects/spring-boot/issues/48977) - Highlight the importance of the preStop hook when configuring Kubernetes probes [#&#8203;48946](https://github.com/spring-projects/spring-boot/issues/48946) #### :hammer: Dependency Upgrades - Upgrade to AssertJ 3.27.7 [#&#8203;49095](https://github.com/spring-projects/spring-boot/issues/49095) - Upgrade to Elasticsearch Client 9.2.5 [#&#8203;49184](https://github.com/spring-projects/spring-boot/issues/49184) - Upgrade to Groovy 5.0.4 [#&#8203;49097](https://github.com/spring-projects/spring-boot/issues/49097) - Upgrade to Hibernate 7.2.3.Final [#&#8203;49098](https://github.com/spring-projects/spring-boot/issues/49098) - Upgrade to Hibernate 7.2.4.Final [#&#8203;49167](https://github.com/spring-projects/spring-boot/issues/49167) - Upgrade to Jaybird 6.0.4 [#&#8203;49099](https://github.com/spring-projects/spring-boot/issues/49099) - Upgrade to JBoss Logging 3.6.2.Final [#&#8203;49100](https://github.com/spring-projects/spring-boot/issues/49100) - Upgrade to Jersey 4.0.2 [#&#8203;49101](https://github.com/spring-projects/spring-boot/issues/49101) - Upgrade to Jetty 12.1.6 [#&#8203;49102](https://github.com/spring-projects/spring-boot/issues/49102) - Upgrade to jOOQ 3.19.30 [#&#8203;49103](https://github.com/spring-projects/spring-boot/issues/49103) - Upgrade to JUnit Jupiter 6.0.3 [#&#8203;49233](https://github.com/spring-projects/spring-boot/issues/49233) - Upgrade to Logback 1.5.29 [#&#8203;49169](https://github.com/spring-projects/spring-boot/issues/49169) - Upgrade to Logback 1.5.32 [#&#8203;49245](https://github.com/spring-projects/spring-boot/issues/49245) - Upgrade to Micrometer 1.16.3 [#&#8203;49111](https://github.com/spring-projects/spring-boot/issues/49111) - Upgrade to Micrometer Tracing 1.6.3 [#&#8203;49112](https://github.com/spring-projects/spring-boot/issues/49112) - Upgrade to MongoDB 5.6.3 [#&#8203;49105](https://github.com/spring-projects/spring-boot/issues/49105) - Upgrade to MySQL 9.6.0 [#&#8203;49106](https://github.com/spring-projects/spring-boot/issues/49106) - Upgrade to Netty 4.2.10.Final [#&#8203;49107](https://github.com/spring-projects/spring-boot/issues/49107) - Upgrade to Postgresql 42.7.10 [#&#8203;49202](https://github.com/spring-projects/spring-boot/issues/49202) - Upgrade to Reactor Bom 2025.0.3 [#&#8203;49087](https://github.com/spring-projects/spring-boot/issues/49087) - Upgrade to Spring Data Bom 2025.1.3 [#&#8203;49088](https://github.com/spring-projects/spring-boot/issues/49088) - Upgrade to Spring Framework 7.0.5 [#&#8203;49216](https://github.com/spring-projects/spring-boot/issues/49216) - Upgrade to Spring Integration 7.0.3 [#&#8203;49217](https://github.com/spring-projects/spring-boot/issues/49217) - Upgrade to Spring Kafka 4.0.3 [#&#8203;49090](https://github.com/spring-projects/spring-boot/issues/49090) - Upgrade to Spring LDAP 4.0.2 [#&#8203;49091](https://github.com/spring-projects/spring-boot/issues/49091) - Upgrade to Spring Pulsar 2.0.3 [#&#8203;49092](https://github.com/spring-projects/spring-boot/issues/49092) - Upgrade to Spring Security 7.0.3 [#&#8203;49093](https://github.com/spring-projects/spring-boot/issues/49093) - Upgrade to Spring Session 4.0.2 [#&#8203;49094](https://github.com/spring-projects/spring-boot/issues/49094) - Upgrade to Tomcat 11.0.18 [#&#8203;49108](https://github.com/spring-projects/spring-boot/issues/49108) #### :heart: Contributors Thank you to all the contributors who worked on this release: [@&#8203;GaetanoCerciello](https://github.com/GaetanoCerciello), [@&#8203;dsyer](https://github.com/dsyer), [@&#8203;linkian209](https://github.com/linkian209), [@&#8203;nosan](https://github.com/nosan), [@&#8203;quaff](https://github.com/quaff), [@&#8203;scordio](https://github.com/scordio), and [@&#8203;srt](https://github.com/srt) ### [`v4.0.2`](https://github.com/spring-projects/spring-boot/releases/tag/v4.0.2) [Compare Source](https://github.com/spring-projects/spring-boot/compare/v4.0.1...v4.0.2) #### :warning: Noteworthy Changes - The dependency on `org.eclipse.jetty.ee11:jetty-ee11-servlets` has been removed from `spring-boot-jetty` as it was unnecessary and unused. If your application code depends on a class from `jetty-ee11-servlets`, declare a dependency on it in your build configuration. [#&#8203;48677](https://github.com/spring-projects/spring-boot/issues/48677) #### :lady\_beetle: Bug Fixes - No TransactionAutoConfiguration with spring-boot-starter-kafka for Spring Boot 4 [#&#8203;48880](https://github.com/spring-projects/spring-boot/issues/48880) - Evaluation of bean conditions unnecessarily queries the bean factory for types that are not present [#&#8203;48840](https://github.com/spring-projects/spring-boot/issues/48840) - When a bean condition references a type that is not present, it appears as ? in the condition evaluation report [#&#8203;48838](https://github.com/spring-projects/spring-boot/issues/48838) - SessionAutoConfiguration creates a DefaultCookieSerializer with a default SameSite of null instead of Lax [#&#8203;48830](https://github.com/spring-projects/spring-boot/issues/48830) - Setting graphql schema location to "classpath\*:graphql/\*\*/" causes failure due to incorrectly packaged test resource [#&#8203;48829](https://github.com/spring-projects/spring-boot/pull/48829) - Message interpolation by MVC and WebFlux's Validators does not work correctly in a native image [#&#8203;48828](https://github.com/spring-projects/spring-boot/issues/48828) - CloudFoundry integration fails in Servlet-based web app without a dependency on spring-boot-starter-restclient [#&#8203;48826](https://github.com/spring-projects/spring-boot/issues/48826) - RestTestClientAutoConfiguration and TestRestTemplateAutoConfiguration should be package-private [#&#8203;48820](https://github.com/spring-projects/spring-boot/issues/48820) - SSL metrics are no longer auto-configured [#&#8203;48819](https://github.com/spring-projects/spring-boot/issues/48819) - Actuator /info endpoint fails in Java 25 Native Image (VirtualThreadSchedulerMXBean support) [#&#8203;48812](https://github.com/spring-projects/spring-boot/issues/48812) - DataSourceBuilder cannot create oracle.ucp.jdbc.PoolDataSourceImpl in a native image [#&#8203;48703](https://github.com/spring-projects/spring-boot/issues/48703) - The spring-boot-cloudfoundry module should only have an optional dependency on spring-boot-security [#&#8203;48685](https://github.com/spring-projects/spring-boot/issues/48685) - Application JAR created by extract command is not reproductible [#&#8203;48678](https://github.com/spring-projects/spring-boot/issues/48678) - AOT processing of tests should not be disabled when 'skipTests' is set [#&#8203;48662](https://github.com/spring-projects/spring-boot/issues/48662) - `@SpringBootTest`(webEnvironment = WebEnvironment.RANDOM\_PORT) is no longer applied to the management server [#&#8203;48653](https://github.com/spring-projects/spring-boot/issues/48653) - Fix zero-length byte buffer in InspectedContent [#&#8203;48650](https://github.com/spring-projects/spring-boot/issues/48650) - Can no longer override JacksonJsonHttpMessageConverter with ServerHttpMessageConvertersCustomizer [#&#8203;48635](https://github.com/spring-projects/spring-boot/issues/48635) - HttpServiceClientProperties incorrectly uses the `@ConfigurationProperties` annotation on a LinkedHashMap class [#&#8203;48616](https://github.com/spring-projects/spring-boot/issues/48616) - spring-boot-micrometer-tracing-opentelemetry fails if spring-boot-opentelemetry isn't there [#&#8203;48585](https://github.com/spring-projects/spring-boot/issues/48585) - App fails to start with starter-webmvc and starter-zipkin [#&#8203;48581](https://github.com/spring-projects/spring-boot/issues/48581) - Micrometer test modules should have an api dependency on micrometer-observation-test [#&#8203;48386](https://github.com/spring-projects/spring-boot/issues/48386) #### :notebook\_with\_decorative\_cover: Documentation - Fix typo in REST client documentation [#&#8203;48907](https://github.com/spring-projects/spring-boot/pull/48907) - Remove duplicate word [#&#8203;48874](https://github.com/spring-projects/spring-boot/pull/48874) - Document support for configuring arguments passed to Docker Compose [#&#8203;48806](https://github.com/spring-projects/spring-boot/issues/48806) - The documentation related to EnvironmentPostProcessor links to deprecated interface [#&#8203;48803](https://github.com/spring-projects/spring-boot/issues/48803) - Update documentation for Buildpack's AOT Cache support [#&#8203;48769](https://github.com/spring-projects/spring-boot/issues/48769) - Correct docs to use new location for error handling configuration properties [#&#8203;48767](https://github.com/spring-projects/spring-boot/pull/48767) - Document spring-boot-starter-cloudfoundry on Cloud Foundry Support Page [#&#8203;48675](https://github.com/spring-projects/spring-boot/issues/48675) - Clarify javadoc to make it clear that HazelcastConfigCustomizer beans are only applied if Hazelcast is configured via a config file [#&#8203;48659](https://github.com/spring-projects/spring-boot/issues/48659) - Example using excludeDevtools property should document that optional dependencies should be enabled [#&#8203;48641](https://github.com/spring-projects/spring-boot/issues/48641) - Fix grammar and typos in the reference guide [#&#8203;48601](https://github.com/spring-projects/spring-boot/issues/48601) - Update Tracing section for Spring Boot 4's modularity [#&#8203;48576](https://github.com/spring-projects/spring-boot/issues/48576) #### :hammer: Dependency Upgrades - Upgrade to Classmate 1.7.3 [#&#8203;48783](https://github.com/spring-projects/spring-boot/issues/48783) - Upgrade to Elasticsearch Client 9.2.3 [#&#8203;48721](https://github.com/spring-projects/spring-boot/issues/48721) - Upgrade to Hibernate 7.2.1.Final [#&#8203;48857](https://github.com/spring-projects/spring-boot/issues/48857) - Upgrade to HttpClient5 5.5.2 [#&#8203;48784](https://github.com/spring-projects/spring-boot/issues/48784) - Upgrade to Jackson 2 Bom 2.20.2 [#&#8203;48910](https://github.com/spring-projects/spring-boot/issues/48910) - Upgrade to Jackson Bom 3.0.4 [#&#8203;48931](https://github.com/spring-projects/spring-boot/issues/48931) - Upgrade to JUnit Jupiter 6.0.2 [#&#8203;48785](https://github.com/spring-projects/spring-boot/issues/48785) - Upgrade to Lettuce 6.8.2.RELEASE [#&#8203;48859](https://github.com/spring-projects/spring-boot/issues/48859) - Upgrade to Logback 1.5.24 [#&#8203;48786](https://github.com/spring-projects/spring-boot/issues/48786) - Upgrade to Logback 1.5.25 [#&#8203;48885](https://github.com/spring-projects/spring-boot/issues/48885) - Upgrade to Micrometer 1.16.2 [#&#8203;48712](https://github.com/spring-projects/spring-boot/issues/48712) - Upgrade to Micrometer Tracing 1.6.2 [#&#8203;48713](https://github.com/spring-projects/spring-boot/issues/48713) - Upgrade to Native Build Tools Plugin 0.11.4 [#&#8203;48911](https://github.com/spring-projects/spring-boot/issues/48911) - Upgrade to Pooled JMS 3.1.9 [#&#8203;48787](https://github.com/spring-projects/spring-boot/issues/48787) - Upgrade to Postgresql 42.7.9 [#&#8203;48886](https://github.com/spring-projects/spring-boot/issues/48886) - Upgrade to R2DBC MSSQL 1.0.4.RELEASE [#&#8203;48858](https://github.com/spring-projects/spring-boot/issues/48858) - Upgrade to Reactor Bom 2025.0.2 [#&#8203;48714](https://github.com/spring-projects/spring-boot/issues/48714) - Upgrade to Spring AMQP 4.0.2 [#&#8203;48832](https://github.com/spring-projects/spring-boot/issues/48832) - Upgrade to Spring Batch 6.0.2 [#&#8203;48715](https://github.com/spring-projects/spring-boot/issues/48715) - Upgrade to Spring Data Bom 2025.1.2 [#&#8203;48716](https://github.com/spring-projects/spring-boot/issues/48716) - Upgrade to Spring Framework 7.0.3 [#&#8203;48717](https://github.com/spring-projects/spring-boot/issues/48717) - Upgrade to Spring GraphQL 2.0.2 [#&#8203;48718](https://github.com/spring-projects/spring-boot/issues/48718) - Upgrade to Spring HATEOAS 3.0.2 [#&#8203;48834](https://github.com/spring-projects/spring-boot/issues/48834) - Upgrade to Spring Integration 7.0.2 [#&#8203;48833](https://github.com/spring-projects/spring-boot/issues/48833) - Upgrade to Spring Kafka 4.0.2 [#&#8203;48719](https://github.com/spring-projects/spring-boot/issues/48719) - Upgrade to Spring Pulsar 2.0.2 [#&#8203;48720](https://github.com/spring-projects/spring-boot/issues/48720) - Upgrade to WebJars Locator Lite 1.1.3 [#&#8203;48788](https://github.com/spring-projects/spring-boot/issues/48788) - Upgrade to XML Maven Plugin 1.2.1 [#&#8203;48887](https://github.com/spring-projects/spring-boot/issues/48887) #### :heart: Contributors Thank you to all the contributors who worked on this release: [@&#8203;GaoSSR](https://github.com/GaoSSR), [@&#8203;ShaunHaldane](https://github.com/ShaunHaldane), [@&#8203;Zuohuang-Cai](https://github.com/Zuohuang-Cai), [@&#8203;izeye](https://github.com/izeye), [@&#8203;mspiess](https://github.com/mspiess), [@&#8203;ngocnhan-tran1996](https://github.com/ngocnhan-tran1996), and [@&#8203;philipbolting](https://github.com/philipbolting) ### [`v4.0.1`](https://github.com/spring-projects/spring-boot/releases/tag/v4.0.1) [Compare Source](https://github.com/spring-projects/spring-boot/compare/v4.0.0...v4.0.1) #### :warning: Noteworthy Changes - Hibernate has been upgraded to 7.2.0.Final in response to Hibernate 7.1 moving to limited support - spring-boot-starter-kotlin-serialization has been renamed to to spring-boot-starter-kotlinx-serialization-json and spring-boot-starter-kotlin-serialization-test has been renamed to spring-boot-starter-kotlinx-serialization-json-test. This change aligns the starters' names with those of their respective modules - Using TestRestTemplate now [requires a dependency on spring-boot-restclient](https://docs.spring.io/spring-boot/4.0-SNAPSHOT/reference/testing/spring-boot-applications.html#testing.spring-boot-applications.with-running-server) #### :lady\_beetle: Bug Fixes - JsonMixinModuleEntriesBeanRegistrationAotProcessor does not handle deprecated code [#&#8203;48564](https://github.com/spring-projects/spring-boot/issues/48564) - JdbcSessionAutoConfiguration may not match when using the auto-configured DataSource [#&#8203;48552](https://github.com/spring-projects/spring-boot/pull/48552) - `@ServiceConnection` for LgtmStackContainer fails when logging endpoint is configured due to multiple OtlpLoggingConnectionDetails beans [#&#8203;48536](https://github.com/spring-projects/spring-boot/issues/48536) - WebApplicationType does not consider modules when deduced from classpath [#&#8203;48517](https://github.com/spring-projects/spring-boot/issues/48517) - Spring Session auto-configuration fails in a war deployment as ServerProperties is not available [#&#8203;48493](https://github.com/spring-projects/spring-boot/issues/48493) - Opentelemetry logging export requires actuator module [#&#8203;48488](https://github.com/spring-projects/spring-boot/issues/48488) - RabbitHealthIndicator reports an error when version is missing from the connection's server properties [#&#8203;48487](https://github.com/spring-projects/spring-boot/issues/48487) - Actuator Info class has inconsistent nullability annotations and cannot be built with null value [#&#8203;48480](https://github.com/spring-projects/spring-boot/pull/48480) - Profiles retained during AOT processing are not configured in a native image [#&#8203;48476](https://github.com/spring-projects/spring-boot/issues/48476) - Security matchers and WebServerNamespace resolution can fail with NoClassDefFoundError when used in a traditional WAR deployment [#&#8203;48388](https://github.com/spring-projects/spring-boot/issues/48388) - HealthEndpointGroupMembershipValidator does not consider reactive health indicators causing NoSuchHealthContributorException to be thrown [#&#8203;48387](https://github.com/spring-projects/spring-boot/issues/48387) - spring.jackson.default-property-inclusion is not applied to content inclusion [#&#8203;48343](https://github.com/spring-projects/spring-boot/issues/48343) - TestRestTemplate.getRootUri() returns empty string [#&#8203;48330](https://github.com/spring-projects/spring-boot/issues/48330) - Redis health check reports an error when redis\_version is missing from the INFO response [#&#8203;48328](https://github.com/spring-projects/spring-boot/issues/48328) - Parent's MeterRegistry beans are closed when child context closes [#&#8203;48325](https://github.com/spring-projects/spring-boot/issues/48325) - HttpMessageConverters picks up converter beans for both client and server [#&#8203;48310](https://github.com/spring-projects/spring-boot/issues/48310) - Conditions to auto-configure a RestClient are outdated with the modularization [#&#8203;48308](https://github.com/spring-projects/spring-boot/issues/48308) - A custom JwtTypeValidator that replaces the default can no longer be configured [#&#8203;48301](https://github.com/spring-projects/spring-boot/issues/48301) - PropertiesRestClientHttpServiceGroupConfigurer has highest precedence, preventing other configurers from being ordered ahead of it [#&#8203;48296](https://github.com/spring-projects/spring-boot/issues/48296) - SpringBootTest.UseMainMethod.WHEN\_AVAILABLE and ALWAYS are incompatible with package-private or parameter-less main method [#&#8203;48275](https://github.com/spring-projects/spring-boot/issues/48275) - Conditions to auto-configure RestClient-based HTTP service clients are outdated with the modularization [#&#8203;48274](https://github.com/spring-projects/spring-boot/pull/48274) - Starter for Kotlinx Serialization Json is misnamed [#&#8203;48262](https://github.com/spring-projects/spring-boot/issues/48262) - ApplicationServletEnvironment is no longer configured in war deployments [#&#8203;48254](https://github.com/spring-projects/spring-boot/issues/48254) - RestClient.Builder bean present in `@SpringBootTest` due to spring-boot-starter-webmvc-test, but missing at runtime without restclient starter [#&#8203;48253](https://github.com/spring-projects/spring-boot/issues/48253) - ProblemDetail is rendered to XML incorrectly [#&#8203;48222](https://github.com/spring-projects/spring-boot/pull/48222) #### :notebook\_with\_decorative\_cover: Documentation - Harmonize Kotlin example for HTTP Service client support [#&#8203;48577](https://github.com/spring-projects/spring-boot/pull/48577) - Document HttpMessageConverters detection changes in 4.0.1 [#&#8203;48574](https://github.com/spring-projects/spring-boot/issues/48574) - Improve javadoc for when to use class names rather than class references [#&#8203;48569](https://github.com/spring-projects/spring-boot/issues/48569) - Documentation has an outdated reference to the Jackson Kotlin Module [#&#8203;48534](https://github.com/spring-projects/spring-boot/issues/48534) - Caching documentation should clarify how to use a no-op implementation to run a test suite [#&#8203;48532](https://github.com/spring-projects/spring-boot/issues/48532) - Document that the default rolling policy for Log4j2 requires logging.file.path to be set [#&#8203;48527](https://github.com/spring-projects/spring-boot/issues/48527) - Review documentation and migration guide about changes in `@AutoConfigureCache` [#&#8203;48522](https://github.com/spring-projects/spring-boot/issues/48522) - License header in build samples is displayed in the reference documentation [#&#8203;48478](https://github.com/spring-projects/spring-boot/issues/48478) - Configuring Two DataSources How-To code sample is inconsistent [#&#8203;48449](https://github.com/spring-projects/spring-boot/issues/48449) - Fix links to source files on GitHub [#&#8203;48398](https://github.com/spring-projects/spring-boot/pull/48398) - Documentation contains broken links to GitHub source files [#&#8203;48394](https://github.com/spring-projects/spring-boot/issues/48394) - Document that org.aspectj.weaver.Advice must be on the classpath to enable support for Micrometer's annotations [#&#8203;48360](https://github.com/spring-projects/spring-boot/issues/48360) - Correct the annotation in the Kotlin `@ConfigurationPropertiesSource` example [#&#8203;48357](https://github.com/spring-projects/spring-boot/pull/48357) - Polish TestRestTemplate examples in the reference guide [#&#8203;48336](https://github.com/spring-projects/spring-boot/issues/48336) - Documentation missing for LocalTestWebServer [#&#8203;48333](https://github.com/spring-projects/spring-boot/issues/48333) - Update "Creating Your Own Starter" following modularisation [#&#8203;48317](https://github.com/spring-projects/spring-boot/issues/48317) - Fix links to javadoc in the reference documentation [#&#8203;48300](https://github.com/spring-projects/spring-boot/issues/48300) - Update references for RestTemplateCustomizer and RestTemplateBuilder classes in documentation [#&#8203;48295](https://github.com/spring-projects/spring-boot/pull/48295) - Remove modules section of the README following modularisation [#&#8203;48291](https://github.com/spring-projects/spring-boot/issues/48291) - Wrong number in Graceful Shutdown chapter [#&#8203;48284](https://github.com/spring-projects/spring-boot/issues/48284) - Mention new spring-boot-h2console module when describing how to use H2 Console [#&#8203;48278](https://github.com/spring-projects/spring-boot/pull/48278) - Clarify that `@EnableBatchProcessing` turns off all batch auto-configuration, including schema initialization [#&#8203;48266](https://github.com/spring-projects/spring-boot/issues/48266) - Documented replacements for spring.jackson.generator and spring.jackson.parser are inverted [#&#8203;48255](https://github.com/spring-projects/spring-boot/pull/48255) - Document the need for a JdbcDialect bean when using Spring Data JDBC and AOT [#&#8203;48240](https://github.com/spring-projects/spring-boot/issues/48240) - Update reference documentation as Spring Batch's resourceless infrastructure means that it no longer always requires a DataSource [#&#8203;48233](https://github.com/spring-projects/spring-boot/issues/48233) - Kotlin auto-configuration examples are not annotated with `@AutoConfiguration` [#&#8203;48228](https://github.com/spring-projects/spring-boot/issues/48228) - Revise "Use Liquibase for test-only migrations" section in reference manual [#&#8203;48219](https://github.com/spring-projects/spring-boot/issues/48219) - Infinispan Cache Documentation is outdated [#&#8203;48218](https://github.com/spring-projects/spring-boot/issues/48218) - Removed max-attempts properties metadata don't have replacement [#&#8203;48206](https://github.com/spring-projects/spring-boot/issues/48206) - Polish documentation on testing web applications and the various testing clients that are available [#&#8203;47948](https://github.com/spring-projects/spring-boot/issues/47948) #### :hammer: Dependency Upgrades - Upgrade to AspectJ 1.9.25.1 [#&#8203;48561](https://github.com/spring-projects/spring-boot/issues/48561) - Upgrade to Elasticsearch Client 9.2.2 [#&#8203;48447](https://github.com/spring-projects/spring-boot/issues/48447) - Upgrade to Groovy 5.0.3 [#&#8203;48460](https://github.com/spring-projects/spring-boot/issues/48460) - Upgrade to Hibernate 7.2.0.Final [#&#8203;48518](https://github.com/spring-projects/spring-boot/issues/48518) - Upgrade to Jackson Bom 3.0.3 [#&#8203;48462](https://github.com/spring-projects/spring-boot/issues/48462) - Upgrade to Jetty 12.1.5 [#&#8203;48463](https://github.com/spring-projects/spring-boot/issues/48463) - Upgrade to jOOQ 3.19.29 [#&#8203;48464](https://github.com/spring-projects/spring-boot/issues/48464) - Upgrade to Json Path 2.10.0 [#&#8203;48553](https://github.com/spring-projects/spring-boot/issues/48553) - Upgrade to Log4j2 2.25.3 [#&#8203;48551](https://github.com/spring-projects/spring-boot/issues/48551) - Upgrade to MariaDB 3.5.7 [#&#8203;48562](https://github.com/spring-projects/spring-boot/issues/48562) - Upgrade to Micrometer 1.16.1 [#&#8203;48433](https://github.com/spring-projects/spring-boot/issues/48433) - Upgrade to Micrometer Tracing 1.6.1 [#&#8203;48434](https://github.com/spring-projects/spring-boot/issues/48434) - Upgrade to MongoDB 5.6.2 [#&#8203;48501](https://github.com/spring-projects/spring-boot/issues/48501) - Upgrade to Netty 4.2.9.Final [#&#8203;48544](https://github.com/spring-projects/spring-boot/issues/48544) - Upgrade to Pooled JMS 3.1.8 [#&#8203;48563](https://github.com/spring-projects/spring-boot/issues/48563) - Upgrade to Pulsar 4.1.2 [#&#8203;48465](https://github.com/spring-projects/spring-boot/issues/48465) - Upgrade to Quartz 2.5.2 [#&#8203;48466](https://github.com/spring-projects/spring-boot/issues/48466) - Upgrade to Reactor Bom 2025.0.1 [#&#8203;48435](https://github.com/spring-projects/spring-boot/issues/48435) - Upgrade to Spring AMQP 4.0.1 [#&#8203;48436](https://github.com/spring-projects/spring-boot/issues/48436) - Upgrade to Spring Batch 6.0.1 [#&#8203;48437](https://github.com/spring-projects/spring-boot/issues/48437) - Upgrade to Spring Data Bom 2025.1.1 [#&#8203;48438](https://github.com/spring-projects/spring-boot/issues/48438) - Upgrade to Spring Framework 7.0.2 [#&#8203;48439](https://github.com/spring-projects/spring-boot/issues/48439) - Upgrade to Spring GraphQL 2.0.1 [#&#8203;48440](https://github.com/spring-projects/spring-boot/issues/48440) - Upgrade to Spring HATEOAS 3.0.1 [#&#8203;48481](https://github.com/spring-projects/spring-boot/issues/48481) - Upgrade to Spring Integration 7.0.1 [#&#8203;48482](https://github.com/spring-projects/spring-boot/issues/48482) - Upgrade to Spring Kafka 4.0.1 [#&#8203;48441](https://github.com/spring-projects/spring-boot/issues/48441) - Upgrade to Spring LDAP 4.0.1 [#&#8203;48442](https://github.com/spring-projects/spring-boot/issues/48442) - Upgrade to Spring Pulsar 2.0.1 [#&#8203;48443](https://github.com/spring-projects/spring-boot/issues/48443) - Upgrade to Spring Security 7.0.2 [#&#8203;48444](https://github.com/spring-projects/spring-boot/issues/48444) - Upgrade to Spring Session 4.0.1 [#&#8203;48445](https://github.com/spring-projects/spring-boot/issues/48445) - Upgrade to Testcontainers 2.0.3 [#&#8203;48545](https://github.com/spring-projects/spring-boot/issues/48545) - Upgrade to Tomcat 11.0.15 [#&#8203;48467](https://github.com/spring-projects/spring-boot/issues/48467) - Upgrade to UnboundID LDAPSDK 7.0.4 [#&#8203;48468](https://github.com/spring-projects/spring-boot/issues/48468) #### :heart: Contributors Thank you to all the contributors who worked on this release: [@&#8203;Nhahan](https://github.com/Nhahan), [@&#8203;arey](https://github.com/arey), [@&#8203;banseok1216](https://github.com/banseok1216), [@&#8203;berry120](https://github.com/berry120), [@&#8203;candrews](https://github.com/candrews), [@&#8203;dmitrysulman](https://github.com/dmitrysulman), [@&#8203;geopark021](https://github.com/geopark021), [@&#8203;hktechn0](https://github.com/hktechn0), [@&#8203;igslznev](https://github.com/igslznev), [@&#8203;jwalter](https://github.com/jwalter), [@&#8203;kzander91](https://github.com/kzander91), [@&#8203;michaldo](https://github.com/michaldo), [@&#8203;mzeijen](https://github.com/mzeijen), [@&#8203;ngocnhan-tran1996](https://github.com/ngocnhan-tran1996), [@&#8203;noojung](https://github.com/noojung), [@&#8203;scottfrederick](https://github.com/scottfrederick), [@&#8203;vpavic](https://github.com/vpavic), and [@&#8203;youngledo](https://github.com/youngledo) ### [`v4.0.0`](https://github.com/spring-projects/spring-boot/releases/tag/v4.0.0) [Compare Source](https://github.com/spring-projects/spring-boot/compare/v3.5.16...v4.0.0) Full [release notes for Spring Boot 4.0](https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-4.0-Release-Notes) are available on the wiki. There is also [a migration guide](https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-4.0-Migration-Guide) to help you upgrade from Spring Boot 3.5. #### :star: New Features - Change tomcat and jetty runtime modules to starters [#&#8203;48175](https://github.com/spring-projects/spring-boot/issues/48175) - Rename spring-boot-kotlin-serialization to align with the name of the Kotlinx module that it pulls in [#&#8203;48076](https://github.com/spring-projects/spring-boot/issues/48076) #### :lady\_beetle: Bug Fixes - Error properties are a general web concern and should not be located beneath server.\* [#&#8203;48201](https://github.com/spring-projects/spring-boot/issues/48201) - With both Jackson 2 and 3 on the classpath, `@JsonTest` fails due to duplicate jacksonTesterFactoryBean [#&#8203;48198](https://github.com/spring-projects/spring-boot/issues/48198) - Gradle war task does not exclude starter POMs from lib-provided [#&#8203;48197](https://github.com/spring-projects/spring-boot/issues/48197) - spring.test.webclient.mockrestserviceserver.enabled is not aligned with its module's name [#&#8203;48193](https://github.com/spring-projects/spring-boot/issues/48193) - SslMeterBinder doesn't register metrics for dynamically added bundles if no bundles exist at bind time [#&#8203;48182](https://github.com/spring-projects/spring-boot/issues/48182) - Properties bound in the child management context ignore the parent's environment prefix [#&#8203;48177](https://github.com/spring-projects/spring-boot/issues/48177) - ssl.chain.expiry metrics doesn't update for dynamically registered SSL bundles [#&#8203;48171](https://github.com/spring-projects/spring-boot/issues/48171) - Starter for spring-boot-micrometer-metrics is missing [#&#8203;48161](https://github.com/spring-projects/spring-boot/issues/48161) - Elasticsearch client's sniffer functionality should not be enabled by default [#&#8203;48155](https://github.com/spring-projects/spring-boot/issues/48155) - spring-boot-starter-elasticsearch should depend on elasticsearch-java [#&#8203;48141](https://github.com/spring-projects/spring-boot/pull/48141) - Auto-configuration exclusions are checked using a different class loader to the one that loads auto-configuration classes [#&#8203;48132](https://github.com/spring-projects/spring-boot/issues/48132) - New arm64 macbooks fail to bootBuildImage due to incorrect platform image [#&#8203;48128](https://github.com/spring-projects/spring-boot/issues/48128) - Properties for configuring an isolated JsonMapper or ObjectMapper are incorrectly named [#&#8203;48116](https://github.com/spring-projects/spring-boot/issues/48116) - Buildpack fails with recent Docker installs due to hardcoded version in URL [#&#8203;48103](https://github.com/spring-projects/spring-boot/issues/48103) - Image building may fail when specifying a platform if an image has already been built with a different platform [#&#8203;48099](https://github.com/spring-projects/spring-boot/issues/48099) - Default values of Kotlinx Serialization JSON configuration properties are not documented [#&#8203;48097](https://github.com/spring-projects/spring-boot/issues/48097) - Custom XML converters should override defaults in HttpMessageConverters [#&#8203;48096](https://github.com/spring-projects/spring-boot/issues/48096) - Kotlin serialization is used too aggressively when other JSON libraries are available [#&#8203;48070](https://github.com/spring-projects/spring-boot/issues/48070) - PortInUseException incorrectly thrown on failure to bind port due to Netty IP misconfiguration [#&#8203;48059](https://github.com/spring-projects/spring-boot/issues/48059) - Auto-configured JCacheMetrics cannot be customized [#&#8203;48057](https://github.com/spring-projects/spring-boot/issues/48057) - WebSecurityCustomizer beans are excluded by WebMvcTest [#&#8203;48055](https://github.com/spring-projects/spring-boot/issues/48055) - Deprecated EnvironmentPostProcessor does not resolve arguments [#&#8203;48047](https://github.com/spring-projects/spring-boot/issues/48047) - RetryPolicySettings should refer to maxRetries, not maxAttempts [#&#8203;48023](https://github.com/spring-projects/spring-boot/issues/48023) - Devtools Restarter does not work with a parameterless main method [#&#8203;47996](https://github.com/spring-projects/spring-boot/issues/47996) - Dependency management for Kafka should not manage Scala 2.12 libraries [#&#8203;47991](https://github.com/spring-projects/spring-boot/pull/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 [#&#8203;47983](https://github.com/spring-projects/spring-boot/issues/47983) - spring-boot-starter-data-mongodb-reactive has dependency on reactor-test [#&#8203;47982](https://github.com/spring-projects/spring-boot/issues/47982) - Support for ReactiveElasticsearchClient is in the wrong module [#&#8203;47848](https://github.com/spring-projects/spring-boot/issues/47848) #### :notebook\_with\_decorative\_cover: Documentation - Removed property spring.test.webclient.register-rest-template is still documented [#&#8203;48199](https://github.com/spring-projects/spring-boot/issues/48199) - Mention support for detecting AWS ECS in "Deploying to the Cloud" [#&#8203;48170](https://github.com/spring-projects/spring-boot/pull/48170) - Revise AWS section of "Deploying to the Cloud" in reference manual [#&#8203;48163](https://github.com/spring-projects/spring-boot/issues/48163) - Fix typo in PortInUseException Javadoc [#&#8203;48134](https://github.com/spring-projects/spring-boot/issues/48134) - Correct section about required setters in "Type-safe Configuration Properties" [#&#8203;48131](https://github.com/spring-projects/spring-boot/issues/48131) - Use since attribute in configuration properties deprecation consistently [#&#8203;48122](https://github.com/spring-projects/spring-boot/issues/48122) - Document EndpointJsonMapper and management.endpoints.jackson.isolated-json-mapper [#&#8203;48115](https://github.com/spring-projects/spring-boot/issues/48115) - Document support for configuring servlet context init parameters using properties [#&#8203;48112](https://github.com/spring-projects/spring-boot/issues/48112) - Some configuration properties are not documented in the appendix [#&#8203;48095](https://github.com/spring-projects/spring-boot/issues/48095) - Clarify how warnings about soon-to-expire SSL certificates are reported [#&#8203;48063](https://github.com/spring-projects/spring-boot/issues/48063) - Document how to use ContextPropagatingTaskDecorator for propagating trace context over thread boundaries [#&#8203;48053](https://github.com/spring-projects/spring-boot/issues/48053) - Document the level of support for the OpenTelemetry APIs [#&#8203;47960](https://github.com/spring-projects/spring-boot/issues/47960) - Document that you need to build with Java 25 for buildpack build-image Graal support [#&#8203;45501](https://github.com/spring-projects/spring-boot/issues/45501) #### :hammer: Dependency Upgrades - Upgrade to Cassandra Driver 4.19.2 [#&#8203;48184](https://github.com/spring-projects/spring-boot/issues/48184) - Upgrade to DB2 JDBC 12.1.3.0 [#&#8203;48087](https://github.com/spring-projects/spring-boot/issues/48087) - Upgrade to Elasticsearch Client 9.2.1 [#&#8203;48137](https://github.com/spring-projects/spring-boot/issues/48137) - Upgrade to GraphQL Java 25.0 [#&#8203;48034](https://github.com/spring-projects/spring-boot/issues/48034) - Upgrade to Hibernate 7.1.8.Final [#&#8203;48150](https://github.com/spring-projects/spring-boot/issues/48150) - Upgrade to Jackson Bom 3.0.2 [#&#8203;48089](https://github.com/spring-projects/spring-boot/issues/48089) - Upgrade to Jetty 12.1.4 [#&#8203;48120](https://github.com/spring-projects/spring-boot/issues/48120) - Upgrade to Jetty Reactive HTTPClient 4.1.4 [#&#8203;48151](https://github.com/spring-projects/spring-boot/issues/48151) - Upgrade to jOOQ 3.19.28 [#&#8203;48090](https://github.com/spring-projects/spring-boot/issues/48090) - Upgrade to Kafka 4.1.1 [#&#8203;48185](https://github.com/spring-projects/spring-boot/issues/48185) - Upgrade to Logback 1.5.21 [#&#8203;48091](https://github.com/spring-projects/spring-boot/issues/48091) - Upgrade to Micrometer 1.16.0 [#&#8203;47820](https://github.com/spring-projects/spring-boot/issues/47820) - Upgrade to Micrometer Tracing 1.6.0 [#&#8203;47821](https://github.com/spring-projects/spring-boot/issues/47821) - Upgrade to MySQL 9.5.0 [#&#8203;48092](https://github.com/spring-projects/spring-boot/issues/48092) - Upgrade to Native Build Tools Plugin 0.11.3 [#&#8203;48051](https://github.com/spring-projects/spring-boot/issues/48051) - Upgrade to Neo4j Java Driver 6.0.2 [#&#8203;47997](https://github.com/spring-projects/spring-boot/issues/47997) - Upgrade to Prometheus Client 1.4.3 [#&#8203;48093](https://github.com/spring-projects/spring-boot/issues/48093) - Upgrade to Reactor Bom 2025.0.0 [#&#8203;47822](https://github.com/spring-projects/spring-boot/issues/47822) - Upgrade to Spring AMQP 4.0.0 [#&#8203;47823](https://github.com/spring-projects/spring-boot/issues/47823) - Upgrade to Spring Batch 6.0.0 [#&#8203;47834](https://github.com/spring-projects/spring-boot/issues/47834) - Upgrade to Spring Data Bom 2025.1.0 [#&#8203;47824](https://github.com/spring-projects/spring-boot/issues/47824) - Upgrade to Spring Framework 7.0.1 [#&#8203;48168](https://github.com/spring-projects/spring-boot/issues/48168) - Upgrade to Spring GraphQL 2.0.0 [#&#8203;47826](https://github.com/spring-projects/spring-boot/issues/47826) - Upgrade to Spring HATEOAS 3.0.0 [#&#8203;47827](https://github.com/spring-projects/spring-boot/issues/47827) - Upgrade to Spring Integration 7.0.0 [#&#8203;47828](https://github.com/spring-projects/spring-boot/issues/47828) - Upgrade to Spring Kafka 4.0.0 [#&#8203;47829](https://github.com/spring-projects/spring-boot/issues/47829) - Upgrade to Spring LDAP 4.0.0 [#&#8203;47999](https://github.com/spring-projects/spring-boot/issues/47999) - Upgrade to Spring Pulsar 2.0.0 [#&#8203;47830](https://github.com/spring-projects/spring-boot/issues/47830) - Upgrade to Spring RESTDocs 4.0.0 [#&#8203;47831](https://github.com/spring-projects/spring-boot/issues/47831) - Upgrade to Spring Security 7.0.0 [#&#8203;47832](https://github.com/spring-projects/spring-boot/issues/47832) - Upgrade to Spring Session 4.0.0 [#&#8203;48000](https://github.com/spring-projects/spring-boot/issues/48000) - Upgrade to Spring WS 5.0.0 [#&#8203;47833](https://github.com/spring-projects/spring-boot/issues/47833) - Upgrade to Testcontainers 2.0.2 [#&#8203;48152](https://github.com/spring-projects/spring-boot/issues/48152) - Upgrade to Tomcat 11.0.14 [#&#8203;48094](https://github.com/spring-projects/spring-boot/issues/48094) #### :heart: Contributors Thank you to all the contributors who worked on this release: [@&#8203;K-jun98](https://github.com/K-jun98), [@&#8203;TerryTaoYY](https://github.com/TerryTaoYY), [@&#8203;filiphr](https://github.com/filiphr), [@&#8203;hojooo](https://github.com/hojooo), [@&#8203;linw-bai](https://github.com/linw-bai), [@&#8203;nosan](https://github.com/nosan), [@&#8203;scottfrederick](https://github.com/scottfrederick), [@&#8203;stevearmstrong-dev](https://github.com/stevearmstrong-dev), [@&#8203;stewue](https://github.com/stewue), and [@&#8203;vpavic](https://github.com/vpavic) ### [`v3.5.16`](https://github.com/spring-projects/spring-boot/releases/tag/v3.5.16) [Compare Source](https://github.com/spring-projects/spring-boot/compare/v3.5.15...v3.5.16) #### :hammer: Dependency Upgrades - Upgrade to [Spring AMQP 3.2.12](https://github.com/spring-projects/spring-amqp/releases/tag/v3.2.12) [#&#8203;50818](https://github.com/spring-projects/spring-boot/issues/50818) - Upgrade to [Spring Data Bom 2025.0.13](https://github.com/spring-projects/spring-data-bom/releases/tag/2025.0.13) [#&#8203;50819](https://github.com/spring-projects/spring-boot/issues/50819) - Upgrade to [Spring Integration 6.5.10](https://github.com/spring-projects/spring-integration/releases/tag/v6.5.10) [#&#8203;50820](https://github.com/spring-projects/spring-boot/issues/50820) ### [`v3.5.15`](https://github.com/spring-projects/spring-boot/releases/tag/v3.5.15) [Compare Source](https://github.com/spring-projects/spring-boot/compare/v3.5.14...v3.5.15) #### :lady\_beetle: Bug Fixes - Artemis auto-configuration uses a predictable default location for the embedded broker's data [#&#8203;50743](https://github.com/spring-projects/spring-boot/issues/50743) - MailSender auto-configuration does not enable hostname verification [#&#8203;50742](https://github.com/spring-projects/spring-boot/issues/50742) - SSL should not be enabled when a SSL bundle is overridden to an empty string [#&#8203;50624](https://github.com/spring-projects/spring-boot/pull/50624) - Layer written outside the output location of '//' exception is thrown when using extract layers in root directory [#&#8203;50501](https://github.com/spring-projects/spring-boot/pull/50501) - Docker Compose support does not restore thread interrupt flag when catching InterruptedException [#&#8203;50451](https://github.com/spring-projects/spring-boot/pull/50451) - RabbitProperties enables SSL even when spring.rabbitmq.ssl.bundle is overridden to an empty string [#&#8203;50429](https://github.com/spring-projects/spring-boot/pull/50429) - GraphQL WebSocket support does not configure allowed origins [#&#8203;50391](https://github.com/spring-projects/spring-boot/issues/50391) - Buildpack module does not validate long-to-int casts [#&#8203;50382](https://github.com/spring-projects/spring-boot/pull/50382) - MappingsEndpoint reports the context's own ID as parentId when a parent exists [#&#8203;50373](https://github.com/spring-projects/spring-boot/pull/50373) - Created StackTracePrinter instances have no access to the Environment [#&#8203;50303](https://github.com/spring-projects/spring-boot/pull/50303) - NullPointerException in reactor-netty SniProvider when SSL bundle uses client-auth or server truststore without server-name-bundles [#&#8203;50301](https://github.com/spring-projects/spring-boot/pull/50301) - Spring Boot Loader Does Not Support RSA and EC Signed Jars [#&#8203;50292](https://github.com/spring-projects/spring-boot/issues/50292) - ConfigurationPropertiesReportEndpoint exposes AOP proxy internals [#&#8203;50273](https://github.com/spring-projects/spring-boot/pull/50273) - Actuator's '/cloudfoundryapplication' endpoint does not work if restrictive CORS configuration is provided using a bean named corsConfigurationSource [#&#8203;50254](https://github.com/spring-projects/spring-boot/issues/50254) - Meter registries are not removed from the global registry when the context is closed [#&#8203;50235](https://github.com/spring-projects/spring-boot/pull/50235) - ThreadPoolTaskScheduleBuilder unnecessarily loses precision when configuring await termination time [#&#8203;50225](https://github.com/spring-projects/spring-boot/pull/50225) - Apply HTML escaping to timestamp attribute in Whitelabel error page [#&#8203;50205](https://github.com/spring-projects/spring-boot/pull/50205) - NimbusJwtDecoder silently accepts unknown values for spring.security.oauth2.resourceserver.jwt.jws-algorithms [#&#8203;50118](https://github.com/spring-projects/spring-boot/pull/50118) - EndpointRequest links matcher unnecessarily matches HTTP methods other than GET [#&#8203;50095](https://github.com/spring-projects/spring-boot/pull/50095) #### :notebook\_with\_decorative\_cover: Documentation - Fix reference to Gradle documentation for module replacement [#&#8203;50641](https://github.com/spring-projects/spring-boot/pull/50641) - Remove the use of Optional from Data Neo4j repository examples [#&#8203;50600](https://github.com/spring-projects/spring-boot/pull/50600) - Fix typos in documentation [#&#8203;50593](https://github.com/spring-projects/spring-boot/pull/50593) - Document Java 25 requirement for AOT cache [#&#8203;50482](https://github.com/spring-projects/spring-boot/pull/50482) - Clarify dependency requirement for Bean Validation support [#&#8203;50290](https://github.com/spring-projects/spring-boot/pull/50290) - Document SSL reloading with Let's Encrypt [#&#8203;50222](https://github.com/spring-projects/spring-boot/pull/50222) - Polish InvalidConfigurationPropertyValueException constructor javadoc [#&#8203;50212](https://github.com/spring-projects/spring-boot/issues/50212) - Document known testcontainers lifecycle issues [#&#8203;50210](https://github.com/spring-projects/spring-boot/pull/50210) - Document configuring multiple connectors with Jetty [#&#8203;50206](https://github.com/spring-projects/spring-boot/pull/50206) - Fix typo in Spring Security OAuth2 client registration documentation [#&#8203;50193](https://github.com/spring-projects/spring-boot/pull/50193) #### :hammer: Dependency Upgrades - Upgrade to [Caffeine 3.2.4](https://github.com/ben-manes/caffeine/releases/tag/v3.2.4) [#&#8203;50308](https://github.com/spring-projects/spring-boot/issues/50308) - Upgrade to Cassandra Driver 4.19.3 [#&#8203;50670](https://github.com/spring-projects/spring-boot/issues/50670) - Upgrade to Glassfish JAXB 4.0.9 [#&#8203;50671](https://github.com/spring-projects/spring-boot/issues/50671) - Upgrade to Groovy 4.0.32 [#&#8203;50310](https://github.com/spring-projects/spring-boot/issues/50310) - Upgrade to Hibernate 6.6.53.Final [#&#8203;50721](https://github.com/spring-projects/spring-boot/issues/50721) - Upgrade to Jackson Bom 2.21.4 [#&#8203;50673](https://github.com/spring-projects/spring-boot/issues/50673) - Upgrade to Jakarta Json Bind 3.0.2 [#&#8203;50674](https://github.com/spring-projects/spring-boot/issues/50674) - Upgrade to [Jakarta XML Bind 4.0.5](https://github.com/jakartaee/jaxb-api/releases/tag/4.0.5) [#&#8203;50313](https://github.com/spring-projects/spring-boot/issues/50313) - Upgrade to Jaxen 2.0.6 [#&#8203;50722](https://github.com/spring-projects/spring-boot/issues/50722) - Upgrade to Jetty 12.0.36 [#&#8203;50676](https://github.com/spring-projects/spring-boot/issues/50676) - Upgrade to Jetty Reactive HTTPClient 4.0.14 [#&#8203;50723](https://github.com/spring-projects/spring-boot/issues/50723) - Upgrade to jOOQ 3.19.35 [#&#8203;50724](https://github.com/spring-projects/spring-boot/issues/50724) - Upgrade to Logback 1.5.34 [#&#8203;50677](https://github.com/spring-projects/spring-boot/issues/50677) - Upgrade to [Maven Failsafe Plugin 3.5.6](https://github.com/apache/maven-surefire/releases/tag/surefire-3.5.6) [#&#8203;50678](https://github.com/spring-projects/spring-boot/issues/50678) - Upgrade to [Maven Surefire Plugin 3.5.6](https://github.com/apache/maven-surefire/releases/tag/surefire-3.5.6) [#&#8203;50679](https://github.com/spring-projects/spring-boot/issues/50679) - Upgrade to [Micrometer 1.15.12](https://github.com/micrometer-metrics/micrometer/releases/tag/v1.15.12) [#&#8203;50511](https://github.com/spring-projects/spring-boot/issues/50511) - Upgrade to [Micrometer Tracing 1.5.12](https://github.com/micrometer-metrics/tracing/releases/tag/v1.5.12) [#&#8203;50512](https://github.com/spring-projects/spring-boot/issues/50512) - Upgrade to Netty 4.1.135.Final [#&#8203;50680](https://github.com/spring-projects/spring-boot/issues/50680) - Upgrade to [Postgresql 42.7.11](https://github.com/pgjdbc/pgjdbc/releases/tag/REL42.7.11) [#&#8203;50317](https://github.com/spring-projects/spring-boot/issues/50317) - Upgrade to Pulsar 4.0.11 [#&#8203;50725](https://github.com/spring-projects/spring-boot/issues/50725) - Upgrade to [R2DBC MySQL 1.4.2](https://github.com/asyncer-io/r2dbc-mysql/releases/tag/r2dbc-mysql-1.4.2) [#&#8203;50319](https://github.com/spring-projects/spring-boot/issues/50319) - Upgrade to [Reactor Bom 2024.0.18](https://github.com/reactor/reactor/releases/tag/2024.0.18) [#&#8203;50513](https://github.com/spring-projects/spring-boot/issues/50513) - Upgrade to SAAJ Impl 3.0.6 [#&#8203;50726](https://github.com/spring-projects/spring-boot/issues/50726) - Upgrade to SLF4J 2.0.18 [#&#8203;50533](https://github.com/spring-projects/spring-boot/issues/50533) - Upgrade to [Spring AMQP 3.2.11](https://github.com/spring-projects/spring-amqp/releases/tag/v3.2.11) [#&#8203;50514](https://github.com/spring-projects/spring-boot/issues/50514) - Upgrade to [Spring Authorization Server 1.5.8](https://github.com/spring-projects/spring-authorization-server/releases/tag/1.5.8) [#&#8203;50515](https://github.com/spring-projects/spring-boot/issues/50515) - Upgrade to [Spring Batch 5.2.6](https://github.com/spring-projects/spring-batch/releases/tag/v5.2.6) [#&#8203;50516](https://github.com/spring-projects/spring-boot/issues/50516) - Upgrade to [Spring Data Bom 2025.0.12](https://github.com/spring-projects/spring-data-bom/releases/tag/2025.0.12) [#&#8203;50517](https://github.com/spring-projects/spring-boot/issues/50517) - Upgrade to [Spring Framework 6.2.19](https://github.com/spring-projects/spring-framework/releases/tag/v6.2.19) [#&#8203;50518](https://github.com/spring-projects/spring-boot/issues/50518) - Upgrade to [Spring GraphQL 1.4.6](https://github.com/spring-projects/spring-graphql/releases/tag/v1.4.6) [#&#8203;50739](https://github.com/spring-projects/spring-boot/issues/50739) - Upgrade to [Spring HATEOAS 2.5.3](https://github.com/spring-projects/spring-hateoas/releases/tag/2.5.3) [#&#8203;50519](https://github.com/spring-projects/spring-boot/issues/50519) - Upgrade to [Spring Integration 6.5.9](https://github.com/spring-projects/spring-integration/releases/tag/v6.5.9) [#&#8203;50520](https://github.com/spring-projects/spring-boot/issues/50520) - Upgrade to [Spring Kafka 3.3.16](https://github.com/spring-projects/spring-kafka/releases/tag/v3.3.16) [#&#8203;50521](https://github.com/spring-projects/spring-boot/issues/50521) - Upgrade to [Spring LDAP 3.3.8](https://github.com/spring-projects/spring-ldap/releases/tag/3.3.8) [#&#8203;50522](https://github.com/spring-projects/spring-boot/issues/50522) - Upgrade to [Spring Pulsar 1.2.18](https://github.com/spring-projects/spring-pulsar/releases/tag/v1.2.18) [#&#8203;50523](https://github.com/spring-projects/spring-boot/issues/50523) - Upgrade to [Spring RESTDocs 3.0.6](https://github.com/spring-projects/spring-restdocs/releases/tag/v3.0.6) [#&#8203;50524](https://github.com/spring-projects/spring-boot/issues/50524) - Upgrade to [Spring Retry 2.0.13](https://github.com/spring-projects/spring-retry/releases/tag/v2.0.13) [#&#8203;50525](https://github.com/spring-projects/spring-boot/issues/50525) - Upgrade to [Spring Security 6.5.11](https://github.com/spring-projects/spring-security/releases/tag/6.5.11) [#&#8203;50526](https://github.com/spring-projects/spring-boot/issues/50526) - Upgrade to [Spring Session 3.5.7](https://github.com/spring-projects/spring-session/releases/tag/3.5.7) [#&#8203;50527](https://github.com/spring-projects/spring-boot/issues/50527) - Upgrade to [Spring WS 4.1.4](https://github.com/spring-projects/spring-ws/releases/tag/v4.1.4) [#&#8203;50528](https://github.com/spring-projects/spring-boot/issues/50528) - Upgrade to [Tomcat 10.1.55](https://tomcat.apache.org/tomcat-10.1-doc/changelog.html) [#&#8203;50534](https://github.com/spring-projects/spring-boot/issues/50534) #### :heart: Contributors Thank you to all the contributors who worked on this release: [@&#8203;Abdlatif-nabgha](https://github.com/Abdlatif-nabgha), [@&#8203;DragonFSKY](https://github.com/DragonFSKY), [@&#8203;Kapil-chn7](https://github.com/Kapil-chn7), [@&#8203;SJvaca30](https://github.com/SJvaca30), [@&#8203;SebTardif](https://github.com/SebTardif), [@&#8203;ares333](https://github.com/ares333), [@&#8203;codingkiddo](https://github.com/codingkiddo), [@&#8203;dlwldnjs1009](https://github.com/dlwldnjs1009), [@&#8203;henriquejsza](https://github.com/henriquejsza), [@&#8203;igormukhin](https://github.com/igormukhin), [@&#8203;johnnypwong](https://github.com/johnnypwong), [@&#8203;kwondh5217](https://github.com/kwondh5217), [@&#8203;leestana01](https://github.com/leestana01), [@&#8203;mheath](https://github.com/mheath), [@&#8203;ngocnhan-tran1996](https://github.com/ngocnhan-tran1996), [@&#8203;nosan](https://github.com/nosan), [@&#8203;quaff](https://github.com/quaff), [@&#8203;scordio](https://github.com/scordio), [@&#8203;vinhhieu21](https://github.com/vinhhieu21), [@&#8203;won-seoop](https://github.com/won-seoop), and [@&#8203;zxuhan](https://github.com/zxuhan) ### [`v3.5.14`](https://github.com/spring-projects/spring-boot/releases/tag/v3.5.14) [Compare Source](https://github.com/spring-projects/spring-boot/compare/v3.5.13...v3.5.14) #### :lady\_beetle: Bug Fixes - ApplicationPidFileWriter does not handle symlinks correctly [#&#8203;50173](https://github.com/spring-projects/spring-boot/issues/50173) - RandomValuePropertySource is not suitable for secrets [#&#8203;50172](https://github.com/spring-projects/spring-boot/issues/50172) - Cassandra auto-configuration misconfigures CqlSessionBuilder [#&#8203;50171](https://github.com/spring-projects/spring-boot/issues/50171) - ApplicationTemp does not handle symlinks correctly [#&#8203;50170](https://github.com/spring-projects/spring-boot/issues/50170) - Remote DevTools performs comparison incorrectly [#&#8203;50169](https://github.com/spring-projects/spring-boot/issues/50169) - spring.rabbitmq.ssl.verify-hostname is applied inconsistently [#&#8203;50168](https://github.com/spring-projects/spring-boot/issues/50168) - EnversRevisionRepositoriesRegistrar should reuse `@EnableEnversRepositories` rather than configuring the JPA counterpart [#&#8203;50035](https://github.com/spring-projects/spring-boot/pull/50035) - Annotations like `@Ssl` don't work on `@Bean` methods when using `@ServiceConnection` [#&#8203;50033](https://github.com/spring-projects/spring-boot/pull/50033) - Whole number values are ignored when configuring min and max expected values and SLO boundaries for a distribution summary meter [#&#8203;50021](https://github.com/spring-projects/spring-boot/issues/50021) - WebFlux Cloud Foundry links endpoint includes query string from received request in resolved links [#&#8203;50008](https://github.com/spring-projects/spring-boot/pull/50008) - 500 response from env endpoint when supplied pattern is invalid [#&#8203;49942](https://github.com/spring-projects/spring-boot/pull/49942) - HTTP method is lost when configuring excludes in EndpointRequest [#&#8203;49885](https://github.com/spring-projects/spring-boot/pull/49885) - Docker Compose support doesn't work with apache/artemis image [#&#8203;49865](https://github.com/spring-projects/spring-boot/issues/49865) - Honor HttpMethod for reactive additional endpoint paths [#&#8203;49864](https://github.com/spring-projects/spring-boot/pull/49864) - Docker Compose support doesn't work with apache/activemq image [#&#8203;49863](https://github.com/spring-projects/spring-boot/issues/49863) - Imports on a containing test class are ignored when a nested class has imports [#&#8203;49860](https://github.com/spring-projects/spring-boot/issues/49860) #### :notebook\_with\_decorative\_cover: Documentation - Link to the observability section of the Lettuce documentation is broken [#&#8203;50092](https://github.com/spring-projects/spring-boot/pull/50092) - Javadoc for StaticResourceLocation.FAVICON doesn't describe icons location [#&#8203;50083](https://github.com/spring-projects/spring-boot/issues/50083) - MySamlRelyingPartyConfiguration is missing a Kotlin sample [#&#8203;50023](https://github.com/spring-projects/spring-boot/issues/50023) - Incorrect default value for management.httpexchanges.recording.include in configuration metadata [#&#8203;50010](https://github.com/spring-projects/spring-boot/pull/50010) - Link to the Kubernetes documentation when discussing startup probes [#&#8203;50007](https://github.com/spring-projects/spring-boot/issues/50007) - Update docs to encourage Java fundamentals for beginners that prefer to learn that way [#&#8203;49895](https://github.com/spring-projects/spring-boot/issues/49895) - Clarify that configuration property default values are not available through the Environment [#&#8203;49835](https://github.com/spring-projects/spring-boot/pull/49835) #### :hammer: Dependency Upgrades - Upgrade to Groovy 4.0.31 [#&#8203;49905](https://github.com/spring-projects/spring-boot/issues/49905) - Upgrade to Hibernate 6.6.49.Final [#&#8203;50140](https://github.com/spring-projects/spring-boot/issues/50140) - Upgrade to [Jaxen 2.0.1](https://github.com/jaxen-xpath/jaxen/releases/tag/v2.0.1) [#&#8203;50109](https://github.com/spring-projects/spring-boot/issues/50109) - Upgrade to [Jaybird 6.0.5](https://github.com/FirebirdSQL/jaybird/releases/tag/v6.0.5) [#&#8203;49907](https://github.com/spring-projects/spring-boot/issues/49907) - Upgrade to [Jetty 12.0.34](https://github.com/jetty/jetty.project/releases/tag/jetty-12.0.34) [#&#8203;49908](https://github.com/spring-projects/spring-boot/issues/49908) - Upgrade to [jOOQ 3.19.32](https://github.com/jOOQ/jOOQ/releases/tag/version-3.19.32) [#&#8203;50110](https://github.com/spring-projects/spring-boot/issues/50110) - Upgrade to Lombok 1.18.46 [#&#8203;50148](https://github.com/spring-projects/spring-boot/issues/50148) - Upgrade to [MariaDB 3.5.8](https://mariadb.com/kb/en/mariadb-connector-j-3-5-8-release-notes) [#&#8203;49909](https://github.com/spring-projects/spring-boot/issues/49909) - Upgrade to [Micrometer 1.15.11](https://github.com/micrometer-metrics/micrometer/releases/tag/v1.15.11) [#&#8203;49961](https://github.com/spring-projects/spring-boot/issues/49961) - Upgrade to [Micrometer Tracing 1.5.11](https://github.com/micrometer-metrics/tracing/releases/tag/v1.5.11) [#&#8203;49962](https://github.com/spring-projects/spring-boot/issues/49962) - Upgrade to [MySQL 9.7.0](https://dev.mysql.com/doc/relnotes/connector-j/en/news-9-7-0.html) [#&#8203;50161](https://github.com/spring-projects/spring-boot/issues/50161) - Upgrade to Neo4j Java Driver 5.28.13 [#&#8203;50074](https://github.com/spring-projects/spring-boot/issues/50074) - Upgrade to [Reactor Bom 2024.0.17](https://github.com/reactor/reactor/releases/tag/2024.0.17) [#&#8203;49963](https://github.com/spring-projects/spring-boot/issues/49963) - Upgrade to [Spring AMQP 3.2.10](https://github.com/spring-projects/spring-amqp/releases/tag/v3.2.10) [#&#8203;49964](https://github.com/spring-projects/spring-boot/issues/49964) - Upgrade to [Spring Authorization Server 1.5.7](https://github.com/spring-projects/spring-authorization-server/releases/tag/1.5.7) [#&#8203;49965](https://github.com/spring-projects/spring-boot/issues/49965) - Upgrade to [Spring Data Bom 2025.0.11](https://github.com/spring-projects/spring-data-bom/releases/tag/2025.0.11) [#&#8203;49966](https://github.com/spring-projects/spring-boot/issues/49966) - Upgrade to [Spring Framework 6.2.18](https://github.com/spring-projects/spring-framework/releases/tag/v6.2.18) [#&#8203;49967](https://github.com/spring-projects/spring-boot/issues/49967) - Upgrade to [Spring Kafka 3.3.15](https://github.com/spring-projects/spring-kafka/releases/tag/v3.3.15) [#&#8203;50129](https://github.com/spring-projects/spring-boot/issues/50129) - Upgrade to [Spring LDAP 3.3.7](https://github.com/spring-projects/spring-ldap/releases/tag/3.3.7) [#&#8203;49968](https://github.com/spring-projects/spring-boot/issues/49968) - Upgrade to [Spring Pulsar 1.2.17](https://github.com/spring-projects/spring-pulsar/releases/tag/v1.2.17) [#&#8203;49969](https://github.com/spring-projects/spring-boot/issues/49969) - Upgrade to [Spring Security 6.5.10](https://github.com/spring-projects/spring-security/releases/tag/6.5.10) [#&#8203;49970](https://github.com/spring-projects/spring-boot/issues/49970) - Upgrade to [Spring Session 3.5.6](https://github.com/spring-projects/spring-session/releases/tag/3.5.6) [#&#8203;49971](https://github.com/spring-projects/spring-boot/issues/49971) - Upgrade to Thymeleaf 3.1.5.RELEASE [#&#8203;50149](https://github.com/spring-projects/spring-boot/issues/50149) - Upgrade to Thymeleaf Extras SpringSecurity 3.1.5.RELEASE [#&#8203;50151](https://github.com/spring-projects/spring-boot/issues/50151) - Upgrade to [Tomcat 10.1.54](https://tomcat.apache.org/tomcat-10.1-doc/changelog.html) [#&#8203;49910](https://github.com/spring-projects/spring-boot/issues/49910) #### :heart: Contributors Thank you to all the contributors who worked on this release: [@&#8203;MohammedGhallab](https://github.com/MohammedGhallab), [@&#8203;dlwldnjs1009](https://github.com/dlwldnjs1009), [@&#8203;edwardsre](https://github.com/edwardsre), [@&#8203;kodama-kcc](https://github.com/kodama-kcc), [@&#8203;kwondh5217](https://github.com/kwondh5217), [@&#8203;quaff](https://github.com/quaff), [@&#8203;refeccd](https://github.com/refeccd), and [@&#8203;scordio](https://github.com/scordio) ### [`v3.5.13`](https://github.com/spring-projects/spring-boot/releases/tag/v3.5.13) [Compare Source](https://github.com/spring-projects/spring-boot/compare/v3.5.12...v3.5.13) #### :warning: Attention Required - Jackson has been upgraded to 2.21.2 in response to the Jackson team ending support for Jackson 2.19.x and 2.20.x. [#&#8203;49365](https://github.com/spring-projects/spring-boot/issues/49365) #### :lady\_beetle: Bug Fixes - WebSocket messaging's task executors are only auto-configured and stompWebSocketHandlerMapping is only forced to be eager when using Jackson [#&#8203;49750](https://github.com/spring-projects/spring-boot/issues/49750) - Metadata annotation processor ignores method-level `@NestedConfigurationProperty` when using constructor binding [#&#8203;49734](https://github.com/spring-projects/spring-boot/issues/49734) - Override of property in external 'application.properties' or 'application.yaml' is ignored [#&#8203;49724](https://github.com/spring-projects/spring-boot/issues/49724) - Some sliced tests that import TransactionAutoConfiguration do not import TransactionManagerCustomizationAutoConfiguration [#&#8203;49716](https://github.com/spring-projects/spring-boot/issues/49716) - NativeImageResourceProvider does not find Flyway migration scripts in subdirectories [#&#8203;49661](https://github.com/spring-projects/spring-boot/issues/49661) - `@GraphQlTest` does not include `@ControllerAdvice` [#&#8203;49660](https://github.com/spring-projects/spring-boot/pull/49660) #### :notebook\_with\_decorative\_cover: Documentation - Fix incorrect indefinite articles in Javadoc [#&#8203;49723](https://github.com/spring-projects/spring-boot/pull/49723) - Add some more Kotlin examples and trivial style fixes [#&#8203;49710](https://github.com/spring-projects/spring-boot/pull/49710) #### :hammer: Dependency Upgrades - Upgrade to Hibernate 6.6.45.Final [#&#8203;49757](https://github.com/spring-projects/spring-boot/issues/49757) - Upgrade to jOOQ 3.19.31 [#&#8203;49758](https://github.com/spring-projects/spring-boot/issues/49758) - Upgrade to Netty 4.1.132.Final [#&#8203;49759](https://github.com/spring-projects/spring-boot/issues/49759) - Upgrade to Tomcat 10.1.53 [#&#8203;49760](https://github.com/spring-projects/spring-boot/issues/49760) - Upgrade to Undertow 2.3.24.Final [#&#8203;49761](https://github.com/spring-projects/spring-boot/issues/49761) - Upgrade to Zipkin Reporter 3.5.3 [#&#8203;49756](https://github.com/spring-projects/spring-boot/issues/49756) #### :heart: Contributors Thank you to all the contributors who worked on this release: [@&#8203;Joowon-Seo](https://github.com/Joowon-Seo), [@&#8203;deejay1](https://github.com/deejay1), [@&#8203;dlwldnjs1009](https://github.com/dlwldnjs1009), and [@&#8203;ljrmorgan](https://github.com/ljrmorgan) ### [`v3.5.12`](https://github.com/spring-projects/spring-boot/releases/tag/v3.5.12) [Compare Source](https://github.com/spring-projects/spring-boot/compare/v3.5.11...v3.5.12) #### :lady\_beetle: Bug Fixes - EndpointRequest request matcher for health groups is too complex [#&#8203;49648](https://github.com/spring-projects/spring-boot/issues/49648) - "/cloudfoundryapplication" web path is not limited to Actuator [#&#8203;49645](https://github.com/spring-projects/spring-boot/issues/49645) - RSocket exposes duplicate endpoint for websocket setups [#&#8203;49592](https://github.com/spring-projects/spring-boot/issues/49592) - Fix EndpointRequest.toLinks() when base-path is '/' [#&#8203;49591](https://github.com/spring-projects/spring-boot/pull/49591) - SpringBootContextLoader mentions class that no longer exists in message for classes or locations assertion [#&#8203;49518](https://github.com/spring-projects/spring-boot/issues/49518) - "spring.main.cloud-platform=none" does not disable cloud features [#&#8203;49478](https://github.com/spring-projects/spring-boot/issues/49478) - Using `@AutoConfigureWebTestClient` prevents separate configuration of spring.test.webtestclient.timeout from taking effect [#&#8203;49340](https://github.com/spring-projects/spring-boot/pull/49340) - Ordering of 'spring.config.import' is inconsistent when defined in environment or system properties [#&#8203;49324](https://github.com/spring-projects/spring-boot/pull/49324) - RouterFunctions descriptions in Actuator do not support nesting [#&#8203;49289](https://github.com/spring-projects/spring-boot/issues/49289) - Maven plugin does not set '-parameters' option when processing AOT code [#&#8203;49268](https://github.com/spring-projects/spring-boot/issues/49268) - SSL support with Docker Compose does not work as documented [#&#8203;49210](https://github.com/spring-projects/spring-boot/pull/49210) - Docker fails when a 'tcp\://' address ends with a slash (for example 'tcp\://docker:2375/') [#&#8203;49055](https://github.com/spring-projects/spring-boot/issues/49055) #### :notebook\_with\_decorative\_cover: Documentation - List all supported colors when describing color-coded log output [#&#8203;49561](https://github.com/spring-projects/spring-boot/issues/49561) - Clarify that running is the only supported input state when triggering a Quartz job through the Actuator endpoint [#&#8203;49506](https://github.com/spring-projects/spring-boot/issues/49506) - Tutorial in the reference guide has outdated instructions [#&#8203;49411](https://github.com/spring-projects/spring-boot/issues/49411) - Javadoc of JettyHttpClientBuilder refers to the wrong type [#&#8203;49364](https://github.com/spring-projects/spring-boot/pull/49364) - Example spring-devtools.properties file is shown in the wrong format [#&#8203;49357](https://github.com/spring-projects/spring-boot/pull/49357) - Mention using org.springframework.boot.aot Gradle plugin directly for AOT processing with the JVM [#&#8203;49307](https://github.com/spring-projects/spring-boot/issues/49307) - Update CLI's INSTALL.txt to reflect Groovy no longer being bundled [#&#8203;49297](https://github.com/spring-projects/spring-boot/issues/49297) - JDK requirement for the CLI still refers to Java 8 [#&#8203;49290](https://github.com/spring-projects/spring-boot/pull/49290) - Java and Kotlin samples of an environment post processor are inconsistent [#&#8203;49282](https://github.com/spring-projects/spring-boot/pull/49282) - Document additional repositories required for shibboleth.net [#&#8203;49260](https://github.com/spring-projects/spring-boot/issues/49260) - Clarify inferred relationships between OAuth 2 registrations and providers [#&#8203;49240](https://github.com/spring-projects/spring-boot/issues/49240) #### :hammer: Dependency Upgrades - Upgrade to DB2 JDBC 12.1.4.0 [#&#8203;49544](https://github.com/spring-projects/spring-boot/issues/49544) - Upgrade to Hibernate 6.6.44.Final [#&#8203;49457](https://github.com/spring-projects/spring-boot/issues/49457) - Upgrade to Jakarta XML WS 4.0.3 [#&#8203;49458](https://github.com/spring-projects/spring-boot/issues/49458) - Upgrade to JBoss Logging 3.6.3.Final [#&#8203;49630](https://github.com/spring-projects/spring-boot/issues/49630) - Upgrade to Jetty 12.0.33 [#&#8203;49459](https://github.com/spring-projects/spring-boot/issues/49459) - Upgrade to Kafka 3.9.2 [#&#8203;49460](https://github.com/spring-projects/spring-boot/issues/49460) - Upgrade to Lombok 1.18.44 [#&#8203;49574](https://github.com/spring-projects/spring-boot/issues/49574) - Upgrade to Maven Failsafe Plugin 3.5.5 [#&#8203;49461](https://github.com/spring-projects/spring-boot/issues/49461) - Upgrade to Maven Shade Plugin 3.6.2 [#&#8203;49462](https://github.com/spring-projects/spring-boot/issues/49462) - Upgrade to Maven Surefire Plugin 3.5.5 [#&#8203;49463](https://github.com/spring-projects/spring-boot/issues/49463) - Upgrade to Micrometer 1.15.10 [#&#8203;49403](https://github.com/spring-projects/spring-boot/issues/49403) - Upgrade to Micrometer Tracing 1.5.10 [#&#8203;49404](https://github.com/spring-projects/spring-boot/issues/49404) - Upgrade to Pulsar 4.0.9 [#&#8203;49464](https://github.com/spring-projects/spring-boot/issues/49464) - Upgrade to Reactor Bom 2024.0.16 [#&#8203;49405](https://github.com/spring-projects/spring-boot/issues/49405) - Upgrade to Spring Batch 5.2.5 [#&#8203;49406](https://github.com/spring-projects/spring-boot/issues/49406) - Upgrade to Spring Data Bom 2025.0.10 [#&#8203;49407](https://github.com/spring-projects/spring-boot/issues/49407) - Upgrade to Spring Framework 6.2.17 [#&#8203;49408](https://github.com/spring-projects/spring-boot/issues/49408) - Upgrade to Spring HATEOAS 2.5.2 [#&#8203;49586](https://github.com/spring-projects/spring-boot/issues/49586) - Upgrade to Spring Integration 6.5.8 [#&#8203;49631](https://github.com/spring-projects/spring-boot/issues/49631) - Upgrade to Spring Kafka 3.3.14 [#&#8203;49409](https://github.com/spring-projects/spring-boot/issues/49409) - Upgrade to Spring Pulsar 1.2.16 [#&#8203;49410](https://github.com/spring-projects/spring-boot/issues/49410) - Upgrade to Spring Security 6.5.9 [#&#8203;49527](https://github.com/spring-projects/spring-boot/issues/49527) - Upgrade to Spring WS 4.1.3 [#&#8203;49528](https://github.com/spring-projects/spring-boot/issues/49528) #### :heart: Contributors Thank you to all the contributors who worked on this release: [@&#8203;bbbbooo](https://github.com/bbbbooo), [@&#8203;chandanv89](https://github.com/chandanv89), [@&#8203;itsmevichu](https://github.com/itsmevichu), [@&#8203;jayychoi](https://github.com/jayychoi), [@&#8203;l2yujw](https://github.com/l2yujw), [@&#8203;ngocnhan-tran1996](https://github.com/ngocnhan-tran1996), [@&#8203;qnnn](https://github.com/qnnn), [@&#8203;quaff](https://github.com/quaff), and [@&#8203;sbrannen](https://github.com/sbrannen) </details> --- ### Configuration 📅 **Schedule**: (UTC) - Branch creation - At any time (no schedule defined) - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My42NC41IiwidXBkYXRlZEluVmVyIjoiNDMuMjQyLjIiLCJ0YXJnZXRCcmFuY2giOiJtYWluIiwibGFiZWxzIjpbXX0=-->
renovate changed title from chore(deps): update dependency org.springframework.boot:spring-boot-starter-json to v4 to Update dependency org.springframework.boot:spring-boot-starter-json to v4 2026-04-02 23:12:51 +02:00
renovate force-pushed renovate/org.springframework.boot-spring-boot-starter-json-4.x from ad04b83b35 to 15db52ed29 2026-04-23 23:16:10 +02:00 Compare
renovate added 1 commit 2026-06-10 23:12:07 +02:00
renovate force-pushed renovate/org.springframework.boot-spring-boot-starter-json-4.x from 15db52ed29 to 482037e9d8 2026-06-10 23:12:07 +02:00 Compare
This pull request can be merged automatically.
You are not authorized to merge this pull request.
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin renovate/org.springframework.boot-spring-boot-starter-json-4.x:renovate/org.springframework.boot-spring-boot-starter-json-4.x
git checkout renovate/org.springframework.boot-spring-boot-starter-json-4.x
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: bea/release-hive#38