NextStack

spring-boot v4.0.8

patch PublishedAug 21, 2026 Sourcespring-projects/spring-boot

spring-boot v4.0.8

:lady_beetle: Bug Fixes

  • Kafka consumer-specific security protocol is not taken into account #51365
  • Temporary file is not deleted when ExportedImageTar construction fails #51117
  • spring-boot-h2-console pulls servlet-api as transitive dependency #51094
  • Methods that return the result of Map#remove are not declared with a @Nullable return type #50972
  • PropertiesLauncher does not log nested archive paths #50968
  • JarFile is not closed when finding main class from archive #50949
  • CloudFoundry reactive auto-configuration should not require a WebClient.Builder bean to be defined #50928
  • Resources are not cleaned up when resolving an image that is not yet present in the builder #50919
  • Context refresh fails on reactive Cloud Foundry when using Actuator without spring-boot-health #50916
  • GraphQlWebMvcAutoConfiguration should apply customizers in order #50908
  • Micrometer registries pin the application context #50886
  • Context refresh fails when using Actuator on Jersey without spring-boot-health #50858
  • Context refresh fails on Cloud Foundry when using Actuator without spring-boot-health #50857
  • IllegalStateException when binding properties to a @Validated class that contains a map whose value type is a wildcard #50798
  • Setting ‘server.servlet.session.cookie.partitioned’ to false still emits the ‘Partitioned’ cookie attribute #50781
  • Application-managed JUL bridge handler should only be removed if installed #50779
  • Inconsistent handling of empty string values of spring.security.oauth2.resourceserver.jwt issuer-uri and jwk-set-uri #50755
  • PropertiesWebClientHttpServiceGroupConfigurer has highest precedence, preventing other configurers from being ordered ahead of it #50737
  • High number of connections due to Mongo health indicator #50734
  • Return type nullability of ApplicationContextAssert’s getBean methods does not indicate that bean may be null #50701
  • NativeImageResourceProvider flattens Flyway migration paths in subdirectories #50433
  • Fix ordering of Kotlinx Serialization CodecCustomizer #50428
  • Metadata annotation processor ignores getter-level @NestedConfigurationProperty for records #50096

:notebook_with_decorative_cover: Documentation

  • spring.profiles.group should have a ‘spring-profile-name’ hint provider #51273
  • Remove reference to removed InfluxDB auto-configuration #51172
  • Use JacksonJsonSerde in Kafka Streams documentation #51152
  • Document alternatives to HttpMessageConverters #51124
  • Caching documentation refers to AutoConfigureCache by its pre-4.0 package #51111
  • Metadata for spring.test.mockmvc.htmlunit.url declares the wrong type #51110
  • Fix examples in Metadata Format documentation chapter #51097
  • Improve discoverability of the AOT Cache How-to guides #50996
  • Table of auto-configured HealthIndicators lists the wrong key for MongoHealthIndicator #50931
  • Update OpenTelemetryResourceAttributes documentation #50867
  • Fix @Value placeholder syntax in external config docs #50859
  • Refer to spring-boot-starter-webmvc, not deprecated spring-boot-starter-web #50842
  • Fix forwarded headers property in cloud deployment docs #50841
  • Fix duplicate word typos in documentation #50738

:hammer: Dependency Upgrades

:heart: Contributors

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

@DragonFSKY, @LordKay-sudo, @MacAlsandair, @SJvaca30, @SebTardif, @codingkiddo, @dhruv-15-03, @dlwldnjs1009, @dmitrysulman, @doehyunbaek, @filiphr, @msridhar, @ngocnhan-tran1996, @nosan, @quaff, @scordio, @seonwooj0810, @vipi-n, @vvzvvv, @wantaekchoi, @xfocus3, and @yamamoto-ehhMH


Source spring-projects/spring-boot · v4.0.8 · 2026-08-21 · upstream release

Mirrored verbatim for indexing. All rights belong to the upstream project.

Release notes are published by the upstream project and mirrored here for indexing. All rights belong to their authors.