Skip to content

chore(deps): update dependency org.springframework.boot:spring-boot-starter-test to v4 - #477

Open
renovate[bot] wants to merge 1 commit into
mainfrom
chore/dependencies/major-4-spring-boot
Open

renovate[bot] wants to merge 1 commit into
mainfrom
chore/dependencies/major-4-spring-boot

Conversation

@renovate

@renovate renovate Bot commented Nov 20, 2025 •

Copy link
Copy Markdown
Contributor

Note

This PR body was truncated due to platform limits.

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
org.springframework.boot:spring-boot-starter-test (source) 3.5.16 → 4.1.2 age adoption passing confidence

Release Notes

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

v4.1.2

Compare Source

⭐ New Features

  • Add TWENTY_SEVEN to JavaVersion enum #​51426

🐞 Bug Fixes

  • OriginTrackedResource does not implement equals correctly #​52267
  • OriginTrackedPropertiesLoader drops properties whose name starts with # or ! #​52265
  • JWTs are rejected when issuer-uri is empty and jwk-set-uri is set #​52260
  • Package manifest attributes are missing for nested jars without directory entries #​52258
  • Logback ColorConverter unnecessarily parses its options for every log event #​52228
  • Empty system property in TestPropertyValues is cleared instead of being restored to its empty value #​52208
  • Graceful shutdown of Tomcat or Jetty may call back with REQUESTS_ACTIVE when stop is called immediately after shutDownGracefully on an idle server #​52197
  • NettyWebServer stop may hang when called immediately after shutDownGracefully #​52196
  • gRPC client 'grpc' load balancing fails to bind with a NullPointerException when no child policies are configured #​52193
  • Prevent gRPC client properties from overriding user customizations #​52175
  • MongoDB fails to connect when credentials contain a space #​52168
  • Authentication fails when password configured in spring.elasticsearch.uris contains a colon #​52166
  • Logging can be lost when a context is paused by the test context framework #​52088
  • Docker Compose support for MongoDB fails to connect when credentials contain a character that requires URL encoding #​52084
  • Jersey does not use the endpoint ObjectMapper when Actuator is running on a separate port #​51982
  • Fractions of a second are handled incorrectly when configuring gRPC service config durations #​51957
  • Configuration property descriptions may be lost when building incrementally with Gradle #​51925
  • BasicJsonParser mishandles escaped characters in nested lists and maps #​51908
  • Zero week value conversion fails with 'intValue cannot be extracted from WEEKS' exception #​51894
  • App fails to start when using DevTools and manually configuring JDBC or R2DBC without spring-boot-jdbc or spring-boot-r2dbc #​51890
  • Docker Compose support incorrectly recognizes MARIADB_ALLOW_EMPTY_PASSWORD instead of MARIADB_ALLOW_EMPTY_ROOT_PASSWORD #​51888
  • Auto-configured Kotlinx Serialization JSON codec customization is not applied #​51877
  • NullPointerException can be thrown when using uber jars due to a race condition in NestedJarFileResources #​51745
  • DevTools does not detect a reactive web environment #​51730
  • spring.http.clients.cookie-handling has no effect when using a reactive client backed by an HttpComponents connector #​51724
  • Connection fails when rabbitmq Docker Compose service is configured to use SSL #​51667
  • SBOM-related manifest attributes are missing from Maven-packaged wars #​51651
  • When server.reactive.session.cookie.same-site is not set, session cookies have no SameSite attribute #​51639
  • OAuth2 resource server ignores authorities-claim-delimiter when set on its own #​51630
  • developmentOnly and testAndDevelopmentOnly configurations do not specify any attributes causing potential resolution problems #​51623
  • In a reactive web application, Cloud Foundry security integration returns a 500 rather than a 503 when the cloud controller URL is unavailable #​51614
  • Layer temp file is not deleted when layer creation fails #​51581
  • Docker Compose integration for RabbitMQ skips credential fallbacks when an environment variable has no value #​51578
  • Some assertion messages name the wrong parameter #​51574
  • OAuth2ResourceServerProperties.Jwt has a setter that does not match its getter #​51562
  • jarmode tools commands print stacktrace instead of an error message #​51547
  • Docker Compose ProcessRunner can hang or leave orphan processes #​51538
  • NestedByteChannel.read(ByteBuffer) incorrectly returns 0 when buffer could not be filled #​51520
  • Customizer null checks in HTTP client builders assert the wrong attribute #​51513
  • SSL host config customizations may be lost during Tomcat initialization #​51511
  • SQL Server Docker Compose integration may duplicate the JDBC URL's encrypt parameter #​51481
  • WritableJson.toByteArray() may corrupt supplementary characters #​51464
  • SSL host config customizations are lost when reloading SSL bundles #​51457
  • OAuth2ClientProperties are not available when a user-defined ClientRegistrationRepository bean is provided #​51450
  • LdapHealthIndicator reports UNKNOWN instead of UP when LDAP server doesn't expose a protocol version #​51441
  • JmsHealthIndicator leaks watchdog threads if start fails immediately #​51433
  • Source is not closed consistently by all JSON marshal testers #​51418
  • File handle in SpringBootJoranConfigurator should be closed #​51415
  • Honour a wrapper's unwrap when resolving the root DataSource #​51410
  • Validation of deprecated io.buildpacks.stack.id is too aggressive #​51400
  • ReactiveOAuth2ResourceServerWebSecurityAutoConfiguration annotated with wrong condition #​50778

📔 Documentation

  • Fix typo in gRPC testing documentation #​52181
  • Fix Gradle example for servlet-based gRPC servers #​51956
  • Fix actuator endpoint property names in Javadoc #​51886
  • Document InetAddressFilter limitations with respect to proxy servers #​51863
  • Document support for Java 27 #​51825
  • Fix broken links from reference documentation to external Javadoc #​51820
  • Remove reference to AppOptics in the reference guide as it has retired #​51808
  • Fix broken links #​51802
  • Update Spring Framework reference links #​51771
  • Update testcontainers javadoc links #​51765
  • Maven plugin documentation incorrectly references remote restart property #​51747
  • Fix documented default of spring.test.database.replace #​51728
  • Correct Jackson 3 Javadoc links #​51663
  • Fix typo in deprecated Pushgateway base-url property metadata #​51632
  • Document baggage propagation over gRPC #​51597
  • Remove references to Spring Data Geode #​51564
  • Fix typos in service containers javadoc and reference documentation #​51445
  • Document SAML2 back-off in WebFlux security documentation #​51435
  • Remove reference to removed SpringBootWebSecurityConfiguration #​51413

🔨 Dependency Upgrades

❤️ Contributors

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

@​2heunxun, @​CCCLL, @​CHISANW, @​COBI-98, @​DevJunz, @​JunggiKim, @​LindseyZ1205, @​MacAlsandair, @​MycroCosmo, @​NotAFlightRisk, @​SebTardif, @​dlwhdgus0810, @​dlwldn30, @​dmitrysulman, @​fabio-grassi, @​galenzo17, @​geonheeryu, @​hjm12223, @​icikle, @​janwaleed09, @​jjh75607, @​kdomo, @​khopland, @​ksky8864, @​lavinhoque33, @​msridhar, @​ngocnhan-tran1996, @​noojung, @​o-shevchenko, @​ohchanKyu, @​padosol, @​piyushrajyadav, @​rvullriede, @​ryujungkyun, @​scordio, @​scottfrederick, @​timtebeek, @​vlsi, @​xoruddl, @​xxxxxxjun, @​yyuneu, and @​zhoubiao188

v4.1.1

Compare Source

⚠️ Attention Required
  • Spring Boot's Gradle plugin no longer automatically configures gRPC when the Protobuf plugin is applied. This behavior caused problems for those using Protobuf without gRPC. To opt in to the configuration of gRPC, configure the protobuf extension with the grpc plugin using an empty block. The Spring Boot Gradle plugin will then automatically configure the use of protoc-gen-grpc-java as before. #​50822
🐞 Bug Fixes
  • Kafka consumer-specific security protocol is not taken into account #​51369
  • Structured logging: a failed JSON encode corrupts the next log event written on the same thread #​51156
  • Micrometer registries pin the application context #​51135
  • Temporary file is not deleted when ExportedImageTar construction fails #​51132
  • Metadata annotation processor ignores getter-level @NestedConfigurationProperty for records #​51098
  • spring-boot-h2-console pulls servlet-api as transitive dependency #​51095
  • PropertiesLauncher does not log nested archive paths #​51089
  • Methods that return the result of Map#remove are not declared with a @Nullable return type #​51087
  • NativeImageResourceProvider flattens Flyway migration paths in subdirectories #​50964
  • Fix ordering of Kotlinx Serialization CodecCustomizer #​50961
  • JarFile is not closed when finding main class from archive #​50959
  • Application-managed JUL bridge handler should only be removed if installed #​50950
  • CloudFoundry reactive auto-configuration should not require a WebClient.Builder bean to be defined #​50944
  • Context refresh fails on reactive Cloud Foundry when using Actuator without spring-boot-health #​50942
  • Resources are not cleaned up when resolving an image that is not yet present in the builder #​50941
  • GraphQlWebMvcAutoConfiguration should apply customizers in order #​50914
  • Auto-configured RedisMessageListenerContainer does not use virtual threads when spring.threads.virtual.enabled is true #​50884
  • Context refresh fails when using Actuator on Jersey without spring-boot-health #​50872
  • Context refresh fails on Cloud Foundry when using Actuator without spring-boot-health #​50871
  • IllegalStateException when binding properties to a @Validated class that contains a map whose value type is a wildcard #​50856
  • High number of connections due to Mongo health indicator #​50852
  • Inconsistent handling of empty string values of spring.security.oauth2.resourceserver.jwt issuer-uri and jwk-set-uri #​50849
  • Return type nullability of ApplicationContextAssert's getBean methods does not indicate that bean may be null #​50845
  • PropertiesWebClientHttpServiceGroupConfigurer has highest precedence, preventing other configurers from being ordered ahead of it #​50843
  • Exposing gRPC test server port should backoff if gRPC is not present #​50825
  • JpaBaseConfiguration#entityManagerConfiguration can cause a dependency loop on beans declaring AsyncTaskExecutor #​50801
  • spring.grpc.server.health.include-overall-health is not taken into account #​50799
  • Setting 'server.servlet.session.cookie.partitioned' to false still emits the 'Partitioned' cookie attribute #​50790
  • Managed version of Prometheus Client is not aligned with Micrometer's micrometer-registry-prometheus #​50780
  • Map properties bound from empty strings fail with ConverterNotFoundException #​50773
  • Protobuf Common Protos should not be a managed dependency #​50772
  • An application that depends on spring-boot-security-oauth2-resource-server may fail to start with a ClassNotFoundException when Reactor is on the classpath but WebFlux is not #​50764
  • W3CHeaderParser's decoding is not compliant with RFC 3986 #​50650
📔 Documentation
  • Description of spring.graphql.websocket.connection-init-timeout does not render correctly in the reference guide #​51348
  • spring.profiles.group should have a 'spring-profile-name' hint provider #​51284
  • Remove reference to removed InfluxDB auto-configuration #​51176
  • Use JacksonJsonSerde in Kafka Streams documentation #​51161
  • Document alternatives to HttpMessageConverters #​51129
  • Fix stale type reference for OTLP logging transport metadata #​51119
  • Metadata for spring.test.mockmvc.htmlunit.url declares the wrong type #​51115
  • Caching documentation refers to AutoConfigureCache by its pre-4.0 package #​51113
  • Fix examples in Metadata Format documentation chapter #​51102
  • Improve discoverability of the AOT Cache How-to guides #​51000
  • Table of auto-configured HealthIndicators lists the wrong key for MongoHealthIndicator #​50940
  • Update OpenTelemetryResourceAttributes documentation #​50874
  • Fix @Value placeholder syntax in external config docs #​50873
  • Polish gRPC documentation #​50863
  • Fix duplicate word typos in documentation #​50850
  • Fix forwarded headers property in cloud deployment docs #​50848
  • Refer to spring-boot-starter-webmvc, not deprecated spring-boot-starter-web #​50847
  • Fix documentation inconsistencies #​50800
  • Add Spring gRPC properties to Common Application Properties referrence #​50789
  • Document OTLP SSL service connections #​50782
  • Update docs for changes to optional property binding and JPA repositories bootstrap mode #​50759
🔨 Dependency Upgrades
❤️ Contributors

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

@​DragonFSKY, @​LordKay-sudo, @​MacAlsandair, @​SJvaca30, @​SebTardif, @​SimonVerhoeven, @​codingkiddo, @​dhruv-15-03, @​dlwldnjs1009, @​dmitrysulman, @​doehyunbaek, @​filiphr, @​msridhar, @​ngocnhan-tran1996, @​nosan, @​ns3154, @​quaff, @​scordio, @​seonwooj0810, @​skdas20, @​vipi-n, @​vvzvvv, @​wantaekchoi, @​xfocus3, and @​yamamoto-ehhMH

v4.1.0

Compare Source

Full release notes for Spring Boot 4.1 are available on the wiki.

⭐ New Features

  • Add public constructor to InvalidConfigurationPropertyValueException that accepts a cause #​50211
  • Reduce memory consumption when repeatedly calling WritableJson.toByteArray #​49428

🐞 Bug Fixes

  • MailSender auto-configuration does not enable hostname verification #​50747
  • Artemis auto-configuration uses a predictable default location for the embedded broker's data #​50745
  • Embedded LDAP SSL should not be enabled when its bundle is empty #​50700
  • InetAddressFilter.externalAddresses does not exclude special purpose addresses from RFC 6890 #​50668
  • NullPointerException in reactor-netty SniProvider and unmapped SSL bundle with RSocket #​50645
  • SSL should not be enabled when a SSL bundle is overridden to an empty string #​50635
  • Test auto-configuration no longer integrates Spring Security with HtmlUnitDriver #​50633
  • Configuration property metadata includes incorrect class references #​50632
  • Docker Compose support does not restore thread interrupt flag when catching InterruptedException #​50618
  • RabbitProperties enables SSL even when spring.rabbitmq.ssl.bundle is overridden to an empty string #​50612
  • NullPointerException in reactor-netty SniProvider when SSL bundle uses client-auth or server truststore without server-name-bundles #​50610
  • SpringJtaPlatform should have been deprecated since 4.1.0-M3 #​50592
  • Layer written outside the output location of '//' exception is thrown when using extract layers in root directory #​50510
  • ConfigurationPropertiesReportEndpoint exposes AOP proxy internals #​50417
  • Created StackTracePrinter instances have no access to the Environment #​50414
  • MappingsEndpoint reports the context's own ID as parentId when a parent exists #​50412
  • Buildpack module does not validate long-to-int casts #​50410
  • Gradle gRPC support fails if protobuf-java dependency is used instead of protobuf-java-util #​50405
  • GraphQL WebSocket support does not configure allowed origins #​50394
  • Spring Boot Loader Does Not Support RSA and EC Signed Jars #​50298
  • Meter registries are not removed from the global registry when the context is closed #​50287
  • DataSourceBuilder cannot derive a DataSource from a lazy connection proxy #​50271
  • Nullable annotations from AbstractErrorController.getErrorAttributes are not aligned with implementation #​50266
  • Bean definitions can be added with an initializer before setAllowBeanDefinitionOverriding is called #​50264
  • EndpointRequest links matcher unnecessarily matches HTTP methods other than GET #​50261
  • Actuator's '/cloudfoundryapplication' endpoint does not work if restrictive CORS configuration is provided using a bean named corsConfigurationSource #​50258
  • ThreadPoolTaskScheduleBuilder unnecessarily loses precision when configuring await termination time #​50234
  • NimbusJwtDecoder silently accepts unknown values for spring.security.oauth2.resourceserver.jwt.jws-algorithms #​50228
  • Missing dependency management for spring-boot-web-server-test #​50224
  • Spring Batch support for MongoDB modules are not included in dependency management #​50223
  • Apply HTML escaping to timestamp attribute in Whitelabel error page #​50216
  • GrpcServerHealthScheduler is not started in servlet environments #​50209
  • Setting server.servlet.session.cookie.partitioned=true has no effect when using Tomcat #​50204

📔 Documentation

  • Fix reference to Gradle documentation for module replacement #​50647
  • Document SSL reloading with Let's Encrypt #​50630
  • Remove the use of Optional from Data Neo4j repository examples #​50622
  • Fix typos in documentation #​50620
  • Clarify dependency requirement for Bean Validation support #​50614
  • Document Java 25 requirement for AOT cache #​50485
  • Add links for Java CAS Client Spring Boot Starter #​50285
  • Document known testcontainers lifecycle issues #​50220
  • Document adding multiple connectors for Jetty #​50218
  • Polish InvalidConfigurationPropertyValueException constructor javadoc #​50214
  • Fix typo in Spring Security OAuth2 client registration documentation #​50199

🔨 Dependency Upgrades

[!IMPORTANT]
✂ PR body was truncated to here.


Configuration

📅 Schedule: (UTC)

  • 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 is behind base branch, or you tick the rebase/retry checkbox.

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


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

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate Bot added the dependencies A dependency update is available label Nov 20, 2025
@renovate
renovate Bot requested review from PhilippHeuer and iProdigy November 20, 2025 21:49
@renovate
renovate Bot force-pushed the chore/dependencies/major-4-spring-boot branch from 9c4bb14 to 4b2f12b Compare November 23, 2025 15:07
@renovate
renovate Bot force-pushed the chore/dependencies/major-4-spring-boot branch 6 times, most recently from e761802 to 37fa04d Compare December 21, 2025 19:15
@renovate
renovate Bot force-pushed the chore/dependencies/major-4-spring-boot branch from 37fa04d to b3c899a Compare January 10, 2026 10:14
@renovate
renovate Bot force-pushed the chore/dependencies/major-4-spring-boot branch 6 times, most recently from 03f5a12 to 7dddd68 Compare January 25, 2026 19:31
@renovate
renovate Bot force-pushed the chore/dependencies/major-4-spring-boot branch 2 times, most recently from 4c6838e to 576c3dd Compare January 30, 2026 19:31
@renovate
renovate Bot force-pushed the chore/dependencies/major-4-spring-boot branch from 576c3dd to 5b46b68 Compare February 7, 2026 12:10
@renovate
renovate Bot force-pushed the chore/dependencies/major-4-spring-boot branch 6 times, most recently from b612ad2 to f91be98 Compare February 21, 2026 16:58
@renovate
renovate Bot force-pushed the chore/dependencies/major-4-spring-boot branch 2 times, most recently from 5b5423a to ede9032 Compare March 8, 2026 00:52
@renovate
renovate Bot force-pushed the chore/dependencies/major-4-spring-boot branch 2 times, most recently from 1621d29 to 1460ec4 Compare March 17, 2026 15:09
@renovate
renovate Bot force-pushed the chore/dependencies/major-4-spring-boot branch from 71f7900 to b3e86ee Compare May 6, 2026 22:25
@renovate
renovate Bot force-pushed the chore/dependencies/major-4-spring-boot branch from b3e86ee to 7d221ec Compare May 16, 2026 00:12
@sonarqubecloud

Copy link
Copy Markdown

@renovate renovate Bot changed the title chore(deps): update dependency org.springframework.boot:spring-boot-starter-test to v4 chore(deps): update spring boot to v4 Jun 2, 2026
@renovate
renovate Bot force-pushed the chore/dependencies/major-4-spring-boot branch from 7d221ec to 34c707a Compare June 3, 2026 01:44
@renovate
renovate Bot force-pushed the chore/dependencies/major-4-spring-boot branch 3 times, most recently from f7326cb to 44db991 Compare June 15, 2026 23:56
@renovate
renovate Bot force-pushed the chore/dependencies/major-4-spring-boot branch 3 times, most recently from 7ccfd7b to 83cef1b Compare June 21, 2026 02:54
@renovate renovate Bot changed the title chore(deps): update spring boot to v4 chore(deps): update spring boot (major) Jun 22, 2026
@renovate renovate Bot changed the title chore(deps): update spring boot (major) chore(deps): update dependency org.springframework.boot:spring-boot-starter-test to v4 Jun 25, 2026
@renovate
renovate Bot force-pushed the chore/dependencies/major-4-spring-boot branch from 83cef1b to 8f8ec95 Compare June 27, 2026 20:45
@renovate
renovate Bot force-pushed the chore/dependencies/major-4-spring-boot branch 3 times, most recently from 44fda35 to f06ecd0 Compare July 17, 2026 23:30
@renovate
renovate Bot force-pushed the chore/dependencies/major-4-spring-boot branch from f06ecd0 to 1d05d91 Compare July 27, 2026 17:39
@renovate
renovate Bot force-pushed the chore/dependencies/major-4-spring-boot branch from 1d05d91 to e74c305 Compare August 7, 2026 19:35
@renovate
renovate Bot force-pushed the chore/dependencies/major-4-spring-boot branch 2 times, most recently from 16f63b1 to eaee937 Compare August 20, 2026 20:06
@renovate
renovate Bot force-pushed the chore/dependencies/major-4-spring-boot branch 3 times, most recently from e858903 to e5c1c0c Compare September 13, 2026 19:51
@renovate
renovate Bot force-pushed the chore/dependencies/major-4-spring-boot branch 3 times, most recently from 3cb03ec to d7ab5d9 Compare October 11, 2026 21:54
@renovate
renovate Bot force-pushed the chore/dependencies/major-4-spring-boot branch from d7ab5d9 to 992e73b Compare October 22, 2026 22:05
@sonarqubecloud

Copy link
Copy Markdown

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

Labels

dependencies A dependency update is available

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants