Releases: spring-projects/spring-boot
Releases · spring-projects/spring-boot
v2.3.0.M1
⭐ New Features
- Add layertools jarmode support to Gradle #19867
- Automatically add jarmode jars when packaging #19865
- Add layertools jarmode #19849
- Add jarmode support to the loader code #19848
- Write classpath index file from Gradle plugin #19847
- Create a new ImagePackager tools class #19834
- Add buildImage support to the gradle plugin #19831
- Add build-image support to the maven plugin #19830
- Add cloud native buildpack module #19828
- Remove spring-boot-starter-cloud-connectors #19798
- Update the Gradle plugin with an option to generate layered jars #19792
- Update the Maven plugin with an option to generate layered jars #19768
- Support generation and loading of layered jars #19767
- Remove support for Jest #19681
- Remove support for Elasticsearch transport client #19668
- Do not include the validation starter in web starters by default #19550
- Auto-configure HTTP client builders as lazy #19549
- Add Stackdriver metrics export support #19528
- Avoid 406 Not Acceptable for error pages #19522
- Add Java 14 to JavaVersion enumeration #19511
- Switch
JobLauncherCommandLineRunnertoApplicationRunner#19442 - Configurer for RabbitTemplate similar to SimpleRabbitListenerContainerFactoryConfigurer #19440
- Make output from spring-boot-autoconfigure-processor reproducible #19370
- Add ComponentScan#nameGenerator alias on @SpringBootApplication #19346
- Add support for setting DirContextAuthenticationStrategy on the LdapContextSource #19328
- Remove code that is deprecated since 2.1.x #19189
- Use DateTimeFormatter in favor of SimpleDateFormat #19142
- Add configuration property for RabbitMQ client requestedChannelMax #19106
- Remove plugin management for maven-site-plugin #19085
- Support tc datasource prefix for test containers #19044
- Support constructor binding on 3rd party classes #19011
- Support Gradle 6 #18957
- Move spring.http.* configuration properties namespace #18827
- Raise the minimum supported version of Gradle to 5.6 #18777
- Provide toolchains support for Spring Boot Maven Plugin #18732
- Upgrade to Cassandra driver 4 #18621
- Add group RemoteIpValve for ServerProperties.Tomcat #18489
- Add information about the input into the property binding process to the configprops endpoint #17886
- Reconsider default for spring.datasource.generate-unique-name as the current one makes test cases brittle #16747
- spring.cache.redis.cache-prefix should use prefixCacheNameWith to include the cache name in the generated key #16676
- Improve JarLauncher's performance when running as an exploded jar #16655
- Considered new defaults for JPA repository bootstrap #16230
- Provide end-to-end tracability for bound @ConfigurationProperties #14880
- Use the same classpath ordering for an exploded jar and an archive #9128
🪲 Bug Fixes
- Dependency resolution fails with Gradle 5.3.x to 5.6.x #19814
- Configuring dedicated Cassandra contact points now require a local DC #19779
- Since 2.2.2 Jetty error handler cannot be overridden #19774
- Fat jars do not tolerate entries with an invalid modification date of 0 #19714
- Duplicate metrics can be recorded by WebMvcTags since it does not rationalize trailing slashes #19701
- Failure analyser for a missing validation provider does not kick in when using the latest Jakarta Validation API #19689
- Make equality checks defensive to null reference #19686
- PoolingDataSourceBean getParentLogger throws StackOverflowError #19683
- MetricsWebFilter assigns UNKNOWN outcome to 200 OK responses #19600
- Rejected value is null when configuration property fails validation #19598
- Diagnostics are poor when using
@ConfigurationPropertiesScanand@ConstructorBindingon a Kotlin data class without kotlin-reflect #19582 - HypermediaAutoConfiguration hinges on Spring MVC #19562
- Spring Boot's antlib references a properties file that is no longer packaged in its jar #19554
- Unset forward header strategy in kubernetes environment eats X-Forwarded-* headers in Spring Boot 2.2 #19529
- Incorrect target type with wildcard List #19527
- Use RBAC credentials for Couchbase cluster info #19517
- Non-public property in Saml2RelyingPartyProperties' Registration class #19486
- Add support for nested requests in MetricsClientHttpRequestInterceptor #19464
- Support commas embedded in command line arguments from Maven plugin #19463
- Configuration properties that use the builder pattern are not recognized when used with a generic #19441
- Disable Jackson SerializationFeature.WRITE_DURATIONS_AS_TIMESTAMPS by default #19435
- NoSuchMethodError when deploying to Tomcat 8.5 before 8.5.44 and Tomcat 9 before 9.0.23 #19422
- Micrometer's Dynatrace group property cannot be configured via application properties #19375
- @SpyBean (MockitoPostProcessor) tries to initialize @StepScope Bean out of scope #19310
- server.ssl.key-alias is ignored when configuring Netty #19305
- Actuator does not display immutable configuration properties when using @validated #19279
- Bean class placeholders doesn't work in 2.2.1.RELEASE #19217
- Constructor binding fails when configuration class has a generic field with type parameter java.util.Map #19216
- Liquibase actuator endpoint does not give correct information when multiple databases are used in one project #19191
- ssl.enabled is ignored when Rabbit is configured with an address with no protocol [#19113](https://github.com/spring-projects/sp...
v2.2.4.RELEASE
🪲 Bug Fixes
- Using
@ActiveProfileswith@SpringBootTestnow adds to the profiles configured using spring.profiles.active rather than overriding them #19821 - Dependency resolution fails with Gradle 5.3.x to 5.6.x #19783
📔 Documentation
- Document RedisCacheManagerBuilderCustomizer #19819
🔨 Dependency Upgrades
- Upgrade to Reactor Dysprosium-SR4 #19795
❤️ Contributors
We'd like to thank all the contributors who worked on this release!
v2.2.3.RELEASE
⭐ New Features
- Avoid 406 Not Acceptable for error pages #19545
- Ignore trailing slash by default when recording web metrics #18207
🪲 Bug Fixes
- Fat jars do not tolerate entries with an invalid modification date of 0 #19713
- Make equality checks defensive to null reference #19685
- PoolingDataSourceBean getParentLogger throws StackOverflowError #19682
- Failure analyser for a missing validation provider does not kick in when using the latest Jakarta Validation API #19671
- Rejected value is null when configuration property fails validation #19580
- Profile with comma in name does not work in tests #19560
- Spring Boot's antlib references a properties file that is no longer packaged in its jar #19553
- Incorrect target type with wildcard List #19526
- Since 2.2.2 Jetty error handler cannot be overridden #19520
- Use RBAC credentials for Couchbase cluster info #19393
- HypermediaAutoConfiguration hinges on Spring MVC #19392
- Micrometer's Dynatrace group property cannot be configured via application properties #19369
- MetricsWebFilter assigns UNKNOWN outcome to 200 OK responses #19367
- Disable Jackson SerializationFeature.WRITE_DURATIONS_AS_TIMESTAMPS by default #19352
- Unset forward header strategy in kubernetes environment eats X-Forwarded-* headers in Spring Boot 2.2 #19333
- Diagnostics are poor when using
@ConfigurationPropertiesScanand@ConstructorBindingon a Kotlin data class without kotlin-reflect #19312 - NoSuchMethodError when deploying to Tomcat 8.5 before 8.5.44 and Tomcat 9 before 9.0.23 #19308
- Non-public property in Saml2RelyingPartyProperties' Registration class #19194
- Configuration properties that use the builder pattern are not recognized when used with a generic #19099
- Support commas embedded in command line arguments from Maven plugin #18711
📔 Documentation
- Remove duplicate note in Hazelcast section of reference guide #19678
- Fix links to external types in javadoc #19591
- Links to apply method in AutoTimer's javadoc are broken #19572
- Spring MVC auto-config doc update #19521
- Add reference to OptaPlanner starter #19508
- Outdated reference in ArtemisConfigurationCustomizer javadoc #19503
- Polish note about handling of caches that are created on-the-fly #19498
- Fix typo in BindHandler#onFinish javadoc #19496
- Adapt file rotation documentation to logging's maxHistory default change to 7 days #19458
- Clarify documentation of repackage mojo's attach property #19453
- Clarify non-public nature of Boot?s own @ConfigurationProperties classes and multi-DataSource example #19451
- Clarify the behaviour of @cAcHecONFig with respect to on-the-fly cache creation and cache metrics #19448
- Add JMX note for Kafka consumer metrics #19446
- Fix typo on ConditionMessage #19433
- Improve "Running Behind a Front-end Proxy Server" documentation #19403
- Link consistently to Tomcat 9.0 docs #19362
- Fix link to Vaadin Spring Boot starter #19360
- Improve documentation coverage for Spring Batch #19211
🔨 Dependency Upgrades
- Upgrade to Micrometer 1.3.2 #19778
- Upgrade to Spring Retry 1.2.5.RELEASE #19758
- Upgrade to Slf4j 1.7.30 #19757
- Upgrade to Postgresql 42.2.9 #19756
- Upgrade to Neo4j Ogm 3.2.6 #19755
- Upgrade to Liquibase 3.8.5 #19754
- Upgrade to Kotlin Coroutines 1.3.3 #19753
- Upgrade to Infinispan 9.4.17.Final #19752
- Upgrade to Hibernate 5.4.10.Final #19751
- Upgrade to Elasticsearch 6.8.6 #19750
- Upgrade to Jetty 9.4.25.v20191220 #19749
- Upgrade to Groovy 2.5.9 #19748
- Upgrade to Awaitility 4.0.2 #19747
- Upgrade to Httpcore 4.4.13 #19746
- Upgrade to Byte Buddy 1.10.6 #19745
- Upgrade to Mysql 8.0.19 #19744
- Upgrade to Undertow 2.0.29.Final #19743
- Upgrade to Rxjava2 2.2.17 #19742
- Upgrade to Netty 4.1.45.Final #19741
- Upgrade to Dropwizard Metrics 4.1.2 #19740
- Upgrade to Hikaricp 3.4.2 #19739
- Upgrade to Unboundid Ldapsdk 4.0.14 #19738
- Upgrade to Okhttp3 3.14.6 #19737
- Upgrade to Hazelcast 3.12.5 #19736
- Upgrade to Jackson 2.10.2 #19735
- Upgrade to Jakarta Validation API 2.0.2 #19687
- Upgrade to Spring Data Moore-SR4 #19648
- Upgrade to Spring Integration 5.2.3 #19647
- Upgrade to Spring AMQP 2.2.3 #19646
- Upgrade to Spring HATEOAS 1.0.3 #19644
- Upgrade to Reactor Dysprosium-SR3 #19643
- Upgrade to Spring Kafka 2.3.5 #19613
- Upgrade to Spring Framework 5.2.3 #19531
- Upgrade to nohttp 0.0.4.RELEASE #19479
- Upgrade to Tomcat 9.0.30 #19473
❤️ Contributors
We'd like to thank all the contributors who worked on this release!
v2.1.12.RELEASE
🪲 Bug Fixes
- PoolingDataSourceBean getParentLogger throws StackOverflowError #19637
- Fat jars do not tolerate entries with an invalid modification date of 0 #19595
- Profile with comma in name does not work in tests #19556
- Spring Boot's antlib references a properties file that is no longer packaged in its jar #19552
- Make equality checks defensive to null reference #19540
- Incorrect target type with wildcard List #18767
📔 Documentation
- Fix links to external types in javadoc #19581
- Fix typo in BindHandler#onFinish javadoc #19492
- Polish note about handling of caches that are created on-the-fly #19491
- Clarify the behaviour of @cAcHecONFig with respect to on-the-fly cache creation and cache metrics #19412
- Fix typo on ConditionMessage #19354
- Link consistently to Tomcat 9.0 docs #19340
- Fix link to Vaadin Spring Boot starter #19338
- Clarify non-public nature of Boot?s own @ConfigurationProperties classes and multi-DataSource example #19199
- Clarify documentation of repackage mojo's attach property #19021
- Improve "Running Behind a Front-end Proxy Server" documentation #15046
🔨 Dependency Upgrades
- Upgrade to Spring Kafka 2.2.12.RELEASE #19761
- Upgrade to Spring Retry 1.2.5.RELEASE #19734
- Upgrade to Slf4j 1.7.30 #19733
- Upgrade to Postgresql 42.2.9 #19732
- Upgrade to Neo4j Ogm 3.1.16 #19731
- Upgrade to Infinispan 9.4.17.Final #19730
- Upgrade to Hibernate 5.3.15.Final #19729
- Upgrade to Jetty 9.4.25.v20191220 #19728
- Upgrade to Groovy 2.5.9 #19727
- Upgrade to Httpcore 4.4.13 #19726
- Upgrade to Mysql 8.0.19 #19725
- Upgrade to Undertow 2.0.29.Final #19724
- Upgrade to Rxjava2 2.2.17 #19723
- Upgrade to Netty 4.1.45.Final #19722
- Upgrade to Unboundid Ldapsdk 4.0.14 #19721
- Upgrade to Hazelcast 3.11.6 #19720
- Upgrade to Jackson 2.9.10.20200103 #19719
- Upgrade to Spring Data Lovelace-SR15 #19642
- Upgrade to Spring AMQP 2.1.13 #19641
- Upgrade to Reactor Californium-SR15 #19640
- Upgrade to Spring Framework 5.1.13 #19530
- Upgrade to nohttp 0.0.4.RELEASE #19478
- Upgrade to Tomcat 9.0.30 #19472
❤️ Contributors
We'd like to thank all the contributors who worked on this release!
v2.2.2.RELEASE
⭐ New Features
🪲 Bug Fixes
- @SpyBean (MockitoPostProcessor) tries to initialize @StepScope Bean out of scope #19309
- server.ssl.key-alias is ignored when configuring Netty #19304
- Actuator does not display immutable configuration properties when using @validated #19219
- Bean class placeholders doesn't work in 2.2.1.RELEASE #19207
- Liquibase actuator endpoint does not give correct information when multiple databases are used in one project #19190
- Constructor binding fails when configuration class has a generic field with type parameter java.util.Map #19156
- ssl.enabled is ignored when Rabbit is configured with an address with no protocol #19112
- Use DeferredLog in CloudFoundryVcapEnvironmentPostProcessor #19086
- Spring Boot DevTools YAML property loading does not work #19081
- HealthWebEndpointMapper should expose details if right authority present #19059
- Handle ApiVersion in CachingOperationInvoker #18961
- Spring Boot - Maven Plugin shutdown broken #18940
- BasicJsonParser does not handle whitespace between [ and { correctly #18913
- @ServletComponentScan does not work with a component index #18912
📔 Documentation
- Add missing closing parenthesis in Test Scope Dependencies reference documentation #19218
- Document the property configuration of the auto-configured EntityManagerFactoryBuilder #19209
- Document Nitrite starter in README #19196
- Add missing health indicators to docs #19154
- Clarify contradictory advice on the use of
@PropertySource#19152 - Document logging of startup info #19150
- Incorrect Javadoc regarding default Tomcat async request timeout #19091
- Fix syntax error in configuration metadata sample in docs #19032
- Use CAPS for build args in Dockerfile example #19029
- Improve Dockerfile example to extract the application jar based on an argument #18932
- Remove reference to ConfigurationPropertiesScan in javadoc #18920
- Remove spring-boot-samples references from docs #18904
🔨 Dependency Upgrades
- Upgrade to Spring Cloud Connectors 2.0.7.RELEASE #19247
- Upgrade to Neo4j Ogm 3.2.3 #19246
- Upgrade to Jetty El 8.5.49 #19245
- Upgrade to Liquibase 3.8.2 #19244
- Upgrade to Kotlin 1.3.61 #19243
- Upgrade to Aspectj 1.9.5 #19242
- Upgrade to Activemq 5.15.11 #19241
- Upgrade to Byte Buddy 1.10.4 #19240
- Upgrade to Netty Tcnative 2.0.28.Final #19239
- Upgrade to Unboundid Ldapsdk 4.0.13 #19238
- Upgrade to Couchbase Client 2.7.11 #19237
- Upgrade to Spring Hateoas 1.0.2.RELEASE #19223
- Upgrade to Spring Amqp 2.2.2.RELEASE #19222
- Upgrade to Maven Enforcer Plugin 3.0.0-M3 #19140
- Upgrade to Liquibase 3.8.1 #19139
- Upgrade to Hibernate 5.4.9.Final #19138
- Upgrade to Jaybird 3.0.8 #19137
- Upgrade to Elasticsearch 6.8.5 #19136
- Upgrade to Jetty 9.4.24.v20191120 #19135
- Upgrade to Tomcat 9.0.29 #19134
- Upgrade to Johnzon Jsonb 1.2.2 #19133
- Upgrade to Byte Buddy 1.10.3 #19132
- Upgrade to Undertow 2.0.28.Final #19131
- Upgrade to Rxjava2 2.2.15 #19130
- Upgrade to Netty Tcnative 2.0.27.Final #19129
- Upgrade to Querydsl 4.2.2 #19128
- Upgrade to Appengine Sdk 1.9.77 #19127
- Upgrade to Jackson 2.10.1 #19126
- Upgrade to Couchbase Client 2.7.10 #19125
- Upgrade to Reactor Dysprosium-SR2 #19077
- Upgrade to Spring Batch 4.2.1 #19073
- Upgrade to Spring Kafka 2.3.4 #19071
- Upgrade to Spring Integration 5.2.2 #19070
- Upgrade to Spring Data Moore-SR3 #19069
- Upgrade to Spring Framework 5.2.2 #19053
- Upgrade to Kotlin 1.3.60 #19046
❤️ Contributors
We'd like to thank all the contributors who worked on this release!
v2.1.11.RELEASE
🪲 Bug Fixes
- server.ssl.key-alias is ignored when configuring Netty #19197
- Liquibase actuator endpoint does not give correct information when multiple databases are used in one project #19171
- ssl.enabled is ignored when Rabbit is configured with an address with no protocol #19109
- Use DeferredLog in CloudFoundryVcapEnvironmentPostProcessor #19027
- @SpyBean (MockitoPostProcessor) tries to initialize @StepScope Bean out of scope #19020
- HealthWebEndpointMapper should expose details if right authority present #18998
- Spring Boot - Maven Plugin shutdown broken #18936
- BasicJsonParser does not handle whitespace between [ and { correctly #18911
- @ServletComponentScan does not work with a component index #18910
📔 Documentation
- Add missing health indicators to docs #19149
- Incorrect Javadoc regarding default Tomcat async request timeout #19057
- Fix syntax error in configuration metadata sample in docs #19028
- Document logging of startup info #19026
- Clarify contradictory advice on the use of
@PropertySource#18900 - Document the property configuration of the auto-configured EntityManagerFactoryBuilder #15361
🔨 Dependency Upgrades
- Upgrade to Spring Cloud Connectors 2.0.7.RELEASE #19234
- Upgrade to Jetty El 8.5.49 #19233
- Upgrade to Aspectj 1.9.5 #19232
- Upgrade to Activemq 5.15.11 #19231
- Upgrade to Netty Tcnative 2.0.28.Final #19230
- Upgrade to Micrometer 1.1.9 #19229
- Upgrade to Unboundid Ldapsdk 4.0.13 #19228
- Upgrade to Couchbase Client 2.7.11 #19227
- Upgrade to Maven Enforcer Plugin 3.0.0-M3 #19124
- Upgrade to Hibernate 5.3.14.Final #19123
- Upgrade to Jaybird 3.0.8 #19122
- Upgrade to Jetty 9.4.24.v20191120 #19121
- Upgrade to Tomcat 9.0.29 #19120
- Upgrade to Undertow 2.0.28.Final #19119
- Upgrade to Rxjava2 2.2.15 #19118
- Upgrade to Netty Tcnative 2.0.27.Final #19117
- Upgrade to Querydsl 4.2.2 #19116
- Upgrade to Appengine Sdk 1.9.77 #19115
- Upgrade to Couchbase Client 2.7.10 #19114
- Upgrade to Spring Batch 4.1.3 #19072
- Upgrade to Spring Data Lovelace-SR14 #19068
- Upgrade to Reactor Californium-SR14 #19052
- Upgrade to Spring Framework 5.1.12 #19051
❤️ Contributors
We'd like to thank all the contributors who worked on this release!
v2.2.1.RELEASE
📣 Notes
@ConfigurationPropertiesscanning is now disabled by default and needs to be explicitly opted into by adding the@ConfigurationPropertiesScanannotation. More details related to this change can be found here.
⭐ New Features
- Support constructor binding for property nested inside a JavaBean #18894
- Support amqps:// URIs in spring.rabbitmq.addresses #18885
- Add config property for CodecConfigurer.maxInMemorySize in WebFlux #18828
- Make test slices' type exclude filters public #18746
🪲 Bug Fixes
- Recursive property in
@ConfigurationPropertiescauses java.lang.StackOverflowError when generating metadata #18889 - Endpoint filter configured on an endpoint's super-class has no effect #18882
- Dependency relationships created by AbstractDependsOnBeanFactoryPostProcessors cannot be overridden #18878
- HazelcastHealthContributorAutoConfiguration not bootstrapped #18847
- Dependency management has unnecessary log4j exclusion for spring-cloud-spring-service-connector #18833
- Constructor binding for nested class with multiple constructors causes BindException #18810
- Reactive health indicators are ignored in MVC applications #18805
- Failure analysis description for BeanDefinitionOverrideExceptions includes useless information when a bean definition has no resource description #18749
- Reactive HealthContributors do not hide non-reactive ones #18748
- configprops error when jobscope defined in configuration #18714
- Confusing error message if property not found when ConstructorBinding is used #18704
- Make optimizedLaunch property name more consistent #18702
- It is unclear that server.tomcat.max-http-post-size and server.jetty.max-http-post-size only apply to POSTed form content #18695
- NPE is thrown from /actuator/health with an empty composite contributor #18687
/actuator/healthreturns 404 if no indicator is present #18676@TestConfigurationdisables proxying of@Beanmethods #18675- Enabling configuration properties scanning by default prevents conditional registration of
@ConfigurationProperties-annotedtypes that are found by scanning #18674 - Depends on semantic between Liquibase and JPA are no longer applied with custom SpringLiquibase #18673
- Bean validation not picking error translations anymore #18672
- Binding fails in presence of a synthetic constructor #18670
- Application does not start anymore with only AbstractRoutingDataSource beans #18661
- ConfigurationProperties with constructor binding cannot be mocked #18652
- Actuator health check groups allow to specify checks only in lower case #18649
- Immutable configuration properties not shown by Actuator #18636
- Use of CGLib proxies is only auto-configured when AspectJ is on the classpath #18523
📔 Documentation
- Spring boot tests overrides surefire plugin listeners #18893
- Improve documentation of how actuator integrates with both Jersey and Spring MVC #18887
- Logs of java.util.logging.Logger are not output when war is deployed to tomcat. #18880
- Document that
@Ordercannot be used on a Filter's@Beanmethod to set the Filter's order #18879 - Unexpected settings in effective pom when inheriting from spring-boot-starter-parent #18877
- Improve security-related recommendations for DevTools' remote application support #18876
- Document Settings as jooq supported auto-configuration type #18875
- Add reference to Armeria starter #18837
- Make "Containers and Exploded Archives" section more visible #18818
- OAuth2 Client documentation still refers to redirect-uri-template #18756
- Delete Javadoc references to removed code #18755
- Mention keys with dots for yaml in "Spring Boot Configuration Binding" wiki #18735
- Emphasize the need of
@Validin nested configuration properties #18734 - Document that auto-configuration of Jersey server metrics requires a dependency on micrometer-jersey2 #18726
- Small documentation improvements #18718
- Clarify Javadoc for ServletContextInitializer #18691
- Documentation for DevTools Global Settings has a typo when displaying spring.devtools.restart.trigger-file property example #18679
- Spring Boot 2.2 migration guide not mentioning deprecated server.use-forward-headers #18667
- Update 2.2 release notes to note that spring-boot:run now forks a new JVM by default #18638
- Narrow type for Tomcat 'locale' and 'encoding' properties #18637
- Documentation does not make it clear that micrometer-registry-prometheus dependency is required to use the prometheus endpoint #18633
- Add missing package-info.java files #18632
🔨 Dependency Upgrades
- Upgrade to Mongodb 3.11.2 #18898
- Upgrade to Spring Kafka 2.3.3.RELEASE #18892
- Upgrade to Spring Security 5.2.1.RELEASE #18869
- Upgrade to Micrometer 1.3.1 #18867
- Upgrade to Spring Ws 3.0.8.RELEASE #18866
- Upgrade to Slf4j 1.7.29 #18863
- Upgrade to Jooq 3.12.3 #18862
- Upgrade to Rxjava2 2.2.14 #18861
- Upgrade to Spring Hateoas 1.0.1.RELEASE #18856
- Upgrade to Neo4j Ogm 3.2.2 #18824
- Upgrade to Flyway 6.0.8 #18823
- Upgrade to Lettuce 5.2.1.RELEASE #18822
- Upgrade to Hazelcast 3.12.4 #18821
- Upgrade to Jooq 3.12.2 #18802
- Upgrade to Hibernate Validator 6.0.18.Final #18801
- Upgrade to Hibernate 5.4.8.Final #18800
- Upgrade to Flyway 6.0.7 #18799
- Upgrade to Elasticsearch 6.8.4 #18798
- Upgrade to Jetty 9.4.22.v20191022 #18797
- Upgrade to Kafka 2.3.1 [#18796](https://github.com/spring-projects/spring-boo...
v2.1.10.RELEASE
⭐ New Features
- Support amqps:// URIs in spring.rabbitmq.addresses #18808
🪲 Bug Fixes
- Failure analysis description for BeanDefinitionOverrideExceptions includes useless information when a bean definition has no resource description #18721
- Rename
max-http-post-sizeserver property #18566 - Deprecate server.connection-timeout and create server-specific configuration keys #18473
- DevTools does not correctly handle encoded URLs found in the Class-Path manifest attribute #18410
- Recursive property in
@ConfigurationPropertiescauses java.lang.StackOverflowError when generating metadata #18365 - Dependency relationships created by AbstractDependsOnBeanFactoryPostProcessors cannot be overridden #18362
- Endpoint filter configured on an endpoint's super-class has no effect #17866
📔 Documentation
- Document Settings as jooq supported auto-configuration type #18870
- Improve security-related recommendations for DevTools' remote application support #18825
- OAuth2 Client documentation still refers to redirect-uri-template #18752
- Mention keys with dots for yaml in "Spring Boot Configuration Binding" wiki #18690
- Clarify Javadoc for ServletContextInitializer #18660
- Document that auto-configuration of Jersey server metrics requires a dependency on micrometer-jersey2 #18622
- Document spring.main.register-shutdown-hook #18581
- Document formatting recommendations for configuration property javadoc #18578
- Fix incorrect backslash escape for curly braces inside of Java code blocks #18546
- Unexpected settings in effective pom when inheriting from spring-boot-starter-parent #18532
- Document that
@Ordercannot be used on a Filter's@Beanmethod to set the Filter's order #18266 - Clarify scope of "
@SpringBootTest#classes" #18229 - Emphasize the need of
@Validin nested configuration properties #18198 - Improve documentation of how actuator integrates with both Jersey and Spring MVC #17523
- Logs of java.util.logging.Logger are not output when war is deployed to tomcat. #16062
🔨 Dependency Upgrades
- Upgrade to Hazelcast 3.11.5 #18897
- Upgrade to Spring Security 5.1.7.RELEASE #18874
- Upgrade to Spring Ws 3.0.8.RELEASE #18865
- Upgrade to Slf4j 1.7.29 #18860
- Upgrade to Rxjava2 2.2.14 #18859
- Upgrade to Micrometer 1.1.8 #18858
- Upgrade to Neo4j Ogm 3.1.15 #18791
- Upgrade to Mimepull 1.9.12 #18790
- Upgrade to Hibernate Validator 6.0.18.Final #18789
- Upgrade to Hibernate 5.3.13.Final #18788
- Upgrade to Jetty 9.4.22.v20191022 #18787
- Upgrade to Tomcat 9.0.27 #18786
- Upgrade to Mysql 8.0.18 #18785
- Upgrade to Joda Time 2.10.5 #18784
- Upgrade to Undertow 2.0.27.Final #18783
- Upgrade to Rxjava2 2.2.13 #18782
- Upgrade to Dropwizard Metrics 4.0.7 #18781
- Upgrade to Unboundid Ldapsdk 4.0.12 #18780
- Upgrade to Gson 2.8.6 #18779
- Upgrade to Jackson 2.9.10.20191020 #18778
- Upgrade to Spring Kafka 2.2.11 #18765
- Upgrade to Spring Integration 5.1.9 #18763
- Upgrade to Spring AMQP 2.1.12 #18761
- Upgrade to Spring Data Lovelace-SR12 #18743
- Upgrade to Netty 4.1.43.Final #18740
- Upgrade to Reactor Californium-SR13 #18739
- Upgrade to Spring Framework 5.1.11 #18737
- Upgrade to Quartz 2.3.2 #18723
- Upgrade to H2 1.4.200 #18593
- Upgrade to Jetty 9.4.21.v20190926 #18536
❤️ Contributors
We'd like to thank all the contributors who worked on this release!
v2.2.0.RELEASE
⭐ New Features
- Rename NettyRSocketServerFactory's server processor methods to reflect that they now deal with server factory processors #18617
- Rename server.jetty.idle-timeout #18615
- Remove @ImmutableConfigurationProperties #18563
- Improve failure analysis of NoSuchBeanDefinitionException to consider @ConfigurationProperties and if the intention was to use constructor binding #18545
- Allow Saml2LoginConfiguration to be "unconfigured" #18530
- Publish Gradle marker artifact for the Spring Boot plugin #18514
- Remove dependency management for Woodstox as it was working around FasterXML/jackson-dataformat-xml#340 and is no longer needed #18500
🪲 Bug Fixes
- Deprecate server.connection-timeout and create server-specific configuration keys #18618
- LegacyReactiveHealthEndpointCompatibilityConfiguration activates in non-reactive application #18571
- DevTools does not correctly handle encoded URLs found in the Class-Path manifest attribute #18502
- @ConfigurationProperties does not work on @bean methods in auto-configuration classes when metadata caching is disabled on the bean factory #18440
📔 Documentation
- Clarify scope of "@SpringBootTest#classes" #18603
- Document spring.main.register-shutdown-hook #18588
- Document formatting recommendations for configuration property javadoc #18587
- Update Kotlin reference documentation #18573
- Fix incorrect backslash escape for curly braces inside of Java code blocks #18567
- Fix package in AOP pointcut #18558
- Document the need to provide a SecurityWebFilterChain or WebSecurityConfigurerAdapter when using multiple OAuth 2 security components #18507
- Add some more notes on running exploded jar files #18477
- Clarify that httptrace and auditevents endpoints are enabled by default but that each requires an additional component for them to be auto-configured #18352
🔨 Dependency Upgrades
- Upgrade to Undertow 2.0.27.Final #18626
- Upgrade to Netty 4.1.42.Final #18609
- Upgrade to Mongodb 3.11.1 #18602
- Upgrade to Mimepull 1.9.12 #18601
- Upgrade to Flyway 6.0.6 #18600
- Upgrade to Tomcat 9.0.27 #18599
- Upgrade to Johnzon Jsonb 1.2.1 #18598
- Upgrade to Mysql 8.0.18 #18597
- Upgrade to Rxjava2 2.2.13 #18596
- Upgrade to Unboundid Ldapsdk 4.0.12 #18595
- Upgrade to Hazelcast 3.12.3 #18594
- Upgrade to Gson 2.8.6 #18592
- Upgrade to Spring Kafka 2.3.1 #18526
- Upgrade to Spring Session Corn-RELEASE #18525
❤️ Contributors
We'd like to thank all the contributors who worked on this release!
v2.2.0.RC1
⭐ New Features
- Support new Micrometer NewRelicConfig eventType properties #18472
- Add annotation required to switch on constructor binding #18469
- Configure oauth2client in Reactive OAuth2 client auto-configuration #18385
- Add Auto-configuration for RSocket Security #18356
- Remove dependency management for Spring Plugin #18318
- Support block based image banner pixels #18301
- Add support @LocalRSocketServerPort for RSocket Port #18287
- Use Reactor's new Schedulers.boundedElastic() #18269
- Improve handling of non-standard status codes in WebFluxTags #18267
- Add auto-configuration support for TransactionalOperator #18265
- Add Ansi 256 Colors support for ResourceBanner #18264
- Improve embedded Tomcat's Graal compatibility #18262
- Add AutoConfiguration support for spring-security-saml2-service-provider #18260
- Add dependency management for Oracle JDBC driver #18242
- Add support for X-Forwarded-Host using Tomcat's new RemoteIpValve hostHeader attribute #18233
- Apply ServerRSocketFactoryCustomizer to reactor netty web server #18208
- Use Duration for ServerProperties.Jetty.idleTimeout #18206
- Provide dependency management for Awaitility #18205
- Tolerate Flyway 5.x while retaining support for Flyway 6 #18193
- Add property ROLLING_FILE_LOG_PATTERN for File Appender #18151
- Add property to transparently migrate deprecated endoint IDs #18148
- Drop . prefix from config files in new .config directory #18006
- Rename 'details' to 'components' in health actuator JSON #17929
- Deprecate spring-boot-starter-cloud-connectors in favour of Java CFEnv #17877
- Disable H2C by default when using Reactor Netty, aligning it with Jetty, Tomcat, and Undertow #17867
- Configure PathPatternRouteMatcher at the RSocketStrategies level #17571
- Support # in addition to -- as a default comment prefix for Quartz DataSource initialization #17435
- Don't apply -Xverify:none on Java 13 as it has been deprecated #17008
- Provide an env var that controls the user with which the launch script runs the app #16973
- Support programmatic lazy-int exclusion #16615
- Support zip64 jars #16091
- Streamline WebTestClient creation and customization in integration tests #15132
- Provide an option for showing individual health indicators' status but not their details #15076
🪲 Bug Fixes
- Bean binding might not be used when more than one constructor exists #18485
- Main server ResourceConfigCustomizers should not apply to management context #18468
- Actuator endpoint time-to-live caching is not respected on WebFlux #18411
- Enforce ordering when ObjectProvider is used #18409
- Typo in assertion error message produced by ApplicationContextAssert doesNotHaveBean #18379
- DataSourceInitializedEvent picks wrong datasource #18369
- Micrometer dependency management does not include its micrometer-registry-cloudwatch2 module #18367
- Legacy HealthAggregator and HealthStatusHttpMapper are incorrectly reset #18354
- ReactiveManagementWebSecurityAutoConfiguration does not back off when oauth2 client configuration present #18345
- BasicErrorController returns body even if NO_CONTENT status causing 406 later #18343
- Dependency management for REST Assured is missing the spring-web-test-client module #18330
- Concurrent EndpointRequest calls can cause NPE #18299
- Logged application startup time has become overly precise #18278
- Custom protocols are not honoured when Devtools is active #18239
- TestTypeExcludeFilter does not detect JUnit 5's @testable annotation #18234
- Dependency management for Janino is incomplete #18226
- Bindable.withExistingValue drops annotations #18219
- Use custom port for RSocket server over websocket #18200
- HealthIndicatorRegistry bean is no longer available #18194
- RestTemplateBuilder headers no longer get applied when using MockRestServiceServer #17885
- Wrong semantic for immutable @ConfigurationProperties contributed via @import #17831
- Configuration Processor should use the constructor as a source only with @ConstructorBinding #17035
- FileEditor not applied for String to File property conversion #16931
📔 Documentation
- Add Mustache to 'Customize ViewResolvers' docs section #18437
- Fix default values in metadata for HiddenHttpMethodFilter #18435
- Polish some external documentation links #18384
- Mention Java 13 in system requirements docs #18383
- Add missing appendices to PDF reference documentation #18371
- Invalid property name in "Task Execution and Scheduling" example #18336
- Broken links in documentation #18332
- Reference Spring Framework RSocket section + polish #18321
- Fix small typo in configuration metadata documentation #18297
- fix logback example typo #18296
- Fix pre-defined logging group documentation #18283
- Fix typo in HealthContributors definition #18249
- Remove duplicated row from HealthIndicators table #18248
- Fix minor typo in documentation #18222
- Revisit test slices Javadoc with JUnit Jupiter upgrade #18178
- Correct capitalization of GemFire in the reference documentation #18001
- Remove reference to Spring IO Platform from documentation #17986
- It is unclear that the RSocket websocket transport requires Reactor Netty and is not supported with other web servers #17494
- Split the appendices into multiple p...