Spring Boot v2.2.0.M5 Release Notes
Release Date: 2019-08-06 // over 4 years ago-
๐ฑ โญ๏ธ New Features
- 0๏ธโฃ Default BindHandler in programmatically created Binder #17773
- โก๏ธ Updated OAuth 2.0 Issuer-Based Auto Configuration #17761
- Content strategy does not work with Thymeleaf and WelcomePageHandlerMapping #17759
- ๐ Allow actuator endpoint selectors to capture all paths #17743
- โ Add dependency management for Kotlin Coroutines BOM #17701
- ๐ Allow for custom ElasticSearch's EntityMapper bean #17661
- 0๏ธโฃ Default password should not be generated when using resource server #17646
- โ Add assertion to differ between a null value JSON property and absence of the property #17608
- โ Include WebFilter beans in WebFluxTest slice #17601
- โ Include HandlerInterceptor beans in WebMvcTest slice #17600
- โ Remove unused java-statsd-client dependency management and dependencies #17576
- โ Remove support for DeploymentInfo customization from UndertowReactiveWebServerFactory as no DeploymentInfo is used in the reactive case #17562
- โ Add NettyServerCustomizer beans to the auto-configured NettyReactiveWebServerFactory automatically #17556
- NoSuchMethodFailureAnalyzer does not work with Java 13 #17544
- ๐ Make it easier to determine the order of each of an application's servlet filters #17520
- โ Add support for configuring logger groups via loggers endpoint #17515
- โ Add support for configuring Spring Session SaveMode #17514
- ๐ Allow OutputCaptureRule to be used directly with AssertJ #17512
- ๐ง Provide configuration properties for configuring Tomcat's relaxed path and query chars #17510
- โ Add metrics support for idle jdbc connections #17504
- ๐ง Provide configuration property for DispatcherServlet.publishEvents #17500
- โ Add HealthIndicator for Hazelcast #17499
- ๐ Allow AbstractDependsOnBeanFactoryPostProcessor to identify depended on beans by type #17479
- ๐ง Deprecate Joda-Time auto-configuration in favour of using java.time (JSR-310) #17419
- Provide discovery page for actuators at / when using a separate management port #17418
- Switch Jersey starter to use Spring 5 module #17412
- ๐ Allow binding to package private methods #17394
- ๐ Allow build info goal's build.time to be disabled so that its output is repeatable #17390
- โ add isolation level to KafkaProperties #17389
- Consistently coerce false to off and true to on where applicable #17385
- Provide a
@BatchDataSource
qualifier to allow a Batch-specific DataSource to be identified #17375 - ๐ Allow Undertow's server and socket options to be configured via the environment #17356
- โก๏ธ Update caching auto-configuration to use Infinispan's Spring 5 support #17333
- โ Add
client-name
property to specify a Redis client name #17330 - ๐ Allow additional connectors to be added to a reactive Tomcat web server #17323
- ๐ง Auto-configure Kafka listener container with user-provided RecordInterceptor #17322
- ๐ Allow custom resource handlers to provide favicon #17318
- Introduce a customizer callback for RedisCacheManagerBuilder #17287
- โก๏ธ Update RestTemplateBuilder.defaultHeader to use an array for a default header value instead of a single value #17286
- ๐ Make layout parameter available as a user property #17277
- Fail fast if SPRING_CONFIG_LOCATION specifies a file with an extension that no PropertySourceLoader can read #17241
- โ Add support for reactor-tools #17128
- ๐ง Disable auto-configuration of HiddenHttpMethodFilter by default #16953
- ๐ง Disable @ConfigurationProperties scan in slice tests #16659
- Automatically register @EndpointConverter-annotated Converter and GenericConverter beans with the ConversionService used by Actuator endpoints #16449
- โก๏ธ Optimize JavaBeanBinder #16447
- โ Add support for plain text output to the threaddump endpoint #2339
๐ฑ ๐ Bug Fixes
- ๐ Fix log info #17793
- ๐ฒ Inconsistent behavior turning off the check for the change log location: Liquibase fails anyway #17769
- Missing TransactionManager when user provides a custom Neo4j SessionFactory. #17767
- Wrong bean name on Reactive Cassandra Health Indicator condition #17764
- Create RestClient bean from a RestHighLevelClient if such a bean has been contributed by the application. #17753
- Fix ordering of SPRING_APPLICATION_JSON property source relative to servlet property sources #17748
- ๐ฒ Reactive health indicators do not log health check failure #17664
- Trimming the whitespace for the OAuth2 provider property #17624
- ๐ง ActiveMQConnectionFactory is not configured when CachingConnectionFactory is missing and enabled properties are false #17602
- JavaVersion does not cover all available versions of Java #17599
- โ @DataJdbcTest is documented as being transactional but isn't #17580
- getResourcePaths(String) allows navigation through the loader's directory structure when using Tomcat #17575
- โ MockMvc logging requests from all previous tests with Spring Boot Test #17552
- ๐ง Quartz auto-configuration will initialise the DataSource with Quartz's DDL when not using a JDBC job store #17546
- ๐ฒ /actuator/logfile endpoint returning 404 when logging.file property contains a random value #17486
- EmbeddedMongoAutoConfiguration should depend on bean by type #17481
- Mutation of Jackson2ObjectMapperBuilder in one injection point may affect subsequent usages #17477
- ๐ง JUL logger configuration may be lost before usage due to GC #17470
- Batch app fails to start if there's an entityManagerFactory bean but no DataSource bean #17466
- ๐ง Batch auto-configuration backs off too aggressively without a dependency on spring-jdbc #17454
- Batch app fails to start if spring-jdbc is on the classpath but there's no DataSource bean #17453
- MongoDataAutoConfiguration not applied when a MongoDbFactory is provided by Spring Cloud #17432
- ๐ง ClassCastException in RSocket auto-configuration when Jackson XML is present #17425
- ValidationBindHandler fails if setters cannot be accessed #17424
- Validation does not apply to hander replaced results #17422
- ๐ Jetty logs a warning about an empty context path when using WebFlux #17409
- Shutdown endpoint is called when the application context is closed as its shutdown() method is inferred to be a destroy method #17408
- Dependency management for Infinispan is incomplete #17401
- StringToEnumIgnoringCaseConverterFactory getLettersAndDigits returns an integer string #17396
- ๐ฆ Classes and resources with a single letter component in their package name cannot be loaded from jar files with /./ or /../ in their path #17381
- ๐ Make rSocketServerBootstrap @ConditionalOnMissingBean #17301
- ๐ง OAuth2 Resource Server Opaque Token configuration property namespace has a hyphen in its name #17290
- ๐ HibernateJpaAutoConfiguration's condition uses deprecated classes #17283
- ๐ Web server factory customizer beans that are also registered explicitly are called twice during web server creation #17264
- The -d option of spring init CLI command is not POSIX compliant #16663
- Content strategy does not work with Thymeleaf and WelcomePageHandlerMapping #16309
๐ Documentation
- ๐ Fix typo in JsonComponent javadoc #17776
- Document that RestTemplateBuilder's rootUri only applies when String variants are used for specifying the request URL #17762
- ๐ Harmonize settings.gradle documentation in Gradle getting started guide #17745
- โ Add a note in the migration guide on Flyway#repair #17738
- Clarify how to specify main class #17693
- ๐ Generated metadata documentation does not escape the | character #17663
- ๐ฒ Clarify description of "logging.file.max-history" #17621
- โ Add grizzly-spring-boot-starter to the third-party list #17620
- ๐ Improve "'Create your own starter" to mention how to document properties #17603
- โ Add reference to picocli starter #17591
- ๐ง Clarify documented behavior of MessageSource auto-configuration when no resource bundles matching the configured basenames exist #17588
- ๐ Wrong prefix for datasource metrics in the documentation #17554
- ๐ Broken link to Spring Integration metrics in documentation #17547
- ๐ Update documentation to use JUnit Jupiter #17507
- ๐ Java 12 is not documented as a supported version #17478
- ๐ Caching documentation contains instruction for removed Guava support #17467
- โ Remove references to archived spring-boot-issues repo #17431
- ๐ Fix persistent session property name #17383
- ๐ Link to Apache Licence from Maven Plugin docs rather than embedding it #17321
- ๐ Improve javadoc of management server port #17269
- ๐ Multi-page reference documentation sometimes uses the single-page index #17263
- ๐ Check all documentation uses JUnit 5 for examples #17096
- Encourage the use of third-party tracing and observability solutions in addition to / instead of implementing your own HttpTraceRepositroy #17047
- โ
Document testing with
@EmbeddedKafka
#15834
โฌ๏ธ ๐จ Dependency Upgrades
- โฌ๏ธ Upgrade to Webjars Locator Core 0.38 #17792
- โฌ๏ธ Upgrade to Mariadb 2.4.3 #17791
- โฌ๏ธ Upgrade to Elasticsearch 6.8.2 #17790
- โฌ๏ธ Upgrade to Johnzon Jsonb 1.1.13 #17789
- โฌ๏ธ Upgrade to Rxjava2 2.2.11 #17788
- โฌ๏ธ Upgrade to Hazelcast 3.12.2 #17787
- โฌ๏ธ Upgrade to Spring HATEOAS 1.0.0.RC1 #17755
- โฌ๏ธ Upgrade to Maven Javadoc Plugin 3.1.1 #17735
- โฌ๏ธ Upgrade to Xmlunit2 2.6.3 #17734
- ๐ Upgrade to Spring Cloud Connectors 2.0.6.RELEASE #17733
- โฌ๏ธ Upgrade to Postgresql 42.2.6 #17732
- โฌ๏ธ Upgrade to Neo4j Ogm 3.2.0-RC1 #17731
- โฌ๏ธ Upgrade to Mongo Driver Reactivestreams 1.12.0-rc0 #17730
- โฌ๏ธ Upgrade to Mongodb 3.11.0-rc0 #17729
- โฌ๏ธ Upgrade to Pooled Jms 1.0.6 #17728
- โฌ๏ธ Upgrade to Liquibase 3.7.0 #17727
- โฌ๏ธ Upgrade to Junit Jupiter 5.5.1 #17726
- โฌ๏ธ Upgrade to Jolokia 1.6.2 #17725
- โฌ๏ธ Upgrade to Kotlin 1.3.41 #17724
- โฌ๏ธ Upgrade to Hibernate 5.4.4.Final #17723
- โฌ๏ธ Upgrade to Elasticsearch 6.8.1 #17722
- โฌ๏ธ Upgrade to Ehcache3 3.8.0 #17721
- โฌ๏ธ Upgrade to Janino 3.0.15 #17720
- โฌ๏ธ Upgrade to Tomcat 9.0.22 #17719
- โฌ๏ธ Upgrade to Solr 8.2.0 #17718
- โฌ๏ธ Upgrade to Commons Pool2 2.7.0 #17717
- โฌ๏ธ Upgrade to Byte Buddy 1.10.0 #17716
- โฌ๏ธ Upgrade to Mysql 8.0.17 #17715
- โฌ๏ธ Upgrade to Joda Time 2.10.3 #17714
- โฌ๏ธ Upgrade to Jakarta Servlet Jsp Jstl 1.2.5 #17713
- โฌ๏ธ Upgrade to Undertow 2.0.23.Final #17712
- โฌ๏ธ Upgrade to Rxjava2 2.2.10 #17711
- โฌ๏ธ Upgrade to Netty 4.1.38.Final #17710
- โฌ๏ธ Upgrade to Commons Codec 1.13 #17709
- โฌ๏ธ Upgrade to Jmustache 1.15 #17708
- โฌ๏ธ Upgrade to Rabbit Amqp Client 5.7.3 #17707
- โฌ๏ธ Upgrade to Appengine Sdk 1.9.76 #17706
- โฌ๏ธ Upgrade to Cassandra Driver 3.7.2 #17705
- ๐ Upgrade to Lettuce 5.1.8.RELEASE #17702
- โฌ๏ธ Upgrade to Micrometer 1.2.0 #17699
- โฌ๏ธ Upgrade to AssertJ 3.13.2 #17690
- Undertow servers include their own mime mappings in addition to ours #17689
- โฌ๏ธ Upgrade to Undertow 2.0.23.Final #17688
- โฌ๏ธ Upgrade to Reactor Dysprosium-M3 #17638
- โฌ๏ธ Upgrade to Jedis 3.1.0 #17622
- โฌ๏ธ Upgrade to Spring Integration 5.2.0.M4 #17584
- โฌ๏ธ Upgrade to Spring AMQP 2.2.0 M4 #17583
- โฌ๏ธ Upgrade to Sqlite Jdbc 3.28.0 #17406
- โฌ๏ธ Upgrade to Junit Jupiter 5.5.0 #17405
- โฌ๏ธ Upgrade to Jersey 2.29 #17404
- โฌ๏ธ Upgrade to Log4j2 2.12.0 #17403
- โฌ๏ธ Upgrade to Kafka 2.3.0 #17402
- โฌ๏ธ Upgrade to spring-javaformat 0.0.15 #17362
- โฌ๏ธ Upgrade to Spring Data Moore-RC2 #17350
- ๐ Upgrade to Spring Security 5.2.0.M4 #17349
- โฌ๏ธ Upgrade to Spring Session Corn-M3 #17348
- โฌ๏ธ Upgrade to Spring Batch 4.2.0.M3 #17347
- โฌ๏ธ Upgrade to Spring Kafka 2.3.0.M4 #17319
- โฌ๏ธ Upgrade to Spring Framework 5.2.0 RC1 #17280
- โฌ๏ธ Upgrade to JUnit Jupiter 5.5.0-RC2 #17266
๐ฑ โค๏ธ Contributors
๐ We'd like to thank all the contributors who worked on this release!