2 hours ago
spring-framework

v7.1.0-RC2

⭐ New Features

  • Refine PropertyPath support #37642
  • Deprecate AutoPopulatingList for removal #37639
  • Copy builder lists in HttpServiceProxyFactory #37601
  • Align generics in ExceptionTypeFilter constructors #37598
  • Copy includes and excludes in RetryPolicy.Builder #37596
  • Reject space-separated profile names in expressions #37595
  • Reject profile expressions with missing operators or operands #37593
  • Detect alias circles when resolving alias targets #37585
  • Stop basing PropertySource.toString() output on the log level #37540
  • Make in-memory multipart Part content repeatable #37531
  • Use SqlParameterSource as-is in SqlParameterSourceUtils.createBatch() #37524
  • Use toSqlParameterSource in StatementSpec.paramSource(Object) #37501
  • Resolve DataClassRowMapper columns via ResultSetMetaData instead of findColumn exceptions #37329
  • Deep copy default headers, cookies in client builders #37325
  • Honor If-Range for resource range requests #37218
  • Validate namespace and local name in require #36915

🐞 Bug Fixes

  • Honor ignoreUnknownFields for invalid property paths in DataBinder #37641
  • Double negation in profile expressions is parsed incorrectly #37594
  • Detect overflow for floating-point numbers in NumberUtils #37586
  • Add JSON Lines to ProtobufJsonEncoder media types #37559
  • Require semicolon before MIME type parameters #37545
  • Avoid leaking temp file when disk limit is exceeded in PartGenerator #37534

📔 Documentation

  • Improve FieldError constructor Javadoc #37533
  • Document LocaleContextHolder inheritable behavior #36853

🔨 Dependency Upgrades

  • Upgrade to AspectJ 1.9.27 for Java 27 support #37572
  • Upgrade to Micrometer 1.18.0-RC2 #37633

❤️ Contributors

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

@Gimini-3, @Tanishq-Choudhary, @benelog, @cfcromn, @christianaurichzm, @guanchengang, @junhyeong9812, @kimseongchan0914, @lejuho, @lim950808, @namest504, and @padosol

2 hours ago
spring-boot

v4.2.0-RC2

⭐ New Features

  • Remove LDAP SSL reload support #52365
  • Add support for X-Forwarded-Prefix with Reactor Netty #52316

🐞 Bug Fixes

  • Setting management.observations.conventions to open-telemetry enables neither semantic convention #52619
  • PushGatewayTaskScheduler does not correctly shutdown task scheduler when context is closed #52591
  • ClearCachesApplicationListener does not find inherited clearCache() methods #52589
  • MongoTransactionManager created by BatchDataMongoAutoConfiguration is not customized by TransactionManagerCustomizers #52572
  • Configuration processor does not handle known types when they are fully-qualified #52571
  • Invalid AMQP Rabbit host is reported with the wrong value #52568
  • Avoid premature overflow when converting durations to microseconds #52561
  • Binding a value from a config tree fails after a collection of the same element type has been bound from the same config tree #52559
  • JsonWriter writes invalid JSON when usingPairs is used with a named member #52549
  • Logback GELF structured logging writes a null short_message when the log message is null #52547
  • Auto-configured KafkaTransactionManager is not customized by TransactionManagerCustomizers #52542
  • Custom layers in the Gradle plugin include excluded content instead of excluding it #52540
  • RabbitMQ addresses without a port use the AMQP port when SSL is enabled #52538
  • BasicJsonParser does not decode \b, \f, \n, \r, \t and \uXXXX escape sequences #52534
  • NestedJarFile.getComment() fails with an EOFException when the jar has no comment #52513
  • Plain text thread dump reports threads in Object.wait() as parking on Java 19+ #52511
  • When using both spring-boot-amqp-rabbitmq and spring-boot-rabbitmq health information from the latter is lost #52506
  • JSON parse failures no longer produce DockerOutputParseExceptions #52500
  • ECS structured logging writes empty service and service.node objects #52497
  • ConfigurationMetadataAnnotationProcessor produces non-repeatable output if multiple endpoints share the same ID #52494
  • Graceful shutdown does not wait for active requests after a restart of Tomcat or Jetty #52490
  • RabbitMQ uses the wrong port by default when an SSL bundle is configured #52488
  • Auto-configured R2dbcTransactionManager is not customized by TransactionManagerCustomizers #52485
  • JsonWriter writes NaN and infinite values as invalid JSON #52483
  • ZipEndOfCentralDirectoryRecord finds the record signature inside the zip comment #52481
  • LLdap Docker Compose support fails to connect when LLDAP_LDAP_USER_DN is configured #52475
  • ZipContent.Entry hasNameStartingWith ignores the offset of virtualized nested directory names #52464
  • ZipContent cannot open a zip with data after the end of central directory record #52461
  • ZipContent reads the zip comment from the wrong position when the archive has prefixed data #52459
  • Root logger configuration cannot be retrieved and has no configured level with Log4j2 #52455
  • Docker Compose OTLP integration requires gRPC and HTTP ports to be exposed when only HTTP is used #52451
  • Spring Batch JDBC auto-configuration connects to the database on startup to detect its type, with no way to configure it #52449
  • OnAvailableEndpointCondition caches retain closed application contexts through their Environment #52447
  • DataSourceTransactionManagerAutoConfiguration uses an old and no-longer-supported property to control exception translation #52445
  • Tomcat's new 'maxLocaleCount' property cannot be easily configured #52443
  • DevTools leaks a File Watcher thread for every failed restart #52441
  • SSL bundle ciphers and enabled protocols are sometimes silently ignored when the underlying component does not support their configuration #52438
  • AMQP 1.0 should not set any credential to use ANONYMOUS by default #52435
  • Default RabbitMQ AMQP 1.0 port to 5671 when an SSL bundle is configured #52432
  • Hikari does not register its own MBeans when lazy connection fetching is used with JMX enabled #52426
  • SSL bundle ciphers and enabled protocols are ignored by RabbitMQ clients #52416
  • SSL bundle ciphers and enabled protocols are ignored by Kafka clients #52413
  • Health endpoint fails with an internal error for a path with an unknown intermediate segment #52411
  • Servlet application fails to start when both JWT and opaque token resource server properties are configured #52409
  • Runners can be invoked after the application context has closed during startup #52408
  • Binding @ConfigurationProperties beans concurrently can corrupt BoundConfigurationProperties and fail the bind #52406
  • Auto-configured JavaMailSender does not apply SSL bundle ciphers or enabled protocols #52404
  • Class path root cannot be resolved in executable jars after #52246 #52402
  • Kotlin Serialization does not back off when JSON-B is the only JSON converter #52389
  • Matrix parameters distort the values passed to a match all remaining selector when using WebMvc or WebFlux #52378
  • Server name SSL bundles with upper-case server names are not used with Netty #52364
  • Config data locations with brackets in their path are not loaded correctly #52360
  • Closing the context can hang when Hikari pool suspension is enabled #52359
  • OriginTrackedPropertiesLoader drops the line following a comment that ends with a backslash #52357
  • Closing a child context stops the keep-alive thread #52344
  • MimeMappings copies of DEFAULT are empty and equals is asymmetric #52342
  • StringHttpMessageConverter cannot be overridden with an HTTP message converters customizer #52336
  • ConfigurationPropertyName incorrectly accepts an opening square bracket at the end of a name #52334
  • Directories created by jarmode tools extract make Docker layers non-reproducible #52330
  • Lettuce cluster refresh properties are ignored when the cluster is not configured using spring.data.redis.cluster properties #52328
  • BasicJsonParser mishandles braces within string values #52326
  • MessageSourceMessageInterpolator mishandles unbalanced closing braces #52324
  • BasicJsonParser does not ignore whitespace around the elements of a list #52318
  • ZipContent does not handle nested directory names with multi-byte characters #52315
  • RabbitMQ AMQP 1.0 should not set an empty exchange by default #52305
  • spring.data.redis.database is ignored when configuring master/replica nodes #52189

📔 Documentation

  • Document how to customize the starter parent's repackage execution and main class #52556
  • Fix typos and broken references in gRPC documentation #52543
  • Table of auto-configured ReactiveHealthIndicators does not list the R2DBC indicator #52424
  • Metadata for some health indicator enabled properties is missing #52422
  • Document that test clients are not observed #52418
  • Fix stale configuration metadata hints #52386
  • Fix broken xref in testing documentation #52384

🔨 Dependency Upgrades

❤️ Contributors

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

@CCCLL, @Moaziz667, @RamiDarras, @Ridzzz0Alam, @ShakilUrRehman21, @Tanishq-Choudhary, @b84330808, @beyondwin, @challa, @dalerazimov, @noojung, @quaff, @raunakpandey1, and @zhoubiao188

4 hours ago
Activiti
21 hours ago
selenium

Nightly

What's Changed

New Contributors

Full Changelog: https://github.com/SeleniumHQ/selenium/compare/selenium-4.52.0...nightly