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

Upgrade Spring 5.3.31 -> 6.1.3 #679

Merged
merged 1 commit into from
Feb 13, 2024
Merged

Upgrade Spring 5.3.31 -> 6.1.3 #679

merged 1 commit into from
Feb 13, 2024

Conversation

Picnic-Bot
Copy link
Contributor

@Picnic-Bot Picnic-Bot commented Jun 10, 2023

This PR contains the following updates:

Package Type Update Change
Spring import major 5.3.31 -> 6.1.3

Release Notes

spring-projects/spring-framework (Spring)

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 #​25488
  • Fail to register MBean with bean name containing invalid character #​23608
  • Use of DatabaseMetadata#getProcedures (and functions) should take search string escape into account #​22725

📔 Documentation

  • Fix link text in WebFlux @HttpExchange section of reference docs #​31796
  • Improve documentation for custom exception requirements for RestClient #​31783
  • Java-based Container Configuration section contains duplicated Section Summary #​31777
  • SpEL Language Reference section contains duplicated Section Summary #​31776
  • Incorrect #this and #root variable examples in SpEL documentation #​31770
  • Document explicit @ModelAttribute is required for reflection hints inference #​31765
  • Fix Javadoc for MockRestServiceServer.bindTo(RestClient.Builder) #​31741
  • Document -Dspring.context.exit=onRefresh for Project CRaC testing purpose #​31724
  • Link to spring.factories used in the TestContext framework in the reference manual #​31723
  • Clarify that DI is a type of IoC #​31679
  • Polish GenericTypeResolver Javadoc #​31663
  • RestClient documentation improvements #​31659
  • Add Javadoc to MvcResult getResponse().getErrorMessage() #​31386
  • Review Default Profile section in the reference documentation #​30319
  • Documentation needs to be updated with instructions for STOMP Client #​28409
  • Document LazyConnectionDataSourceProxy setup for routing datasource to act on transaction definition read-only flag #​21415
  • Document LazyConnectionDataSourceProxy for IsolationLevelDataSourceRouter usage with DataSourceTransactionManager #​19688

🔨 Dependency Upgrades

❤️ Contributors

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

@​HeartPattern, @​HyeongMokJeong, @​Johannes-Rost, @​JuHyun419, @​Nijco, @​cdalexndr, @​dogglezz, @​freesme, @​giuseppemilicia, @​hpoettker, @​izeye, @​kilink, @​lugaramirez, @​mathieu-amblard, @​meedbek, @​perlun, @​quaff, @​reda-alaoui, @​shin-mallang, and @​tylerbertrand

v6.1.1

Compare Source

⭐ New Features

  • Skip buffer allocation in StreamUtils.copy(String) #​31621
  • Caching and Event Listening support do not reuse internal delegates for their evaluation contexts #​31617
  • Java 17: resource.isReadable() with concurrency leaks large amounts of non-heap memory #​30955

🐞 Bug Fixes

  • Spring MVC: Unexpected bytes added to the HTTP response for kotlin.Unit return type in controller methods #​31648
  • Spring Data Redis Cache implementation is not compatible with Cache.retrieve(key) semantics #​31637
  • GeneratedFiles#addSourceFile should not allow to add a source in the default package #​31628
  • <jee:local-slsb> no longer works with a business-interface attribute #​31627
  • Non-blocking @Cacheable method does not support condition with #result #​31626
  • PathResourceResolver.getResource() does not log warning if Resource#getURL() throws exception #​31623
  • Jackson encoder releases resources in wrong order #​30493
  • WebSocketMessageBrokerStats has null stats for stompSubProtocolHandler since 5.3.2 #​26536

📔 Documentation

  • Fix links related to Spring WebFlux #​31632
  • Extract recurring asciidoc links to attributes #​31619
  • Improve STOMP WebSocket documentation for input message buffer size #​31616
  • Document support for AppCDS #​31497

❤️ Contributors

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

@​7fantasy7, @​Star-ho, and @​quaff

v6.1.0

Compare Source

⭐ New Features

  • When using Oracle, JdbcClient.update(KeyHolder) does not work without explicit key column names #​31607
  • Introduce way to convert ClientHttpResponse to desired type #​31597
  • Property-driven onRefresh exit for AppCDS purpose #​31595
  • No Micrometer traceId in JMS listener container errorHandler #​31559
  • Register Hibernate @EmbeddableInstantiators registered on JPA embeddables for reflection #​31534
  • Improve method validation support for errors on elements within a container #​31530
  • Support pattern matching for method names in ControlFlowPointcut #​31435
  • Review reachability metadata contributions after GraalVM changes #​31213
  • handleEmptyBody of RequestBodyAdvice should apply also when content-type is not set #​30522

🐞 Bug Fixes

  • Regression with @EnableJpaAuditing using Spring Boot 3.2-RC2 in native image #​31575
  • Retrieving the response body as a List of POJOs fails with RestClient but passes with WebTestClient #​31574
  • ExecutorLifecycleDelegate should call ExecutorService.isTerminated() in ?.isRunning() #​31549
  • RestTemplate POST to endpoint using Digest Auth no longer works in 6.1 #​31516
  • Code generation for constructor arguments must cast null indexed argument value #​31508
  • \n in form model when using Jetty 12 client and multipart/form-data #​31361
  • Add status handler to recognize unknown status codes outside of 4xx/5? #​31202

📔 Documentation

  • Document how to log @Sql scripts and statements #​31589
  • Link to KDoc API documentation from Javadoc overview #​31587
  • Fix link in Javadoc of ConfigurableMockMvcBuilder #​31542
  • Add note about @[Enabled|Disabled]InNativeImage in reference manual #​31438
  • Document @DisabledInAotMode in the reference manual #​31437
  • Document @Sql class-level execution phase support in the reference manual #​31377
  • Document that Micrometer's "error" tag should be preferred vs. legacy "exception" tag #​31514

🔨 Dependency Upgrades

❤️ Contributors

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

@​Young-Zen, @​duesenklipper, @​izeye, @​k-seth, and @​wakingrufus

v6.0.16

Compare Source

⭐ New Features

  • Exclude URI query from remaining WebClient checkpoints #​32001
  • Add CORS support for Private Network Access #​31975
  • Avoid early getMostSpecificMethod resolution in CommonAnnotationBeanPostProcessor #​31968

🐞 Bug Fixes

  • Double error response handling on suspended methods #​31990
  • DefaultDataBuffer fails to transform its content to a string. #​31979
  • Spring AOP does not propagate arguments for dynamic prototype-scoped advice #​31963
  • MergedAnnotation swallows IllegalAccessException for attribute method #​31960
  • CronTrigger hard-codes default ZoneId instead of participating in scheduler-wide Clock setup #​31949
  • HandlerMappingIntrospector is throwing PatternSyntaxException for wildcards in the request URL #​31946
  • ForwardedHeaderFilter should reject invalid requests #​31894
  • @Async does not support Unit? return type #​31891
  • Significant increase in memory consumption StringDecoder when splitting input by delimiters. #​31859

📔 Documentation

  • Update ContentRequestMatchers#multipartData Javadoc #​31989

🔨 Dependency Upgrades

v6.0.15

Compare Source

⭐ New Features

  • Skip buffer allocation in StreamUtils.copy(String) #​31631

🐞 Bug Fixes

  • <replaced-method /> unnecessarily requires explicit arg-type since 6.0 #​31828
  • MergedAnnotations finds duplicate annotations on method in multi-level interface hierarchy #​31824
  • Fix condition for "Too many elements" in MimeTypeUtils.sortBySpecificity() #​31773
  • Spring unable to decode aggregated JSON content #​31772
  • Multipart messages with empty parts are not correctly parsed in WebFlux #​31766
  • PathEditor cannot handle absolute Windows paths with forward slashes #​31727
  • TraceId is missing in WebFlux controller handlers #​31716
  • Wrong observation status tag when a Not Found in a webflux application #​31715
  • Fail to register MBean with bean name containing invalid character #​31708
  • Include Hibernate's Query.scroll() in SharedEntityManagerCreator's queryTerminatingMethods set #​31683
  • TypeDescriptor does not check generics in equals method (for ConversionService caching) #​31673
  • SpEL expression on a reloadable type can no longer be resolved #​31670
  • Slow SpEL performance due to method sorting in ReflectiveMethodResolver #​31664
  • Jackson encoder releases resources in wrong order #​31656
  • Current Observation.Context missing from WebClient request #​31646
  • WebSocketMessageBrokerStats has null stats for stompSubProtocolHandler since 5.3.2 #​31641
  • <jee:local-slsb> no longer works with a business-interface attribute #​31630
  • GeneratedFiles#addSourceFile should not allow to add a source in the default package #​31629
  • PathResourceResolver.getResource() does not log warning if Resource#getURL() throws exception #​31624

📔 Documentation

  • Document explicit @ModelAttribute is required for reflection hints inference #​31767
  • Documentation needs to be updated with instructions for STOMP Client #​31678
  • Improve STOMP WebSocket documentation for input message buffer size #​31654

🔨 Dependency Upgrades

v6.0.14

Compare Source

⭐ New Features

  • Provide caching for HandlerMappingIntrospector lookups #​31588
  • Log4jLog needs to re-resolve ExtendedLogger on deserialization (for compatibility with Log4J 2.21) #​31582
  • Optimize StandardTypeLocator for hotspot when the same classes are resolved #​31579
  • Add duplicate key exception error code for SAP HANA database #​31554
  • Do not delegate TRACE to HttpServlet on ERROR dispatch #​31457
  • Add properties setter to ProblemDetail #​31430

🐞 Bug Fixes

  • GeneratedFiles#addSource does not provide proper context if the specified class name is invalid #​31612
  • MessageBuilder#createMessage should not define the payload as @Nullable #​31610
  • Default Mixin added by Jackson2ObjectMapperBuilder are missing required runtime hints #​31606
  • NettyDataBuffer#toByteBuffer fails if readPosition > 0 #​31605
  • Avoid duplicate JAR resources in PathMatchingResourcePatternResolver on MS Windows #​31598
  • NamedParameterUtils broken parsing related to square brackets #​31596
  • Multipart cleanup is done too eagerly #​31567
  • Jakarta validation field constraints in superclass are ignored in native image #​31552
  • Function column out doesn't resolve to SqlOutParameter #​31550
  • Restore support for recursive annotations in Kotlin #​31518
  • Resolve to empty MultiValueMap when no matrix variables are provided #​31483
  • ProxyFactoryBean declaration may lead to unexpected non-fatal "FactoryBean threw exception from getObjectType" stacktrace output #​31473
  • Use of @Value in compact constructor of a record should not register method injection #​31433
  • Prevent duplicate HTTP server observations for cancelled exchanges #​31417
  • Spring MVC raises MissingPathVariableException resulting in 500 instead of 400 error when path segment is u001F or u00D and cannot be converted to target type UUID #​31382
  • Ensure consistent value count in ConcurrentReferenceHashMap#Segment #​31373
  • HeaderContentNegotiationStrategy.resolveMediaTypes throws unexpected IllegalArgumentException #​31254
  • Session Cookie in Reactive WebSession is not deleted if maxAge is set through cookie initializer (e.g. via Boot application property) #​31214
  • DefaultWebClient logs URI without the port number #​30519
  • CGLIB BeanCopier falls back to ClassLoader.defineClass for public target #​28699
  • BeanUtils.copyProperties() consumes large amount of memory #​27246

📔 Documentation

  • RestTemplate initialization documentation in 6.0.x mentions Netty, yet no ClientHttpRequestFactory is present in the package. #​31526
  • Correct typo in annotations.adoc #​31519
  • Document X-Forwarded-* Headers #​31491
  • Improve support and documentation for the "default" bean definition profile name #​29071
  • Document that pertypewithin is supported by Spring AOP #​25887
  • Document alternatives of using multiple PropertyPlaceholderConfigurers [SPR-9989] #​14623

🔨 Dependency Upgrades

❤️ Contributors

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

@​CrotchBurnt, @​GVictorG7, @​PiotrFLEURY, @​baratrax, @​bernie-schelberg-invicara, @​huyachigege, @​izeye, @​lorenzsimon, @​martin-lukas, and @​rwinch

v6.0.13

Compare Source

⭐ New Features

  • Improve diagnostics for negative repeated text count in SpEL #​31342
  • Improve diagnostics when repeated text size calculation results in overflow in SpEL #​31341
  • UnknownContentTypeException is not Serializable #​31283
  • Reintroduce FastClass in CGLIB class names for @Configuration classes #​31272

🐞 Bug Fixes

  • HibernateJpaDialect and HibernateExceptionTranslator throw SQLExceptionTranslator-provided exception instead of returning it #​31409
  • AnnotationScanner scanning leads to StackOverflowError with recursive annotation #​31400
  • NamedParameterJdbcTemplate throws unexpected exception for null query #​31391
  • HTTP server exchange observations have incorrect UNKNOWN status tag if the client disconnected #​31388
  • Breaking change from 6.0.11 to 6.0.12 if you expect query parameters in @RequestBody #​31327
  • SpEL's CompoundExpression.toStringAST() omits ? for null-safe navigation #​31326
  • ConcurrentLruCache no longer supports capacity = 0 #​31317
  • Using R2dbc transactional and non transactional on a database connection pool will fail for Oracle. #​31268
  • AOT-generated code no longer set bean class for beans created from a @Bean method #​31242
  • CGLIB proxy classes are no longer cached properly #​31238
  • Illegal reflective access in ContextOverridingClassLoader.isEligibleForOverriding #​31232
  • Fix RuntimeHintsPredicates matching rules for public/declared elements #​31224
  • MultipartParser should respect read position #​31110
  • WebClient reports 'Host is not specified' for URI with hostname and port, but without scheme #​31033
  • R2DBC Connection is closed during transaction when using TransactionAwareConnectionFactoryProxy #​28133
  • SpEL cannot evaluate or compile expression with null-safe void method invocation #​27421
  • LazyResolutionMessage does not implement proper toString #​21265

📔 Documentation

  • Document Kotlin declaration site variance subtleties #​31370
  • Add missing conversionService field in doc example #​31330
  • Clarify documentation on Spring Web MVC pattern comparison #​31294
  • Improved documentation for MethodParameter#getAnnotatedElement #​30397
  • Javadoc for BeanPropertyRowMapper.getColumnValue(ResultSet, int, Class) is inconsistent with code #​29285
  • Referencing a @Bean method in a @Configuration class' @PostConstruct method leads to circular reference #​27876
  • Incorrect reference information about CGLIB supported method visibility #​25001
  • Clarify documentation for @Transactional on interfaces #​23538

🔨 Dependency Upgrades

  • Upgrade to Micrometer 1.10.12 #​31404
  • Upgrade to Reactor 2022.0

@Picnic-Bot
Copy link
Contributor Author

Picnic-Bot commented Jun 10, 2023

Suggested commit message:

Upgrade Spring 5.3.31 -> 6.1.3 (#679)

See:
- https://github.com/spring-projects/spring-framework/releases/tag/v6.0.0-M1
- https://github.com/spring-projects/spring-framework/releases/tag/v6.0.0-M2
- https://github.com/spring-projects/spring-framework/releases/tag/v6.0.0-M3
- https://github.com/spring-projects/spring-framework/releases/tag/v6.0.0-M4
- https://github.com/spring-projects/spring-framework/releases/tag/v6.0.0-M5
- https://github.com/spring-projects/spring-framework/releases/tag/v6.0.0-M6
- https://github.com/spring-projects/spring-framework/releases/tag/v6.0.0-RC1
- https://github.com/spring-projects/spring-framework/releases/tag/v6.0.0-RC2
- https://github.com/spring-projects/spring-framework/releases/tag/v6.0.0-RC3
- https://github.com/spring-projects/spring-framework/releases/tag/v6.0.0-RC4
- https://github.com/spring-projects/spring-framework/releases/tag/v6.0.0
- https://github.com/spring-projects/spring-framework/releases/tag/v6.0.1
- https://github.com/spring-projects/spring-framework/releases/tag/v6.0.2
- https://github.com/spring-projects/spring-framework/releases/tag/v6.0.3
- https://github.com/spring-projects/spring-framework/releases/tag/v6.0.4
- https://github.com/spring-projects/spring-framework/releases/tag/v6.0.5
- https://github.com/spring-projects/spring-framework/releases/tag/v6.0.6
- https://github.com/spring-projects/spring-framework/releases/tag/v6.0.7
- https://github.com/spring-projects/spring-framework/releases/tag/v6.0.8
- https://github.com/spring-projects/spring-framework/releases/tag/v6.0.9
- https://github.com/spring-projects/spring-framework/releases/tag/v6.0.10
- https://github.com/spring-projects/spring-framework/releases/tag/v6.0.11
- https://github.com/spring-projects/spring-framework/releases/tag/v6.0.12
- https://github.com/spring-projects/spring-framework/releases/tag/v6.0.13
- https://github.com/spring-projects/spring-framework/releases/tag/v6.0.14
- https://github.com/spring-projects/spring-framework/releases/tag/v6.0.15
- https://github.com/spring-projects/spring-framework/releases/tag/v6.0.16
- https://github.com/spring-projects/spring-framework/releases/tag/v6.1.0-M1
- https://github.com/spring-projects/spring-framework/releases/tag/v6.1.0-M2
- https://github.com/spring-projects/spring-framework/releases/tag/v6.1.0-M3
- https://github.com/spring-projects/spring-framework/releases/tag/v6.1.0-M4
- https://github.com/spring-projects/spring-framework/releases/tag/v6.1.0-M5
- https://github.com/spring-projects/spring-framework/releases/tag/v6.1.0-RC1
- https://github.com/spring-projects/spring-framework/releases/tag/v6.1.0-RC2
- https://github.com/spring-projects/spring-framework/releases/tag/v6.1.0
- https://github.com/spring-projects/spring-framework/releases/tag/v6.1.1
- https://github.com/spring-projects/spring-framework/releases/tag/v6.1.2
- https://github.com/spring-projects/spring-framework/releases/tag/v6.1.3
- https://github.com/spring-projects/spring-framework/compare/v5.3.31...v6.1.3

Copy link
Member

@Stephan202 Stephan202 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This PR replaces #356 and is blocked on #603. See the comments in #356 for context.

@Stephan202
Copy link
Member

@Badbond something I noticed here about the generated suggested commit message is that the release notes are listed "the other way around". (Also that the diff link is missing and that the milestones are not listed, but the former is a known limitation IIRC, and the latter is maybe intentional?)

@Stephan202 Stephan202 force-pushed the renovate/spring-6.x branch from f71864c to ddac14a Compare June 10, 2023 09:22
.github/workflows/build-jdk11.yaml Fixed Show fixed Hide fixed
.github/workflows/build-jdk11.yaml Fixed Show fixed Hide fixed
@Stephan202 Stephan202 changed the base branch from master to sschroevers/require-jdk-17 June 10, 2023 09:22
@Stephan202
Copy link
Member

Rebased the PR on top of #603 and copied over the changes of #356.

@sonarcloud
Copy link

sonarcloud bot commented Jun 10, 2023

Kudos, SonarCloud Quality Gate passed!    Quality Gate passed

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities
Security Hotspot A 0 Security Hotspots
Code Smell A 0 Code Smells

No Coverage information No Coverage information
0.0% 0.0% Duplication

@github-actions
Copy link

  • Surviving mutants in this change: 8
  • Killed mutants in this change: 119
class surviving killed
🧟tech.picnic.errorprone.bugpatterns.MethodReferenceUsage 2 17
🧟tech.picnic.errorprone.bugpatterns.CanonicalAnnotationSyntax 1 4
🧟tech.picnic.errorprone.bugpatterns.SpringMvcAnnotation 1 9
🧟tech.picnic.errorprone.bugpatterns.RefasterAnyOfUsage 1 8
🧟tech.picnic.errorprone.bugpatterns.util.AnnotationAttributeMatcher 1 2
🧟tech.picnic.errorprone.bugpatterns.PrimitiveComparison 1 14
🧟tech.picnic.errorprone.bugpatterns.LexicographicalAnnotationAttributeListing$1 1 1
🎉tech.picnic.errorprone.bugpatterns.FormatStringConcatenation$ReplacementArgumentsConstructor 0 2
🎉tech.picnic.errorprone.refaster.matchers.ThrowsCheckedException 0 3
🎉tech.picnic.errorprone.refaster.runner.Refaster 0 2
🎉tech.picnic.errorprone.bugpatterns.StaticImport 0 4
🎉tech.picnic.errorprone.bugpatterns.AmbiguousJsonCreator 0 2
🎉tech.picnic.errorprone.refaster.test.RefasterRuleCollection 0 4
🎉tech.picnic.errorprone.bugpatterns.MockitoMockClassReference 0 8
🎉tech.picnic.errorprone.bugpatterns.util.MoreJUnitMatchers 0 4
🎉tech.picnic.errorprone.bugpatterns.RedundantStringConversion 0 9
🎉tech.picnic.errorprone.bugpatterns.LexicographicalAnnotationAttributeListing 0 4
🎉tech.picnic.errorprone.bugpatterns.JUnitValueSource 0 8
🎉tech.picnic.errorprone.bugpatterns.MissingRefasterAnnotation 0 1
🎉tech.picnic.errorprone.bugpatterns.IsInstanceLambdaUsage 0 4
🎉tech.picnic.errorprone.bugpatterns.DirectReturn 0 9

Mutation testing report by Pitest. Review any surviving mutants by inspecting the line comments under Files changed.

@Stephan202 Stephan202 added the pause renovate Stop automatic rebasing label Jun 10, 2023
@Badbond
Copy link
Member

Badbond commented Jun 10, 2023

@Badbond something I noticed here about the generated suggested commit message is that the release notes are listed "the other way around".

That is indeed known and not something we can't change currently. The descending order is determined by Renovate and is consistent with the PR description. The suggested commit message bot was always in ascending order. We can either decide to make this descending order the new normal, or I can request a helper function at Renovate to allow flipping the order.

Also that the diff link is missing ...

The diff link is indeed a known limitation. We don't have a field available for the git tag of current and new version. We can try to forge one (per dependency) but it might result in unreachable URLs.

Furthermore, Renovate now decides what to link. We just provide it the GitHub source. In some cases it might link to a CHANGELOG.md, a GitHub release or a compare link between two consecutive versions itself.

... and that the milestones are not listed ...

No idea. I suspect Renovate doesn't treat these as releases and therefore doesn't consider them. We might be able to tell it to consider it, but then you'll get upgrade PRs to these pre-release versions.

@Stephan202
Copy link
Member

Tnx for the clear explanations @Badbond! Swapping the order doesn't seem worth the trouble. In cases where there are no release notes links think that a (conditional/custom?) diff URL may be preferable, but there too it's a matter of effort. Now that there's still the suggested commit message comment this isn't much of an issue, I suppose 👍

@rickie rickie force-pushed the sschroevers/require-jdk-17 branch from 5e8b4f4 to 2548d64 Compare July 2, 2023 07:55
@Stephan202 Stephan202 force-pushed the sschroevers/require-jdk-17 branch 2 times, most recently from 26a0da5 to e124955 Compare August 29, 2023 08:31
@Stephan202 Stephan202 force-pushed the sschroevers/require-jdk-17 branch from e124955 to 1a10a95 Compare October 4, 2023 10:46
@Stephan202 Stephan202 force-pushed the sschroevers/require-jdk-17 branch from 1a10a95 to 4ba891a Compare October 11, 2023 12:04
@Stephan202 Stephan202 changed the title Upgrade Spring 5.3.27 -> 6.0.9 Upgrade Spring 5.3.30 -> 6.0.12 Oct 11, 2023
@Stephan202
Copy link
Member

Rebased and updated the changes.

@sonarcloud
Copy link

sonarcloud bot commented Oct 11, 2023

Kudos, SonarCloud Quality Gate passed!    Quality Gate passed

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities
Security Hotspot A 0 Security Hotspots
Code Smell A 0 Code Smells

No Coverage information No Coverage information
0.0% 0.0% Duplication

@github-actions
Copy link

Looks good. No mutations were possible for these changes.
Mutation testing report by Pitest. Review any surviving mutants by inspecting the line comments under Files changed.

@Stephan202 Stephan202 force-pushed the sschroevers/require-jdk-17 branch 3 times, most recently from 536f794 to 9d864a6 Compare October 23, 2023 07:34
@Stephan202 Stephan202 force-pushed the sschroevers/require-jdk-17 branch 2 times, most recently from 2463637 to 68f85bc Compare December 18, 2023 16:43
@Stephan202 Stephan202 force-pushed the sschroevers/require-jdk-17 branch 2 times, most recently from 2569067 to af9464d Compare January 1, 2024 19:22
@Stephan202 Stephan202 force-pushed the sschroevers/require-jdk-17 branch 3 times, most recently from 4911a37 to be54f7b Compare January 21, 2024 13:20
@Stephan202 Stephan202 force-pushed the sschroevers/require-jdk-17 branch from b6ebdd4 to 47cdac1 Compare January 22, 2024 18:44
@Stephan202 Stephan202 force-pushed the sschroevers/require-jdk-17 branch from 7fdbd0d to 6ed8caf Compare February 11, 2024 15:45
Base automatically changed from sschroevers/require-jdk-17 to master February 11, 2024 15:57
@Picnic-Bot Picnic-Bot changed the title Upgrade Spring 5.3.30 -> 6.0.12 Upgrade Spring 5.3.31 -> 6.1.3 Feb 11, 2024
Copy link

Looks good. No mutations were possible for these changes.
Mutation testing report by Pitest. Review any surviving mutants by inspecting the line comments under Files changed.

@Stephan202 Stephan202 added this to the 0.16.0 milestone Feb 11, 2024
Copy link
Member

@Stephan202 Stephan202 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@rickie we can finally merge this one 😄

@Stephan202 Stephan202 removed the pause renovate Stop automatic rebasing label Feb 11, 2024
See:
- https://github.com/spring-projects/spring-framework/releases/tag/v6.1.3
- https://github.com/spring-projects/spring-framework/releases/tag/v6.1.2
- https://github.com/spring-projects/spring-framework/releases/tag/v6.1.1
- https://github.com/spring-projects/spring-framework/releases/tag/v6.1.0
- https://github.com/spring-projects/spring-framework/releases/tag/v6.0.16
- https://github.com/spring-projects/spring-framework/releases/tag/v6.0.15
- https://github.com/spring-projects/spring-framework/releases/tag/v6.0.14
- https://github.com/spring-projects/spring-framework/releases/tag/v6.0.13
- https://github.com/spring-projects/spring-framework/releases/tag/v6.0.12
- https://github.com/spring-projects/spring-framework/releases/tag/v6.0.11
- https://github.com/spring-projects/spring-framework/releases/tag/v6.0.10
- https://github.com/spring-projects/spring-framework/releases/tag/v6.0.9
- https://github.com/spring-projects/spring-framework/releases/tag/v6.0.8
- https://github.com/spring-projects/spring-framework/releases/tag/v6.0.7
- https://github.com/spring-projects/spring-framework/releases/tag/v6.0.6
- https://github.com/spring-projects/spring-framework/releases/tag/v6.0.5
- https://github.com/spring-projects/spring-framework/releases/tag/v6.0.4
- https://github.com/spring-projects/spring-framework/releases/tag/v6.0.3
- https://github.com/spring-projects/spring-framework/releases/tag/v6.0.2
- https://github.com/spring-projects/spring-framework/releases/tag/v6.0.1
- https://github.com/spring-projects/spring-framework/releases/tag/v6.0.0
@rickie rickie force-pushed the renovate/spring-6.x branch from 68b0892 to ef77d4a Compare February 13, 2024 07:09
Copy link

Looks good. No mutations were possible for these changes.
Mutation testing report by Pitest. Review any surviving mutants by inspecting the line comments under Files changed.

Copy link

sonarcloud bot commented Feb 13, 2024

Quality Gate Passed Quality Gate passed

Issues
0 New issues

Measures
0 Security Hotspots
No data about Coverage
0.0% Duplication on New Code

See analysis details on SonarCloud

@rickie rickie merged commit 1d0d1d6 into master Feb 13, 2024
15 checks passed
@rickie rickie deleted the renovate/spring-6.x branch February 13, 2024 07:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

Successfully merging this pull request may close these issues.

4 participants