Skip to content

Releases: spring-projects/spring-boot

v2.4.10

19 Aug 10:38
Compare
Choose a tag to compare

🐞 Bug Fixes

  • spring-boot-configuration-metadata leaks enforced dependency constraints into consuming builds #27726
  • Potential NPE in TomcatMetricsBinder.findContext() #27576
  • WebTestClientContextCustomizerFactory causes an IllegalStateException when WebClient is on the classpath without a supported HTTP client #27520
  • spring-boot:build-image hangs when exceptions are thrown during upload #27515
  • A URI with non-alpha characters in its scheme is not sanitized #27482
  • spring.security.dispatcher-types is not applied to Spring Security's filter when running in a separate management context #27372

📔 Documentation

  • Fix typo in javadoc #27614
  • Mention productionRuntimeClasspath in Gradle plugin's documentation #27558

🔨 Dependency Upgrades

  • Upgrade to ActiveMQ 5.16.3 #27739
  • Upgrade to AppEngine SDK 1.9.91 #27740
  • Upgrade to Ehcache3 3.9.5 #27665
  • Upgrade to Glassfish JAXB 2.3.5 #27666
  • Upgrade to Janino 3.1.6 #27667
  • Upgrade to Logback 1.2.5 #27668
  • Upgrade to MariaDB 2.7.4 #27669
  • Upgrade to Maven Enforcer Plugin 3.0.0 #27670
  • Upgrade to Micrometer 1.6.10 #27596
  • Upgrade to MIMEPull 1.9.15 #27671
  • Upgrade to Netty 4.1.67.Final #27741
  • Upgrade to Nimbus JOSE JWT 8.22.1 #27699
  • Upgrade to Reactor 2020.0.10 #27595
  • Upgrade to Spring Data 2020.0.12 #27632
  • Upgrade to Spring Integration 5.4.10 #27598
  • Upgrade to Spring Integration 5.4.9 #27500
  • Upgrade to Spring Kafka 2.6.10 #27501
  • Upgrade to Spring Security 5.4.8 #27597
  • Upgrade to Spring Session 2020.0.6 #27599
  • Upgrade to Tomcat 9.0.52 #27672
  • Upgrade to Undertow 2.2.10.Final #27673

❤️ Contributors

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

v2.6.0-M1

22 Jul 22:08
Compare
Choose a tag to compare
v2.6.0-M1 Pre-release
Pre-release

For upgrade instructions please see the release notes.

⭐ New Features

  • Add Java 17 to JavaVersion enum #27416
  • Make setters on RabbitTemplateConfigurer public #27376
  • Add configuration property for Reactor Netty's idle timeout #27371
  • Support comma-separated values in EntityScan's basePackages placeholders #27355
  • Deprecate SpringPhysicalNamingStrategy in favor of Hibernate 5.5's CamelCaseToUnderscoresNamingStrategy #27352
  • Update version property for Prometheus to reflect that it covers the whole Java client and not just the Pushgateway #27350
  • Update RabbitTemplateConfigurer to take its required settings as constructor arguments #27313
  • Update AbstractRabbitListenerContainerFactoryConfigurer and its subclasses to take their required settings as constructor arguments #27311
  • Use server version from database in Neo4j health details #27294
  • Deprecate AbstractDataSourceInitializer and its subclasses in favour of DataSourceScriptDatabaseInitializer-based equivalents #27206
  • Remove default spring.mongodb.embedded.version #27108
  • Add @WebServiceServerTest annotation that can be used when testing SOAP server #27091
  • Add Rabbit connection factory configurers #26982
  • Add resource labels to Stackdriver metrics configuration properties #26961
  • Include information about where the caller was loaded from in NoSuchMethodError failure analysis #26895
  • Rely on Spring Security to determine the version of nimbus dependencies #26819
  • Introduce builder customizer for Lettuce ClientResources #26792
  • Allow to chain ContextConsumer implementations #26723
  • Add SpringApplicationBuilder constructor with ResourceLoader parameter #26690
  • Add properties for configuring Flyway's ignoreMigrationPatterns, detectEncoding, and failOnMissingLocations #26456
  • Allow the WebSessionManager's session ID resolver to be customized using a WebSessionIdResolver bean #26437
  • Allow to configure StartMojo's wait and maxAttempts attributes from the command-line #26422
  • Auto-configure binding of Micrometer's JettyConnectionMetrics and JettySslHandshakeMetrics #26418
  • Apply RSocketConnectorConfigurer beans to the RSocketRequester.Builder #26341
  • Add Lombok @Value support for configuration metadata generation #26337
  • Enable Redis connection pool if commons-pool2 is on the classpath #26326
  • Add configuration property for Tomcat's rejectIllegalHeader #26311
  • Add support for Dynatrace metrics v2 API #26258
  • Reproducible build for spring-boot-maven-plugin:build-info #26221
  • Remove dependency management for org.webjars:hal-browser #26192
  • Add auto-configuration for Micrometer DiskSpaceMetrics #26001
  • Add metrics support for ThreadPoolTaskExecutor and ThreadPoolTaskScheduler #23818
  • Add auto-configuration for Spring Data Envers #22610
  • Adjust fat jar central directory to account for launch script #22336
  • Use a configurable location to load global Devtools settings #17924

🪲 Bug Fixes

  • DataSourceBuilder throws an UnsupportedDataSourcePropertyException when trying to derive a DataSource from an unknown DataSource type #27455
  • DatabaseInitializerDetector and DependsOnDatabaseInitializationDetector implementations may be instantiated with the wrong ClassLoader #27425
  • YamlPropertySourceLoader may not use the right ClassLoader to check if SnakeYAML is present #27420
  • Since 2.5.1, a circular reference is created when one SpringLiquibase bean is configured to depend on another #27408
  • Setting Gson as preferred mapper breaks controller methods returning JSON Strings #27362
  • @SpyBean does not work when used to spy on a Spring Data Repository #27353
  • Dependency management for Prometheus's Pushgateway is incomplete #27351
  • Exception thrown from /actuator/configprops endpoint when spring.config.import=configtree:xxxx is used #27347
  • Layers configuration XSD is not available #27326
  • Redis health indicators report that Redis is up when the cluster's state is fail #27305
  • Spring Session JDBC does not work when lazy initialization is enabled #27226
  • App fails to start when using Spring Batch with JDBC and lazy initialization is enabled #27224
  • AbstractDataSourceInitializers are not detected as database initializers #27223
  • File named "config" in working directory causes IllegalStateException #27213
  • Optional file search locations with pattern throws exception if not present #27212
  • "Cannot determine database's type as ConnectionFactory is not options-capable" error message doesn't provide enough detail #27186
  • DurationStyle.SIMPLE.print does not work correctly with ChronoUnit.MICROS #27155
  • Configuration property metadata has the wrong default value for spring.netty.leak-detection #27106
  • Deadlock when the application context is closed and System.exit(int) is then called during application context refresh #27076
  • Default value for NettyProperties.leakDetection is not aligned with Netty's default #27050
  • SpringApplicationShutdownHook throws ClassCastException when use log4j2 #27018
  • Gradle 6.9.x is not listed as a supported version when the Gradle version is < 6.8 #27001
  • Gradle build fails with "invocation of 'Task.project' at execution time is unsupported" when using the configuration cache in a project that depends on org.springframework.boot:spring-boot-configuration-processor #26998
  • NoSuchMethodError with Jetty 10 when trying to use HTTP/2 over TLS (h2) #26989
  • A bean factory post processor cannot be configured to run after DependsOnDatabaseInitializationPostProcessor #26951
  • Kotlin plugin's version shouldn't be read if the kotlin.version extra property has been set #26948
  • SQL initialization in 2.5 does not handle connection errors gracefully anymore #26943
  • Script-based database initialization should not check the database's type unless it has scripts to apply #26942
  • Profile-specific files should still be considered when processing 'spring.config.import' properties ...
Read more

v2.5.3

22 Jul 14:16
Compare
Choose a tag to compare

⭐ New Features

  • Add Java 17 to JavaVersion enum #26769

🪲 Bug Fixes

  • DataSourceBuilder throws an UnsupportedDataSourcePropertyException when trying to derive a DataSource from an unknown DataSource type #27453
  • DatabaseInitializerDetector and DependsOnDatabaseInitializationDetector implementations may be instantiated with the wrong ClassLoader #27422
  • YamlPropertySourceLoader may not use the right ClassLoader to check if SnakeYAML is present #27419
  • Setting Gson as preferred mapper breaks controller methods returning JSON Strings #27361
  • Dependency management for Prometheus's Pushgateway is incomplete #27349
  • Exception thrown from /actuator/configprops endpoint when spring.config.import=configtree:xxxx is used #27346
  • Layers configuration XSD is not available #27321
  • Redis health indicators report that Redis is up when the cluster's state is fail #27304
  • App fails to start when using Spring Batch with JDBC and lazy initialization is enabled #27221
  • Spring Session JDBC does not work when lazy initialization is enabled #27220
  • AbstractDataSourceInitializers are not detected as database initializers #27215
  • Optional file search locations with pattern throws exception if not present #27211
  • File named "config" in working directory causes IllegalStateException #27210
  • Live Reload using Devtools no longer connects #27205
  • Live Reload using Devtools no longer connects #27204
  • DurationStyle.SIMPLE.print does not work correctly with ChronoUnit.MICROS #27154
  • Since 2.5.1, a circular reference is created when one SpringLiquibase bean is configured to depend on another #27131
  • Configuration property metadata has the wrong default value for spring.netty.leak-detection #27104
  • "Cannot determine database's type as ConnectionFactory is not options-capable" error message doesn't provide enough detail #26977
  • @SpyBean does not work when used to spy on a Spring Data Repository #7033

📔 Documentation

  • Fix reference to a configuration property in cloud.adoc #27357
  • Document auto-configured Jetty metrics #27301
  • Document that hateoas starter is spring MVC specific #27139
  • Improve javadoc of @DefaultValue #27137
  • Fix anchor rewrites containing a question mark #27107
  • Remove unnecessary unit for spring.datasource.tomcat.max-active #27103
  • Fix typo in section title #27102

🔨 Dependency Upgrades

  • Upgrade to AppEngine SDK 1.9.90 #27384
  • Upgrade to AspectJ 1.9.7 #27194
  • Upgrade to Caffeine 2.9.2 #27195
  • Upgrade to DB2 JDBC 11.5.6.0 #27196
  • Upgrade to Dropwizard Metrics 4.1.25 #27385
  • Upgrade to Infinispan 12.1.7.Final #27386
  • Upgrade to Jackson Bom 2.12.4 #27198
  • Upgrade to Jedis 3.6.3 #27448
  • Upgrade to Jetty 9.4.43.v20210629 #27199
  • Upgrade to Jetty Reactive HTTPClient 1.1.10 #27388
  • Upgrade to Johnzon 1.2.14 #27200
  • Upgrade to jOOQ 3.14.13 #27389
  • Upgrade to Kotlin 1.5.21 #27316
  • Upgrade to Kotlin Coroutines 1.5.1 #27317
  • Upgrade to Lettuce 6.1.4.RELEASE #27341
  • Upgrade to Logback 1.2.4 #27449
  • Upgrade to Micrometer 1.7.2 #27342
  • Upgrade to MySQL 8.0.26 #27450
  • Upgrade to Netty 4.1.66.Final #27390
  • Upgrade to Postgresql 42.2.23 #27202
  • Upgrade to Reactor 2020.0.9 #27162
  • Upgrade to SLF4J 1.7.32 #27451
  • Upgrade to Spring AMQP 2.3.10 #27392
  • Upgrade to Spring Data 2021.0.3 #27164
  • Upgrade to Spring Framework 5.3.9 #27163
  • Upgrade to Spring HATEOAS 1.3.3 #27184
  • Upgrade to Spring Integration 5.5.2 #27166
  • Upgrade to Spring Kafka 2.7.4 #27165
  • Upgrade to Tomcat 9.0.50 #27203
  • Upgrade to Undertow 2.2.9.Final #27452

❤️ Contributors

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

v2.4.9

22 Jul 10:35
Compare
Choose a tag to compare

🪲 Bug Fixes

  • Setting Gson as preferred mapper breaks controller methods returning JSON Strings #27354
  • Exception thrown from /actuator/configprops endpoint when spring.config.import=configtree:xxxx is used #27327
  • Redis health indicators report that Redis is up when the cluster's state is fail #27300
  • Optional file search locations with pattern throws exception if not present #27209
  • Spring Session JDBC does not work when lazy initialization is enabled #27208
  • App fails to start when using Spring Batch with JDBC and lazy initialization is enabled #27193
  • DurationStyle.SIMPLE.print does not work correctly with ChronoUnit.MICROS #27149
  • Live Reload using Devtools no longer connects #27147
  • YamlPropertySourceLoader may not use the right ClassLoader to check if SnakeYAML is present #27133
  • File named "config" in working directory causes IllegalStateException #27120

📔 Documentation

  • Document auto-configured Jetty metrics #27299
  • Document that hateoas starter is spring MVC specific #26897
  • Improve javadoc of @DefaultValue #26742

🔨 Dependency Upgrades

  • Upgrade to AppEngine SDK 1.9.90 #27377
  • Upgrade to AspectJ 1.9.7 #27238
  • Upgrade to DB2 JDBC 11.5.6.0 #27239
  • Upgrade to Dropwizard Metrics 4.1.25 #27378
  • Upgrade to Jetty 9.4.43.v20210629 #27241
  • Upgrade to Jetty Reactive HTTPClient 1.1.10 #27240
  • Upgrade to Johnzon 1.2.14 #27242
  • Upgrade to jOOQ 3.14.13 #27379
  • Upgrade to Lettuce 6.0.7.RELEASE #27339
  • Upgrade to Logback 1.2.4 #27380
  • Upgrade to Micrometer 1.6.9 #27340
  • Upgrade to MySQL 8.0.26 #27444
  • Upgrade to Netty 4.1.66.Final #27381
  • Upgrade to Postgresql 42.2.23 #27244
  • Upgrade to Reactor 2020.0.9 #27159
  • Upgrade to SLF4J 1.7.32 #27445
  • Upgrade to Spring AMQP 2.3.10 #27391
  • Upgrade to Spring Data 2020.0.11 #27161
  • Upgrade to Spring Framework 5.3.9 #27160
  • Upgrade to Spring HATEOAS 1.2.8 #27183
  • Upgrade to Tomcat 9.0.50 #27245
  • Upgrade to Undertow 2.2.9.Final #27446

❤️ Contributors

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

v2.5.2

25 Jun 03:37
Compare
Choose a tag to compare

🪲 Bug Fixes

  • Instantiator is called without a classloader #27074
  • EnvironmentPostProcessors aren't instantiated with correct ClassLoader #27073
  • EnvironmentPostProcessors aren't instantiated with correct ClassLoader #27072
  • Instantiator is called without a classloader #27071
  • Failure when binding the name of a non-existent class to a Class<?> property isn't very helpful #27061
  • Failure when binding the name of a non-existent class to a Class<?> property isn't very helpful #27060
  • Unable to exclude dependencies on repackaging war #27057
  • Unable to exclude dependencies on repackaging war #27056
  • Deadlock when the application context is closed and System.exit(int) is then called during application context refresh #27049
  • Default value for NettyProperties.leakDetection is not aligned with Netty's default #27046
  • Profile-specific resolution should still happen when processing 'spring.config.import' properties #27006
  • Profile-specific resolution should still happen when processing 'spring.config.import' properties #27005
  • Gradle build fails with "invocation of 'Task.project' at execution time is unsupported" when using the configuration cache in a project that depends on org.springframework.boot:spring-boot-configuration-processor #26997
  • NoSuchMethodError with Jetty 10 when trying to use HTTP/2 over TLS (h2) #26988
  • SpringApplicationShutdownHook throws ClassCastException when use log4j2 #26953
  • Gradle 6.9.x is not listed as a supported version when the Gradle version is < 6.8 #26952
  • Kotlin plugin's version shouldn't be read if the kotlin.version extra property has been set #26947
  • Profile-specific files should still be considered when processing 'spring.config.import' properties #26939
  • Misleading type information reported by BeanNotOfRequiredTypeFailureAnalyzer #26935
  • SQL initialization in 2.5 does not handle connection errors gracefully anymore #26926
  • Script-based database initialization should not check the database's type unless it has scripts to apply #26925
  • Memory leak in MetricsClientHttpRequestInterceptor when auto-timing is disabled #26923
  • DevTools' LiveReload support's HTTP header handling is case sensitive #26920
  • DevTools' LiveReload support's HTTP header handling is case sensitive #26919
  • App fails to start when using Flyway or Liquibase with a spring.flyway.url or spring.liquibase.url without spring-jdbc on the classpath #26917
  • A bean factory post processor cannot be configured to run after DependsOnDatabaseInitializationPostProcessor #26899
  • WebSocket auto-configuration throws a CNFE with Jetty 10 #26847

📔 Documentation

  • Description of spring.datasource.name property is inaccurate #27063
  • Description of spring.datasource.name property is inaccurate #27062
  • Update reference documentation to reflect @SpringBootApplication's use of @SpringBootConfiguration #27024
  • Document uuid support in RandomValuePropertySource #27010
  • Misleading doc about application startup exposure #26978
  • Add missing space for asciidoc ordered list #26955
  • Add Azure info to the cloud deployment docs #26910
  • Make the documentation versions more apparent #26891

🔨 Dependency Upgrades

  • Upgrade to Cassandra Driver 4.11.2 #26990
  • Upgrade to Dropwizard Metrics 4.1.24 #27035
  • Upgrade to Hazelcast 4.1.4 #27069
  • Upgrade to Jedis 3.6.1 #26992
  • Upgrade to Jetty EL 9.0.48 #26993
  • Upgrade to Kotlin 1.5.20 #27088
  • Upgrade to Kotlin 1.5.20 #27086
  • Upgrade to Lettuce 6.1.3.RELEASE #27036
  • Upgrade to Micrometer 1.7.1 #27015
  • Upgrade to Neo4j Java Driver 4.2.7 #27037
  • Upgrade to Netty tcNative 2.0.40.Final #27070
  • Upgrade to Nimbus JOSE JWT 9.10 #27039
  • Upgrade to OAuth2 OIDC SDK 9.9 #27038
  • Upgrade to Postgresql 42.2.22 #26994
  • Upgrade to Reactor 2020.0.8 #26968
  • Upgrade to SLF4J 1.7.31 #26995
  • Upgrade to Spring AMQP 2.3.9 #26972
  • Upgrade to Spring Data 2021.0.2 #26970
  • Upgrade to Spring HATEOAS 1.3.2 #26969
  • Upgrade to Spring Integration 5.5.1 #26974
  • Upgrade to Spring Kafka 2.7.3 #26973
  • Upgrade to Spring Security 5.5.1 #26945
  • Upgrade to Spring Session 2021.0.1 #26971
  • Upgrade to Tomcat 9.0.48 #26996

❤️ Contributors

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

v2.4.8

24 Jun 17:01
Compare
Choose a tag to compare

🪲 Bug Fixes

  • EnvironmentPostProcessors aren't instantiated with correct ClassLoader #27043
  • Failure when binding the name of a non-existent class to a Class<?> property isn't very helpful #27028
  • Profile-specific resolution should still happen when processing 'spring.config.import' properties #26960
  • Kotlin plugin's version shouldn't be read if the kotlin.version extra property has been set #26946
  • Memory leak in MetricsClientHttpRequestInterceptor when auto-timing is disabled #26915
  • Gradle build fails with "invocation of 'Task.project' at execution time is unsupported" when using the configuration cache in a project that depends on org.springframework.boot:spring-boot-configuration-processor #26880
  • Profile-specific files should still be considered when processing 'spring.config.import' properties #26858
  • App fails to start when using Flyway or Liquibase with a spring.flyway.url or spring.liquibase.url without spring-jdbc on the classpath #26849
  • Misleading type information reported by BeanNotOfRequiredTypeFailureAnalyzer #26821
  • DevTools' LiveReload support's HTTP header handling is case sensitive #26813
  • Unable to exclude dependencies on repackaging war #15808

📔 Documentation

  • Description of spring.datasource.name property is inaccurate #27026
  • Document uuid support in RandomValuePropertySource #26975
  • Update reference documentation to reflect @SpringBootApplication's use of @SpringBootConfiguration #26937
  • Make the documentation versions more apparent #26851

🔨 Dependency Upgrades

  • Upgrade to Dropwizard Metrics 4.1.24 #27031
  • Upgrade to Jetty EL 8.5.68 #26984
  • Upgrade to Lettuce 6.0.6.RELEASE #27032
  • Upgrade to Micrometer 1.6.8 #27014
  • Upgrade to Neo4j Java Driver 4.1.4 #27033
  • Upgrade to Netty tcNative 2.0.40.Final #27066
  • Upgrade to Nimbus JOSE JWT 8.22 #27068
  • Upgrade to OAuth2 OIDC SDK 8.36.2 #27067
  • Upgrade to Postgresql 42.2.22 #26985
  • Upgrade to Reactor 2020.0.8 #26962
  • Upgrade to SLF4J 1.7.31 #26986
  • Upgrade to Spring AMQP 2.3.9 #26966
  • Upgrade to Spring Data 2020.0.10 #26963
  • Upgrade to Spring HATEOAS 1.2.7 #27013
  • Upgrade to Spring Integration 5.4.8 #26967
  • Upgrade to Spring Security 5.4.7 #26965
  • Upgrade to Spring Session 2020.0.5 #26964
  • Upgrade to Tomcat 9.0.48 #26987

❤️ Contributors

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

v2.5.1

10 Jun 18:41
Compare
Choose a tag to compare

🪲 Bug Fixes

  • SqlInitializationAutoConfiguration fails when there is a DataSource bean and no spring-jdbc or a ConnectionFactory bean and no spring-r2dbc #26850
  • MetricsRestTemplateCustomizer and LocalHostUriTemplateHandler cannot be used together when building a RestTemplate with RestTemplateBuilder #26827
  • CompositeHealth.getDetails() does not serialize if MapperFeature.CAN_OVERRIDE_ACCESS_MODIFIERS is disabled #26823
  • ConnectionFactoryBuilder.derivefrom should be named derivedFrom to align with DataSourceBuilder #26810
  • Profile-specific property files are incorrectly ordered when both '.' and './config' folders are used in the same application #26782
  • A spring.config.import declared in an application-.properties file calls ConfigDataLocationResolver.resolveProfileSpecific #26755
  • A spring.config.import declared in an application.properties file also attempts to import profile-specific files #26754
  • Jar startup fails on JDK 11 with a SecurityManager enabled #26744
  • Possible divide by zero bugs when using RandomValuePropertySource #26739
  • Resolving properties with a target type can cause ConversionFailedException #26732
  • Upgrading to Spring Boot 2.5.0 leads to a startup warning from Jackson about Kotlin #26727
  • LoggingSystem should not return LogbackLoggingSystem if logback-classic is not available #26725
  • bootBuildImage runs forever when a custom image name is used and the version contains an illegal character #26703
  • Non-static nested @Configuration in JerseySameManagementContextConfiguration #26697
  • Restore run order of data.sql/schema.sql against high-level database migration tools #26692
  • Gradle plugin does not provided public constant for the productionRuntimeClasspath configuration #26687
  • Non-embedded databases have schema/data.sql scripts applied by default #26682
  • Custom username/password properties are not picked up by DataSourceInitializationConfiguration #26676
  • No subdirectories found for mandatory directory location 'file:./config/*/' is thrown when config dir exists #26672
  • LoggingSystem not available on shutdown to log DisposableBean#destroy invocations #26660
  • Image Building with custom buildpacks fails with permission denied on Arch Linux #26658
  • SingleSignOnService Binding from SAML IdP metadata gets overridden by default #26649
  • UnsupportedDataSourcePropertyException is thrown when attempting to set URL for SQL Server #26647
  • Flyway and Liquibase custom datasource without an url leads to java.lang.ClassCastException #26644
  • Empty value for spring.datasource.password can cause NullPointerException #26633
  • UnsupportedDataSourcePropertyException is thrown when attempting to set driverClassName for H2 #26631
  • Some metrics are lost when Spring Data is on the classpath #26630
  • ApplicationAvailabilityBean should log at debug level #26624

📔 Documentation

  • Update optaplanner spring boot starter url #26816
  • Fix typo in 'Reacting to the Maven plugin' title #26751
  • Link to Spring Data JPA points to Spring Data JDBC #26741
  • Clarify when a connection pool is created for Redis #26735
  • Polish description of server.servlet.session.cookie.domain #26717
  • Document Kubernetes terminationGracePeriodSeconds #26701
  • Correct Kotlin version requirements in documentation #26655
  • Document spring.profiles.default property #26654
  • Add link to Maven Git Commit Id Plugin #26635
  • Rework build-image-customization table in docs #25739

🔨 Dependency Upgrades

  • Upgrade to AppEngine SDK 1.9.89 #26798
  • Upgrade to Couchbase Client 3.1.6 #26799
  • Upgrade to Dropwizard Metrics 4.1.22 #26800
  • Upgrade to Ehcache3 3.9.4 #26801
  • Upgrade to Git Commit ID Plugin 4.0.5 #26845
  • Upgrade to Gson 2.8.7 #26802
  • Upgrade to Hibernate 5.4.32.Final #26803
  • Upgrade to Infinispan 12.1.4.Final #26804
  • Upgrade to JBoss Logging 3.4.2.Final #26805
  • Upgrade to Jetty 9.4.42.v20210604 #26838
  • Upgrade to Jetty Reactive HTTPClient 1.1.9 #26837
  • Upgrade to Johnzon 1.2.13 #26806
  • Upgrade to jOOQ 3.14.11 #26807
  • Upgrade to Kotlin 1.5.10 #26652
  • Upgrade to Neo4j Java Driver 4.2.6 #26808
  • Upgrade to RSocket 1.1.1 #26839
  • Upgrade to Spring AMQP 2.3.8 #26764
  • Upgrade to Spring Framework 5.3.8 #26761
  • Upgrade to Spring Kafka 2.7.2 #26765
  • Upgrade to Undertow 2.2.8.Final #26809

❤️ Contributors

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

v2.4.7

10 Jun 12:01
Compare
Choose a tag to compare

🪲 Bug Fixes

  • MetricsRestTemplateCustomizer and LocalHostUriTemplateHandler cannot be used together when building a RestTemplate with RestTemplateBuilder #26826
  • CompositeHealth.getDetails() does not serialize if MapperFeature.CAN_OVERRIDE_ACCESS_MODIFIERS is disabled #26822
  • A spring.config.import declared in an application-.properties file calls ConfigDataLocationResolver.resolveProfileSpecific #26753
  • A spring.config.import declared in an application.properties file also attempts to import profile-specific files #26752
  • Jar startup fails on JDK 11 with a SecurityManager enabled #26743
  • Possible divide by zero bugs when using RandomValuePropertySource #26738
  • LoggingSystem should not return LogbackLoggingSystem if logback-classic is not available #26724
  • bootBuildImage runs forever when a custom image name is used and the version contains an illegal character #26702
  • Non-static nested @Configuration in JerseySameManagementContextConfiguration #26696
  • Gradle plugin does not provided public constant for the productionRuntimeClasspath configuration #26686
  • No subdirectories found for mandatory directory location 'file:./config/*/' is thrown when config dir exists #26627
  • Auto-configured resource handlers don't get applied to child contexts #26622
  • Profile-specific property files are incorrectly ordered when both '.' and './config' folders are used in the same application #26593
  • SingleSignOnService Binding from SAML IdP metadata gets overridden by default #26454

📔 Documentation

  • Link to Spring Data JPA points to Spring Data JDBC #26740
  • Clarify when a connection pool is created for Redis #26734
  • Polish description of server.servlet.session.cookie.domain #26716
  • Document Kubernetes terminationGracePeriodSeconds #26700
  • Document spring.profiles.default property #26653
  • Correct Kotlin version requirements in documentation #26421

🔨 Dependency Upgrades

  • Upgrade to AppEngine SDK 1.9.89 #26783
  • Upgrade to Dropwizard Metrics 4.1.22 #26784
  • Upgrade to Ehcache3 3.9.4 #26785
  • Upgrade to Gson 2.8.7 #26786
  • Upgrade to Hibernate 5.4.32.Final #26787
  • Upgrade to JBoss Logging 3.4.2.Final #26788
  • Upgrade to Jetty 9.4.42.v20210604 #26834
  • Upgrade to Jetty Reactive HTTPClient 1.1.9 #26833
  • Upgrade to Johnzon 1.2.13 #26789
  • Upgrade to jOOQ 3.14.11 #26790
  • Upgrade to Neo4j Java Driver 4.1.3 #26835
  • Upgrade to RSocket 1.1.1 #26836
  • Upgrade to Spring AMQP 2.3.8 #26762
  • Upgrade to Spring Framework 5.3.8 #26760
  • Upgrade to Spring Kafka 2.6.9 #26763
  • Upgrade to Undertow 2.2.8.Final #26791

❤️ Contributors

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

v2.3.12.RELEASE

10 Jun 09:21
Compare
Choose a tag to compare

🪲 Bug Fixes

  • MetricsRestTemplateCustomizer and LocalHostUriTemplateHandler cannot be used together when building a RestTemplate with RestTemplateBuilder #26812
  • CompositeHealth.getDetails() does not serialize if MapperFeature.CAN_OVERRIDE_ACCESS_MODIFIERS is disabled #26797
  • LoggingSystem should not return LogbackLoggingSystem if logback-classic is not available #26711
  • Non-static nested @Configuration in JerseySameManagementContextConfiguration #26695
  • Possible divide by zero bugs when using RandomValuePropertySource #26628
  • Auto-configured resource handlers don't get applied to child contexts #25743
  • Jar startup fails on JDK 11 with a SecurityManager enabled #25538
  • bootBuildImage runs forever when a custom image name is used and the version contains an illegal character #23115

📔 Documentation

  • Link to Spring Data JPA points to Spring Data JDBC #26736
  • Clarify when a connection pool is created for Redis #26733
  • Polish description of server.servlet.session.cookie.domain #26713
  • Document spring.profiles.default property #26592
  • Document Kubernetes terminationGracePeriodSeconds #26469

🔨 Dependency Upgrades

  • Upgrade to AppEngine SDK 1.9.89 #26776
  • Upgrade to Dropwizard Metrics 4.1.22 #26777
  • Upgrade to Gson 2.8.7 #26778
  • Upgrade to Hibernate 5.4.32.Final #26779
  • Upgrade to JBoss Logging 3.4.2.Final #26780
  • Upgrade to Jetty 9.4.42.v20210604 #26830
  • Upgrade to Jetty Reactive HTTPClient 1.1.9 #26829
  • Upgrade to Johnzon 1.2.13 #26781
  • Upgrade to Neo4j OGM 3.2.24 #26831
  • Upgrade to RSocket 1.0.5 #26832
  • Upgrade to Spring AMQP 2.2.18 #26770
  • Upgrade to Spring Integration 5.3.8 #26772
  • Upgrade to Spring Kafka 2.5.14 #26771

❤️ Contributors

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

v2.5.0

20 May 23:59
Compare
Choose a tag to compare

For full upgrade instructions and new and noteworthy features please see the release notes.

🪲 Bug Fixes

  • Auto-configured resource handlers don't get applied to child contexts #26623
  • Actuator doesn't use the CORS Configuration with default security configuration and Spring Webflux #26614
  • Actuator doesn't use the CORS Configuration with default security configuration and Spring MVC #26612
  • SpringApplication additional profiles and active profiles ordering changed with Spring Boot 2.4 #26610
  • An active request delays Jetty's shutdown by 30 seconds #26608
  • SmartInitializingSingleton beans are not working with lazy initialization #26606
  • MVC and WebFlux metrics filters adversely affect the response when metrics recording fails #26596
  • ConfigDataResolvers cannot signal that they should be skipped #26585
  • Remote devtools endpoint cannot be accessed if actuator and spring security are on the classpath #26584
  • The error message when a wildcard directory location does not match any files is misleading #26583
  • Mandatory locations with pattern fail with exception #26582
  • Non-optional locations with wildcards fail if no files are contributed #26581
  • Profiles programmatically set on the Envionment are no longer merged with active profile properties #26580
  • Use of spring.profiles.include in a profile-specific document is not detected when it's configured as a YAML list #26575
  • ConfigurationProperties is retrieved via classpath scanning but does not indicate it should be indexed #26463
  • BufferingApplicationStartup fails with NoSuchElementException #26458
  • Building an image fails when using a custom buildpack image with long file names #26445
  • Additional profiles are processed too late when legacy processing is used #26434
  • Config data location does not exist error can be thrown if a profile-specific properties file is directly imported #26402
  • StandardConfigDataLoader can import profile specific files in incorrect order #26401
  • Resolvability and consumability of productionRuntimeClasspath are not aligned with runtimeClasspath #26365
  • ObjectMapper provided by JacksonAutoConfiguration via JacksonClusterEnvironmentBuilderCustomizer breaks Couchbase driver #26363
  • Empty value in spring.config.import causes NullPointerException #26346
  • @DataRedisTest does not consider RedisReactiveAutoConfiguration #26328
  • When a single bean causes a dependency cycle the failure analysis does not clearly illustrate the cycle #26323
  • SpringBootConfiguration is retrieved via classpath scanning but does not indicate it should be indexed #26318
  • Maven spring-boot:build-image ignores ZIP layout #26313
  • bootBuildImage does not pick up targetCompatibility when it's configured after task is customised #26301
  • Configuration item metadata ordering is not consistent #26277
  • @EnableAutoConfiguration and @ImportAutoConfiguration use different class loaders to find candidate configurations #26237
  • 'spring.web.resources.cache.use-last-modified=false' doesn't work with Spring MVC #26233
  • Restore support for binding configuration properties from RandomValuePropertySource #26201
  • @Scheduled method not triggered when spring.main.lazy-initialization=true #26156
  • When classes in spring-core and spring-boot are loaded by different ClassLoaders, spring-boot cannot find its own config data location resolvers #26155
  • ConfigFileApplicationListener#loadPostProcessors can not load EnvironmentPostProcessor in child classLoader #26126

📔 Documentation

  • Info endpoint in reference doc has outdated defaults #26591
  • Update documentation following the release of Spock Framework 2.0 #26586
  • Update Gradle docs to use module replacement rather than dependency substitution #26526
  • Improve documentation of TestRestTemplate's fault tolerance #26522
  • Document that the heap dump endpoint requires a HotSpot JVM #26474
  • Suggest enabling the default servlet when using Jersey as a filter #26452
  • Document support for Gradle 6.9 #26409
  • Fix wrong reference to Cassandra in DockerImageNames#couchbase #26406
  • PDF documentation include hidden code elements #26373
  • Move Working with the Code from CONTRIBUTING.adoc to the wiki #26334
  • Fix typo in NamedContributors Javadoc #26325
  • Polish README #26320
  • Fix link to Webservices reference docs #26316
  • Document property names to enable reactive health indicators #26299
  • Documentation has wrong key for DataSourceHealthIndicator #26283
  • Reorder a few howtos #26262
  • Align documentation with main default branch name #26257
  • Align Maven version in system requirements with what is actually tested #26211
  • Document that MeterFilters are only applied to the Spring-managed MeterRegistry #26186
  • Use new update site for Spring Java Format's Eclipse plugin #26172
  • spring.profiles.include has outdated sourceType in configuration metadata #26165
  • Include spring.profiles.group in additional-spring-configuration-metadata.json #26164
  • Enhance multiple entity manager factories online documentation #26160
  • SQL init schema-locations and data-locations are missing metadata to cause them to be handled as Resources #26154
  • Replacements for spring.datasource.schema and spring.datasource.data are documented incorrectly #26150

🔨 Dependency Upgrades

  • Upgrade to ActiveMQ 5.16.2 #26528
  • Upgrade to Caffeine 2.9.1 #26529
  • Upgrade to Cassandra Driver 4.11.1 #26530
  • Upgrade to Couchbase Client 3.1.5 #26531
  • Upgrade to Dropwizard Metrics 4.1.21 #26532
  • Upgrade to Ehcache ...
Read more