Commit Graph

4485 Commits

Author SHA1 Message Date
Moritz Halbritter d8ea392b29 Create spring-boot-mustache module 2025-05-14 21:08:36 +02:00
Andy Wilkinson 105cd71357 Create spring-boot-cassandra module 2025-05-14 21:08:36 +02:00
Stéphane Nicoll 58a395a505 Create spring-boot-couchbase module 2025-05-14 21:08:36 +02:00
Stéphane Nicoll 4ec3380b15 Create spring-boot-jooq module 2025-05-14 21:08:36 +02:00
Andy Wilkinson 403a7e1fd3 Create spring-boot-batch module 2025-05-14 21:08:33 +02:00
Stéphane Nicoll db4c6fa859 Create spring-boot-hazelcast module 2025-05-14 21:06:36 +02:00
Andy Wilkinson 33bcbd299d Create spring-boot-integration module 2025-05-14 21:06:36 +02:00
Andy Wilkinson c5fb46a639 Create spring-boot-rsocket module 2025-05-14 21:06:35 +02:00
Stéphane Nicoll edcc4c7af9 Create spring-boot-data-jpa module 2025-05-14 21:06:35 +02:00
Stéphane Nicoll a0a8861092 Create spring-boot-jpa module 2025-05-14 21:06:35 +02:00
Andy Wilkinson 2a45adcf3a Create spring-boot-r2dbc module 2025-05-14 21:06:35 +02:00
Andy Wilkinson 4d8e1e6a92 Create spring-boot-pulsar module 2025-05-14 21:06:35 +02:00
Andy Wilkinson 70323af5c2 Create spring-boot-kafka module 2025-05-14 21:06:35 +02:00
Brian Clozel 079f252966 Create spring-boot-elasticsearch module 2025-05-14 21:06:35 +02:00
Moritz Halbritter 6136dcb230 Create spring-boot-freemarker module 2025-05-14 21:06:35 +02:00
Phillip Webb de8a14388d Create spring-boot-liquibase module 2025-05-14 21:06:34 +02:00
Stéphane Nicoll 6d88324a0f Create spring-boot-validation module 2025-05-14 21:06:34 +02:00
Stéphane Nicoll 79c802b7e8 Create spring-boot-flyway module 2025-05-14 21:06:34 +02:00
Andy Wilkinson fdfe0b147f Create spring-boot-jdbc module 2025-05-14 21:06:34 +02:00
Andy Wilkinson 749dfa794f Create spring-boot-tx module 2025-05-14 21:06:34 +02:00
Stéphane Nicoll 303903d967 Create spring-boot-artemis module 2025-05-14 21:06:31 +02:00
Stéphane Nicoll 9f12103df3 Create spring-boot-activemq module 2025-05-14 21:04:51 +02:00
Stéphane Nicoll fbd04beda5 Create spring-boot-jms module 2025-05-14 21:01:34 +02:00
Brian Clozel a12e5d5f19 Create spring-boot-jsonb module 2025-05-14 11:42:18 +01:00
Brian Clozel 7d9895fc75 Create spring-boot-mail module 2025-05-14 11:42:17 +01:00
Andy Wilkinson 6da8dd024a Create spring-boot-jackson-module 2025-05-14 11:42:17 +01:00
Brian Clozel 3a30e59c6d Create spring-boot-amqp module 2025-05-14 11:42:15 +01:00
Andy Wilkinson 23afd55dc6 Create spring-boot-reactor-netty module 2025-05-14 11:42:14 +01:00
Andy Wilkinson 08f242a23c Create spring-boot-jetty module 2025-05-14 11:42:14 +01:00
Andy Wilkinson a2748e9927 Create spring-boot-undertow module 2025-05-14 11:42:13 +01:00
Andy Wilkinson 30babc0d03 Move Tomcat auto-configuration into spring-boot-tomcat 2025-05-14 11:42:12 +01:00
Andy Wilkinson 909dbd0cb4 Start splitting up spring-boot-autoconfigure 2025-05-14 11:42:10 +01:00
Andy Wilkinson 471f4201bc Create beginnings of spring-boot-tomcat module 2025-05-14 11:42:08 +01:00
Andy Wilkinson 489af2e7d4 Start splitting up spring-boot 2025-05-14 11:42:07 +01:00
Phillip Webb 9015aa8ea9 Reduce number of test dependencies
Reduce the number of direct test dependencies and instead rely on
transitive test support dependencies.
2025-05-14 11:42:06 +01:00
Andy Wilkinson d6d24d42b0 Repackage web server classes
Issue: 44286
Issue: 44067
2025-05-14 11:41:25 +01:00
Stéphane Nicoll b3f35baed3 Add metadata support for types in arbitrary modules
Previously, if a ConfigurationProperties had a nested type or was
extending from a type located outside the compilation unit, no
metadata discovered on the source code was available (documentation and
explicit default value, if any). This typically happens when such a type
resides in another module.

This commit introduces `@ConfigurationPropertiesSource` as a way to
annotate such type and have metadata generated for them in their own
module.

Type-metadata is generated as one file per type and is reused
transparently whenever that type is used. As for module metadata, an
additional file can be crafted manually and will be merged when the
metadata for the type is generated.

The following is an example structure with two types where one has
an additional metadata:

META-iNF/
  spring/
    configuration-properties/
      additional/
        com.example.SourceOne.json
      com.example.SourceOne.json
      com.example.SourceTwo.json

Those files are used only by the annotation processor and are not meant
to be public API.

See gh-18366
2025-05-13 13:42:55 +02:00
Phillip Webb f1f54382ed Merge branch 'main' into 4.0.x 2025-05-12 17:58:06 -07:00
Phillip Webb 48ed394679 Remove `settings` suffix from http client properties
Build and Deploy Snapshot / Build and Deploy Snapshot (push) Waiting to run Details
Build and Deploy Snapshot / Trigger Docs Build (push) Blocked by required conditions Details
Build and Deploy Snapshot / Verify (push) Blocked by required conditions Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[early-access:true toolchain:true version:24], map[id:${{ vars.UBUNTU_MEDIUM || 'ubuntu-latest' }} name:Linux]) (push) Waiting to run Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[early-access:true toolchain:true version:24], map[id:windows-latest name:Windows]) (push) Waiting to run Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:false version:17], map[id:${{ vars.UBUNTU_MEDIUM || 'ubuntu-latest' }} name:Linux]) (push) Waiting to run Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:false version:17], map[id:windows-latest name:Windows]) (push) Waiting to run Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:false version:21], map[id:${{ vars.UBUNTU_MEDIUM || 'ubuntu-latest' }} name:Linux]) (push) Waiting to run Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:false version:21], map[id:windows-latest name:Windows]) (push) Waiting to run Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:false version:22], map[id:${{ vars.UBUNTU_MEDIUM || 'ubuntu-latest' }} name:Linux]) (push) Waiting to run Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:false version:22], map[id:windows-latest name:Windows]) (push) Waiting to run Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:true version:23], map[id:${{ vars.UBUNTU_MEDIUM || 'ubuntu-latest' }} name:Linux]) (push) Waiting to run Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:true version:23], map[id:windows-latest name:Windows]) (push) Waiting to run Details
Run System Tests / Java ${{ matrix.java.version}} (map[toolchain:false version:17]) (push) Waiting to run Details
Run System Tests / Java ${{ matrix.java.version}} (map[toolchain:true version:21]) (push) Waiting to run Details
Remove `spring.http.client` deprecation and change
`spring.http.reactiveclient.settings` to `spring.http.reactiveclient`.

Closes gh-45507
2025-05-12 17:55:02 -07:00
Stéphane Nicoll 6fceab2c90 Replace spring-jcl with vanilla commons-logging
See gh-45487

Co-authored-by: Phillip Webb <phil.webb@broadcom.com>
2025-05-09 17:38:11 -07:00
Stéphane Nicoll 0510cfa684 Refine '?' use in Kotlin code 2025-05-09 17:38:10 -07:00
Stéphane Nicoll 7035c0fa0a Upgrade to Kotlin 2.1.0
This commit upgrades to Kotlin 2.1.0. Two related dependencies have been
updated as well: Kotlin Coroutines to 1.10, and Kotlin Serialization to
1.8.

As of Kotlin 2, it is no longer possible to have a Java type and a
Kotlin type with the same name. As our code samples follow that
unfortunate pattern, this commit makes sure that the Kotlin sample code
does not depend on any of the Java counterpart and configure the kotlin
compilation plugin to ignore Java sources.

The minimum version of Gradle is 7.6.4. It bundles a version of Kotlin
that cannot compile a Kotlin build script when spring-core, compiled
with Kotlin 2.1, is on the classpath. Using Gradle 8.12 to run the DSL
tests avoids the problem.

Closes gh-45486

Co-authored-by: Andy Wilkinson <andy.wilkinson@broadcom.com>
2025-05-09 17:38:10 -07:00
Stéphane Nicoll 3881a79383 Upgrade to Hibernate 7.0.0.Beta3 and Jakarta Persistence 3.2.0
Closes gh-45476
Closes gh-45477
2025-05-09 17:38:09 -07:00
Stéphane Nicoll b52b4d1b9a Polish `MyTaskExecutorConfiguration.kt` sample code 2025-05-08 23:06:31 -07:00
Phillip Webb da5012086d Merge branch '3.4.x'
Build and Deploy Snapshot / Build and Deploy Snapshot (push) Waiting to run Details
Build and Deploy Snapshot / Trigger Docs Build (push) Blocked by required conditions Details
Build and Deploy Snapshot / Verify (push) Blocked by required conditions Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[early-access:true toolchain:true version:24], map[id:${{ vars.UBUNTU_MEDIUM || 'ubuntu-latest' }} name:Linux]) (push) Waiting to run Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[early-access:true toolchain:true version:24], map[id:windows-latest name:Windows]) (push) Waiting to run Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:false version:17], map[id:${{ vars.UBUNTU_MEDIUM || 'ubuntu-latest' }} name:Linux]) (push) Waiting to run Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:false version:17], map[id:windows-latest name:Windows]) (push) Waiting to run Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:false version:21], map[id:${{ vars.UBUNTU_MEDIUM || 'ubuntu-latest' }} name:Linux]) (push) Waiting to run Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:false version:21], map[id:windows-latest name:Windows]) (push) Waiting to run Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:false version:22], map[id:${{ vars.UBUNTU_MEDIUM || 'ubuntu-latest' }} name:Linux]) (push) Waiting to run Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:false version:22], map[id:windows-latest name:Windows]) (push) Waiting to run Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:true version:23], map[id:${{ vars.UBUNTU_MEDIUM || 'ubuntu-latest' }} name:Linux]) (push) Waiting to run Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:true version:23], map[id:windows-latest name:Windows]) (push) Waiting to run Details
Run System Tests / Java ${{ matrix.java.version}} (map[toolchain:false version:17]) (push) Waiting to run Details
Run System Tests / Java ${{ matrix.java.version}} (map[toolchain:true version:21]) (push) Waiting to run Details
2025-05-06 10:42:52 -07:00
Phillip Webb c1dbb2720a Merge branch '3.3.x' into 3.4.x
Build and Deploy Snapshot / Build and Deploy Snapshot (push) Waiting to run Details
Build and Deploy Snapshot / Trigger Docs Build (push) Blocked by required conditions Details
Build and Deploy Snapshot / Verify (push) Blocked by required conditions Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[early-access:true toolchain:true version:24], map[id:${{ vars.UBUNTU_MEDIUM || 'ubuntu-latest' }} name:Linux]) (push) Waiting to run Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[early-access:true toolchain:true version:24], map[id:windows-latest name:Windows]) (push) Waiting to run Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:false version:17], map[id:${{ vars.UBUNTU_MEDIUM || 'ubuntu-latest' }} name:Linux]) (push) Waiting to run Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:false version:17], map[id:windows-latest name:Windows]) (push) Waiting to run Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:false version:21], map[id:${{ vars.UBUNTU_MEDIUM || 'ubuntu-latest' }} name:Linux]) (push) Waiting to run Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:false version:21], map[id:windows-latest name:Windows]) (push) Waiting to run Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:false version:22], map[id:${{ vars.UBUNTU_MEDIUM || 'ubuntu-latest' }} name:Linux]) (push) Waiting to run Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:false version:22], map[id:windows-latest name:Windows]) (push) Waiting to run Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:true version:23], map[id:${{ vars.UBUNTU_MEDIUM || 'ubuntu-latest' }} name:Linux]) (push) Waiting to run Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:true version:23], map[id:windows-latest name:Windows]) (push) Waiting to run Details
Run System Tests / Java ${{ matrix.java.version}} (map[toolchain:false version:17]) (push) Waiting to run Details
Run System Tests / Java ${{ matrix.java.version}} (map[toolchain:true version:21]) (push) Waiting to run Details
2025-05-06 10:42:47 -07:00
Phillip Webb 543de7430b Fix typos
Build and Deploy Snapshot / Build and Deploy Snapshot (push) Waiting to run Details
Build and Deploy Snapshot / Trigger Docs Build (push) Blocked by required conditions Details
Build and Deploy Snapshot / Verify (push) Blocked by required conditions Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:false version:17], map[id:${{ vars.UBUNTU_MEDIUM || 'ubuntu-latest' }} name:Linux]) (push) Waiting to run Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:false version:17], map[id:windows-latest name:Windows]) (push) Waiting to run Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:true version:21], map[id:${{ vars.UBUNTU_MEDIUM || 'ubuntu-latest' }} name:Linux]) (push) Waiting to run Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:true version:21], map[id:windows-latest name:Windows]) (push) Waiting to run Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:true version:22], map[id:${{ vars.UBUNTU_MEDIUM || 'ubuntu-latest' }} name:Linux]) (push) Waiting to run Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:true version:22], map[id:windows-latest name:Windows]) (push) Waiting to run Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:true version:23], map[id:${{ vars.UBUNTU_MEDIUM || 'ubuntu-latest' }} name:Linux]) (push) Waiting to run Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:true version:23], map[id:windows-latest name:Windows]) (push) Waiting to run Details
Run System Tests / Java ${{ matrix.java.version}} (map[toolchain:false version:17]) (push) Waiting to run Details
Run System Tests / Java ${{ matrix.java.version}} (map[toolchain:true version:21]) (push) Waiting to run Details
See gh-45349
2025-05-06 10:42:24 -07:00
Phillip Webb 4f757b5198 Merge branch '3.4.x'
Closes gh-45376
2025-05-06 10:26:26 -07:00
Phillip Webb 0d94665ed3 Merge branch '3.3.x' into 3.4.x
Closes gh-45375
2025-05-06 10:26:10 -07:00
Phillip Webb 7d59957a39 Improve setEnvironmentPrefix(...) reference documentation
Closes gh-45370
2025-05-06 10:25:43 -07:00