Skip to content

Releases: spring-projects/spring-boot

v3.5.0-M3

21 Mar 02:22
Compare
Choose a tag to compare
v3.5.0-M3 Pre-release
Pre-release

⭐ New Features

  • Provide a configuration property for Spring Batch's validateTransactionState #44803
  • Auto-configure Spring Batch to use a JobsParametersConverter bean when available #44799
  • Add Property for keepalive Setting of GraphQL SSE Handlers #44743
  • Rationalize Groovy Template configuration properties #44722
  • Add support for omitting the SameSite attribute from the session cookie #44714
  • Add garbage collector info to process info contributor #44704
  • Align behavior of the "nativeTest" Maven profile with "native" to make it suitable for multi-module projects #44696
  • Provide configuration properties for customising the auto-configured BatchSpanProcessor #44655
  • Introduce PollerMetadataCustomizer for customizing auto-configured Spring Integration PollerMetadata #44637
  • Make auto-configured BatchSpanProcessor back off when the user defines their own #44601
  • Remove support for URLConnectionSender #44500
  • Add support for OpenTelemetry's service.namespace #44499
  • Separate transports in GraphQL auto-configuration #44495
  • Remove default value for OtlpMetricsProperties.url #44493
  • Add configuration properties for JdbcTemplate's ignoreWarnings, skipResultsProcess, skipUndeclaredResults, and resultsMapCaseInsensitive #44470
  • Remove support for management.otlp.metrics.export.resource-attributes that has been deprecated since 3.2 #44468
  • Improve logging in DockerApi #44412
  • Support OTEL_SERVICE_NAME and OTEL_RESOURCE_ATTRIBUTES environment variables #44394
  • Add Service Connection support for lldap/lldap using Compose and Testcontainers #44389
  • Introduce spring.data.mongodb.protocol to allow the MongoDB protocol to be customized when not using spring.data.mongodb.uri #44366
  • Support auto-configuration of a DataSource without spring-jdbc on the classpath #43786
  • Maven properties that are flagged read-only for command-line binding lead to warnings with Maven 4 #43699
  • Provide @ConditionalOn… annotations for all concrete conditions #41044

🐞 Bug Fixes

  • Actuator throws an exception when using prototype scoped DataSource bean #44762
  • Checking if APR is available logs a warning on Java 24 #44705
  • Failure diagnostics are poor when trying to use an image platform that is not supported by the builder #44640
  • Docker API error message is missing in some cases #44631
  • When an application contains multiple DataSource beans, EntityManagerFactoryBuilder will default ddl-auto to a value that may only be appropriate for the primary DataSource #44626
  • DefaultJmsListenerContainerFactoryConfigurer#setObservationRegistry should not be public #44586
  • When the main class is not proxied, native testing that uses the application's main method does not work #44482
  • When loading configuration from a Resource, Log4J2LoggingSystem may not close the InputStream #44474
  • When loading from a resource, PemContent does not close the InputStream #44455
  • ResourceBanner does not close the InputStream used to read the banner #44453
  • ConfigDataLocationResolvers and PropertySourceLoaders are loaded using a potentially different class loader #44451
  • Kafka in native-image fails when using SSL bundles #44440
  • Kafka message sending fails with 'class SslBundleSslEngineFactory could not be found' #44438
  • Nested test classes don't inherit properties from @DataJpaTest on enclosing class #44408
  • StandardStackTracePrinter prints root first if configured otherwise #44398
  • Console logging incorrectly uses Charset.defaultCharset() or UTF-8 #44353

📔 Documentation

  • Multiline properties in documentation are missing backslashes #44791
  • Polish javadoc of SqlR2dbcScriptDatabaseInitializer #44766
  • Document support for Java 24 #44756
  • Update org.cyclonedx.bom version in docs to 2.2.0 #44753
  • Remove OpenShift link that 404s #44749
  • Fix link to javadoc for JavaExec.setArgsString #44537
  • Fix typo in documentation #44524
  • Fix typo in javadoc of CommonStructuredLogFormat#ELASTIC_COMMON_SCHEMA #44485
  • Update descriptions of properties that no longer require Flyway Teams #44484
  • Samples for metadata annotation processers have invalid fold attribute #44421
  • Clarify which Mongo properties are ignored when URI property is set #44405
  • Adapt Javadoc reference of JooqExceptionTranslator to use ExceptionTranslatorExecuteListener #44403

🔨 Dependency Upgrades

  • Upgrade to ActiveMQ 6.1.6 #44670
  • Upgrade to Artemis 2.40.0 #44777
  • Upgrade to AspectJ 1.9.23 #44715
  • Upgrade to Awaitility 4.3.0 #44602
  • Upgrade to Byte Buddy 1.17.2 #44603
  • Upgrade to Flyway 11.4.0 #44778
  • Upgrade to Groovy 4.0.26 #44605
  • Upgrade to Hibernate 6.6.11.Final #44741
  • Upgrade to HtmlUnit 4.10.0 #44607
  • Upgrade to Infinispan 15.1.7.Final #44608
  • Upgrade to Jackson Bom 2.18.3 #44609
  • Upgrade to Jetty 12.0.18 #44779
  • Upgrade to Jetty Reactive HTTPClient 4.0.9 #44610
  • Upgrade to jOOQ 3.19.21 #44672
  • Upgrade to JUnit Jupiter 5.12.1 #44780
  • Upgrade to Lettuce 6.5.5.RELEASE #44686
  • Upgrade to Logback 1.5.18 #44781
  • Upgrade to Maven Compiler Plugin 3.14.0 #44615
  • Upgrade to Maven Deploy Plugin 3.1.4 #44616
  • Upgrade to Maven Install Plugin 3.1.4 #44617
  • Upgrade to Micrometer 1.15.0-M3 #44587
  • Upgrade to Micrometer Tracing 1.5.0-M3 #44588
  • Upgrade to Mockito 5.16.1 #44782
  • Upgrade to MSSQL JDBC 12.10.0.jre11 [#44783](https://github.com/spr...
Read more

v3.4.4

21 Mar 03:33
Compare
Choose a tag to compare

❗ Noteworthy Changes

Tomcat APR support is now disabled by default if you are using Java 24 or higher. This change has been made to prevent JDK from issuing warnings.

Please see the updated release notes for details.

🐞 Bug Fixes

  • Actuator throws an exception when using prototype scoped DataSource bean #44706
  • Docker API error message is missing in some cases #44630
  • DefaultJmsListenerContainerFactoryConfigurer#setObservationRegistry should not be public #44585
  • When an application contains multiple DataSource beans, EntityManagerFactoryBuilder will default ddl-auto to a value that may only be appropriate for the primary DataSource #44516
  • When the main class is not proxied, native testing that uses the application's main method does not work #44481
  • When loading configuration from a Resource, Log4J2LoggingSystem may not close the InputStream #44473
  • When loading from a resource, PemContent does not close the InputStream #44454
  • ResourceBanner does not close the InputStream used to read the banner #44452
  • ConfigDataLocationResolvers and PropertySourceLoaders are loaded using a potentially different class loader #44450
  • Kafka message sending fails with 'class SslBundleSslEngineFactory could not be found' #44437
  • Kafka in native-image fails when using SSL bundles #44436
  • Nested test classes don't inherit properties from @DataJpaTest on enclosing class #44407
  • Failure diagnostics are poor when trying to use an image platform that is not supported by the builder #44059
  • Checking if APR is available logs a warning on Java 24 #44033

📔 Documentation

  • Multiline properties in documentation are missing backslashes #44790
  • Polish javadoc of SqlR2dbcScriptDatabaseInitializer #44764
  • Document support for Java 24 #44754
  • Remove OpenShift link that 404s #44748
  • Fix link to javadoc for JavaExec.setArgsString #44536
  • Fix typo in documentation #44523
  • Update descriptions of properties that no longer require Flyway Teams #44483
  • Fix typo in javadoc of CommonStructuredLogFormat#ELASTIC_COMMON_SCHEMA #44469
  • Samples for metadata annotation processers have invalid fold attribute #44420
  • Clarify which Mongo properties are ignored when URI property is set #44404
  • Adapt Javadoc reference of JooqExceptionTranslator to use ExceptionTranslatorExecuteListener #44402

🔨 Dependency Upgrades

  • Upgrade to ActiveMQ 6.1.6 #44663
  • Upgrade to AspectJ 1.9.23 #44720
  • Upgrade to Groovy 4.0.26 #44546
  • Upgrade to Hibernate 6.6.11.Final #44739
  • Upgrade to Infinispan 15.0.14.Final #44548
  • Upgrade to Jackson Bom 2.18.3 #44549
  • Upgrade to Jetty 12.0.18 #44774
  • Upgrade to Jetty Reactive HTTPClient 4.0.9 #44773
  • Upgrade to jOOQ 3.19.21 #44665
  • Upgrade to Logback 1.5.18 #44775
  • Upgrade to Maven Deploy Plugin 3.1.4 #44552
  • Upgrade to Maven Install Plugin 3.1.4 #44553
  • Upgrade to Micrometer 1.14.5 #44565
  • Upgrade to Micrometer Tracing 1.4.4 #44566
  • Upgrade to Native Build Tools Plugin 0.10.6 #44708
  • Upgrade to Neo4j Java Driver 5.28.3 #44691
  • Upgrade to Netty 4.1.119.Final #44554
  • Upgrade to Pulsar 3.3.5 #44555
  • Upgrade to Reactor Bom 2024.0.4 #44567
  • Upgrade to SLF4J 2.0.17 #44556
  • Upgrade to Spring AMQP 3.2.4 #44740
  • Upgrade to Spring Batch 5.2.2 #44568
  • Upgrade to Spring Data Bom 2024.1.4 #44569
  • Upgrade to Spring Framework 6.2.5 #44731
  • Upgrade to Spring Integration 6.4.3 #44776
  • Upgrade to Spring Kafka 3.3.4 #44570
  • Upgrade to Spring Pulsar 1.2.4 #44571
  • Upgrade to Spring Security 6.4.4 #44572
  • Upgrade to Spring WS 4.0.12 #44573
  • Upgrade to Testcontainers 1.20.6 #44557
  • Upgrade to Tomcat 10.1.39 #44666

❤️ Contributors

Thank you to all the contributors who worked on this release:

@KmYgJn, @bekoenig, @bernie-schelberg-invicara, @dmitrysulman, @izeye, @metters, @ngocnhan-tran1996, @nosan, and @quaff

v3.3.10

20 Mar 09:10
Compare
Choose a tag to compare

🐞 Bug Fixes

  • Docker API error message is missing in some cases #44628
  • When loading configuration from a Resource, Log4J2LoggingSystem may not close the InputStream #44467
  • DefaultJmsListenerContainerFactoryConfigurer#setObservationRegistry should not be public #44466
  • When the main class is not proxied, native testing that uses the application's main method does not work #44461
  • When loading from a resource, PemContent does not close the InputStream #44443
  • ResourceBanner does not close the InputStream used to read the banner #44441
  • Kafka in native-image fails when using SSL bundles #44435
  • ConfigDataLocationResolvers and PropertySourceLoaders are loaded using a potentially different class loader #44427
  • Kafka message sending fails with 'class SslBundleSslEngineFactory could not be found' #44414
  • Nested test classes don't inherit properties from @DataJpaTest on enclosing class #44348

📔 Documentation

  • Polish javadoc of SqlR2dbcScriptDatabaseInitializer #44763
  • Remove OpenShift link that 404s #44724
  • Multiline properties in documentation are missing backslashes #44583
  • Fix link to javadoc for JavaExec.setArgsString #44526
  • Fix typo in documentation #44514
  • Update descriptions of properties that no longer require Flyway Teams #44460
  • Samples for metadata annotation processers have invalid fold attribute #44413
  • Adapt Javadoc reference of JooqExceptionTranslator to use ExceptionTranslatorExecuteListener #44385
  • Clarify which Mongo properties are ignored when URI property is set #44384

🔨 Dependency Upgrades

  • Upgrade to ActiveMQ 6.1.6 #44667
  • Upgrade to AspectJ 1.9.23 #44719
  • Upgrade to Groovy 4.0.26 #44538
  • Upgrade to Infinispan 15.0.14.Final #44539
  • Upgrade to Jetty 12.0.18 #44769
  • Upgrade to Jetty Reactive HTTPClient 4.0.9 #44768
  • Upgrade to jOOQ 3.19.21 #44668
  • Upgrade to Logback 1.5.18 #44770
  • Upgrade to Maven Deploy Plugin 3.1.4 #44542
  • Upgrade to Maven Install Plugin 3.1.4 #44543
  • Upgrade to Micrometer 1.13.12 #44558
  • Upgrade to Micrometer Tracing 1.3.10 #44559
  • Upgrade to Native Build Tools Plugin 0.10.6 #44707
  • Upgrade to Neo4j Java Driver 5.28.3 #44690
  • Upgrade to Netty 4.1.119.Final #44544
  • Upgrade to Reactor Bom 2023.0.16 #44560
  • Upgrade to SLF4J 2.0.17 #44545
  • Upgrade to Spring AMQP 3.1.10 #44738
  • Upgrade to Spring Data Bom 2024.0.10 #44561
  • Upgrade to Spring Framework 6.1.18 #44491
  • Upgrade to Spring Integration 6.3.9 #44771
  • Upgrade to Spring Kafka 3.2.8 #44772
  • Upgrade to Spring Pulsar 1.1.10 #44562
  • Upgrade to Spring Security 6.3.8 #44563
  • Upgrade to Spring WS 4.0.12 #44564
  • Upgrade to Tomcat 10.1.39 #44669

❤️ Contributors

Thank you to all the contributors who worked on this release:

@KmYgJn, @bekoenig, @bernie-schelberg-invicara, @dmitrysulman, @izeye, @metters, @ngocnhan-tran1996, @nosan, and @quaff

v3.5.0-M2

20 Feb 20:41
Compare
Choose a tag to compare
v3.5.0-M2 Pre-release
Pre-release

⭐ New Features

  • Remove deprecated micrometer.observations.annotations.enabled #44320
  • Auto-configure CqlTemplate and ReactiveCqlTemplate #44291
  • Auto-configure an ObjectDirectoryMapper bean and configure LdapTemplate to use it #44290
  • Add TWENTY_FOUR to JavaVersion enum #44210
  • Add property to configure Spring Kafka's authExceptionRetryInterval #44199
  • Rename management.server.accesslog.prefix to make is clear that it does not affect Netty #44196
  • Mappings Endpoint support web-servlet router funtion #44172
  • Add property to configure Spring MVC default content types #44040
  • ConversionServiceDeducer should detect more bean types and support lambdas #44018
  • Add 'spring.r2dbc.pool.acquire-retry' property #44017
  • Ignore unbindable DataSource properties #43988
  • Deprecate SignalFX support #43962
  • Use isXxx() instead of getXxx() for boolean property #43934
  • Register Logback OnErrorConsoleStatusListener when using custom Logback file #43931
  • Update PrometheusPushGatewayManager to use the new Prometheus client #43923
  • Allow stacktrace processing when using structured logging #43864
  • Auto-configure VirtualThreadMetrics #43852
  • Remove usage of java.home system property in native image #43517
  • Add support for multiple StructuredLoggingJsonMembersCustomizers #43368
  • Add the ability to trigger a Quartz job on-demand through an Actuator endpoint #43086
  • Make it easier to provide custom TrustManagers in SslManagerBundle #43064
  • Support loading config files (YAML and properties) embedded in env vars via spring.config.import #41609
  • Consider how to provide SSL from ConnectionDetails #41137
  • Write TraceId in HTTP Response headers #40857
  • Make it easier to add a SanitizingFunction to mask properties with specific names #39243
  • Provide a configuration property for configuring an external jOOQ settings file #38778
  • Add ability to match Endpoint requests by HTTP method #29596
  • Add ConditionalOnBean support for generic @Bean return types #29500
  • Support lambda based converters by parsing bean method signature generics #22885
  • Make @ConditionalOnProperty and @ConditionalOnBooleanProperty @Repeatable #2541
  • Provide a mechanism to hide properties in the metadata #2421

🐞 Bug Fixes

  • Console output may be lost when using Log4j2 with something that replaces System.out #44381
  • Maven plugin does not consistently use ArgFile for classpath argument on Windows #44329
  • Non-default DataSource candidates are not considered in H2ConsoleAutoConfiguration #44322
  • Reactive Jetty web server does not fail fast when configured to use a server name bundle which Jetty does not support #44321
  • When web server application context refresh fails, the original failure is lost if stopping or destroying the web server throws an exception #44318
  • View resolver for Thymeleaf should back off if spring-webmvc is not present #44297
  • WebServer is not destroyed when ReactiveWebServerApplicationContext refresh fails #44295
  • Banner placeholder and defaults do not work during development #44256
  • Metrics and health do not include non-default candidate beans #44248
  • Reactive Jetty, Tomcat, and Undertow management servers do not apply management_ prefix to their access logs #44197
  • Mustache templates return with ISO-8859-1 charset rather than UTF-8 in Content-Type response header #44194
  • java.lang.ClassCastException when using default management security with WebFlux and health probes enabled #44192
  • Servlet EndpointRequest doesn't match web server namespace correctly #44190
  • Logback configuration that relies on inner-classes does not work in a native image #44026
  • IllegalStateException: Unable to register SSL bundle after 3.3.8 or 3.4.2 #43990

📔 Documentation

  • Document that auto-configuration classes should be identified using their binary names #44304
  • Correct typo in MVC security when explaining when UserDetailsService auto-configuration will back off #44302
  • Link to JarLauncher's javadoc #44171
  • When using observability annotations, recommend that care is taken to avoid double instrumentation #44146
  • Fix typo in Running Your Application #44036
  • Document Kubernetes preStop handler when using a Docker image without a shell #44023
  • Source snippet in Developing Your First Spring Boot Application section uses the root package #43984
  • Correct the location of MyApplication.java in "Developing Your First Spring Boot Application" #43976
  • Add links to Jackson Javadoc #43972
  • Warn that some Quartz database schema scripts must be modified before use #43959

🔨 Dependency Upgrades

  • Upgrade to Brave 6.1.0 #44335
  • Upgrade to Byte Buddy 1.17.1 #44282
  • Upgrade to Cassandra Driver 4.19.0 #44270
  • Upgrade to Commons Codec 1.18.0 #44073
  • Upgrade to Commons Pool2 2.12.1 #44074
  • Upgrade to Couchbase Client 3.7.8 #44271
  • Upgrade to DB2 JDBC 12.1.0.0 #44075
  • Upgrade to Elasticsearch Client 8.17.2 #44226
  • Upgrade to Flyway 11.3.3 #44371
  • Upgrade to Groovy 4.0.25 #44078
  • Upgrade to Gson 2.12.1 #44079
  • Upgrade to Hamcrest 3.0 #44080
  • Upgrade to Hibernate 6.6.8.Final #44336
  • Upgrade to HttpClient5 5.4.2 #44082
  • Upgrade to HttpCore5 5.3.3 #44083
  • Upgrade to Infinispan 15.1.5.Final #44084
  • Upgrade to Json-smart 2.5.2 #44238
  • Upgrade to Lettuce 6.5.4.RELEASE [#44373](https://github.com/...
Read more

v3.4.3

20 Feb 16:01
Compare
Choose a tag to compare

⚠️ Noteworthy

⭐ New Features

  • Add TWENTY_FOUR to JavaVersion enum #44209

🐞 Bug Fixes

  • Console output may be lost when using Log4j2 with something that replaces System.out #44380
  • Maven plugin does not consistently use ArgFile for classpath argument on Windows #44328
  • Reactive Jetty web server does not fail fast when configured to use a server name bundle which Jetty does not support #44319
  • When web server application context refresh fails, the original failure is lost if stopping or destroying the web server throws an exception #44317
  • View resolver for Thymeleaf should back off if spring-webmvc is not present #44296
  • WebServer is not destroyed when ReactiveWebServerApplicationContext refresh fails #44294
  • Non-default DataSource candidates are not considered in H2ConsoleAutoConfiguration #44293
  • Banner placeholder and defaults do not work during development #44255
  • Mustache templates return with ISO-8859-1 charset rather than UTF-8 in Content-Type response header #44193
  • Servlet EndpointRequest doesn't match web server namespace correctly #44188
  • java.lang.ClassCastException when using default management security with WebFlux and health probes enabled #44052
  • Logback configuration that relies on inner-classes does not work in a native image #44025
  • IllegalStateException: Unable to register SSL bundle after 3.3.8 or 3.4.2 #43989
  • Metrics and health do not include non-default candidate beans #43481

📔 Documentation

  • Document that auto-configuration classes should be identified using their binary names #44303
  • Correct typo in MVC security when explaining when UserDetailsService auto-configuration will back off #44301
  • Link to JarLauncher's javadoc #44170
  • When using observability annotations, recommend that care is taken to avoid double instrumentation #44145
  • Fix typo in Running Your Application #44035
  • Document Kubernetes preStop handler when using a Docker image without a shell #44022
  • Source snippet in Developing Your First Spring Boot Application section uses the root package #43983
  • Correct the location of MyApplication.java in "Developing Your First Spring Boot Application" #43975
  • Add links to Jackson Javadoc #43971
  • Warn that some Quartz database schema scripts must be modified before use #43958

🔨 Dependency Upgrades

  • Upgrade to Commons Pool2 2.12.1 #44173
  • Upgrade to Couchbase Client 3.7.8 #44269
  • Upgrade to Groovy 4.0.25 #44174
  • Upgrade to Hibernate 6.6.8.Final #44332
  • Upgrade to HttpClient5 5.4.2 #44176
  • Upgrade to HttpCore5 5.3.3 #44177
  • Upgrade to Infinispan 15.0.13.Final #44178
  • Upgrade to jOOQ 3.19.19 #44368
  • Upgrade to Json-smart 2.5.2 #44264
  • Upgrade to Maven Clean Plugin 3.4.1 #44349
  • Upgrade to Micrometer 1.14.4 #44115
  • Upgrade to Micrometer Tracing 1.4.3 #44116
  • Upgrade to Native Build Tools Plugin 0.10.5 #44179
  • Upgrade to Neo4j Java Driver 5.28.1 #44195
  • Upgrade to Netty 4.1.118.Final #44221
  • Upgrade to Prometheus Client 1.3.6 #44280
  • Upgrade to R2DBC MySQL 1.3.2 #44180
  • Upgrade to Reactor Bom 2024.0.3 #44117
  • Upgrade to REST Assured 5.5.1 #44281
  • Upgrade to RSocket 1.1.5 #44181
  • Upgrade to Spring AMQP 3.2.3 #44278
  • Upgrade to Spring Authorization Server 1.4.2 #44118
  • Upgrade to Spring Data Bom 2024.1.3 #44119
  • Upgrade to Spring Framework 6.2.3 #44120
  • Upgrade to Spring GraphQL 1.3.4 #44121
  • Upgrade to Spring Integration 6.4.2 #44122
  • Upgrade to Spring Kafka 3.3.3 #44123
  • Upgrade to Spring LDAP 3.2.11 #44124
  • Upgrade to Spring Pulsar 1.2.3 #44125
  • Upgrade to Spring Security 6.4.3 #44126
  • Upgrade to Spring Session 3.4.2 #44127
  • Upgrade to Testcontainers 1.20.5 #44369
  • Upgrade to Testcontainers Redis Module 2.2.4 #44370
  • Upgrade to Tomcat 10.1.36 #44333

❤️ Contributors

Thank you to all the contributors who worked on this release:

@Ru311, @ashishkujoy, @izeye, @jearton, @ngocnhan-tran1996, @nosan, @quaff, and @timotheeandres

v3.3.9

20 Feb 11:16
Compare
Choose a tag to compare

🐞 Bug Fixes

  • Reactive Jetty web server does not fail fast when configured to use a server name bundle which Jetty does not support #44316
  • When web server application context refresh fails, the original failure is lost if stopping or destroying the web server throws an exception #44310
  • Maven plugin does not consistently use ArgFile for classpath argument on Windows #44305
  • View resolver for Thymeleaf should back off if spring-webmvc is not present #44259
  • Banner placeholder and defaults do not work during development #44137
  • WebServer is not destroyed when ReactiveWebServerApplicationContext refresh fails #44134
  • Mustache templates return with ISO-8859-1 charset rather than UTF-8 in Content-Type response header #44053
  • Logback configuration that relies on inner-classes does not work in a native image #44021
  • IllegalStateException: Unable to register SSL bundle after 3.3.8 or 3.4.2 #43966

📔 Documentation

  • Document that auto-configuration classes should be identified using their binary names #44298
  • Correct typo in MVC security when explaining when UserDetailsService auto-configuration will back off #44267
  • Link to JarLauncher's javadoc #44168
  • When using observability annotations, recommend that care is taken to avoid double instrumentation #44037
  • Fix typo in Running Your Application #44032
  • Source snippet in Developing Your First Spring Boot Application section uses the root package #43982
  • Correct the location of MyApplication.java in "Developing Your First Spring Boot Application" #43965
  • Add links to Jackson Javadoc #43961
  • Warn that some Quartz database schema scripts must be modified before use #43955
  • Document Kubernetes preStop handler when using a Docker image without a shell #43830

🔨 Dependency Upgrades

  • Upgrade to Commons Pool2 2.12.1 #44138
  • Upgrade to Groovy 4.0.25 #44139
  • Upgrade to Infinispan 15.0.13.Final #44140
  • Upgrade to jOOQ 3.19.19 #44367
  • Upgrade to Json-smart 2.5.2 #44263
  • Upgrade to Micrometer 1.13.11 #44102
  • Upgrade to Micrometer Tracing 1.3.9 #44103
  • Upgrade to Native Build Tools Plugin 0.10.5 #44141
  • Upgrade to Netty 4.1.118.Final #44218
  • Upgrade to Reactor Bom 2023.0.15 #44104
  • Upgrade to RSocket 1.1.5 #44041
  • Upgrade to Spring AMQP 3.1.9 #44277
  • Upgrade to Spring Authorization Server 1.3.5 #44105
  • Upgrade to Spring Data Bom 2024.0.9 #44106
  • Upgrade to Spring Framework 6.1.17 #44107
  • Upgrade to Spring GraphQL 1.3.4 #44108
  • Upgrade to Spring Integration 6.3.8 #44109
  • Upgrade to Spring Kafka 3.2.7 #44110
  • Upgrade to Spring LDAP 3.2.11 #44111
  • Upgrade to Spring Pulsar 1.1.9 #44112
  • Upgrade to Spring Security 6.3.7 #44113
  • Upgrade to Spring Session 3.3.6 #44114
  • Upgrade to Tomcat 10.1.36 #44331

❤️ Contributors

Thank you to all the contributors who worked on this release:

@Ru311, @ashishkujoy, @izeye, @jearton, @ngocnhan-tran1996, @nosan, and @timotheeandres

v3.5.0-M1

23 Jan 17:10
Compare
Choose a tag to compare
v3.5.0-M1 Pre-release
Pre-release

⭐ New Features

  • Add spring.validation.method.adapt-constraint-violations property #43886
  • Add support for configuring the Redis database using spring.data.redis.url #43813
  • Add support for detecting AWS Advanced JDBC Wrapper to DatabaseDriver #43812
  • Remove APIs that were deprecated for removal in 3.5 #43788
  • Switch relevant Assert calls to throw IllegalStateException rather than IllegalArgumentException #43779
  • Add support for ALLOW_EMPTY_PASSWORD when using bitnami/postgresql with Docker Compose #43771
  • Add marker information to ECS structured logging #43768
  • Deprecate ConditionOutcome.inverse() #43739
  • Introduce dedicated annotation to deal with boolean property conditions #43704
  • DataSourceTransactionManagerAutoConfiguration should not enable DataSourceProperties as it does not use them #43603
  • Add info contributor support for JDK 24's VirtualThreadSchedulerMXBean #43594
  • Logback StructuredLogFormatter exceptions are not visible to the user #43575
  • Use SQLExceptionTranslator bean if defined #43511
  • Allow specifying a different management access log prefix #43434
  • Ensure DefaultErrorAttributes adds JSON serialization safe errors #43330
  • Add a configuration property to customize the Tomcat connector's max parameter count #43286
  • Add TaskDecorator support for scheduled tasks #43190
  • Tighten rules around profile naming #43176
  • Make ZipkinHttpClientSender the default BytesMessageSender #43085
  • Add support for Vibur DBCP connection pool to DataSourceBuilder #42903
  • JacksonAutoConfiguration should retain modules registered in Jackson2ObjectMapperBuilderCustomizer with higher precedence rather than overwriting them #42836
  • Stop publishing spring-boot-parent #42828
  • Add spring.data.redis.lettuce.read-from property #42588
  • Configure specific GraphQL schema files #42792
  • Auto-configure the Postgres application_name when using Docker Compose #42460
  • Expose SslBundle information via actuator metrics #42030
  • GraphQL auto-configuration should not back off when existing GraphQlSource bean #33096

🐞 Bug Fixes

  • Property metadata for "logging.structured.json.customizer" has incorrect type #43921
  • Structured logging properties have no effect in a native image #43913
  • GraylogExtendedLogFormatProperties throws NullPointerException when only 'logging.structured.gelf.host' is specified #43880
  • NoClassDefFoundError when using JUnit to test a Gradle 7.6.x app that depends on spring-boot-actuator-autoconfigure but not on org.junit.platform:junit-platform-launcher #43870
  • Docker Compose support for ClickHouse does not allow an empty password when ALLOW_EMPTY_PASSWORD=yes #43831
  • Spring Boot 3.4 is not compatible with Gson 2.10 #43818
  • docker compose ps now fails due to unknown --orphans flag with 2.23 or earlier #43718
  • CapturedOutput is empty when using Log4J2 StatusLogger #43707
  • Several auto-configurations are creating JMX beans unnecessarily #43706

📔 Documentation

  • Document that the @ConfigurationProperties annotation processor cannot generate description and defaultValue metadata for external types #43930
  • Fix description of management.metrics.graphql.autotime.enabled #43906
  • Document that support for clean on validation error has been removed in Flyway 11 #43890
  • Document 'base64:' prefix support #43836
  • Document handling of @Fallback beans in ConditionalOnSingleCandidate's javadoc #43834
  • Javadoc of DataSourceBuilder does not reference all supported types #43733
  • Document that system libraries are a reason to customize the builder and switch away from builder-jammy-java-tiny #43731
  • Update OpenTelemetry section in Supported Monitoring Systems to refer to OTLP instead #43730
  • Consistently document the minimum supported versions of Gradle #43726
  • Make application main class explicit in usage help of SpringApplicationAotProcessor #43614

🔨 Dependency Upgrades

  • Upgrade to ActiveMQ 6.1.5 #43795
  • Upgrade to Artemis 2.39.0 #43666
  • Upgrade to AssertJ 3.27.3 #43667
  • Upgrade to Byte Buddy 1.16.1 #43892
  • Upgrade to Caffeine 3.2.0 #43893
  • Upgrade to Commons Codec 1.17.2 #43796
  • Upgrade to Commons DBCP2 2.13.0 #43668
  • Upgrade to Couchbase Client 3.7.7 #43853
  • Upgrade to Flyway 11.2.0 #43894
  • Upgrade to FreeMarker 2.3.34 #43671
  • Upgrade to Hibernate 6.6.5.Final #43895
  • Upgrade to HikariCP 6.2.1 #43672
  • Upgrade to HtmlUnit 4.9.0 #43942
  • Upgrade to HttpCore5 5.3.2 #43801
  • Upgrade to Infinispan 15.1.4.Final #43914
  • Upgrade to Jaybird 6.0.0 #43675
  • Upgrade to Jersey 3.1.10 #43803
  • Upgrade to jOOQ 3.19.18 #43854
  • Upgrade to Kafka 3.9.0 #43676
  • Upgrade to Lettuce 6.5.2.RELEASE #43677
  • Upgrade to Liquibase 4.31.0 #43896
  • Upgrade to Logback 1.5.16 #43679
  • Upgrade to MariaDB 3.5.1 #43680
  • Upgrade to Maven Invoker Plugin 3.9.0 #43681
  • Upgrade to Maven Javadoc Plugin 3.11.2 #43682
  • Upgrade to Micrometer 1.15.0-M1 #43757
  • Upgrade to Micrometer Tracing 1.5.0-M1 #43758
  • Upgrade to Mockito 5.15.2 #43683
  • Upgrade to MySQL 9.2.0 #43915
  • Upgrade to Netty 4.1.117.Final #43855
  • Upgrade to OpenTelemetry 1.46.0 #43805
  • Upgrade to Oracle Database 23.6.0.24.10 [#43686](https://github.co...
Read more

v3.4.2

23 Jan 13:22
Compare
Choose a tag to compare

🐞 Bug Fixes

  • Property metadata for "logging.structured.json.customizer" has incorrect type #43916
  • GraylogExtendedLogFormatProperties throws NullPointerException when only 'logging.structured.gelf.host' is specified #43863
  • Structured logging properties have no effect in a native image #43862
  • Docker Compose support for ClickHouse does not allow an empty password when ALLOW_EMPTY_PASSWORD=yes #43790
  • docker compose ps now fails due to unknown --orphans flag with 2.23 or earlier #43717
  • Build info timestamp is truncated to seconds #43617
  • FileWatcher used for SSL reload does not support symlinks #43604
  • BindableRuntimeHintsRegistrar should handle TypeNotPresentException #43600
  • CapturedOutput is empty when using Log4J2 StatusLogger #43578
  • Spring Boot 3.4 is not compatible with Gson 2.10 #43442
  • NoClassDefFoundError when using JUnit to test a Gradle 7.6.x app that depends on spring-boot-actuator-autoconfigure but not on org.junit.platform:junit-platform-launcher #43340

📔 Documentation

  • Document that the @ConfigurationProperties annotation processor cannot generate description and defaultValue metadata for external types #43929
  • Fix description of management.metrics.graphql.autotime.enabled #43905
  • Document 'base64:' prefix support #43835
  • Document handling of @Fallback beans in ConditionalOnSingleCandidate's javadoc #43826
  • Javadoc of DataSourceBuilder does not reference all supported types #43732
  • Update OpenTelemetry section in Supported Monitoring Systems to refer to OTLP instead #43729
  • Consistently document the minimum supported versions of Gradle #43725
  • Document that system libraries are a reason to customize the builder and switch away from builder-jammy-java-tiny #43716
  • Links to the Javadoc of Jakarta Messaging are invalid #43662
  • Paragraph HTML tags are rendered as-is in Maven Plugin reference documentation #43623
  • Javadoc link for jakarta.xml.bind is invalid #43607
  • Documentation still has references to 'layertools' #43605
  • Javadoc of ConstructorBinding should not use markdown formatting #43599
  • Managed Dependency Coordinates lists Spock and OkHttp dependencies that are not managed #43584

🔨 Dependency Upgrades

  • Upgrade to ActiveMQ 6.1.5 #43791
  • Upgrade to Commons Codec 1.17.2 #43720
  • Upgrade to Couchbase Client 3.7.7 #43843
  • Upgrade to FreeMarker 2.3.34 #43721
  • Upgrade to Hibernate 6.6.5.Final #43910
  • Upgrade to HttpCore5 5.3.2 #43792
  • Upgrade to Infinispan 15.0.12.Final #43911
  • Upgrade to Jersey 3.1.10 #43793
  • Upgrade to jOOQ 3.19.18 #43844
  • Upgrade to Lettuce 6.4.2.RELEASE #43609
  • Upgrade to Logback 1.5.16 #43715
  • Upgrade to Micrometer 1.14.3 #43745
  • Upgrade to Micrometer Tracing 1.4.2 #43746
  • Upgrade to Netty 4.1.117.Final #43845
  • Upgrade to Postgresql 42.7.5 #43846
  • Upgrade to Pulsar 3.3.4 #43912
  • Upgrade to R2DBC MySQL 1.3.1 #43722
  • Upgrade to Reactor Bom 2024.0.2 #43747
  • Upgrade to Spring AMQP 3.2.2 #43748
  • Upgrade to Spring Data Bom 2024.1.2 #43749
  • Upgrade to Spring Framework 6.2.2 #43750
  • Upgrade to Spring Kafka 3.3.2 #43751
  • Upgrade to Spring Pulsar 1.2.2 #43752
  • Upgrade to SQLite JDBC 3.47.2.0 #43723

❤️ Contributors

Thank you to all the contributors who worked on this release:

@arefbehboudi, @dreis2211, @gavarava, @hezean, @izeye, @jxblum, @ngocnhan-tran1996, @nosan, @quaff, and @tmaciejewski

v3.3.8

23 Jan 10:01
Compare
Choose a tag to compare

🐞 Bug Fixes

  • POSTGRESQL_USERNAME and POSTGRESQL_DATABASE are ignored when using the Bitnami PostgreSQL image with Docker Compose #43787
  • docker compose ps now fails due to unknown --orphans flag with 2.23 or earlier #43710
  • Build info timestamp is truncated to seconds #43612
  • FileWatcher used for SSL reload does not support symlinks #43586
  • BindableRuntimeHintsRegistrar should handle TypeNotPresentException #43598

📔 Documentation

  • Document that the @ConfigurationProperties annotation processor cannot generate description and defaultValue metadata for external types #43925
  • Fix description of management.metrics.graphql.autotime.enabled #43904
  • Document 'base64:' prefix support #43809
  • Update OpenTelemetry section in Supported Monitoring Systems to refer to OTLP instead #43727
  • Javadoc of DataSourceBuilder does not reference all supported types #43724
  • Links to the Javadoc of Jakarta Messaging are invalid #43661
  • Paragraph HTML tags are rendered as-is in Maven Plugin reference documentation #43622
  • Javadoc link for jakarta.xml.bind is invalid #43606
  • Documentation still has references to 'layertools' #43601
  • Javadoc of ConstructorBinding should not use markdown formatting #43590

🔨 Dependency Upgrades

  • Upgrade to ActiveMQ 6.1.5 #43799
  • Upgrade to FreeMarker 2.3.34 #43719
  • Upgrade to Infinispan 15.0.12.Final #43909
  • Upgrade to Jersey 3.1.10 #43800
  • Upgrade to jOOQ 3.19.18 #43840
  • Upgrade to Logback 1.5.16 #43568
  • Upgrade to Micrometer 1.13.10 #43740
  • Upgrade to Micrometer Tracing 1.3.8 #43741
  • Upgrade to Netty 4.1.117.Final #43841
  • Upgrade to Postgresql 42.7.5 #43842
  • Upgrade to Reactor Bom 2023.0.14 #43742
  • Upgrade to Spring Data Bom 2024.0.8 #43743
  • Upgrade to Spring Pulsar 1.1.8 #43744

❤️ Contributors

Thank you to all the contributors who worked on this release:

@arefbehboudi, @dreis2211, @gavarava, @hezean, @izeye, @jxblum, @ngocnhan-tran1996, @quaff, and @tmaciejewski

v3.4.1

19 Dec 13:53
Compare
Choose a tag to compare

🐞 Bug Fixes

  • KafkaProperties fail to build SSL properties when the bundle name is an empty string #43563
  • Diagnostics are poor when property resolution throws a ConversionFailedException #43559
  • SpringApplicationShutdownHandlers do not run in deterministic order #43536
  • Unable to find a @SpringBootConfiguration results in misleading error message #43507
  • With multiple ResourceHandlerRegistrationCustomizer beans in the context, only one of them is used #43497
  • Unable to use Docker Compose support when mixing dedicated and shared services #43472
  • Kafka dependency management does not include the kafka-server module #43454
  • Docker API version is incorrectly reported when '/_ping` calls fail and version should be fixed #43452
  • Methods to build producer / consumer properties from KafkaProperties are inconvienenent to use without an SSL bundle #43448
  • Failures in -Djarmode=tools do not consistently return a non-zero exit #43436
  • HttpComponentsClientHttpRequestFactoryBuilder replaces the existing defaultRequestConfigCustomizer rather than adding to it #43429
  • spring-boot-maven-plugin sets imagePlatform even if it's empty #43424
  • OnBeanCondition fails to match on annotations when using Scoped Proxies #43423
  • Failure analysis for InvalidConfigurationPropertyValueException doesn't correctly handle fuzzy matching of environment variables #43382
  • H2ConsoleAutoConfiguration causes early initialization of DataSource beans #43359
  • Accept progress on numbers >2GB #43356
  • Servlet-based UserDetailsServiceAutoConfiguration is active in a reactive app #43334
  • StructuredLoggingJsonMembersCustomizer implementations declared in spring.factories with a generic type more specific than Object are not called #43312
  • Overriding log level with an environment variable does not work when using an environment prefix #43307
  • Management endpoint access and enabled properties are ignored unless the endpoint ID is an exact match #43302
  • UnsupportedOperationException when starting a Maven shaded application on Java 21 with virtual threads enabled #43291
  • JmsListener failing with Narayana (pooled ConnectionFactory) since 3.4.0 #43277
  • SslBundle can no longer open store file locations without using a 'file:' prefix #43274
  • TestRestTemplate does not allow redirects to be customized #43258
  • Testcontainers start() methods may be started multiple times #43253

📔 Documentation

  • Fix typo in documentation #43558
  • Document that server.ssl.cipher and server.ssl.enabled-protocols are not fallbacks used with SSL bundles #43552
  • Use <annotationProcessorPaths> in Maven examples for configuring an annotation processor #43544
  • Fix typo #43519
  • Links to logback javadoc are incorrect #43456
  • Fix JUnit javadoc links #43428
  • Reference documentation incorrectly uses 'disabled' rather than 'none' for access restrictions #43351
  • Restore System property in Logging section of the reference documentation #43342
  • Fix link to proxyBeanMethods in @AutoConfiguration javadoc #43325
  • Fix links to Servlet and JPA javadoc #43324
  • Link to @EnableMethodSecurity instead of the deprecated @EnableGlobalMethodSecurity #43315
  • Document that StructuredLoggingJsonMembersCustomizer implementations may optionally take constructor parameters #43314
  • Update javadoc of StructuredLoggingJsonMembersCustomizer to note that implementations can registered through spring.factories #43313
  • Fix Javadoc link for Hikari #43311
  • Document how to use structured logging with custom log configuration #43301
  • Update Javadoc since for OtlpMetricsProperties and OtlpTracingProperties #43249

🔨 Dependency Upgrades

  • Upgrade to Byte Buddy 1.15.11 #43529
  • Upgrade to Couchbase Client 3.7.6 #43500
  • Upgrade to CycloneDX Maven Plugin 2.9.1 #43398
  • Upgrade to Dependency Management Plugin 1.1.7 #43543
  • Upgrade to Elasticsearch Client 8.15.5 #43399
  • Upgrade to Hibernate 6.6.4.Final #43566
  • Upgrade to Hibernate Validator 8.0.2.Final #43510
  • Upgrade to Jackson Bom 2.18.2 #43401
  • Upgrade to Jetty 12.0.16 #43488
  • Upgrade to jOOQ 3.19.16 #43468
  • Upgrade to JUnit Jupiter 5.11.4 #43530
  • Upgrade to Log4j2 2.24.3 #43501
  • Upgrade to Micrometer 1.14.2 #43408
  • Upgrade to Micrometer Tracing 1.4.1 #43409
  • Upgrade to Native Build Tools Plugin 0.10.4 #43403
  • Upgrade to Netty 4.1.116.Final #43548
  • Upgrade to Prometheus Client 1.3.5 #43503
  • Upgrade to Pulsar 3.3.3 #43405
  • Upgrade to Pulsar Reactive 0.5.10 #43539
  • Upgrade to Reactor Bom 2024.0.1 #43410
  • Upgrade to RxJava3 3.1.10 #43406
  • Upgrade to Spring AMQP 3.2.1 #43411
  • Upgrade to Spring Authorization Server 1.4.1 #43412
  • Upgrade to Spring Batch 5.2.1 #43477
  • Upgrade to Spring Data Bom 2024.1.1 #43413
  • Upgrade to Spring Framework 6.2.1 #43414
  • Upgrade to Spring HATEOAS 2.4.1 #43478
  • Upgrade to Spring Integration 6.4.1 #43415
  • Upgrade to Spring Kafka 3.3.1 #43416
  • Upgrade to Spring LDAP 3.2.10 #43417
  • Upgrade to Spring Pulsar 1.2.1 #43418
  • Upgrade to Spring Retry 2.0.11 #43486
  • Upgrade to Spring Security 6.4.2 #43419
  • Upgrade to Spring Session 3.4.1 #43420
  • Upgrade to SQLite JDBC 3.47.1.0 #43407
  • Upgrade to Thymeleaf 3.1.3.RELEASE [#43469](https://github.com/sp...
Read more