Commit Graph
1205 Commits
Author SHA1 Message Date
Stéphane Nicoll 52b8adda3e Merge branch '4.1.x'
Closes gh-50965
2026-07-16 15:39:30 +02:00
Stéphane Nicoll fa6a996372 Merge branch '4.0.x' into 4.1.x
Closes gh-50964
2026-07-16 15:39:21 +02:00
Stéphane Nicoll 9f8f4da563 Polish "Preserve nested Flyway migration paths in native images"
See gh-50433
2026-07-16 15:38:24 +02:00
Dongliang Xie d9ffeee4b7 Preserve nested Flyway migration paths in native images
This commit preserves the classpath-relative path for Flyway migration
discovered by the native image resource provider so nested migrations
remain readable.

See gh-50433

Signed-off-by: Dongliang Xie <dragonfsky@gmail.com>
2026-07-16 15:38:19 +02:00
Brian Clozel 190cc177dd Merge branch '4.1.x'
Closes gh-50962
2026-07-16 14:53:43 +02:00
Brian Clozel 1377c3a1c2 Merge branch '4.0.x' into 4.1.x
Closes gh-50961
2026-07-16 14:53:24 +02:00
Dmitry Sulman f83576eb29 Order kotlinxJsonCodecCustomizer so user-provided customizer can go after it
Closes gh-50428

Signed-off-by: Dmitry Sulman <dmitry.sulman@gmail.com>
2026-07-16 14:52:42 +02:00
Stéphane Nicoll 1383d34d1e Polish "Add Kafka Stream's leaveGroupOnClose property"
See gh-50432
2026-07-16 11:37:14 +02:00
Trygve Aasjord becdfefbed Add Kafka Stream's leaveGroupOnClose property
This commit makes it possible to set the option to leave the group on
close at configuration/deployment time using configuration.

See gh-50432

Signed-off-by: Trygve Aasjord <taasjord@users.noreply.github.com>
2026-07-16 11:37:14 +02:00
Stéphane Nicoll db12d4d940 Polish "Add support for configuring start timeout for JMS health checks"
See gh-50957
2026-07-16 11:23:19 +02:00
Venkata Naga Sai Srikanth Gollapudi 5f7bdcc029 Add support for configuring start timeout for JMS health checks
See gh-50957

Signed-off-by: Venkata Naga Sai Srikanth Gollapudi <42247688+gollapudisrikanth@users.noreply.github.com>
2026-07-16 11:21:31 +02:00
Stéphane Nicoll aba84a3850 Remove deprecated code
Closes gh-50955
2026-07-15 20:19:19 +02:00
Stéphane Nicoll 21f7390944 Polish "Add AMQP 1.0 RabbitMQ auto-configuration"
See gh-49857
2026-07-15 18:11:53 +02:00
Eddú Meléndez 0ed57a6109 Add AMQP 1.0 RabbitMQ auto-configuration
See gh-49857

Signed-off-by: Eddú Meléndez <eddu.melendez@gmail.com>
2026-07-15 18:11:45 +02:00
Stéphane Nicoll ebac87ae65 Configure trust packages in AMQP test that accepts JSON
See gh-49678
2026-07-15 16:56:25 +02:00
Stéphane Nicoll b5ba1ec85c Add AMQP 1.0 generic auto-configuration
This commit adds auto-configuration for the generic AMQP 1.0 client
in Spring AMQP 4.1, using Qpid ProtonJ. Support for connection factory,
client and listener endpoints are available.

The "spring.amqp" namespace exposes settings to connect to an AMQP 1.0
compliant broker and customize client and listeners settings. Docker
compose and testcontainers support using RabbitMQ, ActiveMQ, and Artemis
have been added too.

Closes gh-49678
2026-07-15 15:21:10 +02:00
Stéphane Nicoll f48cc3ac10 Move Spring AMQP 0.9 support to spring-boot-rabbitmq
Now that Spring AMQP supports AMQP 1.0 as well, we need to straighten
out our existing support. AMQP 0.9 is RabbitMQ specific, so we can no
longer refer it to "amqp". This commit migrates the existing support
to spring-boot-rabbitmq and renames the starters as well.

For continuity, users should migrate from "spring-boot-starter-amqp"
to "spring-boot-starter-rabbitmq". While the root package has been
changed for consistency, most names are the same, including
configuration properties still in the "spring.rabbitmq" namespace.

Keys to configure the version of the RabbitMQ clients have migrated to
'rabbitmq.client' and 'rabbitmq.stream.client' respectively.

Closes gh-49677
2026-07-15 15:10:09 +02:00
gichanGim 728cbc67ff Make ResourceHandlerRegistrationCustomizer public
See gh-50877

Signed-off-by: gichanGim <k.kychan2003@gmail.com>
2026-07-15 13:27:18 +02:00
Stéphane Nicoll 57aa6d26d8 Merge branch '4.1.x' 2026-07-15 13:26:15 +02:00
Stéphane Nicoll 7ef46fb87a Merge branch '4.0.x' into 4.1.x 2026-07-15 13:25:59 +02:00
Stéphane Nicoll e3e01fe9d5 Polish "Add self-reference to ApplicationContextAssertProvider"
See gh-50500
2026-07-15 12:05:39 +02:00
Stefano Cordio cb9b32bd22 Add self-reference to ApplicationContextAssertProvider
See gh-50500

Signed-off-by: Stefano Cordio <stefano.cordio@gmail.com>
2026-07-15 12:05:23 +02:00
Stéphane Nicoll 10fdd20606 Polish contribution
This commit applies the same rules to ConfigurationPropertiesSource.

See gh-50367
2026-07-15 11:37:31 +02:00
Venkata Naga Sai Srikanth Gollapudi 87c4755a86 Harmonize use of Collections and Maps in configuration properties
See gh-50367

Signed-off-by: Venkata Naga Sai Srikanth Gollapudi <42247688+gollapudisrikanth@users.noreply.github.com>
2026-07-15 11:37:31 +02:00
Stéphane Nicoll 9eb03d13fb Configure virtual threads on RedisMessageListenerContainer
Closes gh-50884
2026-07-15 09:45:44 +02:00
Stéphane Nicoll d4d20787c1 Polish "Lazily resolve JPA fallback bootstrap executor"
See gh-50801
2026-07-14 17:45:54 +02:00
Ns 8c519369ec Lazily resolve JPA fallback bootstrap executor
Previously, the `entityManagerFactoryBuilder` bean method injected a
`Map<String, AsyncTaskExecutor>` to determine the fallback executor used
for background JPA bootstrapping. A `Map` parameter is resolved eagerly,
so this forced early initialization of every `AsyncTaskExecutor` bean
whenever the builder was created, even when background bootstrapping was
not in use. When an `AsyncTaskExecutor` directly or transitively
depended on the `EntityManagerFactory`, this resulted in a
`BeanCurrentlyInCreationException`.

The fallback executor is now resolved lazily.
`EntityManagerFactoryBuilder` holds a `Supplier` that is only invoked
when background bootstrapping is actually required, and the executor is
then looked up from the `BeanFactory` rather than eagerly injected. A
new `Supplier`-based constructor is added for this purpose; the existing
constructor that accepts an `AsyncTaskExecutor` is retained and
delegates to it.

The same eager `Map<String, AsyncTaskExecutor>` injection, along with an
unused private method, is also removed from
`DataJpaRepositoriesAutoConfiguration`.

See gh-50801

Signed-off-by: Ns <397827222@qq.com>
2026-07-14 17:11:14 +02:00
Stéphane Nicoll 6c160f17d9 Merge branch '4.0.x'
Closes gh-50944
2026-07-14 15:38:56 +02:00
Stéphane Nicoll bbacbc6291 Do not require WebClient.Builder in CloudFoundry auto-configuration
Closes gh-50928
2026-07-14 15:37:40 +02:00
Stéphane Nicoll 02b3242057 Merge branch '4.0.x'
Closes gh-50943
2026-07-14 11:38:01 +02:00
Yanming Zhou 7522f679fd Inject Customizers as ObjectProvider to keep consistency
See gh-50909

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2026-07-14 11:23:34 +02:00
Stéphane Nicoll 666d7d042d Merge branch '4.0.x'
Closes gh-50942
2026-07-14 11:12:24 +02:00
Stéphane Nicoll a0c8fa445b Polish "Guard reactive Cloud Foundry health extension"
See gh-50916
2026-07-14 11:09:17 +02:00
Lee JiWon bda889997d Guard reactive Cloud Foundry health extension
Move the reactive Cloud Foundry health endpoint extension into a
health-specific configuration guarded by @ConditionalOnClass. When
spring-boot-health is absent, scanning the outer configuration attempts
to resolve ReactiveHealthEndpointWebExtension and causes context refresh
to fail.

See gh-50916

Signed-off-by: Lee JiWon <dlwldnjs1009@gmail.com>
2026-07-14 08:37:44 +02:00
Stéphane Nicoll dc23ca59a5 Merge branch '4.0.x'
Closes gh-50914
2026-07-03 12:33:45 +02:00
Stéphane Nicoll a57da0c57a Polish "Apply GraphQL customizers in order"
See gh-50908
2026-07-03 12:32:28 +02:00
Yanming Zhou f96808edfa Apply GraphQL customizers in order
See gh-50908

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2026-07-03 12:17:18 +02:00
Stéphane Nicoll e44b486a00 Merge branch '4.0.x' 2026-06-30 10:10:35 +02:00
Stéphane Nicoll 22eef97293 Add missing or outdated copyright headers
See gh-50894
2026-06-30 10:04:39 +02:00
Andy Wilkinson 1d693b1bc4 Merge branch '4.0.x'
Closes gh-50885
2026-06-29 11:11:18 +01:00
Andy Wilkinson 81aa1367f5 Polish "Remove unnecessary @Nullables from local array variable declarations"
See gh-50881

Signed-off-by: Andy Wilkinson <andy.wilkinson@broadcom.com>
2026-06-29 10:29:10 +01:00
Andy Wilkinson c5261cf0eb Merge branch '4.0.x'
Closes gh-50878
2026-06-28 12:14:56 +01:00
Yanming Zhou dff33aec55 Remove unnecessary @Nullables from local variable declarations
See gh-50866

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2026-06-28 10:39:07 +01:00
Andy Wilkinson bcaa961c1f Merge branch '4.0.x'
Closes gh-50874
2026-06-27 13:28:06 +01:00
Dmytro Nosan 43985f1356 Update OpenTelemetryResourceAttributes documentation
Clarify service.name and service.namespace defaults and remove
obsolete service.group documentation

See gh-50867

Signed-off-by: Dmytro Nosan <dimanosan@gmail.com>
2026-06-27 13:27:35 +01:00
Andy Wilkinson 4c2b5942e3 Merge branch '4.0.x'
Closes gh-50872
2026-06-27 12:55:30 +01:00
Lee JiWon 9cfa980a4d Avoid loading health classes in Jersey config
Move the Jersey additional health endpoint paths registrar into a
health-specific configuration so Jersey management endpoint support can
refresh when spring-boot-health is absent.

See gh-50858

Signed-off-by: Lee JiWon <dlwldnjs1009@gmail.com>
2026-06-27 12:53:18 +01:00
Andy Wilkinson 94c455b27a Merge branch '4.0.x'
Closes gh-50871
2026-06-27 12:51:56 +01:00
Lee JiWon 48054ea77b Avoid loading health classes in Cloud Foundry
Move the Cloud Foundry health endpoint extension bean into a
health-specific configuration. This lets the actuator configuration
refresh when spring-boot-health is absent.

See gh-50857

Signed-off-by: Lee JiWon <dlwldnjs1009@gmail.com>
2026-06-27 12:48:47 +01:00
Dmytro Nosan 16445de3ab Align W3CHeaderParser decoding with RFC 3986
Replace `URLDecoder.decode` with `StringUtils.uriDecode` to ensure
RFC 3986-compliant decoding. Unlike `URLDecoder`, URI decoding does
not treat `+` as a space and only decodes percent-encoded sequences.

See gh-50650

Signed-off-by: Dmytro Nosan <dimanosan@gmail.com>
2026-06-24 20:15:18 +01:00