Skip to content

deps(deps): update spring boot to v3 (major)

RenovateBot requested to merge renovate-major-spring-boot into main

This MR contains the following updates:

Package Change Age Adoption Passing Confidence
org.springframework.boot:spring-boot-devtools (source) 2.7.7 -> 3.0.5 age adoption passing confidence
org.springframework.boot:spring-boot-starter-test (source) 2.7.7 -> 3.0.5 age adoption passing confidence
org.springframework.boot:spring-boot-starter-artemis (source) 2.7.7 -> 3.0.5 age adoption passing confidence
org.springframework.boot:spring-boot-starter-data-jpa (source) 2.7.7 -> 3.0.5 age adoption passing confidence
org.springframework.boot:spring-boot-starter-log4j2 (source) 2.7.7 -> 3.0.5 age adoption passing confidence
org.springframework.boot:spring-boot-starter-web (source) 2.7.7 -> 3.0.5 age adoption passing confidence
org.springframework.boot:spring-boot-gradle-plugin (source) 2.7.7 -> 3.0.5 age adoption passing confidence

Release Notes

spring-projects/spring-boot

v3.0.5

:lady_beetle: Bug Fixes
  • EmbeddedWebServerFactoryCustomizerAutoConfiguration should not run when embedded web server is not configured #​34659
  • StandardConfigDataResource can import the same file twice if the classpath includes '.' #​34617
  • Loading application.yml fails with NoSuchMethodError when using SnakeYAML 2.0 #​34515
  • @ConfigurationProperties no longer works on a mutable Kotlin data classes #​34500
  • Image builds with podman fail when image buildpacks are configured #​34495
  • Use of @EntityScan causes AOT instance supplier code generation error #​34371
📔 Documentation
  • Document support for Java 20 #​34726
  • Clarify conventions for custom error pages in WebFlux #​34705
  • Add documentation tip showing how to configure publishRegistry Maven properties from the command line #​34704
  • Typo in Batch documentation: content instead of context #​34646
  • Update two references to old APIs #​34602
  • Fix Javadoc in JobLauncherApplicationRunner #​34596
  • Document how to get socket location for image building configuration with podman #​34475
🔨 Dependency Upgrades
Contributors

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

@​1993heqiang, @​anthonydahanne, @​benelog, @​dsyer, @​izeye, @​swapy, and @​terminux

v3.0.4

:lady_beetle: Bug Fixes

  • Maven plugin uses timezone-local timestamps when outputTimestamp is used #​34430
  • org.springframework.boot.web.embedded.jetty.GracefulShutdown uses the wrong class to create its logger #​34419
  • @ConfigurationProperties with initialized nested record properties values no longer bind #​34407
  • Custom ConfigDataLocationResolver/ConfigDataLoader fails in 3.0.x when combined with spring-boot-devtools #​34372
  • defaultTracingObservationHandler is not ordered as documented #​34216
  • Spring Boot 3 does not provide a configuration property for configuring red metrics custom tag keys #​34194

📔 Documentation

🔨 Dependency Upgrades

Contributors

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

@​1993heqiang, @​anandmnair, @​dalbani, @​fmbenhassine, @​izeye, @​jongwooo, and @​ttddyy

v3.0.3

:lady_beetle: Bug Fixes
  • ClassNotFoundException during AOT processing of Logback XML that references a variable when defining a component's class #​34336
  • Logback configuration errors are not reported when running as a native image #​34315
  • Dependency management for Spring LDAP includes spring-ldap-core-tiger which no longer exists #​34299
  • Kotlin ConfigurationProperties default values are not picked up when nativeRun is used #​34157
  • Maven Plugin's PropertiesMergingResourceTransformer closes InputStream when it should not do so #​34072
  • Actuator Health web endpoint broken with Gson and Java 17 #​34070
  • Manifests of jars built with Gradle do not have a Implementation entries #​34059
  • Spies are not reset after test execution when using @SpyBean #​34044
  • Using devtools with Reactive application results in slower restarts #​34036
  • spring-boot-dependencies manages mysql:mysql-connector-java which no longer exists #​34021
  • Dependency management for Mongo's Java Driver is incomplete #​34019
  • jOOQ DefaultConfiguration does not use TransactionProvider #​33979
  • ObservationFilter beans are not registered automatically #​33968
  • Properties Migrator does not detect properties of Map type that are marked as deprecated #​33963
  • Dependency management for some Angus Mail modules uses the wrong artifact ID #​33947
  • ElasticsearchClientAutoConfiguration causes global ObjectMapper to be overwritten #​33426
📔 Documentation
  • Updated documentation for @ConfigurationProperties bean naming rules #​34192
  • Document additional configuration that is required for spring.mvc.throw-exception-if-no-handler-found=true to be effective #​34190
  • Use Maven Central for release downloads in CLI installation documentation #​34161
  • Update Customizing Sanitization documentation as built-in key-based sanitization is no longer performed #​34051
  • Add Redis application properties example #​34041
  • Restore "Use Jedis Instead of Lettuce" how-to documentation #​33995
  • Actuator section is missing from documentation overview #​33933
  • Add Javadoc since to OperationParameter.getAnnotation() #​33919
🔨 Dependency Upgrades
Contributors

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

@​Anubhav-2000, @​artembilan, @​ath0s, @​enimiste, @​izeye, @​jprinet, @​krzyk, @​marcel-wollschlaeger, @​mhalbritter, @​michaldo, and @​sannanansari

v3.0.2

:lady_beetle: Bug Fixes

  • Failure analysis of NoUniqueBeanDefinitionException reports "defined in null" when bean definition has no resource description #​33876
  • @DeprecatedConfigurationProperty has no effect when declared on a record component's accessor method #​33871
  • Devtools sets non-existent property spring.reactor.debug #​33860
  • Failing calls to reactive health indicators are not logged #​33856
  • Spring Boot 3 Native: Fails to bind properties under 'spring.groovy.template' #​33847
  • Diagnostics are poor when the JMX port used by the Maven start goal is in use #​33845
  • Inconsistent discovery of parameter names for selectors in custom actuator endpoints #​33841
  • OpenTelemetryAutoConfiguration should use parent-based sampler by default #​33821
  • SpringBootMockResolver causes AopTestUtils.getUltimateTargetObject to recurse until the stack overflows when it calls it with Spring Security's authentication manager bean #​33792
  • It is not possible to provide a custom TransactionProvider bean for JOOQ #​33776
  • Remove usage of bean definition instance supplier since not compatible with AOT #​33763
  • DevTools prevent startup in native image when using maven #​33760
  • NPE in RabbitProperties when user is given, but password not #​33753
  • EndpointRequestMatcher should have a toString method #​33729
  • SDKMAN should not use repo.spring.io for releases #​33723
  • @ConfigurationProperties on a @Bean method does not work when the bean has a constructor that is eligible for constructor binding #​33710
  • Homebrew and Scoop should not use repo.spring.io for releases #​33706
  • Installing Homebrew formula with --head does not work #​33704
  • Flyway-specific DataSource cannot be created in a native image due to missing reflection hints #​33692
  • Remove Jetty/Netty/ApacheHttpClient checks for WebClient #​33640
  • Fix no effect of custom SessionRepositoryCustomizer in application context #​33514
  • Nested properties without a setter can no longer be bound in 3.0 #​33409

📔 Documentation

  • Fix typo in testing-native-application.adoc #​33896
  • Replace "via" in documentation and use "over" or "through" instead #​33880
  • Fix typo in kotlin getting started documentation #​33869
  • Update com.gorylenko.gradle-git-properties version to 2.4.1 in doc #​33857
  • Description of spring-boot-starter-websocket does not make it clear that it's Servlet-specific #​33842
  • Fix 'the the' typos #​33756
  • Fix docs with repeated words. #​33749
  • Update HTTP 2 documentation for Java 17 #​33734
  • Fix typo in getting started documentation #​33732
  • Fix typo in External Configuration documentation #​33728
  • Fix a typo in the ExitCodeGenerator documentation #​33726
  • Fix typo in javadoc of org.springframework.boot.web.server.LocalServerPort #​33724
  • Update dockerfile samples to use Java 17 #​33629
  • Remove the run example #​33519

🔨 Dependency Upgrades

Contributors

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

@​BartR96, @​IDJack, @​anugrahsinghal, @​asomov, @​devrishal, @​dreis2211, @​izeye, @​josephlane, @​krzyk, @​kvmw, @​mhalbritter, @​michaelweidmann, @​qyqcswill, @​rfigueroa, @​sannanansari, @​sdeleuze, @​yyjstudy, and @​zhangyanyue

v3.0.1

:lady_beetle: Bug Fixes

  • Fix typo in LocalDevToolsAutoConfiguration logging #​33615
  • No warning is given when <springProfile> is used in a Logback <root> block #​33610
  • Auto-configure PropagationWebGraphQlInterceptor for tracing propagation #​33542
  • WebClient instrumentation fails with IllegalArgumentException when adapting to WebClientExchangeTagsProvider #​33483
  • Reactive observation auto-configuration does not declare order for WebFilter #​33444
  • Web server fails to start due to "Resource location must not be null" when attempting to use a PKCS 11 KeyStore #​33433
  • Actuator health endpoint for neo4j throws NoSuchElementException and always returns Status.DOWN #​33428
  • Anchors in YAML configuration files throw UnsupportedOperationException #​33404
  • ZipkinRestTemplateSender is not customizable #​33399
  • AOT doesn't work with Logstash Logback Encoder #​33387
  • Maven process-aot goal fails when release version is set in Maven compiler plugin #​33382
  • DependsOnDatabaseInitializationPostProcessor re-declares bean dependencies at native image runtime #​33374
  • @SpringBootTest now throws a NullPointerException rather than a helpful IllegalStateException when @SpringBootConfiguration is not found #​33371
  • bootBuildImage always trys to create a native image due to bootJar always adding a META-INF/native-image/argfile to the jar #​33363

📔 Documentation

  • Improve gradle plugin tags documentation #​33617
  • Improve maven plugin tags documentation #​33616
  • Fix typo in tomcat accesslog checkExists doc #​33512
  • Documented Java compiler level is wrong #​33505
  • Fix typo in documentation #​33453
  • Update instead of replace environment in bootBuildImage documentation #​33424
  • Update the reference docs to document the need to declare the native-maven-plugin when using buildpacks to create a native image #​33422
  • Document that the shutdown endpoint is not intended for use when deploying a war to a servlet container #​33410
  • Reinstate GraphQL testing documentaion #​33407
  • Description of NEVER in Sanitize Sensitive Values isn't formatted correctly #​33398

🔨 Dependency Upgrades

Contributors

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

@​Artur-, @​aksh1618, @​candrews, @​cdanger, @​currenjin, @​izeye, @​jprinet, @​lishangbu, @​ohdaeho, @​peter-janssen, and @​shekharAggarwal

v3.0.0

See the Release notes for 3.0 for upgrade instructions and details of new features.

New Features

  • Provide a configuration property for the observation patterns of Spring Integration components #​33099

:lady_beetle: Bug Fixes

  • io.micrometer.tracing.Tracer on the classpath breaks AOT processing for tests #​33298
  • Tracer library HTTP instrumentation is auto-configured unnecessarily #​33287
  • Auto-configuration ignores user-provided ObservationConventions #​33285
  • ScheduledBeanLazyInitializationExcludeFilter is auto-configured even when annotation-based scheduled has not been enabled #​33284
  • SpringBootContextLoader prints banner twice when using a @ContextHierarchy #​33263
  • Properties migrator causes an application to fail to start if it tries to map a property whose metadata data entry contains an invalid configuration property name #​33250
  • Wavefront MeterRegistryCustomizer is not applying application tags from application.properties #​33244
  • Actuator responses no longer format timestamps as ISO-8601 #​33236
  • Configuration property is not bound in a native image when property has get, set, and is methods #​33232
  • Configuration property binding does not deal with bridge methods #​33212
  • Contribute missing resource hints for GraphQL schema files and GraphiQL HTML page #​33208
  • Hints for ClientHttpRequestFactory should only be generated for matching methods #​33203
  • Native profile should configure execution in pluginManagement #​33184
  • Configuring management.server.port via a config tree results in a ConverterNotFoundException when the management context is refreshed #​33169
  • JBoss logging does not route directly to SLF4J when using Logback #​33155
  • Test with UseMainMethod.Always do not work with Kotlin main functions #​33114
  • Maven process-aot does not specify source and target release when compiling generated sources #​33112
  • Some Actuator beans are ineligible for post-processing #​33110
  • AOT-generated source fails to compile when Actuator is enabled on a WebFlux project #​33106
  • @ContextHierarchy should never be used with main method #​33078
  • Maven process-aot fails when compiler plugin has been configured with --enable-preview #​33012
  • Wavefront application tags differ from those used in a Spring Boot 2.x application #​32844
  • Maven goal spring-boot:build-image runs package phase twice #​26455

📔 Documentation

  • Document observation for R2DBC #​33335
  • Align Tomcat multiple connectors example with recommendation to configure SSL declaratively #​33333
  • Actuator document is misleading about k8s startup probe #​33327
  • Update documented for @Timed to reflect narrower support #​33282
  • Update reference documentation to replace mentions of tags providers and contributors with their Observation-based equivalents #​33281
  • Link to Micrometer's @Timed documentation #​33266
  • Clarify use of the spring.cache.type property with Hazelcast #​33258
  • Example git.commit.time in the Actuator API documentation is thousands of years in the future #​33256
  • Update Spring Security filter dispatcher types docs to reflect change in default value #​33252
  • Documentation for nested configuration properties in a native image uses @NestedConfigurationProperty too widely #​33239
  • Document that the jar task should not be disabled when building a native image #​33238
  • Document nesting configuration properties using records or Kotlin data classes and how and when to use @NestedConfigurationProperty #​33235
  • Links to Features describes sections that have moved elsewhere #​33214
  • Fix broken links in docs #​33209
  • Document the need for compilation with -parameters when targeting a native image #​33182
  • Remove outdated native image documentation #​33109
  • Mention @RegisterReflectionForBinding in the docs #​32903

🔨 Dependency Upgrades

Contributors

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

@​artembilan, @​dreis2211, @​hpoettker, @​izeye, @​jonatan-ivanov, @​oppegard, @​sdeleuze, @​ttddyy, @​tumit, and @​vpavic

v2.7.10

:lady_beetle: Bug Fixes
  • Some of the deprecated spring.security.saml2.relyingparty.registration.*.identityprovider.* properties are ignored #​34525
  • Maven plugin uses timezone-local timestamps when outputTimestamp is used #​34424
  • Loading application.yml fails with NoSuchMethodError when using SnakeYAML 2.0 #​34405
  • EmbeddedWebServerFactoryCustomizerAutoConfiguration should not run when embedded web server is not configured #​34332
  • Image builds with podman fail when image buildpacks are configured #​34324
  • org.springframework.boot.web.embedded.jetty.GracefulShutdown uses the wrong class to create its logger #​34220
  • StandardConfigDataResource can import the same file twice if the classpath includes '.' #​34212
📔 Documentation
  • Document support for Java 20 #​34642
  • Update two references to old APIs #​34567
  • Clarify conventions for custom error pages in WebFlux #​34534
  • Add documentation tip showing how to configure publishRegistry Maven properties from the command line #​34517
  • Document support for Gradle 8 #​34458
  • Document how to get socket location for image building configuration with podman #​34435
  • Fix typo in Encrypting Properties #​34386
  • Use plugins DSL consistently in Spring Boot Gradle Plugin docs #​34048
  • Add link to Failover starter #​32943
🔨 Dependency Upgrades
Contributors

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

@​1993heqiang, @​anandmnair, @​anthonydahanne, @​dsyer, @​izeye, @​jongwooo, and @​terminux

v2.7.9

:lady_beetle: Bug Fixes

  • Maven Plugin's PropertiesMergingResourceTransformer closes InputStream when it should not do so #​34063
  • Actuator Health web endpoint broken with Gson and Java 17 #​34030
  • Dependency management for Mongo's Java Driver is incomplete #​33941
  • Using devtools with Reactive application results in slower restarts #​33855
  • Spies are not reset after test execution when using @SpyBean #​33830
  • Properties Migrator does not detect properties of Map type that are marked as deprecated #​27854

📔 Documentation

  • Updated documentation for @ConfigurationProperties bean naming rules #​34029
  • Restore "Use Jedis Instead of Lettuce" how-to documentation #​33994
  • Add Redis application properties example #​33965
  • Use Maven Central for release downloads in CLI installation documentation #​33962
  • Actuator section is missing from documentation overview #​33932
  • Add Javadoc since to OperationParameter.getAnnotation() #​33914
  • Document additional configuration that is required for spring.mvc.throw-exception-if-no-handler-found=true to be effective #​31660

🔨 Dependency Upgrades

Contributors

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

@​Anubhav-2000, @​enimiste, @​izeye, @​jprinet, @​marcel-wollschlaeger, @​mhalbritter, @​michaldo, and @​sannanansari

v2.7.8

Noteworthy
:lady_beetle: Bug Fixes
  • Devtools sets non-existent property spring.reactor.debug #​33858
  • Failing calls to reactive health indicators are not logged #​33774
  • Failure analysis of NoUniqueBeanDefinitionException reports "defined in null" when bean definition has no resource description #​33765
  • NPE in RabbitProperties when user is given, but password not #​33752
  • SDKMAN should not use repo.spring.io for releases #​33708
  • Homebrew and Scoop should not use repo.spring.io for releases #​33702
  • EndpointRequestMatcher should have a toString method #​33690
  • It is not possible to provide a custom TransactionProvider bean for JOOQ #​32899
  • SpringBootMockResolver causes AopTestUtils.getUltimateTargetObject to recurse until the stack overflows when it calls it with Spring Security's authentication manager bean #​32632
  • Inconsistent discovery of parameter names for selectors in custom actuator endpoints #​31240
  • @DeprecatedConfigurationProperty has no effect when declared on a record component's accessor method #​29526
  • Headless mode is forced when banner.* file is present. #​28803
  • Diagnostics are poor when the JMX port used by the Maven start goal is in use #​24044
📔 Documentation
  • Replace "via" in documentation and use "over" or "through" instead #​33878
  • Fix typo in kotlin getting started documentation #​33867
  • Update com.gorylenko.gradle-git-properties version to 2.4.1 in doc #​33838
  • Fix 'the the' typos #​33736
  • Fix typo in javadoc of org.springframework.boot.web.server.LocalServerPort #​33683
  • Fix a typo in the ExitCodeGenerator documentation #​33658
  • Fix typo in External Configuration documentation #​33630
  • Update getting started documentation to use @SpringBootApplication #​32795
  • Description of spring-boot-starter-websocket does not make it clear that it's Servlet-specific #​32493
🔨 Dependency Upgrades
Contributors

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

@​BartR96, @​devrishal, @​dreis2211, @​izeye, @​josephlane, @​kvmw, @​mhalbritter, @​sannanansari, @​sdeleuze, @​yyjstudy, and @​zhangyanyue


Configuration

📅 Schedule: 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 MR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this MR and you won't be reminded about these updates again.


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

This MR has been generated by Renovate Bot.

Merge request reports