Commit Graph
297 Commits
Author SHA1 Message Date
Andy Wilkinson 6a74bb85a3 Merge branch '4.0.x'
Closes gh-50440
2026-05-14 15:03:44 +01:00
Andy Wilkinson add52b6ccd Merge branch '3.5.x' into 4.0.x
Closes gh-50439
2026-05-14 15:02:24 +01:00
Andy Wilkinson e96ca4af56 Update headers to use quotes consistently
Closes gh-50397
2026-05-14 14:59:43 +01:00
Stéphane Nicoll 9ad6722f00 Add dependency management for spring-boot-web-server-test
Closes gh-50224
2026-04-26 21:20:35 +02:00
Phillip Webb 9bf698d564 Add missing gRPC test starters
Add `spring-boot-starter-grpc-client-test` and
`spring-boot-starter-grpc-server-test` to align with the client
and server modules. Also refine dependencies for common test
usage patterns.

`spring-boot-starter-grpc-server-test` has been removed.

Closes gh-49690
2026-04-21 20:01:05 -07:00
Moritz Halbritter c56cbd46b2 Map OpenTelemetry environment variables to properties
Closes gh-48799
2026-03-30 15:28:42 +02:00
Stéphane Nicoll 5296a5bbfd Revert "Rename spring-boot-amqp to spring-boot-rabbitmq"
This reverts commit 72b8a6ca05,
b820d9feac, and
edadf816ab.

See gh-49620
2026-03-20 11:03:28 +01:00
Stéphane Nicoll f728235906 Revert "Introduce Generic AMQP 1.0 client support"
This reverts commit 8dde82b557, c388dc92
5b7f0f726b, and
2d71ef94ed.

See gh-49621
2026-03-20 11:02:35 +01:00
Chris BonoandPhillip Webb 1cb8d02ed7 Add Spring gRPC server and client security support
Add auto-configuration to integrate gRPC server applications
with Spring Security. This commit provides both standard
Spring Security support as well as OAuth support.

Closes gh-49047

Co-authored-by: Phillip Webb <phil.webb@broadcom.com>
2026-03-19 15:12:31 -07:00
Chris BonoandPhillip Webb be3a1b7117 Add Spring gRPC test support
Add a testing module that can be used for testing Spring gRPC
server or client applications.

Closes gh-49046

Co-authored-by: Phillip Webb <phil.webb@broadcom.com>
2026-03-19 15:12:30 -07:00
Chris BonoandPhillip Webb c35b21adb4 Add Spring gRPC client support
Add support for Spring gRPC client applications.

Closes gh-49045

Co-authored-by: Phillip Webb <phil.webb@broadcom.com>
2026-03-19 15:12:30 -07:00
Chris BonoandPhillip Webb e61bb6df5b Add Spring gRPC server support
Add support for Spring gRPC server applications.

Closes gh-49044

Co-authored-by: Phillip Webb <phil.webb@broadcom.com>
2026-03-19 15:12:30 -07:00
Stéphane Nicoll c388dc92f1 Add AMQP 1.0 client auto-configuration
This commit adds auto-configuration for the generic AMQP 1.0 client
in Spring AMQP 4.1, using Qpid ProtonJ. The auto-configuration provides
an AmqpConnectionFactory as well as an AmqpClient with standard
customizer callbacks. The "spring.amqp" namespace exposes settings to
connect to an AMQP 1.0 compliant broker. Docker compose and
testcontainers support using RabbitMQ have been added too.

Closes gh-49621
2026-03-19 15:46:47 +01:00
Stéphane NicollandEddú Meléndez 72b8a6ca05 Migrate Spring RabbitMQ support to spring-boot-rabbitmq
See gh-49620

Co-authored-by: Eddú Meléndez <eddu.melendez@gmail.com>
2026-03-19 08:04:14 +01:00
Stéphane Nicoll b12d40e8e5 Add support for Spring Batch MongoDB
This commit adds support for running Spring Batch jobs with a MongoDB
store. It aligns as much as possible to the JDBC counterpart, with
spring-boot-starter-batch-data-mongodb and spring-boot-starter-batch-data-mongodb-test.

As we do not have a way to initialize a MongoDB store at the moment,
this commit adds a conservative approach of executing commands defined
by the standard Spring Batch schema script.

Closes gh-43236
2026-03-16 12:11:19 +01:00
Andy Wilkinson 6cc6ec06a0 Merge branch '4.0.x'
Closes gh-49524
2026-03-09 11:53:13 +00:00
Andy Wilkinson 1e09be7f1c Adding missing starter for Spring REST Docs
Closes gh-48289
2026-03-09 11:50:17 +00:00
Phillip Webb b0f9cee6f0 Merge branch '4.0.x'
Closes gh-49250
2026-02-17 22:27:01 -08:00
Phillip Webb 1d054e8a12 Ensure HttpMessageConverters are configured before RestClients
Update `RestClientAutoConfiguration` to ensure that it applies after
`HttpMessageConvertersAutoConfiguration`.

Prior to this commit, the `HttpMessageConvertersRestClientCustomizer`
bean might not get created due to the `@ConditionalOnBean` guard not
finding any `ClientHttpMessageConvertersCustomizer` beans.

Since the issue is surprising hard to replicate in a unit test, a new
smoke test has been added to ensure the problem doesn't return.

Fixes gh-49223
2026-02-17 22:26:02 -08:00
Phillip Webb 0463b4d0bc Add @AutoConfigureWebServer test annotation
Introduce `@AutoConfigureWebServer` test annotation to support
`@SpringBootTest` with specific classes and a random port.

Closes gh-48815
2026-01-21 19:32:43 -08:00
Andy Wilkinson b6ba0cd141 Merge branch '3.5.x' into 4.0.x
Closes gh-48916
2026-01-20 18:02:33 +00:00
Andy Wilkinson 30b5b73f5f Upgrade to Develocity Conventions 0.0.25
Closes gh-48915
2026-01-20 18:01:38 +00:00
Andy Wilkinson 252b218ac9 Correct renaming of Kotlinx Serialization JSON starters
Closes gh-48262
2025-12-18 14:42:24 +00:00
Stéphane Nicoll 61e427c101 Merge branch '3.5.x'
Closes gh-48516
2025-12-12 16:24:45 +01:00
Phillip Webb 64ea2fdd24 Fix spring-boot-kotlin-serialization-json starter name
Rename `spring-boot-starter-kotlin-serialization` to
`spring-boot-starter-kotlin-serialization-json` to align with module.

Fixes gh-48262
2025-12-01 11:51:53 -08:00
Phillip Webb 2685f4bf29 Change tomcat and jetty runtime modules to starters
Change `spring-boot-tomcat-runtime` and `spring-boot-jetty-runtime`
into starter POMs and reduce the number of dependencies needed for
`spring-boot-tomcat` and `spring-boot-jetty`.

The runtime starters provide only the jars required to run the
embedded server along with the module jar itself (excluding transitive
dependencies) and `spring-boot-webserver` (excluding transitive
dependencies).

The build setup required for an executable jar is slightly different
between Maven and Gradle. For Maven, the regular module is put in the
`provided` scope. For Gradle, the regular module remains in main
configuration and the runtime jar is put in the `providedRuntime`
configuration. The reference documentation has been updated to
show how to configure things if starters are being used.

Manual testing has been performed to ensure that wars build with Maven
and Gradle work with both Tomcat and Jetty in both deployed and
`java -jar` modes.

Closes gh-48175
2025-11-19 21:59:03 -08:00
Moritz Halbritter 4af532b8ee Add starters for Micrometer Metrics
This commit adds spring-boot-starter-micrometer-metrics and
spring-boot-starter-micrometer-metrics-test.

It also uses the new starters in smoke tests and in other starters,
which depended on spring-boot-micrometer-metrics.

Closes gh-48161
2025-11-18 09:28:53 +01:00
Andy Wilkinson 5699915383 Rename module for Kotlinx Serialization JSON support
Closes gh-48076
2025-11-12 17:34:28 +00:00
Phillip WebbandAndy Wilkinson 619454548b Restore support for Jersey
Restore support for Jersey now that it supports JAX-RS 4.

Closes gh-47967

Co-authored-by: Andy Wilkinson <andy.wilkinson@broadcom.com>
2025-11-05 10:51:08 -08:00
Moritz Halbritter e9172d9f51 Split spring-boot-micrometer-tracing into Brave and OpenTelemetry specific module
Closes gh-47953
2025-11-05 12:14:13 +01:00
Andy Wilkinson 635e766aaf Make it easier to create executable and deployable war
Closes gh-46944
2025-10-22 10:13:46 +01:00
Stéphane Nicoll 2ae72ecf4b Drop some transitive starters
This commit removes the SQL and Reactive starters as their only usage
is transitive.

Closes gh-47378
2025-10-21 14:57:52 +02:00
Andy Wilkinson 81aa674adb Remove support for embedded launch scripts
Closes gh-47666
2025-10-20 20:03:14 +01:00
onobc 4aaa1dfb5f Remove Spring Pulsar Reactive support
This removes the auto-configuration for Spring Pulsar Reactive.

Consolidates the PulsarConfiguration into the PulsarAutoConfiguration because
there is no longer a need to factor out the common components between Spring
Pulsar and Spring Pulsar Reactive.

See gh-47707

Signed-off-by: onobc <chris.bono@gmail.com>
2025-10-20 18:15:34 +02:00
Phillip WebbandAndy Wilkinson e7f3ae19f8 Add Jackson 2 smoke tests
See gh-47688

Co-authored-by: Andy Wilkinson <andy.wilkinson@broadcom.com>
2025-10-17 13:17:37 -07:00
Andy Wilkinson e9084ddd86 Provide auto-configuration for Jackson 2
See gh-47688
2025-10-17 13:17:08 -07:00
Phillip Webb 61c8fa2e1c Remove support for Spring Session Hazelcast
Closes gh-47661
2025-10-16 10:42:14 -07:00
Phillip Webb c477d3b8b4 Remove support for Spring Session Data MongoDB
Closes gh-47662
2025-10-16 10:38:45 -07:00
Stéphane Nicoll 36c2432f69 Rename 'spring-boot-tx' module to 'spring-boot-transaction'
Closes gh-47603
2025-10-16 09:14:20 +02:00
Moritz Halbritter 2890bd8382 Add missing "spring-boot-starter-batch-jdbc-test" to the Gradle build 2025-10-15 12:01:55 +02:00
Andy Wilkinson 885f90da0c Introduce spring-boot-webclient-test
See gh-46356
See gh-47322
2025-10-10 12:11:43 +01:00
Phillip Webb f4e8cacbcd Polish 2025-10-09 22:17:24 -07:00
Andy WilkinsonandPhillip Webb 9eb05ebb10 Create spring-boot-resttestclient and spring-boot-webtestclient modules
Create `spring-boot-resttestclient` and `spring-boot-webtestclient`
modules to hold test client auto-configuration and `TestRestTemplate`
code.

Previous these classes were contained in `spring-boot-resetclient-test`
and `spring-boot-webclient-test` which was incorrect since the `-test`
modules should hold code need to test the given modules, not supporting
test classes.

See gh-46356

Co-authored-by: Phillip Webb <phil.webb@broadcom.com>
2025-10-09 22:12:39 -07:00
Phillip Webb dadfd9a35d Add classic test starter
See gh-46356
See gh-47322
2025-10-01 21:55:38 -07:00
Phillip Webb 2d312ed5f5 Add remaining test starters
Add test starters for all remaining non-deprecated starters.

See gh-46356
See gh-47322
2025-10-01 21:55:33 -07:00
Phillip Webb a30e832915 Add starters for corresponding test modules
See gh-46356
See gh-47322
2025-10-01 21:55:19 -07:00
Phillip Webb 2a521ce4e9 Remove spring-boot-web-server-test module
Remove the `spring-boot-web-server-test` module, adding
`SpringBootTestRandomPortContextCustomizerFactory` to
`spring-boot-web-server` as a replacement for
`SpringBootTestRandomPortApplicationListener`.

See gh-46356
See gh-47322
2025-10-01 21:54:54 -07:00
Phillip Webb 6f909114e7 Move WebTestClientBuilderCustomizer to spring-boot-test
Relocate `WebTestClientBuilderCustomizer` to `spring-boot-test`
and break the direct link to web-server and http-codec by making
use of `spring.factories` and the new `BaseUrlProviders` class.

A new `spring-boot-test-integration-test` module has also been
added to ensure hold the previous tests.

See gh-46356
2025-10-01 21:50:13 -07:00
Phillip Webb 8008076e04 Remove spring-boot-json-test module
Remove spring-boot-json-test module and spread code between
`spring-boot-test`, `spring-boot-test-autoconfigure` and JSON
technology modules.

See gh-46356
See gh-47322
2025-10-01 21:42:18 -07:00
Phillip Webb 4b2d358384 Refine spring-boot-test-autoconfigure dependencies
Make `spring-boot-test-autoconfigure` optionally depend on
`spring-boot-autoconfigure` so that it can be an `api` dependency
for `*-test` modules. Also relocate it to core.

See gh-47322
2025-10-01 21:41:55 -07:00