github spring-projects/spring-boot v3.4.0-M2

pre-release27 days ago

⭐ New Features

  • Add value alias to @ConditionalOnAvailableEndpoint and migrate simple conditions #41969
  • Auto-configure remote fields on BraveBaggageManager #41884
  • Add support for Pulsar default tenant/namespace #41851
  • Add TWENTY_THREE to JavaVersion enum #41717
  • When virtual threads are enabled, configure Spring Integration's task scheduler to use them #41695
  • Support multiple Docker Compose files #41691
  • GraphQL should reply with HTTP 415 for unsupported content type #41675
  • Automatically disable banner when using structured logging #41659
  • Make properties for the application's version and PID available in the Environment #41604
  • Update @ConditionalOnSingleCandidate to deal with fallback beans #41580
  • Improve property support for SAML private keys and certificates #41567
  • Add support for grafana/otel-lgtm and LgtmStackContainer from Service Connection #41551
  • Add support for CNB platform API version 0.14 #41549
  • Allow PemContent.of to work with untrimmed content #41540
  • Provide auto-configuration for authenticating with Couchbase using a client certificate #41520
  • Refine structured logging support #41491
  • Shut down Reactor Schedulers for WAR deployments #41548
  • Add SslInfoContributor and SslHealthIndicator #41205
  • Rework Cloud Foundry actuator support behind a pluggable abstraction #41135
  • Add platform option for image building #40944
  • Introduce an ApplicationProperties class so that we can stop binding directly to SpringApplication #40592
  • Auto-configure HandlerMethodArgumentResolvers on AnnotatedControllerConfigurer #40393
  • Automatically activate health probes in Cloud Foundry environments #39804
  • Support @Name with JavaBean-based configuration properties #39452
  • Make DataSourceBuilder be able to derive driverClassName from a URL #39376
  • Make it easier to define a bean in addition to an auto-configured bean of the same type #22403
  • Add execution metadata to scheduled tasks actuator endpoint #17585
  • Make it easier to use the auto-configured EntityManagerFactoryBuilder with Hibernate-specific properties #15318
  • Perform failure analysis when a unique CacheManager bean cannot be found #13348
  • Provide a callback for customising Freemarker variables #8965
  • Add support for enum default values in configuration processor #7562

🐞 Bug Fixes

  • When using WebFlux, server.error.include-binding-errors=ALWAYS no longer has an effect when the BindingResult exception is the cause of a ResponseStatusException #41988
  • PropertiesLauncher does not respect classpath.idx when adding jars in BOOT-INF/lib to the classpath #41971
  • Web extension for SBOM endpoint isn't available under /cloudfoundryapplication #41891
  • Launcher's ClassLoader is no longer parallel capable #41874
  • spring-boot-testcontainers causes unwanted container initialization during AOT processing #41860
  • DynamicPropertyRegistry in @Bean-method fails with spring-boot-testcontainers dependency in classpath (3.4.0-M1) #41839
  • ReactiveElasticsearchRepositoriesAutoConfiguration should back off when Reactor is not on the classpath #41681
  • mvn spring-boot:build-image fails when 'classifier' is set to non-default value #41662
  • Spring Boot Maven plugin AOT cannot handle Maven modules with module-info.java #41648
  • Docker publishRegistry in Maven plugin configuration is validated when publish option is false #41642
  • Some @ControllerEndpoint and @RestControllerEndpoint infrastructure remains undeprecated #41620
  • Using Gradle's new file permission API is implemented in a way that prevents removal of the old API #41608
  • Constructor binding of EnumMap fails due to missing key type #41564
  • @ConditionalOnBean matches beans that are not autowire candidates resulting in UnsatisfiedDependencyException when an attempt is made to inject the bean #41526
  • Configuration properties enabled in a child context are ignored if an ancestor context has already enabled the properties #41487

📔 Documentation

  • Release type conditionals are not working in documentation #41994
  • Improve documented logging property descriptions and default values #41990
  • Explain that enabling virtual threads disables traditional thread pools #41977
  • Harmonize code sample for MyUserHandler in reference documentation #41950
  • Document when environment variable property mapping applies #41946
  • Javadoc of slice test annotations should describe more accurately which components are considered #41936
  • Fix duplicate words #41921
  • Correct grammar in 'Running your Application with Maven' #41869
  • Document the need to explicitly reset mock servers when using mock server customizers directly #41850
  • Document more clearly that username and password are not used when spring.data.redis.url is set #41749
  • Fix typo in Grafana Connection Details #41705
  • Document that spring-boot:repackage should not be run from the command-line #41696
  • Pulsar configuration does not have default value for several entries in the metadata #41684
  • management.otlp.metrics.export.aggregation-temporality does not have a default value in the metadata #41677
  • server.error.include-path does not have a default value in the metadata #41673
  • management.newrelic.metrics.export.client-provider-type does not have a default value in the metadata #41671
  • The effect upon Actuator of defining your own SecurityFilterChain is documented inconsistently #41639
  • Update link to documentation for log4j-spring-boot #41623
  • Add hint for new dependencies required for Flyway #41595
  • Fix link to Flyway reference documentation #41594
  • Document configuration property binding's support for using @Name to customize a property name #41586
  • Document unsupported configuration properties in Freemarker WebFlux #11199

🔨 Dependency Upgrades

  • Bump fast-xml-parser from 4.4.0 to 4.4.1 in /antora #41658
  • Upgrade to ActiveMQ 6.1.3 #41793
  • Upgrade to Artemis 2.36.0 #41794
  • Upgrade to Awaitility 4.2.2 #41708
  • Upgrade to Byte Buddy 1.14.19 #41893
  • Upgrade to Commons Lang3 3.16.0 #41795
  • Upgrade to Couchbase Client 3.7.2 #41894
  • Upgrade to CycloneDX Maven Plugin 2.8.1 #41796
  • Upgrade to cyclonedx-gradle-plugin 1.10.0 #41956
  • Upgrade to Flyway 10.17.1 #41924
  • Upgrade to H2 2.3.232 #41895
  • Upgrade to Hazelcast 5.5.0 #41798
  • Upgrade to Hibernate 6.6.0.Final #41931
  • Upgrade to HtmlUnit 4.4.0 #41799
  • Upgrade to Infinispan 15.0.7.Final #41800
  • Upgrade to Jakarta Servlet JSP JSTL 3.0.1 #41896
  • Upgrade to Jersey 3.1.8 #41801
  • Upgrade to Jetty 12.0.12 #41829
  • Upgrade to Jetty Reactive HTTPClient 4.0.6 #41802
  • Upgrade to jOOQ 3.19.11 #41897
  • Upgrade to JUnit Jupiter 5.11.0 #41898
  • Upgrade to Kafka 3.8.0 #41803
  • Upgrade to Kotlin 1.9.25 #41804
  • Upgrade to Liquibase 4.29.1 #41805
  • Upgrade to Logback 1.5.7 #41892
  • Upgrade to MariaDB 3.4.1 #41806
  • Upgrade to Maven Deploy Plugin 3.1.3 #41962
  • Upgrade to Maven Failsafe Plugin 3.4.0 #41963
  • Upgrade to Maven Install Plugin 3.1.3 #41964
  • Upgrade to Maven Javadoc Plugin 3.8.0 #41807
  • Upgrade to Maven Surefire Plugin 3.4.0 #41965
  • Upgrade to Micrometer 1.4.0-M2 #41750
  • Upgrade to Micrometer Tracing 1.4.0-M2 #41751
  • Upgrade to MongoDB 5.1.3 #41808
  • Upgrade to MSSQL JDBC 12.8.0.jre11 #41809
  • Upgrade to Neo4j Java Driver 5.23.0 #41756
  • Upgrade to Netty 4.1.112.Final #41810
  • Upgrade to OpenTelemetry 1.41.0 #41811
  • Upgrade to Oracle Database 23.5.0.24.07 #41812
  • Upgrade to Pulsar 3.3.1 #41813
  • Upgrade to Pulsar Reactive 0.5.7 #41899
  • Upgrade to Rabbit Stream Client 0.17.0 #41900
  • Upgrade to Reactor 2024.0.0-M5 #41752
  • Upgrade to RxJava3 3.1.9 #41901
  • Upgrade to Selenium 4.23.1 #41814
  • Upgrade to Selenium HtmlUnit 4.23.0 #41815
  • Upgrade to SLF4J 2.0.16 #41816
  • Upgrade to Spring AMQP 3.2.0-M2 #41823
  • Upgrade to Spring Authorization Server 1.4.0-M1 #41758
  • Upgrade to Spring Data Bom 2024.0.3 #41902
  • Upgrade to Spring Framework 6.2.0-M7 #41753
  • Upgrade to Spring HATEOAS 2.3.2 #41903
  • Upgrade to Spring Integration 6.4.0-M2 #41822
  • Upgrade to Spring Kafka 3.3.0-M2 #41821
  • Upgrade to Spring LDAP 3.2.6 #41754
  • Upgrade to Spring Pulsar 1.2.0-M1 #41759
  • Upgrade to Spring Retry 2.0.8 #41955
  • Upgrade to Spring Security 6.4.0-M3 #41986
  • Upgrade to Spring Session 3.4.0-M2 #41760
  • Upgrade to SQLite JDBC 3.46.1.0 #41966
  • Upgrade to Testcontainers 1.20.1 #41818
  • Upgrade to Tomcat 10.1.28 #41819
  • Upgrade to Yasson 3.0.4 #41820

❤️ Contributors

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

@BenchmarkingBuffalo, @PiyalAhmed, @Rajin9601, @cms04, @dreis2211, @eddumelendez, @facewise, @hyunmin0317, @ivamly, @jmewes, @jonatan-ivanov, @jxblum, @lamtrinhdev, @maxhov, @ngocnhan-tran1996, @nkolosnjaji, @onobc, @quaff, @ritzykey, and @ronaldmik

Don't miss a new spring-boot release

NewReleases is sending notifications on new releases.