Releases: spring-projects/spring-boot
Releases · spring-projects/spring-boot
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
@ConfigurationPropertiesScan
and@ConstructorBinding
on 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
@ConfigurationProperties
scanning is now disabled by default and needs to be explicitly opted into by adding the@ConfigurationPropertiesScan
annotation. 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
@ConfigurationProperties
causes 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/health
returns 404 if no indicator is present #18676@TestConfiguration
disables proxying of@Bean
methods #18675- Enabling configuration properties scanning by default prevents conditional registration of
@ConfigurationProperties-annoted
types 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
@Order
cannot be used on a Filter's@Bean
method 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
@Valid
in 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-size
server 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
@ConfigurationProperties
causes 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
@Order
cannot be used on a Filter's@Bean
method to set the Filter's order #18266 - Clarify scope of "
@SpringBootTest
#classes" #18229 - Emphasize the need of
@Valid
in 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...
v2.1.9.RELEASE
🪲 Bug Fixes
- Typo in assertion error message produced by ApplicationContextAssert doesNotHaveBean #18372
- Actuator endpoint time-to-live caching is not respected on WebFlux #18339
- Enforce ordering when ObjectProvider is used #18333
- Dependency management for Janino is incomplete #18225
- Bindable.withExistingValue drops annotations #18218
- TestTypeExcludeFilter does not detect JUnit 5's @testable annotation #18214
- Concurrent EndpointRequest calls can cause NPE #18211
- Quartz is failing with JDBC but without Liquibase #18153
- BasicErrorController returns body even if NO_CONTENT status causing 406 later #18136
- Get Comment From Nested JarFile Incorrect #18128
- Some usage of @ConditionalOnMissingBean does not allow a bean defined as an interface to cause a concrete implementation to back off #18101
- ReactiveManagementWebSecurityAutoConfiguration does not back off when oauth2 client configuration present #17949
- Main server ResourceConfigCustomizers should not apply to management context #17801
- Custom protocols are not honoured when Devtools is active #17214
- DataSourceInitializedEvent picks wrong datasource #17061
📔 Documentation
- Add Mustache to 'Customize ViewResolvers' docs section #18378
- Invalid property name in "Task Execution and Scheduling" example #18331
- Backport "Fix a broken Asciidoctor syntax" #18325
- fix logback example typo #18295
- Fix small typo in configuration metadata documentation #18289
- Fix pre-defined logging group documentation #18270
- Fix minor typo in documentation #18216
- Broken links in the starter and auto-configuration class tables in the reference documentation #18163
🔨 Dependency Upgrades
- Upgrade to Spring Session Bom Bean-SR8 #18466
- Upgrade to Micrometer 1.1.7 #18465
- Upgrade to Spring Data Lovelace-SR11 #18414
- Upgrade to Lombok 1.18.10 #18407
- Upgrade to Postgresql 42.2.8 #18406
- Upgrade to Neo4j Ogm 3.1.14 #18405
- Upgrade to Hibernate 5.3.12.Final #18404
- Upgrade to Tomcat 9.0.26 #18403
- Upgrade to Httpclient 4.5.10 #18402
- Upgrade to Joda Time 2.10.4 #18401
- Upgrade to Netty Tcnative 2.0.26.Final #18400
- Upgrade to Reactor Californium-SR12 #18348
- Upgrade to Spring Kafka 2.2.9.RELEASE #18314
- Upgrade to Spring Integration 5.1.8.RELEASE #18313
- Upgrade to Spring AMQP 2.1.11.RELEASE #18312
- Upgrade to Spring REST Docs 2.0.4.RELEASE #18271
- Upgrade to Spring Framework 5.1.10.RELEASE #18238
❤️ Contributors
We'd like to thank all the contributors who worked on this release!
v2.2.0.M6
⭐ New Features
- Provide a public API for determining the outcome of a request from its response's status code #18150
- Improve handling of non-standard status codes in WebMvcTags #17998
- Auto-configure Flyway with any JavaMigration beans #17993
- Added Additional Resource Server Configuration of Issuer Validation #17953
- Additional sanitization for URI being exposed over Endpoints #17939
- Configure ping (formerly application) health indicator by default #17926
- Remove default favicon #17925
- Added support for dev-tools yaml configuration #17915
- Bypass Spring Security authentication for remote devtools endpoint #17878
- Support multiple drives when using the CLI on Windows with cygwin #17872
- Allow Jetty's threadpool to be configured via properties #17871
- Make logError() in AbstractErrorWebExceptionHandler overrideable #17863
- Expose dependency management plugin version in dependency management #17854
- Add confirm-type property to RabbitProperties #17848
- Add support for configuring Spring Session JDBC flush mode #17797
- Add dependency management for IBM DB2 JDBC driver #17782
- Provide a configuration property for JMS listener container's receive timeout #17332
- Support parallel test execution with
@AutoConfigureMockMvc
#16179 - Add support for health indicator groups #14022
🪲 Bug Fixes
- Annotation processor does not detect properties with custom constructor #18184
- Get Comment From Nested JarFile Incorrect #18168
- Quartz is failing with JDBC but without Liquibase #18165
@Component
cannot not longer be used on@ConfigurationProperties
beans #18138- Binder can throw NPE if BindHandler.onStart return null #18129
- HikariCP and Tomcat specific datasource properties missing in spring-configuration-metadata.json #18124
- SolrHealthIndicator reports down when baseUrl references a core instead of the root context #18110
- NoSuchBeanDefinitionException with a custom FlywayMigrationInitializer bean that is not named flywayInitializer #18106
- NoSuchBeanDefinitionException with a custom Flyway bean that is not named flyway #18103
- TypeUtils.process(TypeDescriptor, TypeMirror) swallows exception message and stack trace #18094
- Duplicate metadata entry for property that is
@Deprecated
when Lombok runs before spring-boot-configuration-processor #18093 - Quartz may attempt to use the DataSource before migrations have been run #18085
- "spring" shell script error on AIX Bash 4.3.0 #18084
- SSL handshake fails when client authentication is enabled and starter-jetty is used #18083
- When using Netty, an invalid content-type header value causes request to get stuck when compression is enabled #18027
- ApplicationContextRequestMatcher can use the wrong ApplicationContext #18021
- Spring Boot CLI is unable to always capture ctrl-c #17996
- throws IllegalArgumentException when downloading file when filename includes '%' for undertow server #17994
- RestTemplateExchangeTags does not handle non-standard status codes #17991
- Non MVC web applications always return 404 for errors #17959
- WebClientExchangeTags does not handle non-standard status codes #17950
- Mocking session scoped spy bean calls real method #17948
- Cannot override jackson.version using Gradle Dependency Management Plugin #17943
- DataSourceSchemaCreatedPublisher.getPersistenceProviderRootPackage fails with a NullPointerException when using a custom LocalContainerEntityManagerFactoryBean that has no JpaVendorAdapter #17942
- OutOfMemoryError on TomcatEmbeddedContext when trying to precompile JSP files #17928
- Custom favicon placed in static resources doesn't work since 2.2.0.M5 #17922
- Use alwaysApplyingWhenNonNull PropertyMapper to set the values in the LdapContextSource #17889
- Liquibase bean with name other than 'liquibase' breaks context #17887
- spring.config.additional-location as environment variable does not work correctly #17857
- websocket transport not applied on RSocket servers without WebFlux #17845
- UndertowServletWebServerFactory does not configure a temporary directory #17813
- Wrong annotation lookup with proxied endpoints #17812
- NPE in BuildInfoMojo when running under eclipse #17810
- Unable to use off for enum values in yaml file #17798
- Confusing and incomplete failure analysis when ConfigurationProperties uses constructor for beans #17750
- AbstractErrorWebExceptionHandler fails when the response has a non-standard status code #16691
📔 Documentation
- Remove management.health.status.order from docs #18170
- Improve devtools trigger-file documentation #18132
- Provide a How-To for customizing WebClient's TcpClient #18125
- Doc the pros and cons of Out-of-Container and Integration Tests #18120
- Clarify Logback XML #18118
- Document
@SpringBootApplication
scanBasePackages restrictions #18117 - Fix typo in deprecation reason for liquibase.check-change-log-location property #18108
- Document that Filter beans are eagerly initialized #18081
- Clarify "YAML Shortcomings" documentation #18080
- Document logger environment variable restrictions #18079
- Document need to exactly match Hibernate's property format when configuring spring.jpa.properties.hibernate.* properties #18026
- Remove warning about MBean shutdown since it's disabled by default in 2.0 #18025
- Project API links should used versioned links #18024
- Remove spring-boot-starter-data-gemfire from documentation #18023
- Update "Web Application Conditions" documentation to mention reactive #18022
- Remove reference...