Spring/spring-boot: Release v2.4.0-M3
Name: spring-boot
Owner: Spring
Release: v2.4.0-M3
Released: 2020-09-17
License: Apache-2.0
Release Assets:
⭐ New Features
- Allow trailing whitespace on properties document split marker #23399
- Add startup Actuator endpoint #23213
- Support constructor binding on 3rd party classes #23172
- Add mainApplicationClass information as a tag to "starting" StartupStep #23162
- Allow EntityScanner to be extended to provide a custom ClassPathScanningCandidateComponentProvider #23154
- Allow redis's connect and read/command timeouts to be configured separately #23137
- Allow default binder to work with multiple constructors #23117
- Avoid unnecessary reflection in TaskExecutorBuilder #23107
- Add global optional config data opt-out #23097
- Provide a property for configuring Spring AMQP's address shuffle mode #23091
- Generate a default value in the metadata for configuration properties initialised with Period.ZERO and Duration.ZERO #23082
- Fix some typos in tests #23050
- Provide a configuration property for Kafka listener container's idleBetweenPolls #23048
- Configure SAML 2.0 Service Provider via Metadata #23045
- Fail if import locations are not found #23032
- Provide a simple Instantiator utility class #23029
- Allow placeholders to be used in config import locations #23020
- Improve origin of imported config #23018
- Rename CompositeMeterRegistryAutoConfiguration #22988
- Auto-configure ConcurrentKafkaListenerContainerFactory with a user-provided RecordFilterStrategy bean if available #22973
- Support authentication from Docker daemon to private docker registry. #22972
- Add a registry to support long lived instances during environment processing #22956
- Rename neo4j.version to neo4j-java-driver.version #22952
- Restore support for spring.profiles.include for non profile specific documents #22944
- Mark
bootArchives
as nonresolvable configuration in Gradle plugin to better convey its purpose #22943 - Make GridFsTemplate's bucket configurable #22854
- Align WebClient uri metric tag with RestTemplate's #22832
- Disable default security configuration when SecurityFilterChain bean is present #22739
- Provide a buffering implementation for application startup metrics #22603
- Remove Elasticsearch RestClient auto-configuration #22358
- Support loading external configuration from files with no file extension #22280
- Exclude empty starters jars and annotation processors when running or packaging with Maven and Gradle #22036
- Make Devtools file detection more resilient across application restarts #19543
- Add SSL support to RSocketServer #19399
🪲 Bug Fixes
- spring-boot-dependencies should not define a spring-boot.version property #23378
- @ManagementContextConfiguration is meta-annotated with @Configuration(proxyBeanMethods=false) which does not disable proxying #23306
- Signed jar dependency performance problem when repackaged in a single jar #23265
- ValidationHandler no longer works with certain map keys #23261
- MVC error model unnecessarily requires timestamp entry to be a java.util.Date #23259
- Missing sanitization in lists of URIs properties on actuator endpoints #23253
- Cassandra's pool duration mapping uses a wrong duration unit #23251
- PropertiesLauncher fails to load PBKDF-OpenSSL of bcprov-jdk15on-1.64.jar #23241
- ErrorPageFilter is no longer ordered at HIGHEST_PRECEDENCE + 1 #23205
- When using HSQLDB, Hikari logs a warning message about the driver class name when the first connection is retrieved from the pool #23204
- Large files can throw YAMLException due to node limits #23153
- Configurable SSL Logback extensions can't be supported due to URL checks #23136
- Image building support does not zero-pad digest hashes to 64 characters #23134
- Image builder fails silently when there's an error loading the ephemeral image #23133
- RSocketPortInfoApplicationContextInitializer can throw NPE #23089
- Dependency convergence error for nimbus-jose-jwt when depending on spring-boot-starter-oauth2-client #23072
- UndertowWebServerFactoryCustomizer requires commons lang via an unintended import on ClassUtils #23064
- Freemarker is configured to prefer filesystem access by default #23051
- Too much logging when building an OCI image with Maven #23015
- LayoutFactory can be presented with empty source file #23001
- Extracting layers with layertools doesn't work with executable JAR files #23000
- JarFile can cause memory issues when running on Java 11+ #22999
- Metrics auto-configurations are not ordered correctly #22990
- Exception inclusion cannot be disabled when sub-classing DefaultErrorAttributes and using its deprecated constructor #22984
- The @TypeExcludeFilters annotation is not @Inherited #22967
- Update transaction auto-configuration to backoff if a TransactionManager is defined #22851
- MongoClientFactorySupport overrides existing uuidRepresentation with MongoProperties default value #22321
📔 Documentation
- Document that @ConfigurationProperties beans are not scanned in sliced tests #23244
- Document that buildpacks use non-root users for building container images and running containers #23201
- Add reference to AOProfiling Spring Boot starter #23161
- Document setting buildpack Java version from compiler plugin version #23148
- Document how to perform tasks after application startup #23145
- Fix documentation on Elasticsearch client configuration #23144
- Update Maven Plugin's documentation to note the importance of configuring start and stop goals with the same JMX port #23143
- Document how to use spring.factories to add auto-configuration to a test slice #23142
- Document that graceful shutdown may not work from IDEs #23140
- Provide examples of Actuator custom endpoints in the reference documentation #23061
- Add Hyperledger Fabric for Spring Boot Starter to the community starters #23058
- Mention correct JUnit 5 annotations in Kotlin testing section #23005
- Fix Gradle Plugin custom image name example and documentation #22980
- Javadoc inaccuracy in SpringApplicationBuilder.properties(Properties) #22965
- Fix typo
Assert4J
->AssertJ
#22961 - Document that Java 15 is a supported version #22366
- Publish Actuator API and Maven/Gradle plugin reference documentation under htmlsingle #21585
- Add more anchors in the properties appendix #16267
🔨 Dependency Upgrades
- Upgrade to SendGrid 4.6.5 #23397
- Upgrade to Micrometer 1.5.5 #23396
- Upgrade to Flyway 6.5.6 #23395
- Upgrade to Spring Kafka 2.6.1 #23382
- Upgrade to Spring REST Docs 2.0.5.RELEASE #23377
- Upgrade to Mockito 3.5.10 #23368
- Upgrade to Undertow 2.2.0.Final #23367
- Upgrade to Thymeleaf Layout Dialect 2.5.1 #23366
- Upgrade to SnakeYAML 1.27 #23365
- Upgrade to Postgresql 42.2.16 #23364
- Upgrade to Pooled JMS 1.2.0 #23363
- Upgrade to InfluxDB Java 2.20 #23362
- Upgrade to Artemis 2.15.0 #23361
- Upgrade to Lettuce 6.0.0.RC2 #23360
- Upgrade to Tomcat 9.0.38 #23359
- Upgrade to Spring WS 3.0.10.RELEASE #23358
- Upgrade to SendGrid 4.6.4 #23357
- Upgrade to R2DBC Bom Arabba-SR7 #23356
- Upgrade to Nimbus JOSE JWT 9.0.1 #23355
- Upgrade to OAuth2 OIDC SDK 8.19.2 #23354
- Upgrade to Netty tcNative 2.0.34.Final #23353
- Upgrade to Netty 4.1.52.Final #23352
- Upgrade to JUnit Jupiter 5.7.0 #23351
- Upgrade to Hibernate 5.4.21.Final #23350
- Upgrade to Hazelcast 3.12.9 #23349
- Upgrade to Flyway 6.5.5 #23348
- Upgrade to Elasticsearch 7.9.1 #23347
- Upgrade to Ehcache3 3.9.0 #23346
- Upgrade to Couchbase Client 3.0.8 #23345
- Upgrade to Commons Codec 1.15 #23344
- Upgrade to Cassandra Driver 4.9.0 #23343
- Upgrade to AppEngine SDK 1.9.82 #23342
- Upgrade to Spring Security 5.4.0 #23225
- Upgrade to RSocket 1.1.0-M2 #23214
- Upgrade to Spring Data 2020.0.0-RC1 #23197
- Upgrade to Spring Batch 4.3.0-RC1 #23189
- Upgrade to Spring Session 2020.0.0-RC1 #23188
- Upgrade to Assertj 3.17.2 #23179
- Upgrade to Spring Framework 5.3 RC1 #23170
- Upgrade to Reactor 2020.0.0-RC1 #23065
- Upgrade to Kotlin Coroutines 1.3.9 #23025
- Upgrade to Kotlin 1.4.0 #23024
- Upgrade to Spring AMQP 2.3.0-M3 #23011
- Upgrade to Spring Integration 5.4.0-M3 #23010
:heart: Contributors
We'd like to thank all the contributors who worked on this release!