From 343b9a827643dd2b889ffc8ea9858171628883df Mon Sep 17 00:00:00 2001 From: Andy Wilkinson Date: Mon, 28 Apr 2025 14:51:21 +0100 Subject: [PATCH] Create spring-boot-reactor module --- settings.gradle | 1 + ...itional-spring-configuration-metadata.json | 8 ------- ...ot.autoconfigure.AutoConfiguration.imports | 1 - .../spring-boot-data-cassandra/build.gradle | 2 +- .../spring-boot-data-couchbase/build.gradle | 2 +- .../build.gradle | 2 +- .../spring-boot-data-mongodb/build.gradle | 2 +- .../spring-boot-data-neo4j/build.gradle | 2 +- .../spring-boot-dependencies/build.gradle | 1 + .../spring-boot-devtools/build.gradle | 2 +- .../spring-boot-docs/build.gradle | 2 ++ .../spring-boot-elasticsearch/build.gradle | 2 +- .../spring-boot-mongodb/build.gradle | 2 +- .../spring-boot-reactor/build.gradle | 22 +++++++++++++++++++ .../ReactorEnvironmentPostProcessor.java | 0 .../ReactorAutoConfiguration.java | 4 ++-- .../autoconfigure}/ReactorProperties.java | 4 ++-- .../reactor/autoconfigure}/package-info.java | 2 +- .../boot/reactor/package-info.java | 0 ...itional-spring-configuration-metadata.json | 13 +++++++++++ .../main/resources/META-INF/spring.factories | 0 ...ot.autoconfigure.AutoConfiguration.imports | 1 + .../reactor/InstrumentedFluxProvider.java | 0 .../ReactorEnvironmentPostProcessorTests.java | 0 .../ReactorAutoConfigurationTests.java | 2 +- .../build.gradle | 2 +- .../build.gradle | 2 +- .../spring-boot-security/build.gradle | 2 +- .../spring-boot-session/build.gradle | 1 + .../build.gradle | 4 ++-- .../build.gradle | 4 ++-- .../build.gradle | 2 +- .../build.gradle | 4 ++-- .../build.gradle | 2 +- .../spring-boot-tx/build.gradle | 2 +- .../build.gradle | 6 ++--- .../build.gradle | 2 +- .../build.gradle | 4 ++-- 38 files changed, 73 insertions(+), 41 deletions(-) create mode 100644 spring-boot-project/spring-boot-reactor/build.gradle rename spring-boot-project/{spring-boot-all => spring-boot-reactor}/src/main/java/org/springframework/boot/reactor/ReactorEnvironmentPostProcessor.java (100%) rename spring-boot-project/{spring-boot-autoconfigure-all/src/main/java/org/springframework/boot/autoconfigure/reactor => spring-boot-reactor/src/main/java/org/springframework/boot/reactor/autoconfigure}/ReactorAutoConfiguration.java (95%) rename spring-boot-project/{spring-boot-autoconfigure-all/src/main/java/org/springframework/boot/autoconfigure/reactor => spring-boot-reactor/src/main/java/org/springframework/boot/reactor/autoconfigure}/ReactorProperties.java (95%) rename spring-boot-project/{spring-boot-autoconfigure-all/src/main/java/org/springframework/boot/autoconfigure/reactor => spring-boot-reactor/src/main/java/org/springframework/boot/reactor/autoconfigure}/package-info.java (92%) rename spring-boot-project/{spring-boot-all => spring-boot-reactor}/src/main/java/org/springframework/boot/reactor/package-info.java (100%) create mode 100644 spring-boot-project/spring-boot-reactor/src/main/resources/META-INF/additional-spring-configuration-metadata.json rename spring-boot-project/{spring-boot-all => spring-boot-reactor}/src/main/resources/META-INF/spring.factories (100%) create mode 100644 spring-boot-project/spring-boot-reactor/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports rename spring-boot-project/{spring-boot-all => spring-boot-reactor}/src/test/java/org/springframework/boot/reactor/InstrumentedFluxProvider.java (100%) rename spring-boot-project/{spring-boot-all => spring-boot-reactor}/src/test/java/org/springframework/boot/reactor/ReactorEnvironmentPostProcessorTests.java (100%) rename spring-boot-project/{spring-boot-autoconfigure-all/src/test/java/org/springframework/boot/autoconfigure/reactor => spring-boot-reactor/src/test/java/org/springframework/boot/reactor/autoconfigure}/ReactorAutoConfigurationTests.java (98%) diff --git a/settings.gradle b/settings.gradle index a9ddda0c6a..b95c7580a5 100644 --- a/settings.gradle +++ b/settings.gradle @@ -100,6 +100,7 @@ include "spring-boot-project:spring-boot-parent" include "spring-boot-project:spring-boot-pulsar" include "spring-boot-project:spring-boot-quartz" include "spring-boot-project:spring-boot-r2dbc" +include "spring-boot-project:spring-boot-reactor" include "spring-boot-project:spring-boot-reactor-netty" include "spring-boot-project:spring-boot-rsocket" include "spring-boot-project:spring-boot-security" diff --git a/spring-boot-project/spring-boot-autoconfigure-all/src/main/resources/META-INF/additional-spring-configuration-metadata.json b/spring-boot-project/spring-boot-autoconfigure-all/src/main/resources/META-INF/additional-spring-configuration-metadata.json index 74a1af5c9b..4b11fff484 100644 --- a/spring-boot-project/spring-boot-autoconfigure-all/src/main/resources/META-INF/additional-spring-configuration-metadata.json +++ b/spring-boot-project/spring-boot-autoconfigure-all/src/main/resources/META-INF/additional-spring-configuration-metadata.json @@ -239,14 +239,6 @@ "reason": "Narayana support has moved to third party starter." } }, - { - "name": "spring.reactor.stacktrace-mode.enabled", - "description": "Whether Reactor should collect stacktrace information at runtime.", - "defaultValue": false, - "deprecation": { - "replacement": "spring.reactor.debug-agent.enabled" - } - }, { "name": "spring.resources.add-mappings", "type": "java.lang.Boolean", diff --git a/spring-boot-project/spring-boot-autoconfigure-all/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/spring-boot-project/spring-boot-autoconfigure-all/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports index df14dc16bf..47017743bc 100644 --- a/spring-boot-project/spring-boot-autoconfigure-all/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports +++ b/spring-boot-project/spring-boot-autoconfigure-all/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports @@ -5,7 +5,6 @@ org.springframework.boot.autoconfigure.http.client.service.HttpServiceClientAuto org.springframework.boot.autoconfigure.http.client.reactive.ClientHttpConnectorAutoConfiguration org.springframework.boot.autoconfigure.http.client.reactive.service.ReactiveHttpServiceClientAutoConfiguration org.springframework.boot.autoconfigure.netty.NettyAutoConfiguration -org.springframework.boot.autoconfigure.reactor.ReactorAutoConfiguration org.springframework.boot.autoconfigure.web.client.RestClientAutoConfiguration org.springframework.boot.autoconfigure.web.client.RestTemplateAutoConfiguration org.springframework.boot.autoconfigure.web.reactive.function.client.ClientHttpConnectorAutoConfiguration diff --git a/spring-boot-project/spring-boot-data-cassandra/build.gradle b/spring-boot-project/spring-boot-data-cassandra/build.gradle index 59b947bc6e..ccaa5bde0b 100644 --- a/spring-boot-project/spring-boot-data-cassandra/build.gradle +++ b/spring-boot-project/spring-boot-data-cassandra/build.gradle @@ -16,7 +16,7 @@ dependencies { } optional(project(":spring-boot-project:spring-boot-autoconfigure")) - optional("io.projectreactor:reactor-core") + optional(project(":spring-boot-project:spring-boot-reactor")) dockerTestImplementation(project(":spring-boot-project:spring-boot-test")) dockerTestImplementation(project(":spring-boot-project:spring-boot-tools:spring-boot-test-support-docker")) diff --git a/spring-boot-project/spring-boot-data-couchbase/build.gradle b/spring-boot-project/spring-boot-data-couchbase/build.gradle index dcc0e20bc2..994fb73028 100644 --- a/spring-boot-project/spring-boot-data-couchbase/build.gradle +++ b/spring-boot-project/spring-boot-data-couchbase/build.gradle @@ -13,8 +13,8 @@ dependencies { api("org.springframework.data:spring-data-couchbase") optional(project(":spring-boot-project:spring-boot-autoconfigure")) + optional(project(":spring-boot-project:spring-boot-reactor")) optional(project(":spring-boot-project:spring-boot-validation")) - optional("io.projectreactor:reactor-core") testImplementation(project(":spring-boot-project:spring-boot-test")) testImplementation(project(":spring-boot-project:spring-boot-tools:spring-boot-test-support")) diff --git a/spring-boot-project/spring-boot-data-elasticsearch/build.gradle b/spring-boot-project/spring-boot-data-elasticsearch/build.gradle index 19d974b752..f1bc6830ed 100644 --- a/spring-boot-project/spring-boot-data-elasticsearch/build.gradle +++ b/spring-boot-project/spring-boot-data-elasticsearch/build.gradle @@ -14,7 +14,7 @@ dependencies { api("org.springframework.data:spring-data-elasticsearch") optional(project(":spring-boot-project:spring-boot-autoconfigure")) - optional("io.projectreactor:reactor-core") + optional(project(":spring-boot-project:spring-boot-reactor")) dockerTestImplementation(project(":spring-boot-project:spring-boot-test")) dockerTestImplementation(project(":spring-boot-project:spring-boot-tools:spring-boot-test-support-docker")) diff --git a/spring-boot-project/spring-boot-data-mongodb/build.gradle b/spring-boot-project/spring-boot-data-mongodb/build.gradle index 8b879e8eda..9605c2df48 100644 --- a/spring-boot-project/spring-boot-data-mongodb/build.gradle +++ b/spring-boot-project/spring-boot-data-mongodb/build.gradle @@ -13,7 +13,7 @@ dependencies { api("org.springframework.data:spring-data-mongodb") optional(project(":spring-boot-project:spring-boot-autoconfigure")) - optional("io.projectreactor:reactor-core") + optional(project(":spring-boot-project:spring-boot-reactor")) optional("org.mongodb:mongodb-driver-reactivestreams") optional("org.mongodb:mongodb-driver-sync") diff --git a/spring-boot-project/spring-boot-data-neo4j/build.gradle b/spring-boot-project/spring-boot-data-neo4j/build.gradle index 4f7f25ee8c..98677d0d53 100644 --- a/spring-boot-project/spring-boot-data-neo4j/build.gradle +++ b/spring-boot-project/spring-boot-data-neo4j/build.gradle @@ -15,7 +15,7 @@ dependencies { api("org.springframework.data:spring-data-neo4j") optional(project(":spring-boot-project:spring-boot-autoconfigure")) - optional("io.projectreactor:reactor-core") + optional(project(":spring-boot-project:spring-boot-reactor")) dockerTestImplementation(project(":spring-boot-project:spring-boot-test")) dockerTestImplementation(project(":spring-boot-project:spring-boot-tools:spring-boot-test-support-docker")) diff --git a/spring-boot-project/spring-boot-dependencies/build.gradle b/spring-boot-project/spring-boot-dependencies/build.gradle index d44166ab21..ac17f6d484 100644 --- a/spring-boot-project/spring-boot-dependencies/build.gradle +++ b/spring-boot-project/spring-boot-dependencies/build.gradle @@ -2036,6 +2036,7 @@ bom { "spring-boot-pulsar", "spring-boot-quartz", "spring-boot-r2dbc", + "spring-boot-reactor", "spring-boot-reactor-netty", "spring-boot-rsocket", "spring-boot-security", diff --git a/spring-boot-project/spring-boot-devtools/build.gradle b/spring-boot-project/spring-boot-devtools/build.gradle index f3e4005393..3ba44eb541 100644 --- a/spring-boot-project/spring-boot-devtools/build.gradle +++ b/spring-boot-project/spring-boot-devtools/build.gradle @@ -39,8 +39,8 @@ dependencies { optional(project(":spring-boot-project:spring-boot-jdbc")) optional(project(":spring-boot-project:spring-boot-jpa")) optional(project(":spring-boot-project:spring-boot-r2dbc")) + optional(project(":spring-boot-project:spring-boot-reactor")) optional(project(":spring-boot-project:spring-boot-security")) - optional("io.projectreactor:reactor-core") optional("io.r2dbc:r2dbc-spi") optional("jakarta.servlet:jakarta.servlet-api") optional("org.apache.derby:derbytools") diff --git a/spring-boot-project/spring-boot-docs/build.gradle b/spring-boot-project/spring-boot-docs/build.gradle index 3fe75e85e0..cd9a4059ff 100644 --- a/spring-boot-project/spring-boot-docs/build.gradle +++ b/spring-boot-project/spring-boot-docs/build.gradle @@ -111,6 +111,7 @@ dependencies { autoConfiguration(project(path: ":spring-boot-project:spring-boot-pulsar", configuration: "autoConfigurationMetadata")) autoConfiguration(project(path: ":spring-boot-project:spring-boot-quartz", configuration: "autoConfigurationMetadata")) autoConfiguration(project(path: ":spring-boot-project:spring-boot-r2dbc", configuration: "autoConfigurationMetadata")) + autoConfiguration(project(path: ":spring-boot-project:spring-boot-reactor", configuration: "autoConfigurationMetadata")) autoConfiguration(project(path: ":spring-boot-project:spring-boot-reactor-netty", configuration: "autoConfigurationMetadata")) autoConfiguration(project(path: ":spring-boot-project:spring-boot-rsocket", configuration: "autoConfigurationMetadata")) autoConfiguration(project(path: ":spring-boot-project:spring-boot-security", configuration: "autoConfigurationMetadata")) @@ -187,6 +188,7 @@ dependencies { configurationProperties(project(path: ":spring-boot-project:spring-boot-pulsar", configuration: "configurationPropertiesMetadata")) configurationProperties(project(path: ":spring-boot-project:spring-boot-quartz", configuration: "configurationPropertiesMetadata")) configurationProperties(project(path: ":spring-boot-project:spring-boot-r2dbc", configuration: "configurationPropertiesMetadata")) + configurationProperties(project(path: ":spring-boot-project:spring-boot-reactor", configuration: "configurationPropertiesMetadata")) configurationProperties(project(path: ":spring-boot-project:spring-boot-reactor-netty", configuration: "configurationPropertiesMetadata")) configurationProperties(project(path: ":spring-boot-project:spring-boot-rsocket", configuration: "configurationPropertiesMetadata")) configurationProperties(project(path: ":spring-boot-project:spring-boot-security", configuration: "configurationPropertiesMetadata")) diff --git a/spring-boot-project/spring-boot-elasticsearch/build.gradle b/spring-boot-project/spring-boot-elasticsearch/build.gradle index bc6c424fd6..cf401d7209 100644 --- a/spring-boot-project/spring-boot-elasticsearch/build.gradle +++ b/spring-boot-project/spring-boot-elasticsearch/build.gradle @@ -15,6 +15,7 @@ dependencies { optional(project(":spring-boot-project:spring-boot-autoconfigure")) optional(project(":spring-boot-project:spring-boot-jsonb")) + optional(project(":spring-boot-project:spring-boot-reactor")) optional("co.elastic.clients:elasticsearch-java") { exclude group: "commons-logging", module: "commons-logging" } @@ -26,7 +27,6 @@ dependencies { optional("org.springframework.data:spring-data-elasticsearch") { exclude group: "org.elasticsearch.client", module: "transport" } - optional("io.projectreactor:reactor-core") dockerTestImplementation(project(":spring-boot-project:spring-boot-test")) dockerTestImplementation(project(":spring-boot-project:spring-boot-tools:spring-boot-test-support-docker")) diff --git a/spring-boot-project/spring-boot-mongodb/build.gradle b/spring-boot-project/spring-boot-mongodb/build.gradle index a1df190481..cb1d2b5e21 100644 --- a/spring-boot-project/spring-boot-mongodb/build.gradle +++ b/spring-boot-project/spring-boot-mongodb/build.gradle @@ -12,8 +12,8 @@ dependencies { api(project(":spring-boot-project:spring-boot")) optional(project(":spring-boot-project:spring-boot-autoconfigure")) + optional(project(":spring-boot-project:spring-boot-reactor")) optional("io.netty:netty-transport") - optional("io.projectreactor:reactor-core") optional("org.mongodb:mongodb-driver-reactivestreams") optional("org.mongodb:mongodb-driver-sync") diff --git a/spring-boot-project/spring-boot-reactor/build.gradle b/spring-boot-project/spring-boot-reactor/build.gradle new file mode 100644 index 0000000000..ed2778a635 --- /dev/null +++ b/spring-boot-project/spring-boot-reactor/build.gradle @@ -0,0 +1,22 @@ +plugins { + id "java-library" + id "org.springframework.boot.auto-configuration" + id "org.springframework.boot.configuration-properties" + id "org.springframework.boot.deployed" + id "org.springframework.boot.optional-dependencies" +} + +description = "Spring Boot Reactor" + +dependencies { + api(project(":spring-boot-project:spring-boot")) + api("io.projectreactor:reactor-core") + + optional(project(":spring-boot-project:spring-boot-autoconfigure")) + + testImplementation(project(":spring-boot-project:spring-boot-test")) + testImplementation(project(":spring-boot-project:spring-boot-tools:spring-boot-test-support")) + testImplementation("io.micrometer:context-propagation") + + testRuntimeOnly("ch.qos.logback:logback-classic") +} diff --git a/spring-boot-project/spring-boot-all/src/main/java/org/springframework/boot/reactor/ReactorEnvironmentPostProcessor.java b/spring-boot-project/spring-boot-reactor/src/main/java/org/springframework/boot/reactor/ReactorEnvironmentPostProcessor.java similarity index 100% rename from spring-boot-project/spring-boot-all/src/main/java/org/springframework/boot/reactor/ReactorEnvironmentPostProcessor.java rename to spring-boot-project/spring-boot-reactor/src/main/java/org/springframework/boot/reactor/ReactorEnvironmentPostProcessor.java diff --git a/spring-boot-project/spring-boot-autoconfigure-all/src/main/java/org/springframework/boot/autoconfigure/reactor/ReactorAutoConfiguration.java b/spring-boot-project/spring-boot-reactor/src/main/java/org/springframework/boot/reactor/autoconfigure/ReactorAutoConfiguration.java similarity index 95% rename from spring-boot-project/spring-boot-autoconfigure-all/src/main/java/org/springframework/boot/autoconfigure/reactor/ReactorAutoConfiguration.java rename to spring-boot-project/spring-boot-reactor/src/main/java/org/springframework/boot/reactor/autoconfigure/ReactorAutoConfiguration.java index 9ab522efdf..b84dd0642f 100644 --- a/spring-boot-project/spring-boot-autoconfigure-all/src/main/java/org/springframework/boot/autoconfigure/reactor/ReactorAutoConfiguration.java +++ b/spring-boot-project/spring-boot-reactor/src/main/java/org/springframework/boot/reactor/autoconfigure/ReactorAutoConfiguration.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.autoconfigure.reactor; +package org.springframework.boot.reactor.autoconfigure; import reactor.core.publisher.Hooks; @@ -27,7 +27,7 @@ import org.springframework.boot.context.properties.EnableConfigurationProperties * {@link EnableAutoConfiguration Auto-configuration} for Reactor. * * @author Brian Clozel - * @since 3.2.0 + * @since 4.0.0 */ @AutoConfiguration @ConditionalOnClass(Hooks.class) diff --git a/spring-boot-project/spring-boot-autoconfigure-all/src/main/java/org/springframework/boot/autoconfigure/reactor/ReactorProperties.java b/spring-boot-project/spring-boot-reactor/src/main/java/org/springframework/boot/reactor/autoconfigure/ReactorProperties.java similarity index 95% rename from spring-boot-project/spring-boot-autoconfigure-all/src/main/java/org/springframework/boot/autoconfigure/reactor/ReactorProperties.java rename to spring-boot-project/spring-boot-reactor/src/main/java/org/springframework/boot/reactor/autoconfigure/ReactorProperties.java index 7bbccbb795..656466d556 100644 --- a/spring-boot-project/spring-boot-autoconfigure-all/src/main/java/org/springframework/boot/autoconfigure/reactor/ReactorProperties.java +++ b/spring-boot-project/spring-boot-reactor/src/main/java/org/springframework/boot/reactor/autoconfigure/ReactorProperties.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.autoconfigure.reactor; +package org.springframework.boot.reactor.autoconfigure; import org.springframework.boot.context.properties.ConfigurationProperties; @@ -22,7 +22,7 @@ import org.springframework.boot.context.properties.ConfigurationProperties; * Configuration properties for Reactor. * * @author Brian Clozel - * @since 3.2.0 + * @since 4.0.0 */ @ConfigurationProperties("spring.reactor") public class ReactorProperties { diff --git a/spring-boot-project/spring-boot-autoconfigure-all/src/main/java/org/springframework/boot/autoconfigure/reactor/package-info.java b/spring-boot-project/spring-boot-reactor/src/main/java/org/springframework/boot/reactor/autoconfigure/package-info.java similarity index 92% rename from spring-boot-project/spring-boot-autoconfigure-all/src/main/java/org/springframework/boot/autoconfigure/reactor/package-info.java rename to spring-boot-project/spring-boot-reactor/src/main/java/org/springframework/boot/reactor/autoconfigure/package-info.java index 4b55cfe4d5..1dd6b0bd91 100644 --- a/spring-boot-project/spring-boot-autoconfigure-all/src/main/java/org/springframework/boot/autoconfigure/reactor/package-info.java +++ b/spring-boot-project/spring-boot-reactor/src/main/java/org/springframework/boot/reactor/autoconfigure/package-info.java @@ -17,4 +17,4 @@ /** * Auto-configuration for Reactor. */ -package org.springframework.boot.autoconfigure.reactor; +package org.springframework.boot.reactor.autoconfigure; diff --git a/spring-boot-project/spring-boot-all/src/main/java/org/springframework/boot/reactor/package-info.java b/spring-boot-project/spring-boot-reactor/src/main/java/org/springframework/boot/reactor/package-info.java similarity index 100% rename from spring-boot-project/spring-boot-all/src/main/java/org/springframework/boot/reactor/package-info.java rename to spring-boot-project/spring-boot-reactor/src/main/java/org/springframework/boot/reactor/package-info.java diff --git a/spring-boot-project/spring-boot-reactor/src/main/resources/META-INF/additional-spring-configuration-metadata.json b/spring-boot-project/spring-boot-reactor/src/main/resources/META-INF/additional-spring-configuration-metadata.json new file mode 100644 index 0000000000..437f81bd63 --- /dev/null +++ b/spring-boot-project/spring-boot-reactor/src/main/resources/META-INF/additional-spring-configuration-metadata.json @@ -0,0 +1,13 @@ +{ + "groups": [], + "properties": [ + { + "name": "spring.reactor.stacktrace-mode.enabled", + "description": "Whether Reactor should collect stacktrace information at runtime.", + "defaultValue": false, + "deprecation": { + "replacement": "spring.reactor.debug-agent.enabled" + } + } + ] +} diff --git a/spring-boot-project/spring-boot-all/src/main/resources/META-INF/spring.factories b/spring-boot-project/spring-boot-reactor/src/main/resources/META-INF/spring.factories similarity index 100% rename from spring-boot-project/spring-boot-all/src/main/resources/META-INF/spring.factories rename to spring-boot-project/spring-boot-reactor/src/main/resources/META-INF/spring.factories diff --git a/spring-boot-project/spring-boot-reactor/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/spring-boot-project/spring-boot-reactor/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports new file mode 100644 index 0000000000..5fc9bd47c3 --- /dev/null +++ b/spring-boot-project/spring-boot-reactor/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports @@ -0,0 +1 @@ +org.springframework.boot.reactor.autoconfigure.ReactorAutoConfiguration diff --git a/spring-boot-project/spring-boot-all/src/test/java/org/springframework/boot/reactor/InstrumentedFluxProvider.java b/spring-boot-project/spring-boot-reactor/src/test/java/org/springframework/boot/reactor/InstrumentedFluxProvider.java similarity index 100% rename from spring-boot-project/spring-boot-all/src/test/java/org/springframework/boot/reactor/InstrumentedFluxProvider.java rename to spring-boot-project/spring-boot-reactor/src/test/java/org/springframework/boot/reactor/InstrumentedFluxProvider.java diff --git a/spring-boot-project/spring-boot-all/src/test/java/org/springframework/boot/reactor/ReactorEnvironmentPostProcessorTests.java b/spring-boot-project/spring-boot-reactor/src/test/java/org/springframework/boot/reactor/ReactorEnvironmentPostProcessorTests.java similarity index 100% rename from spring-boot-project/spring-boot-all/src/test/java/org/springframework/boot/reactor/ReactorEnvironmentPostProcessorTests.java rename to spring-boot-project/spring-boot-reactor/src/test/java/org/springframework/boot/reactor/ReactorEnvironmentPostProcessorTests.java diff --git a/spring-boot-project/spring-boot-autoconfigure-all/src/test/java/org/springframework/boot/autoconfigure/reactor/ReactorAutoConfigurationTests.java b/spring-boot-project/spring-boot-reactor/src/test/java/org/springframework/boot/reactor/autoconfigure/ReactorAutoConfigurationTests.java similarity index 98% rename from spring-boot-project/spring-boot-autoconfigure-all/src/test/java/org/springframework/boot/autoconfigure/reactor/ReactorAutoConfigurationTests.java rename to spring-boot-project/spring-boot-reactor/src/test/java/org/springframework/boot/reactor/autoconfigure/ReactorAutoConfigurationTests.java index 1587fc2050..fd75b215ff 100644 --- a/spring-boot-project/spring-boot-autoconfigure-all/src/test/java/org/springframework/boot/autoconfigure/reactor/ReactorAutoConfigurationTests.java +++ b/spring-boot-project/spring-boot-reactor/src/test/java/org/springframework/boot/reactor/autoconfigure/ReactorAutoConfigurationTests.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.autoconfigure.reactor; +package org.springframework.boot.reactor.autoconfigure; import java.util.concurrent.atomic.AtomicReference; diff --git a/spring-boot-project/spring-boot-security-oauth2-client/build.gradle b/spring-boot-project/spring-boot-security-oauth2-client/build.gradle index 2f1c301662..69c4938dbf 100644 --- a/spring-boot-project/spring-boot-security-oauth2-client/build.gradle +++ b/spring-boot-project/spring-boot-security-oauth2-client/build.gradle @@ -15,7 +15,7 @@ dependencies { implementation(project(":spring-boot-project:spring-boot-security")) optional(project(":spring-boot-project:spring-boot-autoconfigure")) - optional("io.projectreactor:reactor-core") + optional(project(":spring-boot-project:spring-boot-reactor")) testImplementation(project(":spring-boot-project:spring-boot-test")) testImplementation(project(":spring-boot-project:spring-boot-tomcat")) diff --git a/spring-boot-project/spring-boot-security-oauth2-resource-server/build.gradle b/spring-boot-project/spring-boot-security-oauth2-resource-server/build.gradle index 8f38fe2f12..a4059127d0 100644 --- a/spring-boot-project/spring-boot-security-oauth2-resource-server/build.gradle +++ b/spring-boot-project/spring-boot-security-oauth2-resource-server/build.gradle @@ -16,7 +16,7 @@ dependencies { implementation(project(":spring-boot-project:spring-boot-security")) optional(project(":spring-boot-project:spring-boot-autoconfigure")) - optional("io.projectreactor:reactor-core") + optional(project(":spring-boot-project:spring-boot-reactor")) optional("jakarta.servlet:jakarta.servlet-api") testImplementation(project(":spring-boot-project:spring-boot-test")) diff --git a/spring-boot-project/spring-boot-security/build.gradle b/spring-boot-project/spring-boot-security/build.gradle index 538e81d6d5..6be6cd8a68 100644 --- a/spring-boot-project/spring-boot-security/build.gradle +++ b/spring-boot-project/spring-boot-security/build.gradle @@ -23,10 +23,10 @@ dependencies { optional(project(":spring-boot-project:spring-boot-autoconfigure")) optional(project(":spring-boot-project:spring-boot-h2console")) + optional(project(":spring-boot-project:spring-boot-reactor")) optional(project(":spring-boot-project:spring-boot-rsocket")) optional(project(":spring-boot-project:spring-boot-webmvc")) optional("jakarta.servlet:jakarta.servlet-api") - optional("io.projectreactor:reactor-core") optional("org.springframework:spring-messaging") optional("org.springframework:spring-webflux") optional("org.springframework.security:spring-security-data") diff --git a/spring-boot-project/spring-boot-session/build.gradle b/spring-boot-project/spring-boot-session/build.gradle index db951f9d3f..0715024f15 100644 --- a/spring-boot-project/spring-boot-session/build.gradle +++ b/spring-boot-project/spring-boot-session/build.gradle @@ -17,6 +17,7 @@ dependencies { optional("jakarta.servlet:jakarta.servlet-api") optional("org.springframework.security:spring-security-web") + testFixturesImplementation(project(":spring-boot-project:spring-boot-reactor")) testFixturesImplementation(project(":spring-boot-project:spring-boot-test")) testFixturesImplementation(project(":spring-boot-project:spring-boot-tools:spring-boot-test-support")) testFixturesImplementation(testFixtures(project(":spring-boot-project:spring-boot"))) diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-data-cassandra-reactive/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-data-cassandra-reactive/build.gradle index 48b65a3518..6e9556de3a 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-data-cassandra-reactive/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-data-cassandra-reactive/build.gradle @@ -5,8 +5,8 @@ plugins { description = "Starter for using Cassandra distributed database and Spring Data Cassandra Reactive" dependencies { - api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) api(project(":spring-boot-project:spring-boot-data-cassandra")) + api(project(":spring-boot-project:spring-boot-reactor")) + api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) api(project(":spring-boot-project:spring-boot-tx")) - api("io.projectreactor:reactor-core") } diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-data-couchbase-reactive/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-data-couchbase-reactive/build.gradle index bc47bab8dc..204faad6f9 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-data-couchbase-reactive/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-data-couchbase-reactive/build.gradle @@ -5,8 +5,8 @@ plugins { description = "Starter for using Couchbase document-oriented database and Spring Data Couchbase Reactive" dependencies { - api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) api(project(":spring-boot-project:spring-boot-data-couchbase")) + api(project(":spring-boot-project:spring-boot-reactor")) + api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) api(project(":spring-boot-project:spring-boot-tx")) - api("io.projectreactor:reactor-core") } diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-data-mongodb-reactive/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-data-mongodb-reactive/build.gradle index 99de298058..e6556afba5 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-data-mongodb-reactive/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-data-mongodb-reactive/build.gradle @@ -6,8 +6,8 @@ description = "Starter for using MongoDB document-oriented database and Spring D dependencies { api(project(":spring-boot-project:spring-boot-data-mongodb")) + api(project(":spring-boot-project:spring-boot-reactor")) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) api(project(":spring-boot-project:spring-boot-tx")) - api("io.projectreactor:reactor-core") api("org.mongodb:mongodb-driver-reactivestreams") } diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-data-redis-reactive/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-data-redis-reactive/build.gradle index eab5c52645..415d3c4250 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-data-redis-reactive/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-data-redis-reactive/build.gradle @@ -5,8 +5,8 @@ plugins { description = "Starter for using Redis key-value data store with Spring Data Redis reactive and the Lettuce client" dependencies { - api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) api(project(":spring-boot-project:spring-boot-data-redis")) + api(project(":spring-boot-project:spring-boot-reactor")) + api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) api(project(":spring-boot-project:spring-boot-tx")) - api("io.projectreactor:reactor-core") } diff --git a/spring-boot-project/spring-boot-test-autoconfigure/build.gradle b/spring-boot-project/spring-boot-test-autoconfigure/build.gradle index 420eeb4b9d..7e10e02851 100644 --- a/spring-boot-project/spring-boot-test-autoconfigure/build.gradle +++ b/spring-boot-project/spring-boot-test-autoconfigure/build.gradle @@ -125,6 +125,7 @@ dependencies { testImplementation(project(":spring-boot-project:spring-boot-freemarker")) testImplementation(project(":spring-boot-project:spring-boot-gson")) testImplementation(project(":spring-boot-project:spring-boot-mustache")) + testImplementation(project(":spring-boot-project:spring-boot-reactor")) testImplementation(project(":spring-boot-project:spring-boot-testcontainers")) testImplementation(project(":spring-boot-project:spring-boot-thymeleaf")) testImplementation(project(":spring-boot-project:spring-boot-tools:spring-boot-test-support")) @@ -135,7 +136,6 @@ dependencies { testImplementation("io.lettuce:lettuce-core") testImplementation("io.micrometer:micrometer-registry-prometheus") testImplementation("io.projectreactor.netty:reactor-netty-http") - testImplementation("io.projectreactor:reactor-core") testImplementation("io.projectreactor:reactor-test") testImplementation("io.r2dbc:r2dbc-h2") testImplementation("jakarta.json:jakarta.json-api") diff --git a/spring-boot-project/spring-boot-tx/build.gradle b/spring-boot-project/spring-boot-tx/build.gradle index ff8eb89825..c813049969 100644 --- a/spring-boot-project/spring-boot-tx/build.gradle +++ b/spring-boot-project/spring-boot-tx/build.gradle @@ -24,5 +24,5 @@ dependencies { testImplementation("org.springframework:spring-jdbc") testRuntimeOnly("ch.qos.logback:logback-classic") - testRuntimeOnly("io.projectreactor:reactor-core") + testRuntimeOnly(project(":spring-boot-project:spring-boot-reactor")) } diff --git a/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-data-couchbase/build.gradle b/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-data-couchbase/build.gradle index 1f14b75537..a569551ee7 100644 --- a/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-data-couchbase/build.gradle +++ b/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-data-couchbase/build.gradle @@ -6,11 +6,11 @@ plugins { description = "Spring Boot Data Couchbase smoke test" dependencies { - dockerTestImplementation(project(":spring-boot-project:spring-boot-test")) + dockerTestImplementation(project(":spring-boot-project:spring-boot-reactor")) dockerTestImplementation(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-test")) - dockerTestImplementation(project(":spring-boot-project:spring-boot-tools:spring-boot-test-support-docker")) + dockerTestImplementation(project(":spring-boot-project:spring-boot-test")) dockerTestImplementation(project(":spring-boot-project:spring-boot-testcontainers")) - dockerTestImplementation("io.projectreactor:reactor-core") + dockerTestImplementation(project(":spring-boot-project:spring-boot-tools:spring-boot-test-support-docker")) dockerTestImplementation("io.projectreactor:reactor-test") dockerTestImplementation("org.apache.httpcomponents.client5:httpclient5") dockerTestImplementation("org.junit.jupiter:junit-jupiter") diff --git a/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-data-mongo/build.gradle b/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-data-mongo/build.gradle index e0e1ce5268..00f8f700dd 100644 --- a/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-data-mongo/build.gradle +++ b/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-data-mongo/build.gradle @@ -18,7 +18,7 @@ dependencies { dockerTestImplementation("org.testcontainers:mongodb") dockerTestImplementation("org.testcontainers:testcontainers") + implementation(project(":spring-boot-project:spring-boot-reactor")) implementation(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-data-mongodb")) implementation(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-data-mongodb-reactive")) - implementation("io.projectreactor:reactor-core") } \ No newline at end of file diff --git a/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-data-redis/build.gradle b/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-data-redis/build.gradle index 8718cb0782..394637e156 100644 --- a/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-data-redis/build.gradle +++ b/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-data-redis/build.gradle @@ -6,12 +6,12 @@ plugins { description = "Spring Boot Data Redis smoke test" dependencies { - dockerTestImplementation(project(":spring-boot-project:spring-boot-test")) + dockerTestImplementation(project(":spring-boot-project:spring-boot-reactor")) dockerTestImplementation(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-test")) + dockerTestImplementation(project(":spring-boot-project:spring-boot-test")) dockerTestImplementation(project(":spring-boot-project:spring-boot-testcontainers")) dockerTestImplementation(project(":spring-boot-project:spring-boot-tools:spring-boot-test-support-docker")) dockerTestImplementation("com.redis:testcontainers-redis") - dockerTestImplementation("io.projectreactor:reactor-core") dockerTestImplementation("io.projectreactor:reactor-test") dockerTestImplementation("org.junit.jupiter:junit-jupiter") dockerTestImplementation("org.junit.platform:junit-platform-engine")