Skip to content

fix(deps): update dependency org.springframework:spring-web to v6

Ghost User requested to merge renovate/major-spring-core into main

This MR contains the following updates:

Package Change Age Adoption Passing Confidence
org.springframework:spring-web 5.3.26 -> 6.0.7 age adoption passing confidence

Release Notes

spring-projects/spring-framework

v6.0.7

Compare Source

New Features

  • Improve diagnostics in SpEL for matches operator #​30144
  • Improve diagnostics in SpEL for repeated text #​30142
  • Increase scope of regex pattern cache for the SpEL matches operator #​30140
  • Minor updates in HandlerMappingIntrospector #​30127
  • Skip parameter name resolution when not needed in AbstractAutowireCapableBeanFactory #​30103
  • Remove extra copy of headers/cookies in WebClient #​30092
  • Assert non-null arguments in DefaultServerRequestBuilder methods #​30046
  • Jetty 12 support in WebFlux #​29575

:lady_beetle: Bug Fixes

  • Gradle task processAot fails when Bean Validation API present but no provider found #​30130
  • ContentDisposition::parse does not support Windows paths #​30111
  • BindException raised instead of MethodArgumentNotValidException subclass #​30100
  • Ensure reactive transaction rollback on commit error #​30096
  • CaffeineCacheManager getCache method cause thread block #​30066
  • RequestedContentTypeResolver does not ignore quality factor when filtering */* media types #​29915
  • @Autowired/@Value does not work on inner bean in native #​29803
  • Avoid rollback after a commit failure in TransactionalOperator #​27572
  • SpEL: cannot call methods declared in java.lang.Object on a JDK proxy #​25316

📔 Documentation

  • Add anchor rewrites in the reference documentation #​30132
  • Fix minor spacings in webflux docs #​30078
  • Add a list of observations produced by Spring Framework #​30060

🔨 Dependency Upgrades

Contributors

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

@​EnricSala, @​MrCoffee77, @​abelsromero, @​edyda99, @​liupeng12345, @​srivatsa-cfp, and @​yuzawa-san

v6.0.6

Compare Source

New Features

  • Prefer request hostName and hostPort in ReactorServerHttpRequest #​30062
  • Use readNBytes in ByteArrayHttpMessageConverter when contentLength is available #​30010
  • Add missing @Nullable annotations to LogMessage.format methods #​30006
  • Refine CoroutinesUtils#invokeSuspendingFunction contract #​30005
  • @SubscribeMapping method not called when built as native image #​30002
  • Provide method with ContextView instead of Context in ServerWebExchangeContextFilter #​29691
  • Support @Value for record injection #​28774

:lady_beetle: Bug Fixes

  • WebClient now requires scheme #​30053
  • Move HttpServiceProxyFactoryExtensions.kt to spring-web module #​30042
  • AutowireCapableBeanFactory.createBean does not prefer default constructor anymore #​30041
  • Server request URL with spring-webflux 6.0.5 is in resolved IP6 format #​30033
  • PathMatchingResourcePatternResolver can no longer handle paths containing spaces and special characters #​30031
  • Catch defensively exception thrown by validation contraints AOT processing of Kotlin extensions #​30037
  • Fix proxy hint Kotlin extensions #​30025
  • WebFlux fails with WebDAV HTTP methods #​29981
  • NullPointerException if passing an anonymous class to ReflectionsHint#registerType #​29774
  • Native hints for package private methods on custom @Repository class #​29764
  • Native version of webflux/r2dbc failed #​29582
  • Protect JMS connection creation against prepareConnection errors #​29116
  • SingleConnectionFactory - reconnection problem (AMQ Broker) #​29115

📔 Documentation

  • Fix "Configuring a Global Date and Time Format" example #​30034
  • @AspectJ argument name resolution algorithm is outdated in reference manual #​30026
  • Update comment in Javadoc of ServletRequestPathFilter DispatcherServlet relating to DispatcherServlet #​30014
  • Revise AspectJ examples in the reference manual #​30003
  • Revise chomp and fold settings in reference documentation #​30001

🔨 Dependency Upgrades

Contributors

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

@​1004789224, @​1993heqiang, @​AlexElin, @​diguage, @​divcon, @​izeye, @​kilink, @​lenoch7, @​sergiuprdn, @​singhbaljit, and @​violetagg

v6.0.5

Compare Source

New Features

  • Add RFC-8246 "immutable" attribute to CacheControl #​29955
  • Allow MockRest to match header/queryParam value list with one Matcher #​29953
  • DataBuffer should offer restricted access to underlying ByteBuffer #​29943
  • Introduce HttpServiceProxyFactory#createClient Kotlin extension #​29942
  • Support ProblemDetail serialization to XML with Jackson #​29927
  • Refine TransactionalOperator.executeAndAwait nullability #​29919
  • Early support for JDK 21 #​29910
  • StringDecoder causes direct allocation of ByteBuffer #​29889
  • Include all Hibernate query methods in SharedEntityManagerCreator's queryTerminatingMethods set #​29886
  • Add native support for RSocketExchange. #​29877
  • Add @Nullable to ProblemDetail.setProperty value argument #​29868
  • Deprecate obsolete ConcurrentExecutorAdapter for removal in 6.1 #​29865
  • ContentDisposition.toString() should include both regular and extended filename parameter #​29861
  • Refine Jackson2ObjectMapperBuilder#configureFeature exception handling #​29859
  • Flexible constructor resolution in AutowireCapableBeanFactory.createBean(Class) #​29855
  • Optimize CorsConfiguration::checkHeaders #​29853
  • Spring Web RestTemplate http.client.requests Metrics No Longer Have client.name Tag #​29839
  • Allow @Aspect classes to extend concrete @Aspect classes #​29830
  • Custom Constraint Validator not work with native image #​29823
  • Deprecate HttpStatus 103 CHECKPOINT in favor of new EARLY_HINTS #​29816
  • Fix R2dbcTransactionManager debug log: don't log a Mono #​29800
  • Improve generated default name for @JmsListener subscription #​29790
  • Support double-quoted values in HttpHeaders::getValuesAsList #​29785
  • Support method validation for an interface only proxy like an HTTP interface client #​29782
  • ResourceHandlers cannot resolve static resources without wildcard patterns #​29739
  • Release R2DBC connection when cleanup fails in transaction #​29703
  • Spring Webfilters and Kotlin Coroutines #​29672
  • Support "multipart/mixed" and "multipart/related" in DefaultServerWebExchange #​29671
  • @JsonDeserialize(builder = ...) does not work in GraalVM native image #​29646
  • Combined class and method @RequestMapping without patterns should match root path as both "" and "/" #​29625
  • Prefer problem detail media type independent of ordering in Accept header #​29588
  • Restrict forwards in MockMvcWebConnection to 100 #​29557
  • @JsonNaming strategy is not supported in GraalVM native image #​29386
  • SQL supplier in R2DBC DatabaseClient is eagerly invoked #​29367
  • Set reason for WebSocket CloseStatus.SESSION\_NOT\_RELIABLE #​29220
  • HttpComponentsClientHttpConnector hangs when host is invalid #​29156
  • Add ResponseEntity.ofNullable() to deal with non-Optional nullable objects #​29117
  • Provide access to all configured interceptors in AbstractHandlerMapping #​28985
  • Support Optional in PayloadMethodArgumentResolver #​28945
  • Remove clear() call to release method of WeakEntryReference and SoftEntryReference #​28863
  • Add MockMvc.multipart() Kotlin extensions with HttpMethod #​28634
  • WebSocketConnectionManager constructor with prepared URI #​28524
  • Deprecate Base64Utils #​28434
  • List supported media types in HttpMediaTypeNotSupportedException when given invalid input media types #​28062
  • Introduce getContentAsString and getContentAsByteArray to Resource #​24651
  • Support Optional in Jackson 2 message converters #​24498
  • Refine ModelAttributeMethodProcessor Kotlin exception handling #​23846

:lady_beetle: Bug Fixes

  • DefaultHandlerExceptionResolver::doResolveException no longer returns ModelAndView customized via protected method #​29971
  • ex.getPropertyName() is not initialized in ResponseEntityExceptionHandler#handleTypeMismatch #​29959
  • Violation of a unique index on insert in MSSQL is translated to DataIntegrityViolationException instead of DuplicateKeyException #​29950
  • PathMatchingResourcePatternResolver duplicates module/file resources #​29934
  • ResourceUrlEncodingFilter throws StringIndexOutOfBoundsException in tests #​29933
  • Explicit target ClassLoader for interface-based proxies in MvcUriComponentsBuilder #​29913
  • org.springframework.web.context.ContextLoader cannot be loaded in a native image #​29905
  • MockHttpServletRequest InputStream has been made static in gh-29125 #​29901
  • MvcUriComponentsBuilder adds trailing slash if path is defined at controller level only #​29897
  • Closing an ApplicationContext leads to Exception at ExecutorServiceAdapter #​29892
  • Set WebClient Observation as current in reactor context #​29891
  • Client request observation contributes full URI template to uri meter tag values #​29885
  • HTTP client observations miss uri keyvalue for "/" requests #​29879
  • ProblemDetail is missing serialization hints for Native Image #​29801
  • Invalid Accept header results in IllegalStateException #​29794
  • AOT processing fails with Set if type doesn't implement Comparable #​29792
  • CSRF token not available to FreeMarker templates #​29787
  • Fail more explicitly when AOT attempts to handle a bean definition that uses an instance supplier #​29556
  • WebSocket stats not updated correctly when sessions cleared #​29375
  • MockHttpServletRequest#setContentType fails with StringIndexOutOfBoundsException #​29255
  • InMemoryWebSessionStore#changeSessionId makes blocking calls to UUID.randomUUID #​29212
  • ReactorServerHttpRequest does not reflect forwarded host and port when forwarding-header-strategy=native or cloud platform detected #​28601
  • Propagate CoroutineContext in reactive transaction #​27308
  • Bean validation doesn't work on Kotlin coroutines controller parameters #​23499

📔 Documentation

  • Update @DynamicPropertySource examples regarding changes in Testcontainers #​29939
  • Refine ControllerMappingReflectiveProcessor documentation #​29938
  • Clarify semantics of primitivesDefaultedForNullValue in BeanPropertyRowMapper #​29923
  • Document instrumentation for RestTemplate and/or WebClient #​29904
  • CronExpression::parse has invalid Javadoc #​29884
  • Update Javadoc on async request timeout value in HandlerFunctionAdapter #​29882
  • Document how to mark an observation as an error if the exception was handled #​29848
  • Document that bean instance suppliers are not supported with AOT/native #​29835
  • Clearly document that DataClassRowMapper supports Java records #​29814
  • Increase number of TOC levels in generated PDF documentation #​29781
  • Consistent @Bean method return type for equivalence with XML example #​29338
  • Outdated Javadoc for AbstractApplicationContext.postProcessBeanFactory #​29064
  • Improve documentation on support for a language-only Locale requested via "Accept-Language" #​28673
  • Update the reference documentation with limitation related to @Bean return type #​29944

🔨 Dependency Upgrades

Contributors

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

@​Drezir, @​FutureGadget, @​OlgaMaciaszek, @​ThomHurks, @​a364176773, @​bcc829, @​derrick-pericipio, @​divcon, @​etylermoss, @​fml2, @​izeye, @​j-min5u, @​j3graham, @​jprinet, @​krzyk, @​ks-yim, @​making, @​manthanb, @​quaff, @​r331, @​sephiroth-j, @​srivatsa-cfp, @​vikeychen, @​wplong11, @​xavier-b, @​yuezk, @​yuzawa-san, and @​zhmaeff

v6.0.4

Compare Source

New Features

  • Add native support for @Convert on JPA entities #​29771
  • @RequestPart dto not configured for reflection in aot #​29749
  • Avoid wasted memory on empty maps and sets #​29742
  • Compatibility with Hibernate ORM 6.2 #​29736
  • Add Kotlin DSL support for MockMVC andExpectAll #​29727
  • Add ExecutingResponseCreator to delegate request and response #​29721
  • JmsTemplate.convertAndSend throws NullPointerException during shutdown #​29706
  • Extract ResourceEntityResolver HTTPS schema resolution fallback #​29697
  • @Configuration classes with Kotlin in native-image are broken #​29663
  • Introduce Kotlin DSL for ResultActions.andExpectAll() #​27317

:lady_beetle: Bug Fixes

  • ResourceHandlers cannot resolve static resources with certain wildcard patterns #​29712
  • Conflict on insert gets translated to DataIntegrityViolationException instead of DuplicateKeyException in Spring 6 #​29699

📔 Documentation

  • fix typo in core-aot.adoc #​29788
  • Polish #​29727: Mention Kotlin andExpectAll in reference manual #​29766
  • Update Jakarta Mail info in ref docs #​29707
  • Trigger/TriggerContext reference documentation outdated #​29702
  • Improve documentation for literals in SpEL expressions #​29700
  • Small fixes and improvements to the reference documentation #​29694
  • Fix manipulating property sources example in Javadoc for ConfigurableEnvironment #​29693

🔨 Dependency Upgrades

Contributors

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

@​Dunemaster, @​IDJack, @​diguage, @​izeye, and @​quim3ra

v6.0.3

Compare Source

New Features

  • Throw PessimisticLockingFailureException/CannotAcquireLockException instead of plain ConcurrencyFailureException #​29675
  • Introduce additional constructors in MockClientHttpRequest and MockClientHttpResponse #​29670
  • Fall back to JdkClientHttpConnector as ClientHttpConnector #​29645
  • Optimize object creation in RequestMappingHandlerMapping#handleNoMatch #​29634
  • Align multipart codecs on client and server #​29630
  • Deprecate "application/graphql+json" media type after spec changes #​29617
  • HTTP interface client does not call FormHttpMessageWriter when writing form data #​29615
  • ProblemDetail doesn't override the equals method #​29606
  • Add title to SockJS iFrames for accessibility compliance #​29594
  • Forbid loading of a test's ApplicationContext in AOT mode if AOT processing failed #​29579
  • Deprecate JettyWebSocketClient in favor of StandardWebSocketClient #​29576
  • Improve options to expose MessageSource formatted errors for a ProblemDetail response #​29574
  • Make @ModelAttribute and @InitBinder annotations @Reflective #​29572
  • Update BindingReflectionHintsRegistrar to support properties on records #​29571

:lady_beetle: Bug Fixes

  • Cannot use WebDAV methods in Spring MVC 6.0 anymore #​29689
  • AnnotatedElementUtils.findMergedRepeatableAnnotations does not fetch results when other attributes exist in container annotation #​29685
  • BeanWrapperImpl NPE in setWrappedInstance after invoking getPropertyValue #​29681
  • SpEL ConstructorReference does not generate AST representation of arrays #​29665
  • NullPointerException in BindingReflectionHintsRegistrar for anonymous classes #​29657
  • DataBufferInputStream violates InputStream contract #​29642
  • Component scanning no longer uses component index for @Named, @ManagedBean, and other Jakarta annotations #​29641
  • Fix canWrite in PartHttpMessageWriter #​29631
  • NoHandlerFoundException mistakenly returns request headers from ErrorResponse#getHeaders #​29626
  • URI override for @HttpExchange doesn't work if there are both URI and @PathVariable method parameters #​29624
  • Unnecessary parameter name introspection for constructor-arg resolution (leading to LocalVariableTableParameterNameDiscoverer warnings) #​29612
  • Set detail from reason in both constructors of ResponseStatusException #​29608
  • SpEL string literal misses single quotation marks in toStringAST() #​29604
  • AOT code generation fails for bean of type boolean #​29598
  • request-scoped bean with @Lazy fails in native image (due to missing detection of CGLIB lazy resolution proxies) #​29584
  • 500 error from WebFlux when parsing Content-Type leads to InvalidMediaTypeException #​29565
  • ConcurrentLruCache implementation is using too much heap memory #​29520
  • Duplicate key violation gets translated to DataIntegrityViolationException instead of DuplicateKeyException in Spring 6 #​29511
  • SpEL: Two double quotes are replaced by one double quote in single quoted String literal (and vice versa) #​28356

📔 Documentation

  • Fix ErrorResponse#type documentation #​29632
  • Fix typo in observability documentation #​29590
  • Consistent documentation references to Jakarta WebSocket (2.1) #​29581
  • Unrendered asciidoc headings in reference documentation #​29569
  • Document observability support #​29524

🔨 Dependency Upgrades

Contributors

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

@​Aashay-Chapatwala, @​CoderYellow, @​ShenFeng312, @​Spark61, @​divcon, @​izeye, @​koo-taejin, @​mdeinum, @​mhalbritter, @​quaff, and @​singhbaljit

v6.0.2

Compare Source

New Features

  • Rely on standard parameter name resolution in Bean Validation 3.0 #​29566

:lady_beetle: Bug Fixes

  • ResponseStatusException does not use the reason to set the "detail" field #​29567
  • LocalVariableTableParameterNameDiscoverer logs many warnings with Hibernate validation #​29563

📔 Documentation

  • org.springframework.web.multipart.commons not found #​29562

v6.0.1

Compare Source

New Features

  • Make SourceHttpMessageConverter optional #​29535
  • Deprecate LocalVariableTableParameterNameDiscoverer completely (avoiding its exposure in native images) #​29531
  • Make GeneratorStrategy.generate unreachable on native #​29521
  • Update LogAdapter to allow build-time code removal #​29506

:lady_beetle: Bug Fixes

  • Unhandled exceptions should mark Servlet observation outcome as error #​29512

📔 Documentation

  • Broken link in documentation section 6.10 #​29554
  • Fix Javadoc link text in BindingResult #​29551
  • Fix some typos in Kotlin WebClient example code #​29538
  • Fix link to Bean Utils Light Library in BeanUtils Javadoc #​29534
  • Fix link to WebFlux section in reference manual #​29525
  • Document RuntimeHints testing strategies #​29523
  • Reorganize and modularize the Testing chapter in the reference manual #​29522
  • Document switch to SQLExceptionSubclassTranslator in the upgrade guide #​29518
  • Update documentation to mention Java 17+ baseline #​29514
  • Link to Spring WebFlux section is broken #​29513
  • Update javadoc of Jackson-based decoders to reflect 2.14 baseline #​29508
  • Code example has callout from a different code example #​29505
  • Code listing callouts are displayed incorrectly in core-beans.adoc #​29457
  • Fix a syntax error in an XML listing in core-validation.adoc #​29456

🔨 Dependency Upgrades

Contributors

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

@​Encyclopedias, @​andregasser, @​davidcostanzo, @​divcon, @​jiangying000, @​mdeinum, and @​wilkinsona

v6.0.0

Compare Source

See What's New in Spring Framework 6.x and Upgrading to Spring Framework 6.x for upgrade instructions and details of new features.

New Features

  • Avoid direct URL construction and URL equality checks #​29486
  • Simplify creating RFC 7807 responses from functional endpoints #​29462
  • Allow test classes to provide runtime hints via declarative mechanisms #​29455

📔 Documentation

  • Align javadoc of DefaultParameterNameDiscoverer with its behavior #​29494
  • Document AOT support in the TestContext framework #​29482
  • Document Ahead of Time processing in the reference guide #​29350

🔨 Dependency Upgrades

Contributors

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

@​ophiuhus and @​wilkinsona


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 MR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this MR and you won't be reminded about this update again.


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

This MR has been generated by Renovate Bot.

Merge request reports