Skip to content

Releases: spring-projects/spring-boot

v2.7.9

23 Feb 09:14
Compare
Choose a tag to compare

🐞 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

  • Upgrade to ActiveMQ 5.16.6 #34238
  • Upgrade to Byte Buddy 1.12.23 #34239
  • Upgrade to Dropwizard Metrics 4.2.16 #34240
  • Upgrade to Elasticsearch 7.17.9 #34241
  • Upgrade to Glassfish JAXB 2.3.8 #34242
  • Upgrade to Groovy 3.0.15 #34243
  • Upgrade to Hibernate 5.6.15.Final #34244
  • Upgrade to Jackson Bom 2.13.5 #34245
  • Upgrade to Jaybird 4.0.9.java8 #34246
  • Upgrade to Lombok 1.18.26 #34247
  • Upgrade to Micrometer 1.9.8 #34141
  • Upgrade to Netty 4.1.89.Final #34248
  • Upgrade to Reactor Bom 2020.0.28 #34142
  • Upgrade to Spring AMQP 2.4.10 #34321
  • Upgrade to Spring Batch 4.3.8 #34143
  • Upgrade to Spring Data Bom 2021.2.8 #34144
  • Upgrade to Spring HATEOAS 1.5.3 #34249
  • Upgrade to Spring Security 5.7.7 #34145
  • Upgrade to Undertow 2.2.23.Final #34250

❤️ Contributors

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

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

v3.0.2

20 Jan 02:05
Compare
Choose a tag to compare

🐞 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

  • Upgrade to Byte Buddy 1.12.22 #33898
  • Upgrade to Couchbase Client 3.4.2 #33899
  • Upgrade to Dropwizard Metrics 4.2.15 #33795
  • Upgrade to FreeMarker 2.3.32 #33900
  • Upgrade to Groovy 4.0.7 #33796
  • Upgrade to Infinispan 14.0.6.Final #33901
  • Upgrade to Jakarta Activation 2.1.1 #33798
  • Upgrade to Jakarta Mail 2.1.1 #33799
  • Upgrade to jOOQ 3.17.7 #33902
  • Upgrade to JUnit Jupiter 5.9.2 #33800
  • Upgrade to Kafka 3.3.2 #33903
  • Upgrade to MariaDB 3.0.10 #33801
  • Upgrade to Micrometer 1.10.3 #33802
  • Upgrade to Micrometer Tracing 1.0.1 #33803
  • Upgrade to MongoDB 4.8.2 #33904
  • Upgrade to MSSQL JDBC 11.2.3.jre17 #33905
  • Upgrade to MySQL 8.0.32 #33906
  • Upgrade to Netty 4.1.87.Final #33907
  • Upgrade to Reactor Bom 2022.0.2 #33804
  • Upgrade to RxJava3 3.1.6 #33908
  • Upgrade to Spring AMQP 3.0.1 #33811
  • Upgrade to Spring Data 2022.0.1 #33810
  • Upgrade to Spring Framework 6.0.4 #33805
  • Upgrade to Spring HATEOAS 2.0.1 #33806
  • Upgrade to Spring Integration 6.0.2 #33813
  • Upgrade to Spring Kafka 3.0.2 #33812
  • Upgrade to Spring WS 4.0.1 #33809
  • Upgrade to Tomcat 10.1.5 #33909
  • Upgrade to Undertow 2.3.3.Final #33807
  • Upgrade to XmlUnit2 2.9.1 #33808

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

v2.7.8

19 Jan 15:35
Compare
Choose a tag to compare

⭐ Noteworthy

🐞 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

  • Upgrade to Byte Buddy 1.12.22 #33887
  • Upgrade to Dropwizard Metrics 4.2.15 #33779
  • Upgrade to FreeMarker 2.3.32 #33888
  • Upgrade to Groovy 3.0.14 #33780
  • Upgrade to Infinispan 13.0.15.Final #33781
  • Upgrade to Jolokia 1.7.2 #33782
  • Upgrade to MariaDB 3.0.10 #33783
  • Upgrade to Micrometer 1.9.7 #33784
  • Upgrade to MSSQL JDBC 10.2.3.jre8 #33889
  • Upgrade to MySQL 8.0.32 #33890
  • Upgrade to Netty 4.1.87.Final #33891
  • Upgrade to Reactor Bom 2020.0.27 #33785
  • Upgrade to Spring AMQP 2.4.9 #33790
  • Upgrade to Spring Data 2021.2.7 #33788
  • Upgrade to Spring Framework 5.3.25 #33786
  • Upgrade to Spring WS 3.1.5 #33789
  • Upgrade to Tomcat 9.0.71 #33892
  • Upgrade to XmlUnit2 2.9.1 #33787

❤️ Contributors

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

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

v3.0.1

22 Dec 21:52
Compare
Choose a tag to compare

🐞 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

  • Upgrade to AspectJ 1.9.19 #33586
  • Upgrade to Byte Buddy 1.12.20 #33587
  • Upgrade to Couchbase Client 3.4.1 #33588
  • Upgrade to Dropwizard Metrics 4.2.14 #33589
  • Upgrade to Elasticsearch Client 8.5.3 #33590
  • Upgrade to Hibernate 6.1.6.Final #33591
  • Upgrade to HttpClient 4.5.14 #33592
  • Upgrade to HttpCore 4.4.16 #33593
  • Upgrade to Infinispan 14.0.4.Final #33594
  • Upgrade to Jaybird 4.0.8.java11 #33595
  • Upgrade to Jetty 11.0.13 #33596
  • Upgrade to jOOQ 3.17.6 #33597
  • Upgrade to Kotlin 1.7.22 #33598
  • Upgrade to Lettuce 6.2.2.RELEASE #33599
  • Upgrade to MongoDB 4.8.1 #33600
  • Upgrade to MSSQL JDBC 11.2.2.jre17 #33601
  • Upgrade to Native Build Tools Plugin 0.9.19 #33602
  • Upgrade to Netty 4.1.86.Final #33603
  • Upgrade to Reactor 2022.0.1 #33475
  • Upgrade to SLF4J 2.0.6 #33604
  • Upgrade to Spring for GraphQL 1.1.1 #33477
  • Upgrade to Spring Framework 6.0.3 #33476
  • Upgrade to Spring Integration 6.0.1 #33605
  • Upgrade to Spring Kafka 3.0.1 #33480
  • Upgrade to Spring Security 6.0.1 #33479
  • Upgrade to Thymeleaf 3.1.1.RELEASE #33486
  • Upgrade to Thymeleaf Extras SpringSecurity 3.1.1.RELEASE #33606
  • Upgrade to Tomcat 10.1.4 #33167
  • Upgrade to UnboundID LDAPSDK 6.0.7 #33607
  • Upgrade to Undertow 2.3.2.Final #33608

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

v2.7.7

22 Dec 17:55
Compare
Choose a tag to compare

🐞 Bug Fixes

  • Fix typo in LocalDevToolsAutoConfiguration logging #33569
  • Web server fails to start due to "Resource location must not be null" when attempting to use a PKCS 11 KeyStore #32179

📔 Documentation

  • Improve gradle plugin tags documentation #33614
  • Improve maven plugin tags documentation #33609
  • Fix typo in tomcat accesslog checkExists doc #33460
  • Document that the shutdown endpoint is not intended for use when deploying a war to a servlet container #17398

🔨 Dependency Upgrades

  • Upgrade to Byte Buddy 1.12.20 #33570
  • Upgrade to Dropwizard Metrics 4.2.14 #33571
  • Upgrade to Elasticsearch 7.17.8 #33572
  • Upgrade to HttpClient 4.5.14 #33573
  • Upgrade to HttpCore 4.4.16 #33574
  • Upgrade to Infinispan 13.0.14.Final #33575
  • Upgrade to Jaybird 4.0.8.java8 #33576
  • Upgrade to Jetty 9.4.50.v20221201 #33577
  • Upgrade to MSSQL JDBC 10.2.2.jre8 #33578
  • Upgrade to Neo4j Java Driver 4.4.11 #33579
  • Upgrade to Netty 4.1.86.Final #33580
  • Upgrade to Reactor 2020.0.26 #33543
  • Upgrade to Spring Integration 5.5.16 #33581
  • Upgrade to Spring Security 5.7.6 #33544
  • Upgrade to Thymeleaf Extras SpringSecurity 3.0.5.RELEASE #33582
  • Upgrade to Tomcat 9.0.70 #33583
  • Upgrade to UnboundID LDAPSDK 6.0.7 #33584
  • Upgrade to Undertow 2.2.22.Final #33585

❤️ Contributors

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

@Artur-, @aksh1618, @cdanger, @currenjin, @jprinet, and @shekharAggarwal

v3.0.0

24 Nov 17:50
Compare
Choose a tag to compare

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

🐞 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

  • Upgrade to Byte Buddy 1.12.19 #33302
  • Upgrade to Caffeine 3.1.2 #33339
  • Upgrade to Dropwizard Metrics 4.2.13 #33303
  • Upgrade to Ehcache3 3.10.8 #33304
  • Upgrade to Elasticsearch Client 8.5.1 #33225
  • Upgrade to Glassfish JSTL 3.0.1 #33305
  • Upgrade to Hazelcast 5.1.5 #33187
  • Upgrade to HttpClient5 5.1.4 #33306
  • Upgrade to HttpCore5 5.1.5 #33188
  • Upgrade to Jackson 2.14.1 #33289
  • Upgrade to Jackson Bom 2.14.0 #33189
  • Upgrade to Janino 3.1.9 #33307
  • Upgrade to Jaybird 4.0.7.java11 #33190
  • Upgrade to Kotlin 1.7.21 #33191
  • Upgrade to Logback 1.4.5 #33308
  • Upgrade to MariaDB 3.0.9 #33192
  • Upgrade to Micrometer 1.10.2 #33334
  • Upgrade to MongoDB 4.8.0 #33193
  • Upgrade to Native Build Tools 0.9.18 #33301
  • Upgrade to Netty 4.1.85.Final #33194
  • Upgrade to Postgresql 42.5.1 #33340
  • Upgrade to R2DBC H2 1.0.0.RELEASE #33195
  • Upgrade to R2DBC Pool 1.0.0.RELEASE #33196
  • Upgrade to R2DBC Postgresql 1.0.0.RELEASE #33197
  • Upgrade to R2DBC Proxy 1.0.1.RELEASE #33309
  • Upgrade to REST Assured 5.2.1 #33310
  • Upgrade to SLF4J 2.0.4 #33311
  • Upgrade to Spring AMQP 3.0.0 #33141
  • Upgrade to Spring Batch 5.0.0 #33148
  • Upgrade to Spring Data 2022.0.0 #33140
  • Upgrade to Spring Framework 6.0.0 #33136
  • Upgrade to Spring Framework 6.0.2 #33286
  • Upgrade to Spring GraphQL 1.1.0 #33145
  • Upgrade to Spring HATEOAS 2.0....
Read more

v2.7.6

24 Nov 13:51
Compare
Choose a tag to compare

🐞 Bug Fixes

  • ScheduledBeanLazyInitializationExcludeFilter is auto-configured even when annotation-based scheduled has not been enabled #33283
  • SpringBootContextLoader prints banner twice when using a @ContextHierarchy #33262
  • 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 #33249
  • Configuration property binding does not deal with bridge methods #33211
  • Configuring management.server.port via a config tree results in a ConverterNotFoundException when the management context is refreshed #33168
  • Dependency management for XMLUnit is incomplete #32999
  • Spring Boot's Lettuce metrics enable histrograms by default and it's hard to switch them off #32989
  • Dependency management for Selenium is incomplete #32861
  • NumberFormatException when configuring spring.redis.sentinel.nodes with an IPv6 address #32836

📔 Documentation

  • Align Tomcat multiple connectors example with recommendation to configure SSL declaratively #33331
  • ConditionalOnClass not working for Bean methods on Java 8 #33328
  • Actuator document is misleading about k8s startup probe #33326
  • Link to Micrometer's @Timed documentation #33265
  • Clarify use of the spring.cache.type property with Hazelcast #33257
  • Example git.commit.time in the Actuator API documentation is thousands of years in the future #33255
  • Links to Features describes sections that have moved elsewhere #33213
  • Fix kafka streams auto start description typo in reference docs #33101
  • OAuth 2 configuration example uses unrecognized value for authorization grant type #33068
  • Fix typos in logging.adoc #32820
  • Harmonize code sample in the "Type-safe Configuration Properties" section #32818

🔨 Dependency Upgrades

  • Upgrade to Byte Buddy 1.12.19 #33272
  • Upgrade to Dropwizard Metrics 4.2.13 #33321
  • Upgrade to Ehcache3 3.10.8 #33322
  • Upgrade to Elasticsearch 7.17.7 #33171
  • Upgrade to Hazelcast 5.1.5 #33172
  • Upgrade to Hibernate 5.6.14.Final #33173
  • Upgrade to HttpClient5 5.1.4 #33323
  • Upgrade to HttpCore5 5.1.5 #33174
  • Upgrade to Janino 3.1.9 #33274
  • Upgrade to Jaybird 4.0.7.java8 #33175
  • Upgrade to MariaDB 3.0.9 #33176
  • Upgrade to Micrometer 1.9.6 #33129
  • Upgrade to Netty 4.1.85.Final #33177
  • Upgrade to Postgresql 42.3.8 #33338
  • Upgrade to Reactor 2020.0.25 #33130
  • Upgrade to Spring AMQP 2.4.8 #33223
  • Upgrade to Spring Data 2021.2.6 #33132
  • Upgrade to Spring Framework 5.3.24 #33131
  • Upgrade to Spring GraphQL 1.0.3 #33150
  • Upgrade to Spring Kafka 2.8.11 #33133
  • Upgrade to Spring REST Docs 2.0.7.RELEASE #33134
  • Upgrade to Spring Security 5.7.5 #33178
  • Upgrade to Spring WS 3.1.4 #33179
  • Upgrade to Tomcat 9.0.69 #33180

❤️ Contributors

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

@EricGao888, @biergit, @dreis2211, @eurythmia, @hpoettker, @iamgd67, @izeye, @jamessoun93, and @sdeleuze

v2.6.14

24 Nov 12:13
Compare
Choose a tag to compare

🐞 Bug Fixes

  • ScheduledBeanLazyInitializationExcludeFilter is auto-configured even when annotation-based scheduled has not been enabled #33276
  • Configuration property binding does not deal with bridge methods #33105
  • SpringBootContextLoader prints banner twice when using a @ContextHierarchy #33079
  • Dependency management for XMLUnit is incomplete #32998
  • Spring Boot's Lettuce metrics enable histrograms by default and it's hard to switch them off #32985
  • Configuring management.server.port via a config tree results in a ConverterNotFoundException when the management context is refreshed #32941
  • NumberFormatException when configuring spring.redis.sentinel.nodes with an IPv6 address #32762
  • 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 #32729
  • Dependency management for Selenium is incomplete #32721

📔 Documentation

  • Link to Micrometer's @Timed documentation #33264
  • Clarify use of the spring.cache.type property with Hazelcast #33245
  • Example git.commit.time in the Actuator API documentation is thousands of years in the future #33237
  • Links to Features describes sections that have moved elsewhere #33207
  • Fix kafka streams auto start description typo in reference docs #33098
  • OAuth 2 configuration example uses unrecognized value for authorization grant type #32931
  • Fix typos in logging.adoc #32812
  • Harmonize code sample in the "Type-safe Configuration Properties" section #32644
  • Align Tomcat multiple connectors example with recommendation to configure SSL declaratively #28707
  • Actuator document is misleading about k8s startup probe #28432
  • ConditionalOnClass not working for Bean methods on Java 8 #27846

🔨 Dependency Upgrades

  • Upgrade to Dropwizard Metrics 4.2.13 #33319
  • Upgrade to Hibernate 5.6.14.Final #33157
  • Upgrade to HttpClient5 5.1.4 #33320
  • Upgrade to HttpCore5 5.1.5 #33158
  • Upgrade to Janino 3.1.9 #33271
  • Upgrade to Jaybird 4.0.7.java8 #33159
  • Upgrade to MariaDB 2.7.7 #33160
  • Upgrade to Micrometer 1.8.12 #33122
  • Upgrade to Netty 4.1.85.Final #33161
  • Upgrade to Postgresql 42.3.8 #33337
  • Upgrade to Reactor 2020.0.25 #33123
  • Upgrade to Spring AMQP 2.4.8 #33222
  • Upgrade to Spring Data 2021.1.10 #33125
  • Upgrade to Spring Framework 5.3.24 #33124
  • Upgrade to Spring Kafka 2.8.11 #33126
  • Upgrade to Spring REST Docs 2.0.7.RELEASE #33127
  • Upgrade to Spring Security 5.6.9 #33162
  • Upgrade to Spring WS 3.1.4 #33163
  • Upgrade to Tomcat 9.0.69 #33164

❤️ Contributors

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

@EricGao888, @dreis2211, @eurythmia, @hpoettker, @iamgd67, @jamessoun93, and @sdeleuze

v3.0.0-RC2

11 Nov 01:33
Compare
Choose a tag to compare
v3.0.0-RC2 Pre-release
Pre-release

⭐ New Features

  • Switch to the Eclipse Angus Jakarta Mail Reference Implementation #33059
  • Remove dependency management for unused EL-related dependencies #33035
  • Unify actuator descriptor class names #33022
  • Rename spring-session.bom.version property to spring-session.version to align with changes to Spring Session's version scheme and bom #32952
  • Add support for CNB platform API 0.10 #32949
  • Rename httptrace endpoint and related classes to httpexchanges #32885
  • Support isolated actuator ObjectMapper #20291

🐞 Bug Fixes

  • When replacing any database, @AutoConfigureTestDatabase does not work in a native test #33100
  • Auto-configured OtelTracer does not back off when another kind of Tracer bean is defined #33097
  • Auto-configured BraveTracer does not back off when another kind of Tracer bean is defined #33095
  • Unnecessary javax Servlet and JSTL dependencies in spring-boot-dependencies #33094
  • NullPointerException in LazyTracingSpanContextSupplier when TraceContext.sampled() returns null #33093
  • Default security filter dispatcher types are not aligned with Spring Security's defaults #33090
  • Inner classes of a @JsonComponent are ignored in a native image #33089
  • Unlike Spring Cloud Sleuth tracing auto-configuration does not provide span customizer beans #33087
  • Configuring spring.jackson.property-naming-strategy fails in a native image #33080
  • Dependency management for Selenium is incomplete #33076
  • management.endpoints.jmx.exposure.include meta-data json contains incorrect default value #33072
  • Context refresh may deadlock when using Prometheus Exemplars #33070
  • ConfigurationProperties constructor @Autowired detection fails for proxy classes #33061
  • Logback <if> blocks cannot read spring properties #33028
  • Spring Boot 3.0 no longer logs guidance to enable debug logging to see the condition evaluation report when the app fails to start #33027
  • Dependency management for XMLUnit is incomplete #33000
  • Spring Boot's Lettuce metrics enable histrograms by default and it's hard to switch them off #32990
  • Spring Boot's auto-configuration for Lettuce metrics enables histograms by default #32986
  • management.observations.http.server.requests.name is ignored when auto-configuring meter filters for maximum allowable uri tags #32973
  • The version of Hazelcast Hibernate is managed unnecessarily #32953
  • @JsonMixin not working in native-image #32929
  • Missing runtime hints for default Liquibase migration file #32926
  • Build failures caused by using a version of GraalVM that does not meet our minimum requirements are hard to diagnose #32924
  • Execution optimizations have been disabled for task processAot with kapt Gradle Plugin #32919
  • Logging hostname at startup can take a prohibitively long time #32908
  • Micrometer Tracer not available in integration tests #32907
  • Auto configuration for data-elasticsearch does not configure mapper that can handle MapDocument payload #32906
  • OTel W3C doesn't propagate remote fields #32898
  • Missing resource hint for banner.txt #32882
  • HttpGraphQlTesterContextCustomizer runs twice when using AOT #32872
  • OutputCaptureExtension fails in native image tests: NoSuchMethodException: OutputCapture.<init> #32870
  • @RestClientTest fails in native image tests: Failed to instantiate SimpleRequestExpectationManager #32867
  • EmbeddedDatabaseConnection was unintentionally initialized at build time when using @DataJpaTest #32865
  • Cyclic dependency between @JsonComponents and ObjectMapper causes JsonComponents to be ignored #32863
  • Properties not available when using SpringBootTest.UseMainMethod.ALWAYS #32860
  • Native testing of a WebFlux-based app using a random or defined port fails with "Runtime reflection is not supported for WebTestClientContextCustomizer$WebTestClientRegistrar" #32859
  • JsonTesters do not work in native tests #32858
  • Setting a RestTemplateBuilder read timeout results in an IllegalStateException due to deprecations in HttpComponentsClientHttpRequestFactory #32857
  • Package-private ResourceProviderCustomizer prevents external usage of FlywayAutoConfiguration class #32849
  • TestRestTemplate is not compatible with Native Image #32848
  • Native image built with Gradle fails to start when spring-boot-devtools is included as developmentOnly dependency #32843
  • When building with Maven, only resources generated beneath META-INF/native-image are available for inclusion in a native image #32841
  • Configuring com.github.loki4j.logback.Loki4jAppender in logback.xml does not work in a native image #32839
  • NumberFormatException when configuring spring.redis.sentinel.nodes with an IPv6 address #32837
  • Manifests of jars built with Gradle do not have a Build-Jdk-Spec entry #32829
  • Application Context initialized twice during test when exception thrown during initialization #31793
  • MeterBinder beans that directly or indirectly depend on MeterRegistry beans cause a cycle #30636

📔 Documentation

  • Fix kafka streams auto start description typo in reference docs #33102
  • OAuth 2 configuration example uses unrecognized value for authorization grant type #33069
  • Reference documentation refers to artemis-jms-server but artemis-jakarta-server should now be used instead #33065
  • Remove legacy cookie processor documentation #33021
  • Change references to Spring Cloud Sleuth for SpanContextSupplier to Micrometer Tracing #32994
  • Remove Infinispan's Spring Boot Starter in README #32974
  • Document how to observe JDBC project with Spring Boot and micrometer-observations #32912
  • Remove mention of MetricsWebFilter from reference documentation #32909
  • Remove note about Infinispan's Spring Boot Starter as it is not yet 3.0-compatible #32896
  • Delete WebSecurityConfigurerAdapter from Javadoc in SpringBootWebSecurityConfiguration / SecurityProperties #32879
  • Add documentation for micrometer observation [#32833](https://github.com/spring-projects/spring-boot/i...
Read more

v3.0.0-RC1

21 Oct 04:42
Compare
Choose a tag to compare
v3.0.0-RC1 Pre-release
Pre-release

⭐ New Features

  • Use GraphQL Observation instrumentation #32794
  • Make consistent use of Property for Gradle task configuration #32769
  • When the GraalVM Native Image Gradle plugin is applied, configure bootBuildImage to build a native image #32768
  • When the native Maven profile is enabled, configure build-image to build a native image #32764
  • Process logback.xml ahead-of-time to allow its configuration to be used in a native image #32756
  • When using Brave, auto-configure a CompositeSpanHandler with span exporting predicates, filters, and reporters #32753
  • Generate native-image argfile containing reachability metadata excludes for buildpacks to use #32738
  • When the GraalVM Native Image Gradle plugin is applied, configure bootJar to contain the output of collectReachabilityMetadata #32737
  • Provide maven configuration for native-build-tools reachability metadata goal #32736
  • Log4J2 configuration URLs should respect system settings #32735
  • Support profile specific Log4j2 configuration #32734
  • Add Log4J2 PropertySource backed by the Spring Environment #32733
  • Add Log4j2 StrLookup backed by the Spring Environment #32732
  • Add Spring Environment to Log4j2 LoggerContext #32731
  • Add support 'log4j.configurationFile' system property #32730
  • Relocate @ConstructorBinding to bind package and update default behavior #32660
  • Remove spring.webflux.multipart.streaming property #32658
  • Auto-configure ProblemDetails support for Spring MVC and Spring WebFlux #32634
  • Make auto-configured Brave Tracer more compliant with OTel tracer #32615
  • Allow the auto-configured Rabbit Stream Environment to be customized #32580
  • Add support for specifying application arguments when application is processed ahead-of-time #32579
  • Provide extensions that remove the need for the log4j-spring-boot log4j2 module #32578
  • Allow user to replace auto-configured Spring Data JDBC beans with their own #32571
  • Remove remaining properties and APIs that were deprecated in Spring Boot 2.x #32548
  • Move WebFlux metrics auto-configuration to the new Observation instrumentation #32539
  • Move MVC metrics auto-configuration to the new Observation instrumentation #32538
  • Prefer WebClient to RestTemplate when creating the Zipkin Sender #32529
  • Update WebClient metrics auto-configuration to the new Observation instrumentation #32518
  • Require micrometer-tracing-bridge-otel to auto-configure OpenTelemetry #32503
  • Require micrometer-tracing-bridge-brave to auto-configure Brave #32502
  • Update RestTemplate metrics auto-configuration to the new Observation instrumentation #32484
  • MDC & Baggage AutoConfiguration for Micrometer Tracing with Brave and OpenTelemetry #32480
  • Allow a Rabbit Stream Environment and Template to be auto-configured when not using a streaming listener container factory #32477
  • Adapt to HttpComponentClientHttpRequestFactory changes #32461
  • Add auto-configuration for Prometheus Exemplars #32415
  • Auto-configure a TracingAwareMeterObservationHandler to make tracing interoperable with metrics #32399
  • Add logging at INFO level if AOT is enabled and working #32396
  • Output auto-configuration report for context processed ahead-of-time #32109
  • Add native-image support for Flyway #31999
  • Allow "native" Maven profile to support both NBT and buildpacks #31770
  • Change phases of WebServer start-stop and graceful shutdown lifecycles to allow other smart lifecycles to run before graceful shutdown #31714
  • Allow ThreadDumpEndpoint to call ThreadMXBean in a native image #31680
  • Deprecate server.max-http-header-size in favor of new server.max-http-request-header-size property #29382
  • Make the runScripts method on AbstractScriptDatabaseInitializer more extensible #29137

🐞 Bug Fixes

  • Multi-Document-Separators "#---" comment checks do not account for '!' prefixed comments #32778
  • Actuator configprops endpoint does not display DataSize properties correctly #32776
  • @Bean methods in KafkaAutoConfiguration provide less type information than they could #32774
  • PEM formatted elliptic-curve TLS keys are an unrecognized private key format #32682
  • Auto-configuration of ObservationRestTemplateCustomizer fails when micrometer-core is not on the classpath #32676
  • Correct configuration of native and AOT-related tasks depends on plugin application order #32661
  • ConstructorBinding default detection is considered with a private constructor #32639
  • ConfigDataProperties is missing RuntimeHints #32608
  • Killing mvn spring-boot:run does not kill child process #32607
  • Assertion calls on CapturedOutput with Kotlin are very slow #32576
  • Classpath scanning of Jackson mixin modules does not work in a native image #32567
  • Empty @DefaultValue cannot be used on collections, maps, arrays or optional values #32564
  • Native tests fail when using @SpringBootTest with RANDOM_PORT or DEFINED_PORT #32542
  • Use of reflection in AbstractCompositeHealthContributorConfiguration can cause an app using actuator to fail to start in a native image #32541
  • WebClient- and RestTemplate-based Zipkin senders can cause a bean dependency cycle #32528
  • AOT processing does not work when Devtools is on the classpath #32517
  • CouchbaseReactiveHealthIndicator uses blocking API to retrieve the cluster diagnostics #32514
  • BootBuildImage's archiveFile property is annotated as an @Input but should be annotated as an @InputFile #32500
  • Response from loggers endpoint is incomplete in a native image #32486
  • Logging beans are missing during AOT processing #32483
  • EmbeddedLdapContextConfiguration LdapContextSource bean creation not populating base property #23030

📔 Documentation

Read more