Skip to content

v4.2.0-RC1

Pre-release
Pre-release

Choose a tag to compare

@spring-builds spring-builds released this 22 Oct 17:04
· 100 commits to main since this release

⭐ New Features

  • Apply the readAllBytes() optimization to deflated nested jar entries #52285
  • Improve uber jar performance by looking up classes and resources directly in nested jars #52246
  • Support RABBITMQ_DEFAULT_VHOST in Docker Compose RabbitMQ integration #51940
  • Support random root passwords in MariaDB and MySQL Docker Compose integration #51938
  • Improve auto-configuration sorting performance #51867
  • Allow properties migrator to fail application startup #51855
  • Add property to enable Caffeine async cache mode #51844
  • Check resource existence once when looking for deleted files #51841
  • Avoid parsing nested jar URLs for cached resource lookups #51827
  • Support provided-scope libraries when extracting an executable war #51372
  • Switch to ubuntu-resolute-builder as the default builder #51249
  • Provide a callback for customizing Tomcat's Server #50259

🐞 Bug Fixes

  • JarUrlClassLoader rejects valid class names since #52271 #52284
  • Resources containing spaces cannot be read from executable jars after #52246 #52280
  • gRPC client 'grpc' load balancing fails to bind with a NullPointerException when no child policies are configured #52269
  • OriginTrackedResource does not implement equals correctly #52268
  • OriginTrackedPropertiesLoader drops properties whose name starts with # or ! #52266
  • Logback ColorConverter unnecessarily parses its options for every log event #52262
  • JWTs are rejected when issuer-uri is empty and jwk-set-uri is set #52261
  • Package manifest attributes are missing for nested jars without directory entries #52259
  • Empty system property in TestPropertyValues is cleared instead of being restored to its empty value #52209
  • Graceful shutdown of Tomcat or Jetty may call back with REQUESTS_ACTIVE when stop is called immediately after shutDownGracefully on an idle server #52199
  • NettyWebServer stop may hang when called immediately after shutDownGracefully #52198
  • Prevent gRPC client properties from overriding user customizations #52194
  • MongoDB fails to connect when credentials contain a space #52169
  • Authentication fails when password configured in spring.elasticsearch.uris contains a colon #52167
  • Logging can be lost when a context is paused by the test context framework #52089
  • Fractions of a second are handled incorrectly when configuring gRPC service config durations #52087
  • Docker Compose support for MongoDB fails to connect when credentials contain a character that requires URL encoding #52085
  • Jersey does not use the endpoint ObjectMapper when Actuator is running on a separate port #51983
  • Configuration property descriptions may be lost when building incrementally with Gradle #51926
  • BasicJsonParser mishandles escaped characters in nested lists and maps #51909
  • Zero week value conversion fails with 'intValue cannot be extracted from WEEKS' exception #51895
  • App fails to start when using DevTools and manually configuring JDBC or R2DBC without spring-boot-jdbc or spring-boot-r2dbc #51891
  • Docker Compose support incorrectly recognizes MARIADB_ALLOW_EMPTY_PASSWORD instead of MARIADB_ALLOW_EMPTY_ROOT_PASSWORD #51889
  • Auto-configured Kotlinx Serialization JSON codec customization is not applied #51878
  • Unavoidable warning when using ubuntu-resolute-builder with tiny run image #51851

📔 Documentation

  • Fix typo in gRPC testing documentation #52188
  • Fix Gradle example for servlet-based gRPC servers #52086
  • Fix actuator endpoint property names in Javadoc #51887
  • Document InetAddressFilter limitations with respect to proxy servers #51864

🔨 Dependency Upgrades

❤️ Contributors

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

@CCCLL, @LindseyZ1205, @MycroCosmo, @NotAFlightRisk, @aalsanie, @anthonydahanne, @challa, @crapxxi, @dmitrysulman, @galenzo17, @geonheeryu, @hunseonglee, @janwaleed09, @khopland, @ksky8864, @lavinhoque33, @move-hoon, @ngocnhan-tran1996, @noojung, @ohchanKyu, @padosol, @rvullriede, @ryujungkyun, @scordio, @sharanrenukeshbharmshetty, @skdas20, @timtebeek, @xoruddl, and @zhoubiao188