Commit Graph

1943 Commits

Author SHA1 Message Date
Stéphane Nicoll
ebafa4df13 Start building against Spring WS 5.0.0-M1 snapshots
See gh-45873
2025-06-10 20:24:55 +02:00
Andy Wilkinson
e65d1a3ac1 Merge branch 'main' into 4.0.x 2025-05-23 09:46:08 +01:00
Andy Wilkinson
a9cc83dc8f Merge branch '3.4.x'
Closes gh-45646
2025-05-23 09:32:09 +01:00
Andy Wilkinson
492a4abd70 Merge branch '3.3.x' into 3.4.x
Closes gh-45645
2025-05-23 09:29:23 +01:00
Andy Wilkinson
7628ae8503 Check Kotlin code using Detekt
Closes gh-45583
2025-05-23 09:22:08 +01:00
Stéphane Nicoll
0b4cb4bff1 Merge branch 'main' into 4.0.x 2025-05-15 08:27:48 +02:00
Stéphane Nicoll
698821a916 Merge branch '3.4.x'
Closes gh-45557
2025-05-15 08:27:32 +02:00
Stéphane Nicoll
b3f3b06fdb Merge branch '3.3.x' into 3.4.x
Closes gh-45556
2025-05-15 08:27:24 +02:00
Yanming Zhou
0d153dd91a Remove unused imports in sample
See gh-45554

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-05-15 08:27:01 +02:00
Phillip Webb
666a98a4b4 Merge branch 'main' into 4.0.x 2025-05-14 18:14:10 -07:00
Phillip Webb
91d14fa27c Merge branch '3.4.x'
Closes gh-45553
2025-05-14 18:14:04 -07:00
Phillip Webb
bd40779bc6 Merge branch '3.3.x' into 3.4.x
Closes gh-45552
2025-05-14 18:14:00 -07:00
Phillip Webb
27c4d1ff24 Document the way that primary Kotlin constructors are used when binding
Improve constructor binding documentation for Kotlin and add a test
to prove a no-param primary constructor disables constructor binding.

Closes gh-44849
2025-05-14 18:13:54 -07: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
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
abe89eeb37 Merge branch '3.4.x'
Closes gh-45367
2025-05-05 22:10:24 -07:00
Phillip Webb
19ae4fbba7 Merge branch '3.3.x' into 3.4.x
Closes gh-45366
2025-05-05 22:10:17 -07:00
Phillip Webb
8814d8a7dc Polish 'Document methods of starting Testcontainer containers'
See gh-44187
2025-05-05 22:09:24 -07:00
Vanio Begic
4a98b1787f Document methods of starting Testcontainer containers
Update the reference documentation to provide more details about the
three supported methods of starting Testcontainer containers.

See gh-44187

Signed-off-by: Vanio Begic <vanio.begic123@gmail.com>
2025-05-05 22:08:06 -07:00
Phillip Webb
736ff7e3e2 Merge branch '3.4.x' 2025-04-28 12:20:19 -07:00
Phillip Webb
f172c2ca8f Merge branch '3.3.x' into 3.4.x 2025-04-28 12:20:08 -07:00
Phillip Webb
b2e691be02 Update copyright year of changed files 2025-04-28 12:20:02 -07:00
Phillip Webb
ba690d24d4 Merge branch '3.4.x' 2025-04-28 12:18:40 -07:00
Phillip Webb
708062ec1d Merge branch '3.3.x' into 3.4.x 2025-04-28 12:15:47 -07:00
Phillip Webb
428fa6d941 Fix copyright headers to consistently start with project inception year 2025-04-28 12:15:32 -07:00
Phillip Webb
3c806d2b31 Polish "Update documentation for Task Execution"
See gh-44926
2025-04-07 16:57:45 -07:00
Dmytro Nosan
6a92364ccd Update documentation for Task Execution
See gh-44926

Signed-off-by: Dmytro Nosan <dimanosan@gmail.com>
2025-04-07 11:36:15 +02:00
Phillip Webb
983e7b637b Introduce ClientHttpConnectorBuilder support
Add a new `ClientHttpConnectorBuilder` interface to support the
creation of `ClientHttpConnector` instances. The new code is similar
to the `ClientHttpRequestFactoryBuilder` interface that was added to
Spring Boot 3.4.

The `ClientHttpConnectorBuilder` is a functional interface with
additional static factory methods for the various supported
`ClientHttpConnector` types. Each type has it's own builder
which to support client specific customization.

The previous auto-configuration has been relocated to the
`org.springframework.boot.autoconfigure.http.client.reactive`
package and updated to make use of the builder.

Closes gh-43079
2025-04-03 17:05:12 -07:00
Andy Wilkinson
2a92c0df1e Address warnings in SSL service connection doc snippets 2025-03-28 09:29:48 +00:00
Stéphane Nicoll
0a84ebf9f1 Merge branch '3.4.x'
Closes gh-44626
2025-03-06 15:34:11 +01:00
Stéphane Nicoll
e06244d007 Adapt EntityManagerFactoryBuilder to work with multiple data sources
This commit allows EntityManagerFactoryBuilder to provide the JPA
properties to use according to the DataSource used to build the
EntityManagerFactory. Previously the JPA properties were computed only
once based on the primary data source, which was a problem since its
default DDL setting may be different.

EntityManagerFactoryBuilder takes a function that provides the JPA
properties based on a data source, rather than the properties
themselves. Constructors with the previous variant have been deprecated
as a result.

Closes gh-44516
2025-03-06 15:33:53 +01:00
Stéphane Nicoll
2f407550e3 Adapt to deprecation in Spring Security snapshots
See gh-44598
2025-03-06 10:37:38 +01:00
Stéphane Nicoll
5e57f1bb7b Merge branch '3.4.x'
Closes gh-44421
2025-02-24 08:23:53 +01:00
Stéphane Nicoll
a5ed3e6aed Merge branch '3.3.x' into 3.4.x
Closes gh-44420
2025-02-24 08:23:45 +01:00
Stéphane Nicoll
41656bf4ee Update copyright of changed files
See gh-44413
2025-02-24 08:21:07 +01:00
Tran Ngoc Nhan
ae2cfebd93 Fix typo in fold attribute
See gh-44413

Signed-off-by: Tran Ngoc Nhan <ngocnhan.tran1996@gmail.com>
2025-02-24 08:19:57 +01:00
Moritz Halbritter
8ff1e631fe Document SSL support for Docker Compose and Testcontainers
Closes gh-41137
2025-02-17 13:36:26 +01:00
Phillip Webb
8ec61b9870 Polish 'Refactor @ConfigurationProperties that only use prefix'
See gh-43917
2025-01-24 14:59:32 -08:00
Yanming Zhou
c1d97ffe16 Refactor @ConfigurationProperties that only use prefix
See gh-43917

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-01-24 14:58:36 -08:00
Phillip Webb
a49719d73e Use consistent exception messages in Assert calls
Update `Assert` calls to consistently use messages of the form
"'item' must [not] ...".

Closes gh-43780
2025-01-11 21:18:47 -08:00
Johnny Lim
4d15ee5bf0 Polish
See gh-43498
2024-12-13 13:29:20 -08:00
Stéphane Nicoll
d8c41c2583 Defensively unwrap CacheConnectionFactory
This commit refines the optimization introduced in gh-39816 to only
unwrap our own caching connection factory. The more advanced unwrap
algorithm is still available, but opt-in only.

Unwrapping more aggressively may break use cases where the wrapped
ConnectionFactory is required, i.e. for transactional purposes.

Closes gh-43277
2024-11-26 19:56:32 +01:00
Andy Wilkinson
fcd58bdb53 Merge branch '3.3.x'
Closes gh-43059
2024-11-07 12:21:47 +00:00
Andy Wilkinson
519ec86c99 Merge branch '3.2.x' into 3.3.x
Closes gh-43058
2024-11-07 11:26:37 +00:00
Andy Wilkinson
0be9fd91ab Separate type customization from additional DataSource configuration
Closes gh-43054
2024-11-07 11:03:48 +00:00
Phillip Webb
39da14ea80 Update web services documentation and samples
Closes gh-42887
2024-10-25 18:06:47 -07:00
Phillip Webb
2208c67f22 Add 'Global HTTP Client Configuration' reference docs section
Update documentation with information on how to configure the HTTP
client globally.

Closes gh-42888
2024-10-25 18:06:47 -07:00