Skip to content

Releases: spring-projects/spring-boot

v2.2.3.RELEASE

16 Jan 16:33
Compare
Choose a tag to compare

⭐ 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

16 Jan 13:21
Compare
Choose a tag to compare

🪲 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

06 Dec 10:19
Compare
Choose a tag to compare

⭐ New Features

  • Support constructor binding on 3rd party classes #18935
  • Support Gradle 6 #18663

🪲 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

06 Dec 01:22
Compare
Choose a tag to compare

🪲 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

07 Nov 00:29
Compare
Choose a tag to compare

📣 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

Read more

v2.1.10.RELEASE

06 Nov 13:44
Compare
Choose a tag to compare

⭐ 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

16 Oct 19:42
Compare
Choose a tag to compare

⭐ 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

03 Oct 11:17
Compare
Choose a tag to compare
v2.2.0.RC1 Pre-release
Pre-release

⭐ 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...
Read more

v2.1.9.RELEASE

02 Oct 16:29
Compare
Choose a tag to compare

🪲 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

10 Sep 12:46
Compare
Choose a tag to compare
v2.2.0.M6 Pre-release
Pre-release

⭐ 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...
Read more