Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(deps): update spring core to v6 (major) and spring boot to v3 (major) - abandoned #13439

Open
wants to merge 16 commits into
base: 7.0.x
Choose a base branch
from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Mar 27, 2024

Mend Renovate

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
org.springframework:spring-context-support 5.3.33 -> 6.1.6 age adoption passing confidence
org.springframework:spring-webmvc 5.3.33 -> 6.1.6 age adoption passing confidence
org.springframework:spring-aspects 5.3.33 -> 6.1.6 age adoption passing confidence
org.springframework:spring-jdbc 5.3.33 -> 6.1.6 age adoption passing confidence
org.springframework:spring-context 5.3.33 -> 6.1.6 age adoption passing confidence
org.springframework:spring-beans 5.3.33 -> 6.1.6 age adoption passing confidence
org.springframework:spring-tx 5.3.33 -> 6.1.6 age adoption passing confidence
org.springframework:spring-core 5.3.33 -> 6.1.6 age adoption passing confidence
org.springframework:spring-web 5.3.33 -> 6.1.6 age adoption passing confidence
org.springframework:spring-test 5.3.33 -> 6.1.6 age adoption passing confidence
org.springframework.boot:spring-boot-test (source) 2.7.18 -> 3.2.5 age adoption passing confidence
org.springframework.boot:spring-boot-autoconfigure (source) 2.7.18 -> 3.2.5 age adoption passing confidence
org.springframework.boot:spring-boot (source) 2.7.18 -> 3.2.5 age adoption passing confidence

Release Notes

spring-projects/spring-boot (org.springframework.boot:spring-boot-test)

v3.2.5

Compare Source

v3.2.4

Compare Source

v3.2.3

Compare Source

⚠️ Noteworthy
  • This release upgrades to Hibernate 6.4.4.Final. While it contains a number of valuable bug fixes, it does not work correctly in a native image. If you are using GraalVM, Hibernate should be temporarily downgraded to 6.4.2.Final using the hibernate.version property.
🐞 Bug Fixes
  • Nested jar URLs can not be resolved if the path contains spaces #​39675
  • Image building runs for a long time when a long image name is used and the tag contains an illegal character #​39638
  • Banner printing doesn't respect set charset #​39621
  • "micrometer.observations.*" configuration properties should be "management.observations.*" #​39600
  • Metadata reading during configuration class parsing uses the default resource loader rather than the application's resource loader #​39598
  • Several gson properties, including spring.gson.disable-html-escaping, do not behave correctly when set to false #​39524
  • Property placeholders aren't resolved when configuration property binding creates a Map from a property value using a converter #​39515
  • Gradle plugin allows the use of Gradle 7.4 but the documented and tested minimum is 7.5 #​39513
  • WebFlux auto-configuration should only configure the blocking executor when virtual threads are enabled #​39469
  • TestcontainersPropertySource assertion has typo #​39449
  • Webflux actuator endpoints respond with 500 when a parameter is missing #​39444
  • NoSuchMethod error when using the non-shaded Pulsar client and configuring authentications parameters #​39389
  • Jetty GracefulShutdown writes to System.out #​39360
  • Building images fails with Docker 25.0 when custom buildpacks are configured #​39347
  • Creating a RestClient from a RestTemplateBuilder-created RestTemplate requires double configuration of the baseUrl/rootUri #​39317
  • Auto-configured ConcurrentPulsarListenerContainerFactory and PulsarConsumerFactory cannot be injected into injection points with specific generic type information #​39308
  • Startup failure when you have multiple @DynamicPropertySources in Spring Boot 3.2.2 #​39297
  • Mockito's MockedStatic isn't closed in all cases #​39272
  • TracingProperties exposes package-private PropagationType from public methods #​39268
📔 Documentation
  • Add note regarding mixing of bundle-based and direct SSL configuration #​39641
  • Add link to Pulsar workaround when using environment variables for authentication #​39630
  • Document that task executor pool size properties are ignored when using virtual threads #​39629
  • Document default value for show-value configuration properties #​39596
  • Clarify that configuration properties only apply to the auto-configured OpenTelemetry Resource bean #​39509
  • Update the Debugging Documentation of the Spring Boot Maven Plugin #​39422
  • Awaitility link in Test Scoped Dependencies is incorrect #​39415
  • Fixed NestedJarFile constructor javadoc #​39285
  • Endpoint documentation contains the typo 'Unuthorized' #​39280
  • Update Revved up by Develocity badge #​39263
🔨 Dependency Upgrades
❤️ Contributors

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

@​PiyalAhmed, @​Tish17, @​amritagg, @​dependabot[bot], @​eddumelendez, @​erichaagdev, @​gdmrw, @​jonas-grgt, @​kilink, @​lukasdo, @​okohub, @​onobc, @​ramilS, @​slovi, @​smurf667, @​snicoll, @​totti-dev, @​vj-atlassian, @​vjh0107, @​wanger26, and @​xpmxf4

v3.2.2

Compare Source

⚠️ Noteworthy Changes

  • Automatically enabling support for Micrometer's observation annotations when AspectJ is on the classpath has proven to be too much. A new property, micrometer.observations.annotations.enabled, has been introduced. It defaults to false. Set it to true to restore the previous behavior #​39128

🐞 Bug Fixes

  • SslBundle implementations do not provide useful toString() results #​39167
  • JarEntry.getComment() returns incorrect result from NestedJarFile instances #​39166
  • Mixing PEM and JKS certificate material in server.ssl properties does not work #​39158
  • Having AspectJ and Micrometer on the classpath is not a strong enough signal to enable support for Micrometer observation annotations #​39128
  • Actuator endpoints with no operations that use selectors are not accessible when mapped to / #​39122
  • Spring Boot 3.2 app that uses WebFlux, Security, and Actuator may fail to start due to a missing authentication manager #​39096
  • management.observations.http.server.requests.name no longer has any effect #​39083
  • spring.rabbitmq.listener.stream.auto-startup property has no effect #​39078
  • Error mark in the log message for PatternParseException is in the wrong place #​39075
  • Configuring server.jetty.max-connections has no effect #​39052
  • @ConfigurationPropertiesBinding converters that rely on initial CharSequence to String conversion no longer work #​39051
  • Manifest attributes cannot be resolved with the new loader implementation #​38996
  • Throwable from logging system initialization may result in the application silently failing to start #​38963
  • When using Jetty, idle timeout for IO operations and delayed dispatch cannot be set to less than 30000ms #​38960
  • spring-boot-maven-plugin repackage uber jar execution fails when jar is put on WSL network drive #​38956
  • Oracle OJDBC BOM version is flagged not for production use #​38943
  • Connection leak when using jOOQ and spring.jooq.sql-dialect has not been set #​38924
  • AutoConfigurationSorter does not always respect @AutoConfigureOrder(Ordered.LOWEST_PRECEDENCE) #​38916
  • Containers are not started when using @ImportTestcontainers #​38913
  • Even when spring.security.user.name or spring.security.user.password has been configured, user details auto-configuration still backs off when resource server is on the classpath #​38864
  • MockRestServiceServerAutoConfiguration with RestTemplate and RestClient together throws incorrect exception #​38820

📔 Documentation

  • Improve "Sanitize Sensitive Values" section in reference documentation #​39199
  • Fix link to Log4j2's JDK logging adapter documentation #​39171
  • Update CRaC support status link #​39170
  • Remove entry for OCI starter as it is no longer maintained #​39165
  • Update links to Micrometer docs in metrics section of reference docs #​39149
  • Use the term "tags" in documentation consistently #​39125
  • Correct the documentation on injecting dependencies into FailureAnalyzer implementations #​39100
  • Polish reference documentation #​38942
  • Document virtual threads limitations #​38883

🔨 Dependency Upgrades

❤️ Contributors

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

@​724thomas, @​BenchmarkingBuffalo, @​FBibonne, @​Wzy19930507, @​amparab, @​dependabot[bot], @​dreis2211, @​okohub, @​onobc, @​sdeleuze, @​skcskitano, and @​tobias-lippert

v3.2.1

Compare Source

⭐ New Features

🐞 Bug Fixes

  • HibernateJpaAutoConfiguration should be applied before DataSourceTransactionManagerAutoConfiguration #​38880
  • META-INF entries are duplicated under BOOT-INF/classes causing "Conflicting persistence unit definitions" error #​38862
  • logging.include-application-name has no effect when using log4j2 #​38847
  • Pulsar authentication param properties cause IllegalStateException with Pulsar Client 3.1.0 #​38839
  • Child context created with SpringApplicationBuilder runs parents runners #​38837
  • getSigners() info is lost for signed jars when using the new loader implementation with requiresUnpack #​38833
  • TestContainers parallel initialization doesn't work properly #​38831
  • Zip file closed exceptions can be thrown due to StaticResourceJars closing jars from cached connections #​38770
  • Multi-byte filenames in zip files can cause an endless loop in ZipString.hash #​38751
  • Gradle task "bootJar" fails with "Failed to get permissions" when using Gradle 8.6-milestone-1 #​38741
  • Custom binding converters are ignored when working with collection types #​38734
  • WebFlux and resource server auto-configuration may fail due to null authentication manager #​38713
  • It is unclear that Docker Compose services have not been started as one or more is already running #​38661
  • Spring Boot jar launcher does not work in folders containing certain chars #​38660
  • FileNotFoundException is thrown eagerly from unused SSL bundles #​38659
  • NoUniqueBeanDefinitionFailureAnalyzer does not account for the fact that missing '-parameters' may be the cause #​38652
  • Traces are propagated if tracing is disabled #​38641
  • Missing registry auto-configuration for JMS listener observation support #​38613
  • Class loading fails on an interrupted thread causing com.mongodb.event.ServerClosedEvent to fail to load when Mongo detects a cluster change #​38611
  • Failures due to code not being compiled with '-parameters' are hard to identify #​38603
  • System SSL certificates are not used by the Apache HTTP Client in a RestTemplate built with RestTemplateBuilder #​38600
  • ZipFileSystem throws "java.util.zip.ZipException: read CEN tables failed" with certain nested jars #​38595
  • Nested jar URLs cannot be split and reassembled resulting in errors with projects that use this technique (such as JobRunr) #​38592
  • NoSuchMethodError can be thrown from Session.getCookie() due to binary incompatibilty #​38589
  • management.metrics.tags has been deprecated without a replacement working for all metrics #​38583
  • NegativeArraySizeException can be thrown from org.springframework.boot.loader.zip.ZipContent$Loader #​38572
  • Migration form 3.1.5 to 3.2.0 : "Default" Tracer is not provided in test anymore #​38568
  • TomcatWebServer stop doesn't close sockets for additional connectors #​38564
  • Port is already in use when using @SpringBootTest with a separate management port and a mock web environment #​38554
  • Keep-alive property causes processAot step to never finish #​38531
  • Setting 'spring.task.scheduling.shutdown.await-termination-period' does not result in a call to SimpleAsyncTaskScheduler#taskTerminationTimeout #​38530
  • Setting 'spring.task.execution.shutdown.await-termination-period' does not result in a call to SimpleAsyncTaskExecutor#taskTerminationTimeout #​38528
  • Nested URLs return null from classLoader.getResource("") causing ClassPathResource failures #​38524
  • Spring Boot 3.2 is not compatible with older versions of Liquibase #​38522
  • Controller level exceptions not getting populated in HTTP server requests metrics #​33731

📔 Documentation

  • Fix typo #​38879
  • Add the LangChain4J Spring Boot Starter to the list of community starters #​38776
  • Document prerequisites for Docker Compose support #​38764
  • Update Dynatrace documentation links #​38725
  • Correct references to Jetty's HTTP2 server module #​38632
  • Fix Observation Filter docs #​38586
  • Reinstate mention of testAndDevelopmentOnly when using Testcontainers at dev time #​38571

🔨 Dependency Upgrades

❤️ Contributors

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

@​SandraAhlgrimm, @​aleksandrserbin, @​cachescrubber, @​dependabot[bot], @​gavlyukovskiy, @​ilies-bel, @​meiyese, @​onobc, @​pirgeo, @​quaff, @​shin-mallang, and @​tomfrenken

v3.2.0

Compare Source

⭐ New Features
  • Auto-configure observations for RestClients #​38500
  • Add support for Oracle Free, the replacement for Oracle XE, with Testcontainers and Docker Compose #​38476
  • Provide dependency management for org.crac:crac #​38378
  • Add new properties for Liquibase 4.24.0 #​38274
  • Provide a way to create custom ApplicationContextFactory in SpringBootContextLoader #​38205
  • Report friendly error when failing to find AOT initializer #​38188
🐞 Bug Fixes
  • Annotation based ConditionalOnBean checks can cause early initialization of FactoryBeans #​38507
  • CRaC restoration fails when Actuator's running on a separate port #​38502
  • App that depends on Tomcat and on Jetty's websocket-server module fails to start with IllegalStateException: WebSocketComponents has not been created #​38286
  • App fails to start with a NoSuchMethodError when using Flyway 10.0.0 #​38268
  • MeterRegistry throws BeanCreationNotAllowedException on shutdown #​38240
  • Resolution of productionRuntimeClasspath configuration may select the wrong variant and contain a dependency's source jar #​38233
  • Docker JSON parsing fails on certain locales #​38220
  • FileNotFoundException is thrown serving resources due to JarUrlConnection.getLastModified() returning zero #​38204
  • Failed to extract parameter names exception thrown when binding with non-enumerable property source #​38201
  • Spring Boot 3.2.0-RC1 application fails on JDK with CRaC but without a dependency on org.crac:crac #​38186
  • Missing configuration processing for PartEvent support #​37642
📔 Documentation
  • Document supported SQL comment prefixes #​38496
  • Update access log pattern documentation to align with changes in Tomcat 10 #​38425
  • Update Dynatrace docs with info about the meter metadata toggle #​38368
  • Improve documentation regarding tracing in tests #​38362
  • Document the accepted inputs when configuring tags on spring-boot:build-image and bootBuildImage #​38354
  • Document how to use cloudfoundry specific actuators with a custom base path for webflux applications #​38353
  • Document Liberica JDK with CRaC #​38350
  • Add a Restarting a stopped or failed Job section to the batch howto #​38341
  • Clarify documentation on importing Testcontainer declarations and using @ServiceConnection or @DynamicPropertySource #​38337
  • Make distinction between Testcontainers for integration tests and development more clear in documentation #​38336
  • When using Testcontainers at development time with @ServiceConnection on a @Bean method, describe when to use the name attribute and why #​38335
  • Fix link to Elasticsearch health indicator #​38334
  • Update Spring Framework documentation links #​38289
  • Code sample in "Developing Your First Spring Boot Application" does not work #​38272
  • Improve --help and documentation for "encodepassword -a/--algorithm" in the Spring Boot CLI #​38249
  • Add how-to documentation for test-only database migrations with Flyway/Liquibase #​38231
  • Document that PEM content can be used directly in application.yaml #​38215
  • Document that TomcatConnectorCustomizers are not applied to additional connectors #​38198
🔨 Dependency Upgrades
❤️ Contributors

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

@​EvaristeGalois11, @​PENEKhun, @​abdullah-jaffer, @​audtjddld, @​cachescrubber, @​dreis2211, @​eddumelendez, @​izeye, @​jonatan-ivanov, @​pirgeo, @​quaff, and @​sdeleuze

v3.1.11

Compare Source

v3.1.10

Compare Source

v3.1.9

Compare Source

⚠️ Noteworthy
  • This release upgrades to Hibernate 6.2.22.Final. While it contains a number of valuable bug fixes, it does not work correctly in a native image. If you are using GraalVM, Hibernate should be temporarily downgraded to 6.2.20.Final using the hibernate.version property.
🐞 Bug Fixes
  • Image building runs for a long time when a long image name is used and the tag contains an illegal character #​39617
  • Banner printing doesn't respect set charset #​39601
  • Gradle plugin allows the use of Gradle 7.4 but the documented and tested minimum is 7.5 #​39508
  • Property placeholders aren't resolved when configuration property binding creates a Map from a property value using a converter #​39507
  • Several gson properties, including spring.gson.disable-html-escaping, do not behave correctly when set to false #​39504
  • TestcontainersPropertySource assertion has typo #​39440
  • Building images fails with Docker 25.0 when custom buildpacks are configured #​39323
  • Metadata reading during configuration class parsing uses the default resource loader rather than the application's resource loader #​39321
  • Mockito's MockedStatic isn't closed in all cases #​39271
  • TracingProperties exposes package-private PropagationType from public methods #​39265
  • Webflux actuator endpoints respond with 500 when a parameter is missing #​39236
📔 Documentation
  • Add note regarding mixing of bundle-based and direct SSL configuration #​39616
  • Document default value for show-value configuration properties #​39589
  • Update the Debugging Documentation of the Spring Boot Maven Plugin #​39392
  • Endpoint documentation contains the typo 'Unuthorized' #​39279
  • Update Revved up by Develocity badge #​39242
🔨 Dependency Upgrades
❤️ Contributors

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

@​amritagg, @​dependabot[bot], @​erichaagdev, @​gdmrw, @​lukasdo, @​smurf667, @​snicoll, @​totti-dev, @​vj-atlassian, @​vjh0107, and @​wanger26

v3.1.8

Compare Source

🐞 Bug Fixes

  • SslBundle implementations do not provide useful toString() results #​39137
  • Mixing PEM and JKS certificate material in server.ssl properties does not work #​39105
  • spring.rabbitmq.listener.stream.auto-startup property has no effect #​39072
  • Error mark in the log message for PatternParseException is in the wrong place #​38944
  • AutoConfigurationSorter does not always respect @AutoConfigureOrder(Ordered.LOWEST_PRECEDENCE) #​38904
  • Throwable from logging system initialization may result in the application silently failing to start #​38885
  • Actuator endpoints with no operations that use selectors are not accessible when mapped to / #​35426

📔 Documentation

  • Remove entry for OCI starter as it is no longer maintained #​39164
  • Fix link to Log4j2's JDK logging adapter documentation #​39163
  • Update links to Micrometer docs in metrics section of reference docs #​39114
  • Correct the documentation on injecting dependencies into FailureAnalyzer implementations #​39099
  • Improve "Sanitize Sensitive Values" section in reference documentation #​39094

🔨 Dependency Upgrades

❤️ Contributors

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

@​BenchmarkingBuffalo, @​FBibonne, @​Wzy19930507, @​amparab, @​dependabot[bot], @​dreis2211, and @​tobias-lippert

[v3.1.7]

spring-projects/spring-framework (org.springframework:spring-context-support)

v6.1.6

Compare Source

⭐ New Features

  • Log column type for limited support message in JdbcUtils.getResultSetValue #​32601
  • Consistent support for generic FactoryBean type matching when using getBeanProvider #​32590
  • @RequestParam binding does not support params with an empty array "[]" suffix #​32577
  • Maximum Request Size handling support for Undertow in StandardMultipartHttpServletRequest #​32549
  • Introduce common support for is-null-safe checks in SpEL nodes #​32516
  • Avoid additional unnecessary Annotation array cloning in TypeDescriptor #​32476
  • Avoid cloning empty Annotation array in TypeDescriptor #​32405

🐞 Bug Fixes

  • Refine scheme, userinfo, host and port parsing in UriComponentsBuilder #​32616
  • "GET must not have a request body" exception with OkhttpClient and BufferingClientHttpRequestFactory #​32612
  • JMSTemplate.sendAndReceive does not propagate tracer over the wire #​32606
  • Calling Kotlin suspend functions in non-reactive application crashes due to unresolvable class #​32599
  • MethodIntrospector.selectMethods() fails to detect bridge methods across ApplicationContexts #​32586
  • Fix handling value class with private constructor on proxy #​32536
  • ReactorNettyClientResponse should not dispose connection #​32528
  • CompoundExpression omits null-safe syntax in AST string representation of null-safe selection/projection in SpEL #​32515
  • Generic Kotlin controllers got broken in 6.1.5 #​32510
  • WebFlux Blocking controller runs on non-blocking thread when request input data present #​32502
  • Generic interface on FactoryBean class not autowired in case of targetType mismatch #​32489
  • HeaderContentNegotiationStrategy.resolveMediaTypes() throws unexpected InvalidMimeTypeException #​32483
  • JmsUtils.commitIfNecessary catches and ignores JMS IllegalStateException, losing message with ActiveMQ Artemis #​32473
  • Missing bean class in native image with a Kotlin nested class #​32472
  • Spring MVC re-creates form data from request params and re-encoding can change the content-length #​32471
  • Unhandled JMS exceptions are not always recorded as observation errors #​32458
  • Consistently apply TaskDecorator to ManagedExecutorService as well #​32455

📔 Documentation

  • SimpleAsyncTaskScheduler: Returned ScheduledFuture does not track provided task execution #​32589
  • Remove link to unrelated method in javadoc of AnnotatedBeanDefinitionReader #​32560
  • Fix typos and improve wording in reference documentation #​32557
  • Document that active profiles are set at build time with AOT #​32543
  • Fix broken link to vavr in the reference guide #​32494
  • Document AOT limitations related to Kotlin identifiers with backticks #​32487
  • Add Javadoc since to AbstractClientHttpRequestFactoryWrapper.getDelegate() #​32474
  • Default strategy for ProblemDetail error codes wrongly document how "detail" is supported #​32446

🔨 Dependency Upgrades

❤️ Contributors

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

@​Banuelorigni, @​LinorDolev, @​T45K, @​izeye, @​kilink, @​quaff, and @​qww1552

v6.1.5

Compare Source

v6.1.4

Compare Source

⭐ New Features

  • Add missing RequestPredicate variants in coRouter #​32256
  • Adapt ConcurrencyThrottleSupport to use ReentrantLock for better virtual thread support #​32251
  • Create optimized versions of request predicates #​32244
  • Include function name in SpelMessage.INCORRECT\_NUMBER\_OF\_ARGUMENTS\_TO\_FUNCTION #​32239
  • Add Coroutines support to NonReactiveHandlerMethodPredicate #​32227
  • RouterFunctionMapping does not implement MatchableHandlerMapping #​32221
  • Initialize (another) Map with correct size in RequestPredicates #​32215
  • Make SmartLifecycle phase value configurable in STOMP message handling components #​32205
  • Initialize Map with correct size in RequestPredicates #​32201
  • Let BeanPropertyRowMapper subclasses customize mapped names #​32199
  • Improve client and server handling of STOMP heartbeat failures #​32195
  • Optimize Map methods in ServletAttributesMap #​32189
  • Support binary streams with JdbcClient #​32161
  • Annotate core functional SPIs in SpEL with @FunctionalInterface #​32135
  • Cannot use SimpleJdbcInsert with catalog name #​32124
  • Refactor ReloadableResourceBundleMessageSource #​32118
  • Reuse MapPropertySource for DynamicValuesPropertySource implementation (as a template for custom variants) #​32110
  • Improve Spring AOP performance for methods without specific advice #​32104
  • Make it possible to configure any TaskExecutor through ChannelRegistration #​32081
  • Add support for JSON streams to Kotlin Serialization #​32074
  • Avoid reflecting to obtain validationGroups every time the call is made #​32068
  • Reject @RequestMapping and @HttpExchange declarations on the same element #​32065
  • Missing toString for ExponentialBackOff #​32061
  • Reject multiple @HttpExchange declarations on the same element #​32049
  • ClientAbortException from StreamingResponseBody can cause infinite loop of dispatches #​32042
  • Log warning if multiple @PostMapping, @GetMapping, etc. annotations are declared #​31962
  • Using types in @SessionAttributes is sometimes not reflected in the model #​30463
  • Improve read publisher cancel handling to avoid connections in CLOSE_WAIT state with WebSocket on Tomcat #​30393
  • Provide more control over JPA entities scanning #​27892
  • Provide and document a way to handle single-page application redirects #​27257
  • MockMvcClientHttpRequestFactory swallows ServletResponse.errorMessage #​26720

🐞 Bug Fixes

  • Cannot send Server-Sent Events without data using WebMvc.fn SseBuilder #​32270
  • Fix pathExtension null-safety in Kotlin DSLs #​32254
  • SimpleEvaluationContext.Builder is not final and has a public constructor #​32253
  • @JsonDeserialize(builder = ...) does not work in GraalVM native image #​32238
  • RestClientAdapter claims it supports request attributes when it does not #​32232
  • ThreadPoolTaskExecutor rejecting tasks as soon as the context has been closed can lead to exceptions during web app shutdown #​32226
  • Consistent parsing of user information in UriComponentsBuilder #​32211
  • "IllegalStateException: Cannot call sendError() after the response has been committed" when IOException is thrown during resolving method argument values on Tomcat >= 10.1.16 #​32206
  • No longer able to override the toString() in HandlerMethod from 6.1.3 #​32184
  • 6.1.3 regression: aspect not called with multiple inheritance #​32181
  • Unable to use baseUrl on builders created from RestTemplate #​32180
  • MessageDeliveryException on shutdown with open WebSocket connections #​32171
  • With XML configuration, setter selection can be random in case of overloaded setter methods (e.g. on SimpleClientHttpRequestFactory in 6.1.3 from convertForProperty method) #​32159
  • Cannot process AOT when spring-orm is on the classpath without JPA #​32155
  • SpEL's Indexer.setArrayElement() incorrectly requests conversion to wrapper instead of primitive #​32147
  • SpEL increment and decrement operators do not generate prefix AST representation #​32144
  • Validation of PartEventHttpMessageReader#maxParts is off by one #​32122
  • QualifierAnnotationAutowireCandidateResolver.checkQualifier does identity checks when comparing arrays used as qualifier fields #​32106
  • Guard against multiple body subscriptions in Jetty and JDK reactive responses #​32100
  • Parameter based cache keys on repository methods can't resolve after 6.1.2->6.1.3 #​32087
  • Exceptions thrown by custom error handlers are not recorded in RestTemplate observations #​32060
  • Static resources caching issues with ShallowEtagHeaderFilter and Jetty caching directives #​32039
  • RestClient calls interceptors from RestTemplate twice #​32038
  • DefaultRestClientBuilder.defaultRequest(...) doesn't do anything #​32028
  • Alias resolution error message in SimpleAliasRegistry is misleading #​32025
  • Destroy method not found in Native image for ExecutorService Bean type #​32006
  • RequestPredicate fails with WebFlux 6.1.2 #​31955
  • ChannelSendOperator.WriteBarrier race condition in request(long) method leads to response being dropped #​31865

📔 Documentation

  • Fix Kotlin syntax errors in RestClient builder example in rest-clients.adoc #​32265
  • Use double dot in "META-INF/aop.xml" documentation #​32264
  • Document that functions are variables in SpEL EvaluationContexts #​32258
  • Add section on AOT best practices about registering beans programmatically #​32241
  • Add section on AOT best practices about registering singletons #​32240
  • Fixes syntax error in JdbcClient examples #​32236
  • Document @RequestAttribute in HTTP clients #​32231
  • Fix typo in beanvalidation.adoc #​32218
  • Variables definition fixed #​32216
  • Document safe navigation support for collection selection/projection in SpEL #​32208
  • Document usage of SpEL's power operator in the reference manual #​32187
  • Document support for overloading operators in SpEL #​32182
  • Update basics.adoc #​32145
  • Document between operator in SpEL #​32140
  • Update documentation for supported letters in variable names in SpEL #​32138
  • Document repeat and characer subtraction String operators in SpEL #​32137
  • Document increment and decrement operators in SpEL #​32136
  • Document cron-vs-quartz parsing convention for dayOfWeek part in CronExpression #​32128
  • Fix typo #​32111
  • Graceful shutdown does not cancel @Scheduled tasks #​32109
  • Fixes atlas-extension order #​32083
  • Spring MVC and WebFlux docs need to say method validation applies if any method parameter has constraint annotations #​32082
  • Add @see PathPattern to function router methods with a pattern parameter #​32045
  • Rename class-data-sharing.html to cds.html #​32044
  • Enable table striping by default in the reference manual #​32022
  • Document that Conditions can be ordered #​32019
  • Document how @JvmName could mitigate Kotlin internal modifier impact #​32010
  • Update docs on server side use of @HttpExchange to make it more clear when it is a good fit #​32008
  • Document safe navigation semantics within compound expressions in SpEL #​21827
  • Document limitation of SpEL regarding minimum values for numeric literals #​20779

🔨 Dependency Upgrades

  • Upgrade to Micrometer 1.12.3 and Context Propagation 1.1.1 #​32277
  • Upgrade to Reactor 2023.0.3 #​32274

❤️ Contributors

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

@​1515biubiubiu, @​Akaame, @​OlgaMaciaszek, @​andreibastun, @​cirusthenter, @​erichaagdev, @​jee14, @​jmondo, @​kilink, @​kzander91, @​mnhock, @​quaff, @​rotilho, @​rwinch, @​senocak, @​spencergibb, and @​wfouche

v6.1.3

Compare Source

⭐ New Features

  • Perform checks for bean validation constraints in HandlerMethod only when needed #​32007
  • Exclude URI query from remaining WebClient checkpoints #​31992
  • Avoid early getMostSpecificMethod resolution in CommonAnnotationBeanPostProcessor #​31967
  • Introduce processInjection() in CommonAnnotationBeanPostProcessor #​31956
  • Make maximum length of SpEL expressions in an ApplicationContext configurable #​31952
  • JdkClientHttpRequest may block indefinitely #​31911
  • Allow Propagation.NOT\_SUPPORTED with @TransactionalEventListener #​31907
  • Review HibernateJpaVendorAdapter to align dialect to use for recent Hibernate versions #​31896
  • Improve method validation support for containers with constraints on container elements #​31887
  • Method validation is not triggered when constraints are applied to the elements of a List #​31870
  • Use standard String comparison in ExtendedBeanInfo.PropertyDescriptorComparator #​31866
  • Detect Jetty 12 "max length exceeded" message for MaxUploadSizeExceededException #​31850
  • Ensure that Observation is stopped and Scope is closed in doReceiveAndExecute() #​31798
  • Support the use of @Resource in test classes in AOT mode #​31733
  • Add support for configuring sslContext in StandardWebSocketClient #​30680
  • Refine allocations for improved memory profile when creating a large amount of proxy instances #​30499
  • Check ResponseStatusException reason as MessageSource code for ProblemDetail #​30300
  • SpringValidatorAdapter fails in getRejectedValue if ValueExtractor used in property path to unwrap a container type #​29043
  • Add CORS support for Private Network Access #​28546
  • Introduce NoOpTaskScheduler for disabling @Scheduled tasks in test setups #​28073
  • MvcUriComponentsBuilder should resolve property placeholders in request mapping paths #​26795
  • Allow SockJsUrlInfo to be overridden in SockJsClient #​25888
  • Extending abstract class does not expose parameter annotations #​25788
  • DatabasePopulatorConfigUtils should only set a populator if matching scripts are defined #​23405
  • @annotation pointcut is not matched with complex hierarchy and generics against classes compiled by Eclipse [SPR-17310] #​21843
  • Allow registration of application event listeners in a functional way [SPR-16872] #​21411
  • Allow CronTrigger to resume from specified timestamp [SPR-14909] #​19475

🐞 Bug Fixes

  • Using a URI variable for port in WebClient causes an IllegalStateException #​32003
  • [spring-tx] Unable to override prepareSynchronization of AbstractPlatformTransactionManager from v6.1.0 #​32000
  • RestClientResponseException handles responseHeaders case-sensitive #​31978
  • CronTrigger hard-codes default ZoneId instead of participating in scheduler-wide Clock setup #​31948
  • HandlerMappingIntrospector is throwing PatternSyntaxException for wildcards in the request URL #​31937
  • java.lang.NullPointerException with Scheduled tasks through DefaultScheduledTaskObservationConvention #​31918
  • HibernateJpaVendorAdapter refers to org.hibernate.dialect.Oracle12cDialect that does not exist in recent Hibernate versions #​31892
  • ClassNotFoundException: org.hibernate.dialect.MySQL57Dialect with Hibernate 6.4 #​31889
  • Inconsistent inclusion of base URL in WebClient URI template attribute since Spring WebFlux 6.1.2 #​31882
  • @Async does not support Unit? return type #​31881
  • Web handlers don't support Kotlin extensions #​31876
  • DefaultDataBuffer fails to transform its content to a string #​31873
  • With XML configuration, setter selection can be random in case of overloaded setter methods (e.g. on SimpleClientHttpRequestFactory in 6.1) #​31872
  • Complete frame callback when opcode is not PONG #​31869
  • @Cacheable does not respect cache hit when empty Mono/Flux response is returned #​31868
  • Unable to use sync cache with reactivestreams #​31861
  • Spring Websocket - JettyWebsocketHandlerAdapter copyByteBuffer fills Buffer with zeros #​31857
  • NullPointerException with @RequestMapping on Kotlin property accessors #​31856
  • Non-deterministic native image JSON hints invalidate Gradle build cache #​31852
  • DefaultServerRequestObservationConvention is silently used when multiple convention beans are defined #​31864
  • Significant increase in memory consumption StringDecoder when splitting input by delimiters. #​31848
  • Convert args to Kotlin value class in CoroutinesUtils #​31846
  • ForwardedHeaderFilter should reject invalid requests #​31842
  • NotReadablePropertyException due to mismatch between ConstraintViolation property path and BindingResult target in MethodValidationAdapter #​31746
  • Built-in method validation validates @RequestBody parameter twice #​31711
  • Double error response handling on suspended methods #​31541
  • Spring AOP does not propagate arguments for dynamic prototype-scoped advice #​28407
  • Only log status in ServletRequestHandledEvent #​27595
  • MergedAnnotation swallows IllegalAccessException for attribute method #​27182
  • AOP pointcut erroneously matching ProceedingJoinPoint.proceed when called from within another advised bean #​26068

📔 Documentation

  • Document exception handling for HTTP Interface client with RestClient and RestTemplate #​31991
  • Update ContentRequestMatchers#multipartData Javadoc #​31988
  • Update Spring Properties section of reference manual #​31987
  • Document Kotlin internal modifier impact on @Bean #​31985
  • Add missing preposition in reference guide #​31977
  • Adapt Jackson2ObjectMapperBuilder documentation to mention ParameterNamesModule registration #​31959
  • Fix typo in kotlin.adoc #​31958
  • Fix references to "application/*+xml" in Javadoc #​31951
  • Update outdated elements in Kotlin reference documentation #​31943
  • Update autowired-qualifiers.adoc to refer the -parameters Java compiler flag #​31939
  • Fix Kotlin example for simpler SELECT variant using IN #​31932
  • Fix usage of WebClientAdapter in reference documentation #​31917
  • With virtual threads enabled, separate fixed-delay tasks cannot run concurrently #​31900
  • Fix formatting in scheduling.adoc #​31899
  • Specify use of regexp Path Pattern in javadoc #​31886
  • Improve the documentation and discoverability of CoWebFilter #​31877
  • Add Javadoc for MockHttpServletResponse getContentLength method #​31833
  • Revisit JdbcClient/JdbcTemplate javadoc for operations that take a KeyHolder #​31486
  • Document that CGLIB cannot proxy package private methods declared in a superclass is in a different package #​28973
  • Doc: ConfigurationClassParser's property source composition requires distinct (Resource)PropertySources names #​28886
  • Provide guidelines in AspectJ documentation to avoid dumps #​27650
  • Document autowiring of ServletRequest and other scoped proxy beans provided by WebApplicationContext #​26201
  • Clarify assisted constructor injection through getBean call with provided arguments #​24955
  • Document behaviour of @Transactional in reactive environments with non-reactive signatures #​23277
  • Thread-safety and visibility issues not documented [SPR-4307] #​8986

🔨 Dependency Upgrades

❤️ Contributors

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

@​0x1306e6d, @​Drezir, @​FBibonne, @​JuHyun419, @​OlgaMaciaszek, @​SuhasBk, @​T45K, @​Yaklede, @​aaronrosser, @​achhibi, @​bohub12, @​dodie, @​dogglezz, @​izeye, @​janjouketjalsma, @​kzander91, @​leonchen83, @​pri88yank, @​quaff, @​scordio, @​slovenlyimp, and @​wfouche

v6.1.2

Compare Source

⭐ New Features
  • Optimize ContentCachingRequestWrapper allocation for known request size #​31834
  • Inherit parent context in coRouter DSL #​31831
  • Declare isStatic and releaseTarget as default methods on TargetSource #​31820
  • Delegation support for JDBC 4.3 ConnectionBuilder and ShardingKeyBuilder #​31795
  • Support for a read-only DataSource in LazyConnectionDataSourceProxy #​31785
  • Add MySQLIdentityColumnMaxValueIncrementer #​31784
  • Introduce overloaded MockPart constructor that accepts the Content-Type #​31757
  • Introduce toString(Charset) in FastByteArrayOutputStream #​31737
  • Avoid byte array copy in getContentAsString #​31731
  • Improve "active" metrics handling in WebClient observations #​31702
  • Make ResourceArrayPropertyEditor supports comma delimited location patterns #​31700
  • Consistently log exceptions from TestExecutionListeners at WARN level #​31688
  • Document need for -parameters flag in exception messages #​31675
  • Improve @RegisterReflectionForBinding for enums #​31570
  • Support direct shard database operation routing in Spring JDBC #​31506
  • Log test aborted/skipped exceptions at INFO level in the TestContext framework #​31479
  • Avoid double proxying for @Resource @Lazy fallback autowiring #​31447
  • Add support for tuning the code generation for bean property values #​31427
  • Avoid race condition in ConcurrentReferenceHashMap #​31008
  • Allow functional bean registration to set bean order (equivalent to @Order) #​30849
  • Allow AOT generated classes to be excluded from code analyzer tools #​30824
  • Error page does not utilize forwarded prefix #​30828
  • Fix SimpleJdbcCall named parameter binding for Sybase ASE #​30231
  • DefaultWebClient ignores baseUrl when setting URI_TEMPLATE_ATTRIBUTE #​30027
  • Avoid eager checkDefaultConnectionProperties call in LazyConnectionDataSourceProxy #​29931
  • Allow TransactionAwareDataSourceProxy to eagerly fetch the connection #​29423
  • Extract common value generator out of BeanDefinitionPropertyValueCodeGenerator #​28999
  • PostgresCallMetaDataProvider should detect current schema as indicated by the JDBC Connection #​28723
  • Implement setMaxTextMessageSize and setMaxBinaryMessageSize in JettyWebSocketSession #​28325
  • Optimize cache used in AutowiredAnnotationBeanPostProcessor #​28293
  • @Async aspect should clear cached executors when different BeanFactory set #​28201
  • Component scanning should be able to ignore encrypted classes with invalid class version #​27691
  • Property to control URL decoding in ServletCookieValueMethodArgumentResolver #​26989
  • Support Predicate- based mappedHandler config in AbstractHandlerExceptionResolver #​26772
  • SimpleJdbcCall with namedBinding=true for MS SQL Server #​26072
  • Improve default setNull performance on PostgreSQL and MS SQL Server (e.g. for NamedParameterJdbcTemplate batch updates) #​25679
🐞 Bug Fixes
  • <replaced-method /> unnecessarily requires explicit arg-type since 6.0 #​31826
  • Avoid nested constructor data binding if there are no request parameters #​31821
  • Custom Init or Destroy method from an interface cannot be invoked in a native image #​31819
  • Avoid potential refresh deadlock with AbstractApplicationContext#registerShutdownHook #​31811
  • Classes proxied by CGLIB produces NPE with coroutine async job on Springboot 3.2.0 #​31809
  • Fix Comparators.nullsLow and Comporators.nullsHigh behavior #​31808
  • MergedAnnotations finds duplicate annotations on method in multi-level interface hierarchy #​31803
  • Pickup coroutineContext saved by CoWebFilter in coRouter #​31793
  • Support for multiple CoWebFilters that change CoroutineContext #​31792
  • TestCompiler should not discover annotation processors on the classpath by default #​31791
  • @Cacheable key generator is called after invoking the cached method in case of a miss #​31789
  • Encountered NotSerializableException for HttpComponentsHeadersAdapter when serializing HttpClientErrorException #​31787
  • Exclude Part from nested constructor binding in WebFlux #​31778
  • Fix condition for "Too many elements" in MimeTypeUtils.sortBySpecificity() #​31769
  • AnnotatedTypeMetadata's getMergedRepeatableAnnotationAttributes() method ignores classValuesAsString #​31768
  • SimpleAsyncTaskScheduler: task with fixed delay stops working after unhandled exception #​31749
  • Spring unable to decode aggregated JSON content #​31747
  • cannot resolve ServerRequest::pathVariable in nested RequestPredicate again #​31732
  • @NotNull on JPA entity not respected in schema generation #​31726
  • @Cacheable throws NullPointerException when encountering cached null value for empty Mono #​31722
  • RestClient ResponseSpec.body() throws an exception instead of returning null if no response body is available #​31719
  • UrlResource getFilename() suddenly returns null for certain paths #​31718
  • DisconnectedClientHelper is missing "AbortedException" #​31717
  • Constructor binding fails for Duration argument if request parameter is not present #​31709
  • TraceId is missing in WebFlux controller handlers #​31706
  • Wrong observation status tag when a Not Found in a webflux application #​31703
  • Correct conversion from Resource[] with length 1 to Collection #​31699
  • @ComponentScan added directly and via a meta-annotation leads to multiple scanning #​31704
  • Unable to use kotlin value classes as function arguments to functions mapping web endpoints #​31698
  • @DisabledInAotMode does not work in native image #​31705
  • GenericTypeResolver does not resolve nested generics - causes issues with Jackson & Spring MVC #​31690
  • DefaultManagedTaskScheduler created manually now throws a NPE if the scheduled executor is not configured #​31751
  • Include Hibernate's Query.scroll() in SharedEntityManagerCreator's queryTerminatingMethods set #​31682
  • TypeDescriptor does not check generics in equals method (for ConversionService caching) #​31672
  • DataBinder fails with "No primary or single unique constructor found for interface MultipartFile" #​31669
  • SpEL expression on a reloadable type can no longer be resolved #​31668
  • Programmatic registration of RequestMappingInfo leads to "IllegalArgumentException: Expected lookup path" #​31662
  • Current Observation.Context missing from WebClient request #​31609
  • Multipart messages with empty parts are not correctly parsed in WebFlux #​30953
  • Always fall back to original method if annotation pointcut used #​30534
  • PathEditor cannot handle absolute Windows paths with forward slashes #​29881
  • @Resource dependency injection fails with AOT/native #​29614
  • Reactor Netty can only get the first cookie value when multiple cookies with the same name exist #​28490
  • Slow SpEL performance due to method sorting in ReflectiveMethodResolver #​28377
  • Cache-busting does not work when lazy-initialization is enabled [#​2548

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about these updates again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate. View repository job log here.

@renovate renovate bot force-pushed the renovate/major-spring-boot branch 2 times, most recently from 6dba1bc to a253c61 Compare April 19, 2024 10:18
@puneetbehl puneetbehl changed the base branch from 6.2.x to 7.0.x April 19, 2024 11:35
@renovate renovate bot force-pushed the renovate/major-spring-boot branch from d3310d7 to 1cce8f5 Compare April 22, 2024 08:30
@renovate renovate bot changed the base branch from 7.0.x to 6.2.x April 22, 2024 08:30
@puneetbehl puneetbehl changed the base branch from 6.2.x to 7.0.x April 22, 2024 10:52
Copy link
Contributor Author

renovate bot commented Apr 22, 2024

Edited/Blocked Notification

Renovate will not automatically rebase this PR, because it does not recognize the last commit author and assumes somebody else may have edited the PR.

You can manually request rebase by checking the rebase/retry box above.

Warning: custom changes will be lost.

Puneet Behl and others added 5 commits April 23, 2024 21:51
* fix(ci): update javaci workflow configurations

add job to publish grails doc for snapshot

* fix(ci): update javaci workflow configurations

only trigger docs when event is push
Puneet Behl added 3 commits April 23, 2024 22:13
copy classes related to AnnotationMetadata reader which are removed in the Spring framework 6 and there is no public replacement available to use.
@puneetbehl puneetbehl changed the title fix(deps): update spring boot to v3 (major) fix(deps): update spring core to v6 (major) and spring boot to v3 (major) Apr 25, 2024
@renovate renovate bot changed the title fix(deps): update spring core to v6 (major) and spring boot to v3 (major) fix(deps): update spring core to v6 (major) and spring boot to v3 (major) - abandoned Apr 30, 2024
Copy link
Contributor Author

renovate bot commented Apr 30, 2024

Autoclosing Skipped

This PR has been flagged for autoclosing. However, it is being skipped due to the branch being already modified. Please close/delete it manually or report a bug if you think this is in error.

Puneet Behl added 6 commits May 3, 2024 08:35
The `org.springframework.web.multipart.commons.CommonsMultipartyResolver` has been superseded by `org.springframework.web.multipart.support.StandardServletMultipartResolver` since all Servlet 5.0+ containers have built-in multipart support now.
As of Spring Framework 5.2, this class has been replaced by SimpleAnnotationMetadataReadingVisitor for internal use within the framework, but there is no public replacement for AnnotationMetadataReadingVisitor.
The SecurityManager and related classes are deprecated for removal.
@CLAassistant
Copy link

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.


Puneet Behl seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.
You have signed the CLA already but the status is still pending? Let us recheck it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants