Spring Boot v2.2.0.M6 Release Notes

Release Date: 2019-09-10 // over 4 years ago
  • 🍱 ⭐️ 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 to non-existent --edit option in CLI docs #18016
    • 🛠 Fix Undertow access log dir property name in doc #17972
    • Document the response structure when retrieving a single logger group #17909
    • 📚 Expand documentation on remote devtools #17880
    • 0️⃣ Document that default property values for certain types are not detected by the annotation processor #17855
    • 🛠 Fix syntax errors in docs #17840
    • ➕ Add reference to Pebble Templates to 3rd party starter list #17822
    • 🔧 Document that auto-configuration classes and properties are considered internal #17818
    • 👍 Document Prometheus Pushgateway support #17815
    • 📚 Include logger group with configuredLevel in LoggersEndpoint documentation #17772

    ⬆️ 🔨 Dependency Upgrades

    • ⬆️ Upgrade to Junit Jupiter 5.5.2 #18182
    • ⬆️ Upgrade to Glassfish El 3.0.3 #18181
    • ⬆️ Upgrade to Micrometer 1.2.1 #18180
    • ⬆️ Upgrade to Neo4j Ogm 3.2.0-RC2 #18162
    • ⬆️ Upgrade to Jooq 3.12.1 #18161
    • ⬆️ Upgrade to Kotlin Coroutines 1.3.1 #18160
    • ⬆️ Upgrade to Elasticsearch 6.8.3 #18159
    • ⬆️ Upgrade to Ehcache3 3.8.1 #18158
    • ⬆️ Upgrade to Jakarta Ws Rs 2.1.6 #18157
    • ⬆️ Upgrade to Jakarta Websocket 1.1.2 #18156
    • ⬆️ Upgrade to Jakarta Servlet Jsp Jstl 1.2.7 #18155
    • ⬆️ Upgrade to Jakarta Servlet 4.0.3 #18154
    • ⬆️ Upgrade to Httpcore 4.4.12 #18147
    • ⬆️ Upgrade to Activemq 5.15.10 #18146
    • ⬆️ Upgrade to Undertow 2.0.26.Final #18145
    • ⬆️ Upgrade to Maven Site Plugin 3.8.2 #18075
    • ⬆️ Upgrade to Snakeyaml 1.25 #18074
    • ⬆️ Upgrade to Webjars Locator Core 0.40 #18073
    • ⬆️ Upgrade to Slf4j 1.7.28 #18072
    • ⬆️ Upgrade to Selenium Htmlunit 2.36.0 #18071
    • ⬆️ Upgrade to Reactive Streams 1.0.3 #18070
    • ⬆️ Upgrade to Mongo Driver Reactivestreams 1.12.0 #18069
    • ⬆️ Upgrade to Mongodb 3.11.0 #18068
    • ⬆️ Upgrade to Liquibase 3.8.0 #18067
    • ⬆️ Upgrade to Jboss Logging 3.4.1.Final #18066
    • ⬆️ Upgrade to Infinispan 9.4.16.Final #18065
    • ⬆️ Upgrade to Freemarker 2.3.29 #18064
    • ⬆️ Upgrade to Jetty 9.4.20.v20190813 #18063
    • ⬆️ Upgrade to Janino 3.1.0 #18062
    • ⬆️ Upgrade to Groovy 2.5.8 #18061
    • ⬆️ Upgrade to Tomcat 9.0.24 #18060
    • ⬆️ Upgrade to Log4j2 2.12.1 #18059
    • ⬆️ Upgrade to Commons Dbcp2 2.7.0 #18058
    • ⬆️ Upgrade to Artemis 2.10.0 #18057
    • ⬆️ Upgrade to Htmlunit 2.36.0 #18056
    • ⬆️ Upgrade to Byte Buddy 1.10.1 #18055
    • ⬆️ Upgrade to Jakarta Transaction 1.3.3 #18054
    • ⬆️ Upgrade to Jakarta Persistence 2.2.3 #18053
    • ⬆️ Upgrade to Jakarta Json Bind 1.0.2 #18052
    • ⬆️ Upgrade to Jakarta Json 1.1.6 #18051
    • ⬆️ Upgrade to Jakarta Annotation 1.3.5 #18050
    • ⬆️ Upgrade to Undertow 2.0.25.Final #18049
    • ⬆️ Upgrade to Rsocket 1.0.0-RC3 #18048
    • ⬆️ Upgrade to Rxjava2 2.2.12 #18047
    • ⬆️ Upgrade to Netty 4.1.39.Final #18046
    • ⬆️ Upgrade to Jakarta Mail 1.6.4 #18045
    • ⬆️ Upgrade to Caffeine 2.8.0 #18044
    • ⬆️ Upgrade to Jooq 3.12.0 #18014
    • ⬆️ Upgrade to Flyway 6.0.1 #17997
    • ⬆️ Upgrade to Kotlin 1.3.50 #17982
    • ⬆️ upgrade git commit id plugin version to 3.0.1 for issue 17879 #17981
    • ⬆️ Upgrade to mssql-jdbc 7.4.1.jre8 #17965
    • ⬆️ Upgrade to Kotlin Coroutines 1.3.0 #17907
    • ⬆️ Upgrade to Spring HATEOAS 1.0.0.RC2 #17904
    • ⬆️ Upgrade to Spring Session Corn-M4 #17903
    • ⬆️ Upgrade to Spring Kafka 2.3.0.RC1 #17902
    • ⬆️ Upgrade to Spring Integration 5.2.0.RC1 #17901
    • ⬆️ Upgrade to Spring Data Moore-RC3 #17900
    • ⬆️ Upgrade to Spring Batch 4.2.0.RC1 #17899
    • ⬆️ Upgrade to Spring AMQP 2.2.0.RC1 #17898
    • 🔒 Upgrade to Spring Security 5.2.0.RC1 #17897
    • ⬆️ Upgrade to Spring Framework 5.2.0.RC2 #17896
    • ⬆️ Upgrade to Reactor Dysprosium-RC1 #17895
    • ⬆️ Upgrade to Jackson 2.9.9.20190807 #17850
    • ⬆️ Upgrade to Mockito 3.0.0 #17803
    • ⬆️ Upgrade to Rsocket 1.0.0-RC2 #17800
    • ⬆️ Upgrade to Couchbase Client 2.7.9 #17795

    🍱 ❤️ Contributors

    🚀 We'd like to thank all the contributors who worked on this release!