Skip to content

Releases: spring-projects/spring-boot

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

v2.1.8.RELEASE

05 Sep 21:57
Compare
Choose a tag to compare

⭐ New Features

  • Added Additional Resource Server Configuration of Issuer Validation #17952
  • Expose dependency management plugin version in dependency management #17842

🪲 Bug Fixes

  • NoSuchBeanDefinitionException with a custom FlywayMigrationInitializer bean that is not named flywayInitializer #18105
  • NoSuchBeanDefinitionException with a custom Flyway bean that is not named flyway #18102
  • When using Netty, an invalid content-type header value causes request to get stuck when compression is enabled #18018
  • ApplicationContextRequestMatcher can use the wrong ApplicationContext #18012
  • Spring Boot CLI is unable to always capture ctrl-c #17976
  • TypeUtils.process(TypeDescriptor, TypeMirror) swallows exception message and stack trace #17974
  • Non MVC web applications always return 404 for errors #17938
  • DataSourceSchemaCreatedPublisher.getPersistenceProviderRootPackage fails with a NullPointerException when using a custom LocalContainerEntityManagerFactoryBean that has no JpaVendorAdapter #17935
  • OutOfMemoryError on TomcatEmbeddedContext when trying to precompile JSP files #17927
  • Use alwaysApplyingWhenNonNull PropertyMapper to set the values in the LdapContextSource #17861
  • throws IllegalArgumentException when downloading file when filename includes '%' for undertow server #17853
  • spring.config.additional-location as environment variable does not work correctly #17843
  • Mocking session scoped spy bean calls real method #17817
  • Cannot override jackson.version using Gradle Dependency Management Plugin #17808
  • Wrong annotation lookup with proxied endpoints #17807
  • Liquibase bean with name other than 'liquibase' breaks context #17805
  • UndertowServletWebServerFactory does not configure a temporary directory #17778
  • WebClientExchangeTags does not handle non-standard status codes #17695
  • "spring" shell script error on AIX Bash 4.3.0 #17579
  • Duplicate metadata entry for property that is @deprecated when Lombok runs before spring-boot-configuration-processor #17550
  • SSL handshake fails when client authentication is enabled and starter-jetty is used #17541
  • Quartz may attempt to use the DataSource before migrations have been run #17539
  • SolrHealthIndicator reports down when baseUrl references a core instead of the root context #16477

📔 Documentation

  • Document @SpringBootApplication scanBasePackages restrictions #18109
  • Fix typo in deprecation reason for liquibase.check-change-log-location property #18100
  • Remove reference to non-existent --edit option in CLI docs #18015
  • Update "Web Application Conditions" documentation to mention reactive #18005
  • Remove spring-boot-starter-data-gemfire from documentation #18002
  • Project API links should used versioned links #18000
  • Remove warning about MBean shutdown since it's disabled by default in 2.0 #17988
  • Document need to exactly match Hibernate's property format when configuring spring.jpa.properties.hibernate.* properties #17975
  • Fix Undertow access log dir property name in doc #17968
  • Document logger environment variable restrictions #17958
  • Clarify "YAML Shortcomings" documentation #17933
  • Provide a How-To for customizing WebClient's TcpClient #17856
  • Fix syntax errors in docs #17835
  • Document that Filter beans are eagerly initialized #17814
  • Expand documentation on remote devtools #17780
  • Improve devtools trigger-file documentation #17775
  • Clarify Logback XML #16901
  • Document Prometheus Pushgateway support #16853
  • Doc the pros and cons of Out-of-Container and Integration Tests #16718
  • Document that auto-configuration classes and properties are considered internal #16704
  • Document that default property values for certain types are not detected by the annotation processor #12874

🔨 Dependency Upgrades

  • Upgrade to Httpcore 4.4.12 #18144
  • Upgrade to Activemq 5.15.10 #18143
  • Upgrade to Undertow 2.0.26.Final #18142
  • Upgrade to Reactor Bom Californium-SR11 #18141
  • Upgrade to Micrometer 1.1.6 #18133
  • Upgrade to Slf4j 1.7.28 #18043
  • Upgrade to Reactive Streams 1.0.3 #18042
  • Upgrade to Neo4j Ogm 3.1.13 #18041
  • Upgrade to Jooq 3.11.12 #18040
  • Upgrade to Jboss Logging 3.3.3.Final #18039
  • Upgrade to Infinispan 9.4.16.Final #18038
  • Upgrade to Hibernate 5.3.11.Final #18037
  • Upgrade to Freemarker 2.3.29 #18036
  • Upgrade to Groovy 2.5.8 #18034
  • Upgrade to Tomcat 9.0.24 #18033
  • Upgrade to Undertow 2.0.25.Final #18032
  • Upgrade to Rxjava2 2.2.12 #18031
  • Upgrade to Netty 4.1.39.Final #18030
  • Upgrade to Dropwizard Metrics 4.0.6 #18029
  • Upgrade to Couchbase Client 2.7.9 #18028
  • Upgrade to nohttp 0.0.3.RELEASE #17905
  • Upgrade to Jackson 2.9.9.20190807 #17698

❤️ Contributors

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

v2.2.0.M5

06 Aug 14:05
Compare
Choose a tag to compare
v2.2.0.M5 Pre-release
Pre-release

⭐ New Features

  • 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
  • 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](https://github.com/spring-project...
Read more

v2.1.7.RELEASE

06 Aug 09:55
Compare
Choose a tag to compare

⭐ New Features

  • Allow AbstractDependsOnBeanFactoryPostProcessor to identify depended on beans by type #17020

🪲 Bug Fixes

  • Fix log info #17774
  • Wrong bean name on Reactive Cassandra Health Indicator condition #17763
  • Undertow servers include their own mime mappings in addition to ours #17687
  • Missing TransactionManager when user provides a custom Neo4j SessionFactory. #17662
  • Fix ordering of SPRING_APPLICATION_JSON property source relative to servlet property sources #17652
  • Reactive health indicators do not log health check failure #17635
  • JavaVersion does not cover all available versions of Java #17590
  • UndertowReactiveWebServerFactory has DeploymentInfoCustomizers even though it does not create a DeploymentInfo #17555
  • MockMvc logging requests from all previous tests with Spring Boot Test #17551
  • Quartz auto-configuration will initialise the DataSource with Quartz's DDL when not using a JDBC job store #17545
  • getResourcePaths(String) allows navigation through the loader's directory structure when using Tomcat #17538
  • ActiveMQConnectionFactory is not configured when CachingConnectionFactory is missing and enabled properties are false #17531
  • @DataJdbcTest is documented as being transactional but isn't #17513
  • Trimming the whitespace for the OAuth2 provider property #17497
  • Create RestClient bean from a RestHighLevelClient if such a bean has been contributed by the application. #17488
  • Batch app fails to start if there's an entityManagerFactory bean but no DataSource bean #17465
  • Batch auto-configuration backs off too aggressively without a dependency on spring-jdbc #17451
  • Batch app fails to start if spring-jdbc is on the classpath but there's no DataSource bean #17449
  • /actuator/logfile endpoint returning 404 when logging.file property contains a random value #17434
  • Validation does not apply to hander replaced results #17421
  • MongoDataAutoConfiguration not applied when a MongoDbFactory is provided by Spring Cloud #17416
  • Shutdown endpoint is called when the application context is closed as its shutdown() method is inferred to be a destroy method #17407
  • Jetty logs a warning about an empty context path when using WebFlux #17399
  • Dependency management for Infinispan is incomplete #17346
  • Classes and resources with a single letter component in their package name cannot be loaded from jar files with /./ or /../ in their path #17341
  • StringToEnumIgnoringCaseConverterFactory getLettersAndDigits returns an integer string #17327
  • HibernateJpaAutoConfiguration's condition uses deprecated classes #17288
  • JUL logger configuration may be lost before usage due to GC #17217
  • EmbeddedMongoAutoConfiguration should depend on bean by type #16627
  • Inconsistent behavior turning off the check for the change log location: Liquibase fails anyway #16232

📔 Documentation

  • Harmonize settings.gradle documentation in Gradle getting started guide #17736
  • Improve "'Create your own starter" to mention how to document properties #17573
  • Clarify description of "logging.file.max-history" #17567
  • Wrong prefix for datasource metrics in the documentation #17553
  • Broken link to Spring Integration metrics in documentation #17543
  • Clarify documented behavior of MessageSource auto-configuration when no resource bundles matching the configured basenames exist #17485
  • Java 12 is not documented as a supported version #17476
  • Caching documentation contains instruction for removed Guava support #17446
  • Fix persistent session property name #17382
  • Link to Apache Licence from Maven Plugin docs rather than embedding it #17320
  • Fix broken link to integration graph reference docs in actuator api documentation #17279
  • Improve javadoc of management server port #17268
  • Clarify how to specify main class #17003
  • Document that RestTemplateBuilder's rootUri only applies when String variants are used for specifying the request URL #15343

🔨 Dependency Upgrades

  • Upgrade to Spring Security 5.1.6 #17794
  • Upgrade to Johnzon Jsonb 1.1.13 #17786
  • Upgrade to Spring HATEOAS 0.25.2 #17777
  • Upgrade to Lettuce 5.1.8.RELEASE #17700
  • Upgrade to Xmlunit2 2.6.3 #17686
  • Upgrade to Spring Cloud Connectors 2.0.6.RELEASE #17685
  • Upgrade to Postgresql 42.2.6 #17684
  • Upgrade to Pooled Jms 1.0.6 #17683
  • Upgrade to Jolokia 1.6.2 #17682
  • Upgrade to Janino 3.0.15 #17681
  • Upgrade to Tomcat 9.0.22 #17680
  • Upgrade to Byte Buddy 1.9.16 #17679
  • Upgrade to Mysql 8.0.17 #17678
  • Upgrade to Joda Time 2.10.3 #17677
  • Upgrade to Undertow 2.0.23.Final #17676
  • Upgrade to Rxjava2 2.2.11 #17675
  • Upgrade to Netty 4.1.38.Final #17674
  • Upgrade to Appengine Sdk 1.9.76 #17673
  • Upgrade to Spring Kafka 2.2.8 #17645
  • Upgrade to Spring Integration 5.1.7 #17643
  • Upgrade to Spring AMQP 2.1.8 #17641
  • Upgrade to Reactor Californium-SR10 #17639
  • Upgrade to Spring Session Bean-SR7 #17581
  • Upgrade to spring-javaformat 0.0.15 #17361
  • Upgrade to Spring Data Lovelace-SR10 #17353
  • Upgrade to Spring Framework 5.1.9 #17351

❤️ Contributors

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

Read more

v1.5.22.RELEASE

06 Aug 08:09
Compare
Choose a tag to compare

🪲 Bug Fixes

  • Embedded MongoDB uses HTTP rather than HTTPS by default to download Mongo binaries #17191
  • spring-boot-dependencies manages jetty-infinispan which no longer exists #16925

📔 Documentation

  • Link to Apache Licence from Maven Plugin docs rather than embedding it #17317
  • Improve javadoc of management server port #17068
  • Fix persistent session property name #16894
  • Correct expansion of jOOQ in the reference docs #16879

🔨 Dependency Upgrades

  • Upgrade to Mysql 5.1.48 #17783
  • Upgrade to Spring Security Oauth 2.0.18.RELEASE #17671
  • Upgrade to Spring Security 4.2.13.RELEASE #17670
  • Upgrade to Spring Cloud Connectors 1.2.9.RELEASE #17669
  • Upgrade to Jetty 9.4.19.v20190610 #17668
  • Upgrade to Tomcat 8.5.43 #17667
  • Upgrade to Httpclient 4.5.9 #17666
  • Upgrade to Appengine Sdk 1.9.76 #17665
  • Upgrade to Spring Integration 4.3.21 #17642
  • Upgrade to Spring AMQP 1.7.14 #17640
  • Upgrade to spring-javaformat 0.0.15 #17359
  • Upgrade to Spring Data Ingalls-SR23 #17352
  • Upgrade to Spring Framework 4.3.25 #17221
  • Upgrade to Dependency Management Plugin 1.0.8.RELEASE #17149

❤️ Contributors

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

v2.2.0.M4

19 Jun 10:11
Compare
Choose a tag to compare
v2.2.0.M4 Pre-release
Pre-release

⭐ New Features

  • Support annotations on constructor parameters for binding #17109
  • Add general purpose header support to RestTemplateBuilder #17091
  • Register Printer and Parser beans as converters #17064
  • Log JDBC connection URL for embedded database when using H2 console #17063
  • Drop deprecated spring.version pom property in favor of spring-framework.version #17043
  • Add configuration-strategy property to RedisSessionProperties to configure ConfigureRedisAction #17022
  • Exclude groovy.lang.MetaClass type from configuration annotation processor #16996
  • Make it easier to set bufferRequestBody on ClientHttpRequestFactory #16972
  • Define the classloader for FluentConfiguration #16947
  • Fork process with spring-boot:run by default #16945
  • Update Maven spring-boot:run to launch JVM with flags to enable development-time optimisations #16941
  • Configure String codecs in RSocket strategies #16924
  • Use deferred logging rather than System.out to report jars on the classpath with Class-Path manifest attributes that point to non-existent files when using DevTools #16883
  • Improve diagnostics when JVM launched by spring-boot:run exits with a non-zero status #16869
  • Configure PathPattern for RSocket routing #16865
  • Allow Flyway or Liquibase to be auto-configured without a DataSource bean #16850
  • Add support for AWS Redshift JDBC driver #16831
  • Auto-configure Kafka listener container factory with user-provided rebalance listener #16755
  • Provide a configuration property for Spring Kafka's missingTopicsFatal #16740
  • Optimize CacheKey handling in SpringIterableConfigurationPropertySource #16717
  • Make excludeDevtools available as a user property #16701
  • Set UTF-8 charset for whitelabel HTML error pages #16611
  • Add annotation to support registering Jackson key serializer/deserializers #16544
  • Auto-configure Elasticsearch REST client in Spring Data #16542
  • Rename spring.reactor.stacktrace-mode configuration property #16537
  • Disable Tomcat's MBean Registry by default and provide a property to enable it #16498
  • Improve configuration property binding performance with extremely large input files #16401
  • Add support for Couchbase's role based access #16389
  • Update Gradle bootRun to launch JVM with flags to enable development-time optimisations #16222
  • Auto-configure reactive Elasticsearch components introduced in Spring Data Moore #16214
  • Include spring.profiles in additional-spring-configuration-metadata.json #16107
  • Change Logback's maxHistory property default to 7 days #15875
  • Add configuration support for Opaque Token authentication #15872
  • Avoid codec auto-configuration when they are not going to be used #15690
  • Change default Freemarker template file extension to .ftlh to enable HTML escaping #15131
  • Make it possible for the output from the BuildInfo task to be repeatable #14494
  • Improve analysis of Tomcat connector start failures by using new throwOnFailure attribute #7130

🪲 Bug Fixes

  • Gradle plugin creates fat jars that do not align with unspecified assumption that META-INF/MANIFEST.MF should be the first or second entry #17232
  • Netty connection timeouts of 0 or -1 are not applied correctly #17228
  • PropertyMapper does not chain when and whenNot calls #17227
  • Dependency management for JavaBeans Activation Framework is incomplete #17223
  • @WebMvcTest ignores base path configured via @WebAppConfiguration #17220
  • Missing outcome tag for WebClient metrics on errors #17219
  • Flyway and Liquibase auto-configuration does not consider DataSource properties configured via @AutoConfigureTestDatabase #17218
  • @JooqTest does not auto-configure caching #17213
  • Fat jar launcher mishandles root jar files with + characters in their path, making nested entries unloadable #17211
  • Logback debugging property is ignored unless a logback file is present #17192
  • Getting an InputStream from a JarURLConnection for a nested jar or an entry in a nested jar creates a JarFile that's never closed #17127
  • JarFileArchive creates a JarFile that is never closed #17126
  • JarFile leaks a file handle if central directory parsing fails #17124
  • JarResourceManager leaks an InputStream when asked for a Resource for the root of a jar #17122
  • Embedded Undertow containers may lose access log entries when shut down #17120
  • Repackaging with Maven may not close a library's input stream when adding it to the jar #17118
  • DevTools' ChangeableUrls creates JarFiles that are not closed when looking for Class-Path manifest entries #17114
  • DevTools uses the wrong command to shut down an in-memory Derby database #17104
  • Constructor binding can fail with non iterable property sources #17098
  • SpringIterableConfigurationPropertySource cache is not thread safe #17018
  • Handle all getters first in JavaBeanBinder.addProperties() #17016
  • ConfigFileApplicationListener filtering fails when the defaultPropertySource is a composite #17011
  • RestTemplateBuilder.basicAuth causes the entire body to be read into memory #17010
  • JVM can't exit due to threads left if Tomcat throws exceptions during shutdown #16995
  • Spring Session without Spring Security leads to NoClassDefFoundError: org/springframework/security/web/authentication/RememberMeServices #16992
  • Spring Data Cassandra auto-configuration should be conditional on Cluster bean #16990
  • JavaBeanBinder.Bean.get() does not use updated resolved type when checking for type differences #16988
  • spring-boot:run uses the wrong default working directory for a forked JVM #16960
  • SpringBootVersion fails with a NullPointerException if Package has no implementation version and the ProtectionDomain returns a null CodeSource #16956
  • WebSphere Liberty's WSJdbcDataSource logs an exception during startup when using a JNDI DataSource with Hikari still on the class...
Read more