Skip to content

Releases: spring-projects/spring-boot

v2.5.0-M1

22 Jan 02:26

Choose a tag to compare

v2.5.0-M1 Pre-release
Pre-release

⭐ New Features

  • Remove Spring Data Solr support #24939
  • Automatically register HttpSessionIdListener beans with the servlet context #24879
  • Register default resource path using ServletContextResource #24749
  • Switch to Apache EL implementation by default #24744
  • Add customizer for jOOQ's DefaultConfiguration #24732
  • Support get requests for /actuator/startup #24717
  • Change info endpoint to be secure and unexposed by default #24715
  • Configure Couchbase to use the application's ObjectMapper #24616
  • Provide a configuration property for endpoints' CORS origin patterns #24608
  • Add configuration option to configure Kafka Listener's onlyLogRecordMetadata #24582
  • Improve performance of Tomcat 'jar:war:file' URLs #24553
  • Add API for PropertySource resource location retrieval #24524
  • Move EntityManagerFactoryDependsOnPostProcessor from o.s.b.autoconfigure.data.jpa to o.s.b.autoconfigure.orm.jpa #24452
  • Allow to configure ActiveMQ Artemis using broker url #24302
  • Reduce the overhead of char[] creation #24204
  • Expose configuration property for Cassandra's control queries timeout #24189
  • Provide out-of-the-box support for Elasticsearch Sniffer #24174
  • Add support for Apache Phoenix's jdbc:phoenix: JDBC URL prefix #24114
  • Add keyStoreAlgorithm and trustStoreAlgorithm configuration option to configure RabbitConnectionFactory #24076
  • Disable mappings endpoint related infrastructure when endpoint isn't available #23977

🪲 Bug Fixes

  • When spring.mvc.pathmatch.matching-strategy is set to path-pattern-parser, the error handling of a management server listening on a separate port is broken #24949
  • InvalidConfigDataPropertyException thrown when server processed ConfigData contains profiles #24893
  • mappings endpoint fails due to an NPE when spring.mvc.pathmatch.matching-strategy is set to path-pattern-parser #24882
  • Failures when recording metrics in MetricsClientHttpRequestInterceptor may interfere with RestTemplate's main behaviour #24873
  • Auto-configured DataSourceTransactionManager uses spring.dao.exceptiontranslation.enable rather than spring.dao.exceptiontranslation.enabled to control exception translation #24871
  • Configuration metadata for logging.charset.* has invalid reference for java.nio.charset.Charset #24861
  • Wrong logging pattern with multiple web applications #24846
  • DataSourceUnwrapper calls Wrapper.isWrapperFor with a interface rather than an class causing HikariDataSourceMetricsRegistry failure #24842
  • Configuration metadata json does not include spring.config.use-legacy-processing #24832
  • main application.yaml overrides test application.properties #24812
  • Setting -Dspring.devtools.restart.enabled=true has no effect when the class loader class name does not contain AppClassLoader #24800
  • Actuator 'configprops' endpoint does not show inputs for @Name parameters #24795
  • Enforce that builder and run images are pulled from the same authenticated registry #24794
  • spring.profiles.include is silently ignored when used in a profile-specific document #24793
  • Auto-configured JdbcSessionDataSourceInitializer does not use the @SpringSessionDataSource if available #24791
  • Error Invalid entry size when build application with a dependency jar larger than 2,147,483,647 bytes with Gradle #24769
  • Exceptions are still translated by JdbcTransactionManager when spring.dao.exceptiontranslation.enabled is false #24746
  • bootRun task does not use the project's toolchain by default #24739
  • BootRun does not consider configured javaLauncher when determining JVM arguments for an optimized launch #24736
  • Exploded archives launched using the launcher have an incorrectly ordered classpath that also contains non-existent jar files #24711
  • spring-boot:build-image has a layout parameter that cannot be always be honoured #24690
  • flashMapManager and themeResolver beans can no longer be configured without enabling bean overriding #24687
  • FailureAnalyzers' unmet dependency errors add noise to logs #24684
  • WebTestClient base path is not set to the application context path #24679
  • ConfigDataEnvironment doesn't register updated Binder #24674
  • JSR-305 @Nullable cannot be used to indicate that a parameter to an endpoint operation is optional #24671
  • WebServer implementations should return -1 if not listening on a port #24658
  • configtree not working with Kubernetes projected volume #24652
  • ConfigDataLocationNotFoundException thrown at application startup with configserver: config imports, that are not even meant for the current profile #24651
  • Maven resources plugin execution generates a warning with a vanilla project #24600
  • Handle missing manifest files in JarTypeFilter #24598
  • Persistent and RelationshipProperties-annotated types are not scanned with Spring Data Neo4j #24589
  • BootstrapContext Binder cannot be used if accessed early #24569
  • Opening a connection to a jar:war: URL created by Tomcat results in an illegal reflective access warning on Java 13+ #24555
  • Netty Web Server will not start if using Unix Domain Sockets #24544
  • Actuator doesn't use the CORS Configuration with default security configuration and Spring MVC #24543
  • Avoid duplicate classes in MergedContextConfiguration #24537
  • Image is built from jar file when when using war packaging with Gradle #24534
  • Application Startup Fails For Existing, Non-Optional Config Location, Resulting In ConfigDataLocationNotFoundException #24505

📔 Documentation

  • WebMvcProperties.MatchingStrategy should be documented as being since 2.4.0 #24883
  • CONTRIBUTING.adoc contains broken link to spring-javaformat-intellij-idea-plugin #24870
  • Add version to reference docs index #24855
  • Fix documentation on probes states during graceful shutdown #24844
  • Clarify behaviour of WebServerFactory in reference guide #24708
  • Fix javadoc typo in ConfigDataLocation [#24685](https://github.com/...
Read more

v2.4.2

15 Jan 04:29

Choose a tag to compare

⭐ New Features

  • Add API for PropertySource resource location retrieval #24504

🪲 Bug Fixes

  • DataSourceUnwrapper calls Wrapper.isWrapperFor with a interface rather than an class causing HikariDataSourceMetricsRegistry failure #24841
  • Wrong logging pattern with multiple web applications #24835
  • Configuration metadata json does not include spring.config.use-legacy-processing #24816
  • Setting -Dspring.devtools.restart.enabled=true has no effect when the class loader class name does not contain AppClassLoader #24797
  • Auto-configured JdbcSessionDataSourceInitializer does not use the @SpringSessionDataSource if available #24790
  • Error Invalid entry size when build application with a dependency jar larger than 2,147,483,647 bytes with Gradle #24768
  • Default servlet location is not registered using a ServletContextResource #24748
  • bootRun task does not use the project's toolchain by default #24738
  • BootRun does not consider configured javaLauncher when determining JVM arguments for an optimized launch #24735
  • spring.profiles.include is silently ignored when used in a profile-specific document #24733
  • main application.yaml overrides test application.properties #24719
  • Actuator 'configprops' endpoint does not show inputs for @Name parameters #24713
  • Exploded archives launched using the launcher have an incorrectly ordered classpath that also contains non-existent jar files #24710
  • spring-boot:build-image has a layout parameter that cannot be always be honoured #24689
  • FailureAnalyzers' unmet dependency errors add noise to logs #24683
  • WebTestClient base path is not set to the application context path #24678
  • Support JSR-305 @Nullable annotations on endpoint methods #24672
  • JSR-305 @Nullable cannot be used to indicate that a parameter to an endpoint operation is optional #24670
  • ConfigDataEnvironment doesn't register updated Binder #24669
  • WebServer implementations should return -1 if not listening on a port #24657
  • Support JSR-305 @Nullable annotations on endpoint methods #24654
  • Handle missing manifest files in JarTypeFilter #24597
  • ConfigDataLocationNotFoundException thrown at application startup with configserver: config imports, that are not even meant for the current profile #24584
  • Maven resources plugin execution generates a warning with a vanilla project #24576
  • BootstrapContext Binder cannot be used if accessed early #24559
  • Opening a connection to a jar:war: URL created by Tomcat results in an illegal reflective access warning on Java 13+ #24554
  • Enforce that builder and run images are pulled from the same authenticated registry #24552
  • Actuator doesn't use the CORS Configuration with default security configuration and Spring MVC #24542
  • Avoid duplicate classes in MergedContextConfiguration #24536
  • Image is built from jar file when when using war packaging with Gradle #24535
  • configtree not working with Kubernetes projected volume #24530
  • Netty Web Server will not start if using Unix Domain Sockets #24529
  • Application Startup Fails For Existing, Non-Optional Config Location, Resulting In ConfigDataLocationNotFoundException #24499
  • Exceptions are still translated by JdbcTransactionManager when spring.dao.exceptiontranslation.enabled is false #24321
  • Persistent and RelationshipProperties-annotated types are not scanned with Spring Data Neo4j #24239
  • flashMapManager and themeResolver beans can no longer be configured without enabling bean overriding #24207

📔 Documentation

  • Fix documentation on probes states during graceful shutdown #24843
  • Clarify behaviour of WebServerFactory in reference guide #24707
  • Migrate away from pivotal-legacy/homebrew-tap #24681
  • Fix javadoc typo in ConfigDataLocation #24660
  • Harmonize ActiveMQ Artemis naming #24587
  • Update version of git-properties plugin in the docs #24572
  • Improve "Git Commit Information" reference documentation #24570
  • Clarify when SpEL expressions in application properties are evaluated #24565
  • Reorder documentation about building images #24563
  • Update documentation containing examples of WebSecurityConfigurerAdapter #24551
  • Improve error message when attempting to build an image when using war packaging with Maven #24538
  • Testing Properties missing from Application Properties Appendix #24518
  • Update reference guide to refine note on excluding spring-boot-configuration-processor explicitly #24498
  • Document warning about InMemoryOAuth2AuthorizedClientService #24313

🔨 Dependency Upgrades

  • Upgrade to AppEngine SDK 1.9.84 #24721
  • Upgrade to Byte Buddy 1.10.19 #24722
  • Upgrade to Dependency Management Plugin 1.0.11.RELEASE #24827
  • Upgrade to Dropwizard Metrics 4.1.17 #24723
  • Upgrade to Hibernate 5.4.27.Final #24724
  • Upgrade to Hibernate Validator 6.1.7.Final #24725
  • Upgrade to Jackson Bom 2.11.4 #24726
  • Upgrade to Jetty Reactive HTTPClient 1.1.5 #24727
  • Upgrade to Johnzon 1.2.9 #24728
  • Upgrade to Lettuce 6.0.2.RELEASE #24802
  • Upgrade to Micrometer 1.6.3 #24786
  • Upgrade to Netty 4.1.58.Final #24828
  • Upgrade to Netty tcNative 2.0.36.Final #24829
  • Upgrade to Reactor 2020.0.3 #24698
  • Upgrade to Spring AMQP 2.3.4 #24702
  • Upgrade to Spring Data 2020.0.3 #24700
  • Upgrade to Spring Framework 5.3.3 #24699
  • Upgrade to Spring HATEOAS 1.2.3 #24803
  • Upgrade to Spring Integration 5.4.3 #24701
  • Upgrade to Spring Kafka 2.6.5 #24703
  • Upgrade to Spring Retry 1.3.1 #24730
  • Upgrade to Thymeleaf 3.0...
Read more

v2.3.8.RELEASE

14 Jan 22:01

Choose a tag to compare

🪲 Bug Fixes

  • Default servlet location is not registered using a ServletContextResource #24747
  • DataSourceUnwrapper calls Wrapper.isWrapperFor with a interface rather than an class causing HikariDataSourceMetricsRegistry failure #24697
  • JSR-305 @Nullable cannot be used to indicate that a parameter to an endpoint operation is optional #24647
  • FailureAnalyzers' unmet dependency errors add noise to logs #24630
  • Auto-configured JdbcSessionDataSourceInitializer does not use the @SpringSessionDataSource if available #24624
  • Error Invalid entry size when build application with a dependency jar larger than 2,147,483,647 bytes with Gradle #24618
  • WebServer implementations should return -1 if not listening on a port #24606
  • Avoid duplicate classes in MergedContextConfiguration #24532
  • Image is built from jar file when when using war packaging with Gradle #24521
  • bootRun task does not use the project's toolchain by default #24517
  • BootRun does not consider configured javaLauncher when determining JVM arguments for an optimized launch #24512
  • Exploded archives launched using the launcher have an incorrectly ordered classpath that also contains non-existent jar files #24192
  • spring-boot:build-image has a layout parameter that cannot be always be honoured #24105
  • WebTestClient base path is not set to the application context path #24168
  • Opening a connection to a jar:war: URL created by Tomcat results in an illegal reflective access warning on Java 13+ #18631

📔 Documentation

  • Clarify behaviour of WebServerFactory in reference guide #24705
  • Migrate away from pivotal-legacy/homebrew-tap #24680
  • Document warning about InMemoryOAuth2AuthorizedClientService #24596
  • Harmonize ActiveMQ Artemis naming #24586
  • Update version of git-properties plugin in the docs #24567
  • Reorder documentation about building images #24560
  • Clarify when SpEL expressions in application properties are evaluated #24531
  • Improve error message when attempting to build an image when using war packaging with Maven #24522
  • Testing Properties missing from Application Properties Appendix #24486
  • Improve "Git Commit Information" reference documentation #24205

🔨 Dependency Upgrades

  • Upgrade to AppEngine SDK 1.9.84 #24754
  • Upgrade to Byte Buddy 1.10.19 #24755
  • Upgrade to Dependency Management Plugin 1.0.11.RELEASE #24821
  • Upgrade to Dropwizard Metrics 4.1.17 #24756
  • Upgrade to Hazelcast 3.12.11 #24757
  • Upgrade to Hibernate 5.4.27.Final #24758
  • Upgrade to Hibernate Validator 6.1.7.Final #24759
  • Upgrade to Jackson Bom 2.11.4 #24760
  • Upgrade to Jetty Reactive HTTPClient 1.1.5 #24761
  • Upgrade to Johnzon 1.2.9 #24762
  • Upgrade to Lettuce 5.3.6.RELEASE #24801
  • Upgrade to Micrometer 1.5.10 #24785
  • Upgrade to Neo4j OGM 3.2.19 #24763
  • Upgrade to Netty 4.1.58.Final #24822
  • Upgrade to Netty tcNative 2.0.36.Final #24823
  • Upgrade to Reactor Dysprosium-SR16 #24765
  • Upgrade to Spring AMQP 2.2.14.RELEASE #24824
  • Upgrade to Spring Integration 5.3.5.RELEASE #24825
  • Upgrade to Spring Kafka 2.5.11.RELEASE #24826
  • Upgrade to Thymeleaf 3.0.12 #24599

❤️ Contributors

We'd like to thank all the contributors who worked on this release!

v2.2.13.RELEASE

14 Jan 17:22

Choose a tag to compare

🪲 Bug Fixes

  • Default servlet location is not registered using a ServletContextResource #24745

📔 Documentation

  • Migrate away from pivotal-legacy/homebrew-tap #24659

🔨 Dependency Upgrades

  • Upgrade to Appengine Sdk 1.9.84 #24770
  • Upgrade to Byte Buddy 1.10.19 #24776
  • Upgrade to Dependency Management Plugin 1.0.11 #24742
  • Upgrade to Dropwizard Metrics 4.1.17 #24772
  • Upgrade to Hazelcast 3.12.11 #24771
  • Upgrade to Hibernate 5.4.27.Final #24778
  • Upgrade to Hibernate Validator 6.0.22.Final #24779
  • Upgrade to Joda Time 2.10.9 #24775
  • Upgrade to Johnzon Jsonb 1.2.9 #24777
  • Upgrade to Neo4j Ogm 3.2.19 #24780
  • Upgrade to Netty 4.1.56.Final #24773
  • Upgrade to Netty 4.1.58.Final #24818
  • Upgrade to Netty Tcnative 2.0.36.Final #24774
  • Upgrade to Reactor Dysprosium-SR16 #24766
  • Upgrade to Spring Amqp 2.2.14.RELEASE #24819
  • Upgrade to Spring Integration 5.2.11.RELEASE #24820
  • Upgrade to Thymeleaf 3.0.12.RELEASE #24781

❤️ Contributors

We'd like to thank all the contributors who worked on this release!

v2.4.1

11 Dec 08:13

Choose a tag to compare

🪲 Bug Fixes

  • Wildcard config file locations from the working directory override each other #24428
  • Configuration property binding processes JavaBean methods in a non-deterministic order which may result in variable behavior #24425
  • JPA repositories mode should not be deferred by default #24401
  • @Name support for value object binding fails with Kotlin classes #24379
  • Allow recursive profile group references #24327
  • Correct external application properties load order #24308
  • Wrapper types are not displayed in actuator env endpoint #24307
  • OriginTrackedPropertiesLoader#isNewDocument has wrong visibility #24268
  • Redis health indicator requests more information than it needs resulting in unnecessarily large responses from Redis #24251
  • ErrorAttributeOptions.excluding throws IllegalArgumentException if includes is empty #24234
  • Actuator web endpoints cannot respond with custom HTTP status codes when running on MVC or WebFlux #24223
  • Missing Spring Integration metrics due to the MeterRegistry bean being looked for before it has been defined #24220
  • LocaleResolver (MVC) and LocaleContextResolver (WebFlux) beans will back off if a user provides a bean of the same type and a custom name but Framework will then use its own default #24209
  • DevTools still refers to deprecated keys #24203
  • DataSourceUnwrapper calls Wrapper.isWrapperFor with a class rather than an interface causing Oracle UCP warnings #24200
  • WebFluxTags performs unnecessary Pattern compilation when ignoring trailing slashes #24194
  • elasticsearch-rest-client-sniffer is missing from the dependency management for Elasticsearch's REST client modules #24186
  • No converter is found when binding a non-string property via config tree #24171
  • LoggingSystem calls with Log4J throws NullPointerException #24163
  • Any line that is immediately after a line that contains only a # is lost when reading application properties files #24158
  • Ensure the WebClient to be present before enabling the WebTestClientContextCustomizer #24152
  • ConfigDataResourceNotFoundException incorrectly thrown for valid classpath locations #24143

📔 Documentation

  • Document how to use Devtools without an IDE #24410
  • Add link to appendix from error handling documentation #24408
  • Document how to run unit tests #24301
  • Invalid ErrorAttributesOptions#getInclude Javadoc #24259
  • Fix typo in TomcatWebServer Javadoc #24245
  • Security properties appendix contains spring.session and spring.ldap properties that belong elsewhere #24196
  • Rename "sla" to "slo" in reference documentation #24162
  • Document the granularity for property document imports #22987

🔨 Dependency Upgrades

  • Upgrade to Caffeine 2.8.8 #24443
  • Upgrade to DB2 JDBC 11.5.5.0 #24383
  • Upgrade to Dropwizard Metrics 4.1.16 #24384
  • Upgrade to Groovy 2.5.14 #24385
  • Upgrade to Hibernate 5.4.25.Final #24386
  • Upgrade to HttpCore 4.4.14 #24387
  • Upgrade to Infinispan 11.0.8.Final #24388
  • Upgrade to Jetty 9.4.35.v20201120 #24389
  • Upgrade to jOOQ 3.14.4 #24390
  • Upgrade to Kotlin 1.4.21 #24391
  • Upgrade to Kotlin Coroutines 1.4.2 #24392
  • Upgrade to MariaDB 2.7.1 #24393
  • Upgrade to Micrometer 1.6.2 #24281
  • Upgrade to Mockito 3.6.28 #24394
  • Upgrade to Netty 4.1.55.Final #24444
  • Upgrade to Netty tcNative 2.0.35.Final #24445
  • Upgrade to Nimbus JOSE JWT 9.1.3 #24395
  • Upgrade to Reactor 2020.0.2 #24275
  • Upgrade to Spring AMQP 2.3.2 #24288
  • Upgrade to Spring Batch 4.3.1 #24291
  • Upgrade to Spring Data 2020.0.2 #24284
  • Upgrade to Spring Framework 5.3.2 #24278
  • Upgrade to Spring HATEOAS 1.2.2 #24285
  • Upgrade to Spring Integration 5.4.2 #24442
  • Upgrade to Spring Kafka 2.6.4 #24294
  • Upgrade to Spring Security 5.4.2 #24297
  • Upgrade to SQLite JDBC 3.32.3.3 #24446
  • Upgrade to Tomcat 9.0.41 #24447
  • Upgrade to Undertow 2.2.3.Final #24397

❤️ Contributors

We'd like to thank all the contributors who worked on this release!

v2.3.7.RELEASE

11 Dec 06:52

Choose a tag to compare

🪲 Bug Fixes

  • Configuration property binding processes JavaBean methods in a non-deterministic order which may result in variable behavior #24424
  • Redis health indicator requests more information than it needs resulting in unnecessarily large responses from Redis #24250
  • JPA repositories mode should not be deferred by default #24249
  • ErrorAttributeOptions.excluding throws IllegalArgumentException if includes is empty #24230
  • Actuator web endpoints cannot respond with custom HTTP status codes when running on MVC or WebFlux #24222
  • Missing Spring Integration metrics due to the MeterRegistry bean being looked for before it has been defined #24219
  • WebFluxTags performs unnecessary Pattern compilation when ignoring trailing slashes #24193
  • elasticsearch-rest-client-sniffer is missing from the dependency management for Elasticsearch's REST client modules #24185
  • DataSourceUnwrapper calls Wrapper.isWrapperFor with a class rather than an interface causing Oracle UCP warnings #24154

📔 Documentation

  • Document how to use Devtools without an IDE #24409
  • Add link to appendix from error handling documentation #24407
  • Invalid ErrorAttributesOptions#getInclude Javadoc #24257
  • Security properties appendix contains spring.session and spring.ldap properties that belong elsewhere #24195
  • Rename "sla" to "slo" in reference documentation #24160

🔨 Dependency Upgrades

  • Upgrade to ActiveMQ 5.15.14 #24436
  • Upgrade to Caffeine 2.8.8 #24437
  • Upgrade to DB2 JDBC 11.5.5.0 #24369
  • Upgrade to Dropwizard Metrics 4.1.16 #24370
  • Upgrade to Groovy 2.5.14 #24371
  • Upgrade to Hibernate 5.4.25.Final #24372
  • Upgrade to HttpCore 4.4.14 #24373
  • Upgrade to Jetty 9.4.35.v20201120 #24374
  • Upgrade to Micrometer 1.5.9 #24427
  • Upgrade to Netty 4.1.55.Final #24438
  • Upgrade to Netty tcNative 2.0.35.Final #24439
  • Upgrade to Reactor Dysprosium-SR15 #24274
  • Upgrade to Spring AMQP 2.2.13 #24287
  • Upgrade to Spring Batch 4.2.5 #24290
  • Upgrade to Spring Data Neumann-SR6 #24283
  • Upgrade to Spring Framework 5.2.12 #24277
  • Upgrade to Spring HATEOAS 1.1.3 #24419
  • Upgrade to Spring Kafka 2.5.10 #24293
  • Upgrade to Spring Security 5.3.6 #24296
  • Upgrade to Tomcat 9.0.41 #24440
  • Upgrade to Undertow 2.1.5.Final #24441

❤️ Contributors

We'd like to thank all the contributors who worked on this release!

v2.2.12.RELEASE

10 Dec 18:02

Choose a tag to compare

🪲 Bug Fixes

  • Redis health indicator requests more information than it needs resulting in unnecessarily large responses from Redis #24208
  • elasticsearch-rest-client-sniffer is missing from the dependency management for Elasticsearch's REST client modules #24173
  • WebFluxTags performs unnecessary Pattern compilation when ignoring trailing slashes #24147
  • Actuator web endpoints cannot respond with custom HTTP status codes when running on MVC or WebFlux #24123
  • Missing Spring Integration metrics due to the MeterRegistry bean being looked for before it has been defined #24095
  • Configuration property binding processes JavaBean methods in a non-deterministic order which may result in variable behavior #24068
  • When using Tomcat, key and trust store passwords set via javax.net.ssl system properties are overwritten with null when Spring Boot's equivalent properties have not been set #24041
  • Configuration metadata annotation processor may use the wrong accessor for boolean properties #24002
  • TestTypeExcludeFilter does not implement hashCode and equals as required by its super-class #23978
  • Configuration property annotation processor does not notice overriding getter methods #23966
  • Our auto-configuration should not use @PostConstruct as it's ignored on Java 11+ without a dependency on jakarta-annotation-api #23723
  • JdbcStoreTypeConfiguration picks transaction of primary data source when Quartz data source is not the primary data source #20184
  • @DataJpaTest using H2 with schema.sql and spring.datasource.schema-username fails #19321

📔 Documentation

  • Document how to use Devtools without an IDE #24271
  • Add link to appendix from error handling documentation #24265
  • Fix link to Flyway callback docs #24119
  • Provide more details about overriding SpringPhysicalNamingStrategy's case insensitive flag #24045
  • Clarify the javadoc of AutoConfigureTestDatabase to make it clearer that it only replaces the main DataSource #23808
  • Security properties appendix contains spring.session and spring.ldap properties that belong elsewhere #23558
  • Improve Spring Session back off documentation #23151
  • Clarify documentation regarding relaxed binding of environment variables #22974
  • Recommend that bean definitions provide as much type information as possible #22925
  • Recommend disabling context path redirects when using proxy-terminated SSL with Tomcat #22908
  • Enhance spring.datasource.initialization-mode property description #21121

🔨 Dependency Upgrades

  • Upgrade to Activemq 5.15.14 #24434
  • Upgrade to Appengine Sdk 1.9.83 #24354
  • Upgrade to Byte Buddy 1.10.18 #24358
  • Upgrade to Caffeine 2.8.8 #24430
  • Upgrade to Couchbase Client 2.7.18 #24351
  • Upgrade to Db2 Jdbc 11.5.5.0 #24355
  • Upgrade to Dropwizard Metrics 4.1.16 #24356
  • Upgrade to Groovy 2.5.14 #24361
  • Upgrade to Hibernate 5.4.25.Final #24363
  • Upgrade to Httpcore 4.4.14 #24359
  • Upgrade to Infinispan 9.4.21.Final #24364
  • Upgrade to Jackson 2.10.5.20201202 #24352
  • Upgrade to Jetty 9.4.35.v20201120 #24362
  • Upgrade to Micrometer 1.3.16 #24279
  • Upgrade to Neo4j Ogm 3.2.18 #24365
  • Upgrade to Netty 4.1.55.Final #24431
  • Upgrade to Netty Tcnative 2.0.35.Final #24432
  • Upgrade to Reactor Dysprosium-SR15 #24273
  • Upgrade to Spring AMQP 2.2.13 #24286
  • Upgrade to Spring Batch 4.2.5 #24289
  • Upgrade to Spring Data Moore-SR12 #24282
  • Upgrade to Spring Framework 5.2.12 #24276
  • Upgrade to Spring Integration 5.2.10 #24429
  • Upgrade to Spring Kafka 2.3.13 #24292
  • Upgrade to Spring Security 5.2.8.RELEASE #24366
  • Upgrade to Tomcat 9.0.41 #24435
  • Upgrade to Undertow 2.0.33.Final #24433

❤️ Contributors

We'd like to thank all the contributors who worked on this release!

v2.4.0

12 Nov 16:35

Choose a tag to compare

⭐ New Features

  • Provide a property or environment variable to enable DevTools' restarter irrespective of how the application was launched #21424

🪲 Bug Fixes

  • Using last modified for static resources in reproducible archives and images causes unwanted browser caching #24099
  • BootJar's afterResolve action causes resolution failures with the Versions plugin due to configurations being copied and made resolvable #24072
  • Configuration metadata annotation processor may use the wrong accessor for boolean properties #24059
  • When using Tomcat, key and trust store passwords set via javax.net.ssl system properties are overwritten with null when Spring Boot's equivalent properties have not been set #24053
  • Config files no longer loaded if they contain a hidden path element #24043
  • @DataJpaTest using H2 with schema.sql and spring.datasource.schema-username fails #24024
  • "java.lang.IllegalStateException: zip file closed" when call JarFileWrapper.stream() of spring-boot-loader #24017
  • JdbcStoreTypeConfiguration picks transaction of primary data source when Quartz data source is not the primary data source #24015
  • TestTypeExcludeFilter does not implement hashCode and equals as required by its super-class #24013
  • Our auto-configuration should not use @PostConstruct as it's ignored on Java 11+ without a dependency on jakarta-annotation-api #24010
  • @MockBean fields are not reset for JUnit 5 @Nested tests using @WebMvcTest #23984
  • ClasspathLoggingApplicationListener logs the classpath as unknown on Java 11 and later #23138

📔 Documentation

  • Fix link to Flyway callback docs #24122
  • Fix deprecation warnings in javadoc comments #24120
  • Provide more details about overriding SpringPhysicalNamingStrategy's case insensitive flag #24062
  • Clarify documentation regarding relaxed binding of environment variables #24033
  • Enhance spring.datasource.initialization-mode property description #24030
  • Recommend disabling context path redirects when using proxy-terminated SSL with Tomcat #24026
  • Improve Spring Session back off documentation #24019
  • Clarify the javadoc of AutoConfigureTestDatabase to make it clearer that it only replaces the main DataSource #24007
  • Recommend that bean definitions provide as much type information as possible #24005
  • logging.file.* properties flagged with error level while they are still honoured #23995
  • Add missing default value for enum-based configuration properties #23992
  • Configuration property replacement metadata for spring.resources.cache.cachecontrol.stale-while-revalidate is invalid #23980

🔨 Dependency Upgrades

  • Upgrade to AppEngine SDK 1.9.83 #24082
  • Upgrade to AssertJ 3.18.1 #24126
  • Upgrade to Byte Buddy 1.10.18 #24083
  • Upgrade to Couchbase Client 3.0.10 #24084
  • Upgrade to Hibernate 5.4.23.Final #24085
  • Upgrade to Infinispan 11.0.5.Final #24127
  • Upgrade to Jetty 9.4.34.v20201102 #24047
  • Upgrade to jOOQ 3.14.3 #24128
  • Upgrade to Kotlin Coroutines 1.4.1 #24087
  • Upgrade to Micrometer 1.6.1 #24051
  • Upgrade to Netty 4.1.54.Final #24129
  • Upgrade to Nimbus JOSE JWT 9.1.2 #24088
  • Upgrade to Pooled JMS 1.2.1 #24089
  • Upgrade to Reactor 2020.0.1 #24110
  • Upgrade to SendGrid 4.6.8 #24090
  • Upgrade to Spring AMQP 2.3.1 #24073
  • Upgrade to Spring Data 2020.0.1 #24036
  • Upgrade to Spring Framework 5.3.1 #24035
  • Upgrade to Spring HATEOAS 1.2.1 #24091
  • Upgrade to Spring Integration 5.4.1 #24097
  • Upgrade to Spring Kafka 2.6.3 #24074
  • Upgrade to Spring Session 2020.0.1 #24098

❤️ Contributors

We'd like to thank all the contributors who worked on this release!

v2.3.6.RELEASE

12 Nov 09:43

Choose a tag to compare

🪲 Bug Fixes

  • Configuration metadata annotation processor may use the wrong accessor for boolean properties #24058
  • When using Tomcat, key and trust store passwords set via javax.net.ssl system properties are overwritten with null when Spring Boot's equivalent properties have not been set #24052
  • @DataJpaTest using H2 with schema.sql and spring.datasource.schema-username fails #24023
  • JdbcStoreTypeConfiguration picks transaction of primary data source when Quartz data source is not the primary data source #24014
  • TestTypeExcludeFilter does not implement hashCode and equals as required by its super-class #24012
  • Our auto-configuration should not use @PostConstruct as it's ignored on Java 11+ without a dependency on jakarta-annotation-api #24009
  • Config files no longer loaded if they contain a hidden path element #23983
  • "java.lang.IllegalStateException: zip file closed" when call JarFileWrapper.stream() of spring-boot-loader #23821

📔 Documentation

  • Fix link to Flyway callback docs #24121
  • Provide more details about overriding SpringPhysicalNamingStrategy's case insensitive flag #24060
  • Clarify documentation regarding relaxed binding of environment variables #24032
  • Enhance spring.datasource.initialization-mode property description #24029
  • Recommend disabling context path redirects when using proxy-terminated SSL with Tomcat #24025
  • Improve Spring Session back off documentation #24018
  • Clarify the javadoc of AutoConfigureTestDatabase to make it clearer that it only replaces the main DataSource #24006
  • Recommend that bean definitions provide as much type information as possible #24004
  • Add missing default value for enum-based configuration properties #23991

🔨 Dependency Upgrades

  • Upgrade to AppEngine SDK 1.9.83 #24077
  • Upgrade to Byte Buddy 1.10.18 #24078
  • Upgrade to Couchbase Client 3.0.10 #24079
  • Upgrade to Hibernate 5.4.23.Final #24080
  • Upgrade to Jetty 9.4.34.v20201102 #24046
  • Upgrade to jOOQ 3.13.6 #24081
  • Upgrade to Micrometer 1.5.7 #24050
  • Upgrade to Neo4j OGM 3.2.18 #24125
  • Upgrade to Netty 4.1.54.Final #24124
  • Upgrade to Reactor Dysprosium-SR14 #24109
  • Upgrade to Spring Framework 5.2.11 #24034
  • Upgrade to Spring Integration 5.3.4 #24096
  • Upgrade to Spring Kafka 2.5.8.RELEASE #24075

❤️ Contributors

We'd like to thank all the contributors who worked on this release!

v2.4.0-RC1

30 Oct 01:28

Choose a tag to compare

v2.4.0-RC1 Pre-release
Pre-release

⭐ New Features

  • Provide dependency management for jOOQ's new jooq-kotlin module #23964
  • Provide a configuration property for the driverClassName of the Liquibase DataSource #23958
  • Move spring.resources.* properties to spring.web.resources.* #23917
  • Provide configuration properties for setting the logging charsets #23827
  • Add auto-trimming support to configtree property sources #23826
  • Add configuration properties for RabbitMQ's batch listener config #23766
  • Expose BootBuildImage's cleanCache property as a command-line option #23753
  • Allow a SAML2 relying party registration's assertion consumer service binding and location to be configured via application properties #23746
  • Rename spring.security.saml2.relyingparty.*.relying-party-entity-id to spring.security.saml2.relyingparty.*.entityId #23745
  • Add a command line option for image.cleanCache when building with Maven #23719
  • Allow a SAML2 relying party registration's decryption X509 credentials to be configured via application properties #23705
  • Add support for CNB platform API 0.4 #23692
  • Allow TestPropertyValues.of to take a Map source #23685
  • Rationalize Logback logging properties #23609
  • When building with Maven, include project dependencies in the application layer by default #23463
  • Provide properties to configure WebFlux's locale and how it's resolved #23449
  • Remove skipping of spring-boot-* projects when determining what is eligible for DevTools restart #23158
  • Make @PropertyMapping support nested annotations #23146
  • Change favicon default StaticResourceLocation #23126
  • Update TextResourceOrigin to show the source jar of a ClasspathResource #23019
  • Use stricter multi-document properties separator logic #22963
  • Support wildcard configtree imports #22958
  • Support Gradle's configuration cache with Gradle 6.7 and later #22922
  • Provide a property for configuring the base path of the Actuator's endpoints when using WebFlux #22906
  • Allow proxied @SpyBeans to be used with Mockito's inline mock maker #22416
  • Fail with exception if management.server.address is set but actuator is on the same port #22187
  • Don't adapt RandomPropertySource to ConfigurationPropertySource #21659
  • Auto-configuration of MethodValidationPostProcessor prevents the use of @Validated on final @ConfigurationProperties classes #21454
  • Allow @WebListener ServletContextListeners to programmatically add servlets and filters #18303

🪲 Bug Fixes

  • Configuration property annotation processor does not notice overriding getter methods #23970
  • Incremental compilation does not keep metadata for inner classes #23960
  • Maven plugin build-image creator step fails in Bitbucket pipelines #23957
  • Datasource initialisation with JPA schema configured in deferred mode happens asynchronously #23933
  • ConfigurationMetadataAnnotationProcessor can add duplicate entries #23916
  • Jar entries are duplicated in BOOT-INF/lib with layered jars and Maven #23819
  • HttpEncodingAutoConfiguration is not added to the WebMvcTest slice #23817
  • Wildcard locations for configs causes files to be parsed multiple times on k8s #23815
  • Exception thrown from /actuator/env endpoint when spring.config.import=configtree:xxxx is used #23805
  • Exceptions when initializing logging system are not shown #23802
  • excludeProjectDependencies() does not work when customising a jar's layers with Gradle #23763
  • A reactive web application using Spring Session uses server.servlet.session.timeout to configure its session timeout #23752
  • server.servlet.session.timeout not in effect when using Jetty starter without jakarta.annotation and javax.annotation #23751
  • If the JVM is killed while refresh is in progress, the shutdown hook does not close the context #23744
  • Hang on AbstractEntityManagerFactoryBean.getNativeEntityManagerFactory() #23735
  • BootJar.getConfigurations() should not be public API #23732
  • Renaming of CompositeMeterRegistryAutoConfiguration breaks code that was excluding it or referring to it from @AutoConfigureBefore/After #23724
  • Databases that support embedded and non-embedded modes are always detected as embedded #23693
  • @MockBean fields are not reset for JUnit 5 @Nested tests #12470

📔 Documentation

  • Remove version elements from Maven plugin documentation #23931
  • Polish HTTP/2 Cleartext documentation #23820
  • Document how to enable h2c via programmatic configuration #23816
  • Note that using LiveReload requires Devtools restart to be enabled #23765
  • Fix links to Spring Framework documentation #23737
  • Maven layers documentation is incomplete #23731
  • Add reference to JobRunr Spring Boot starter #23725
  • Polish titles on configblocks #23722
  • Document how to override attributes already specified in Maven plugin configuration #23718
  • Block selection in docs only works in single page HTML #23709

🔨 Dependency Upgrades

  • Upgrade to AssertJ 3.18.0 #23888
  • Upgrade to Commons Pool2 2.9.0 #23889
  • Upgrade to Dropwizard Metrics 4.1.14 #23890
  • Upgrade to Elasticsearch 7.9.3 #23891
  • Upgrade to Flyway 7.1.1 #23932
  • Upgrade to Jetty 9.4.33.v20201020 #23893
  • Upgrade to jOOQ 3.14.0 #23894
  • Upgrade to Kotlin Coroutines 1.4.0 #23913
  • Upgrade to Lettuce 6.0.1.RELEASE #23923
  • Upgrade to Lombok 1.18.16 #23895
  • Upgrade to Micrometer 1.6.0 #23525
  • Upgrade to Mockito 3.6.0 #23924
  • Upgrade to MongoDB 4.1.1 #23897
  • Upgrade to MSSQL JDBC 8.4.1.jre8 [#23742](https://...
Read more