Stéphane Nicoll
971bd500d4
Polish "Add missing HttpClientSettingsPropertyMapper tests"
...
See gh-48145
2025-11-17 09:53:41 +01:00
Steve Armstrong
82fe577596
Add missing HttpClientSettingsPropertyMapper tests
...
See gh-48145
Signed-off-by: Steve Armstrong <stevearmstrong-dev@users.noreply.github.com>
2025-11-17 09:44:12 +01:00
Stéphane Nicoll
2e4566bd3d
Polish
2025-11-17 09:42:06 +01:00
Stéphane Nicoll
00f60da0de
Start building against Spring Framework 7.0.0 snapshots
...
See gh-47825
2025-11-11 10:22:06 +00:00
Stéphane Nicoll
bb9d3ecdfb
Merge branch '3.5.x'
2025-11-10 15:52:23 +01:00
Phillip Webb
00bd0efc56
Merge branch '3.5.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[toolchain:false version:25], 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:25], map[id:windows-latest name:Windows]) (push) Waiting to run
Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:true 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:true 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
Run CodeQL Analysis / run-analysis (push) Waiting to run
Details
Run System Tests / Java ${{ matrix.java.version}} (map[toolchain:true version:17]) (push) Waiting to run
Details
Run System Tests / Java ${{ matrix.java.version}} (map[toolchain:true version:21]) (push) Waiting to run
Details
Closes gh-47946
2025-11-04 15:36:55 -08:00
Phillip Webb
2f33f73e76
Fix `spring.http.serviceclient` metadata JSON
...
Fix type in `Map` reference.
Closes gh-47943
2025-11-04 08:27:18 -08:00
Phillip Webb
827b0c14a9
Rename OnlyOnceLoggingDenyMeterFilter
...
Rename `OnlyOnceLoggingDenyMeterFilter` to
`MaximumAllowableTagsMeterFilter`.
Closes gh-47925
2025-11-03 20:56:28 -08:00
Phillip Webb
7849474291
Merge branch '3.5.x'
...
Closes gh-47924
2025-11-03 20:41:23 -08:00
Moritz Halbritter
1da46813b8
Merge branch '3.5.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[toolchain:false version:25], 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:25], map[id:windows-latest name:Windows]) (push) Waiting to run
Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:true 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:true 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
Run CodeQL Analysis / run-analysis (push) Waiting to run
Details
Run System Tests / Java ${{ matrix.java.version}} (map[toolchain:true version:17]) (push) Waiting to run
Details
Run System Tests / Java ${{ matrix.java.version}} (map[toolchain:true version:21]) (push) Waiting to run
Details
Closes gh-47679
2025-10-17 14:46:40 +02:00
Phillip Webb
94199a63fa
Change 'blocking' term to 'imperative'
...
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:25], 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:25], map[id:windows-latest name:Windows]) (push) Waiting to run
Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:true 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:true 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
Run CodeQL Analysis / run-analysis (push) Waiting to run
Details
Run System Tests / Java ${{ matrix.java.version}} (map[toolchain:true version:17]) (push) Waiting to run
Details
Run System Tests / Java ${{ matrix.java.version}} (map[toolchain:true version:21]) (push) Waiting to run
Details
Closes gh-47398
2025-10-15 13:11:10 -07:00
Moritz Halbritter
f9ce5d8e13
Remove superfluous version of jsr305
2025-10-13 13:44:23 +02:00
Phillip Webb
02b2d03acf
Rationalize HTTP client configuration properties
...
Simplify HTTP client configuration properties by sharing common
settings for both blocking and reactive clients.
The `ClientHttpRequestFactorySettings` and `ClientHttpConnectorSettings`
have been merged to a single `HttpClientSettings` class. Properties
to configure common settings are available under:
`spring.http.clients`
Blocking and reactive settings have been moved to
`spring.http.clients.blocking` and `spring.http.clients.reactive`. With
currently only the factory/connector being configurable.
HTTP Service Client properties have also been rationalized under a
`spring.http.serviceclient.<group-name>`. Support for properties that
apply to all service clients and all Rest/Web Clients have been removed.
Support for `ApiVerionInserter` beans has also been removed in favor of
configuring the service group or builders directly.
Closes gh-47398
2025-10-09 22:18:53 -07:00
Moritz Halbritter
2ca6703f55
Add nullability annotations to tests in module/spring-boot-http-client
...
See gh-47263
2025-10-06 12:03:55 +02:00
Phillip Webb
255ea92a57
Add `HttpClientTransport` factory support
...
Update `JettyClientHttpRequestFactoryBuilder` and
`JettyClientHttpConnectorBuilder` with support for create the
`HttpClientTransport` from a factory function.
Closes gh-47251
2025-09-18 14:02:18 -07:00
Phillip Webb
336e7de9fc
Add `with` methods to apply pre-packaged customizations
...
Add `with` methods to `HttpRequestFactoryBuilder` and
`ClientHttpConnectorBuilder` that operate in a similar way to the
`WebClient.Builder.apply(...)` method.
Closes gh-47205
2025-09-15 16:45:10 -07:00
Moritz Halbritter
2e8428b760
Remove NullAway suppressions where possible
...
See gh-46926
2025-09-09 12:02:19 +02:00
Stéphane Nicoll
6207e41473
Remove auto-configuration support for '@HttpServiceClient'
...
This reverts commit 7a8b337b1c .
Closes gh-47123
2025-09-08 16:13:38 +02:00
Phillip Webb
239f384ac0
Update PropertyMapper to better support nullability
...
Refactor `PropertyMapper` so that it no longer calls adapter or
predicate methods by default when the source value is `null`. This
effectively makes all default calls the same as using
`alwaysWhenNotNull` in the previous generation of the code.
For the limited times when you do need to deal with `null` values, the
new `always()` method can be used.
For example,
map.from(source::method).to(destination::method);
Will not call `destination.method(...)` if `source.method()` returns
`null`.
Where as:
map.from(source::method).always().to(destination::method);
Will call `destination.method(null)` if `source.method()` returns
`null`.
This update provides clearer semantics for the API and allows for better
JSpecify nullability annotations. It has also simplified much of our
existing property mapper code.
Closes gh-47024
Co-authored-by: Moritz Halbritter <moritz.halbritter@broadcom.com>
2025-09-05 14:43:33 -07:00
Moritz Halbritter
63adb82145
Merge branch '3.5.x'
...
Closes gh-47055
2025-09-05 14:17:39 +02:00
Moritz Halbritter
09b631d6c0
Improve null-safety of module/spring-boot-http-client
...
See gh-46926
2025-08-26 14:22:55 +02:00
Phillip Webb
7140be8751
Rename metrics, observation, and tracing modules
...
Rename modules to include 'micrometer'.
Closes gh-46925
2025-08-20 16:05:11 -07:00
Phillip Webb
09eac5f7b4
Polish 'Support virtual threading with JDK HTTP clients'
...
See gh-46404
2025-08-19 22:26:39 -07:00
Sangmin Park
e32e3359c2
Support virtual threading with JDK HTTP clients
...
Update JDK HTTP Clients so that the use virtual threads when
`Threading.VIRTUAL` is active.
See gh-46404
Signed-off-by: Sangmin Park <sangmins930@gmail.com>
2025-08-19 22:24:22 -07:00
Phillip Webb
7098c8e766
Fix types used in connector tests
2025-08-19 21:35:30 -07:00
Phillip Webb
d307d57617
Apply HTTP Service Client properties and use fallback beans
...
Update service client configuration so that properties are always
applied when present. Any settings and factory/connector beans that
are present are now only used as fallbacks.
Fixes gh-46915
2025-08-19 17:21:22 -07:00
Johnny Lim
12a99b0ca7
Polish
...
See gh-46878
Signed-off-by: Johnny Lim <izeye@naver.com>
2025-08-18 18:11:50 +02:00
Phillip Webb
7a8b337b1c
Add `@HttpServiceClient` scanning auto-configuration
...
Refactor `HttpServiceClientAutoConfiguration` and
`ReactiveHttpServiceClientAutoConfiguration` to support scanning for
`@HttpServiceClient` annotated interfaces.
Closes gh-46782
2025-08-15 18:48:38 -07:00
Moritz Halbritter
840fc57d7a
Add nullability annotations to module/spring-boot-webclient
...
See gh-46587
2025-08-07 10:48:43 +02:00
Stéphane Nicoll
d5f7423ba2
Merge branch '3.5.x'
...
Closes gh-46684
2025-08-06 16:43:29 +02:00
Moritz Halbritter
764f69c628
Add more nullability annotations to module/spring-boot-http-client
...
See gh-46587
2025-08-05 10:03:58 +02:00
Moritz Halbritter
de2b9928b4
Add nullability annotations to module/spring-boot-http-client
...
See gh-46587
2025-08-04 11:27:40 +02:00
Phillip Webb
dba148ea37
Adapt to upstream API version updates
...
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:24], 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:24], map[id:windows-latest name:Windows]) (push) Waiting to run
Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:true 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:true 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
Run CodeQL Analysis / run-analysis (push) Waiting to run
Details
Run System Tests / Java ${{ matrix.java.version}} (map[toolchain:true version:17]) (push) Waiting to run
Details
Run System Tests / Java ${{ matrix.java.version}} (map[toolchain:true version:21]) (push) Waiting to run
Details
Closes gh-46519
2025-07-31 17:51:44 +01:00
Phillip Webb
707388beff
Add API versioning auto-configuration and properties support
...
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:24], 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:24], map[id:windows-latest name:Windows]) (push) Waiting to run
Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:true 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:true 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
Run CodeQL Analysis / run-analysis (push) Waiting to run
Details
Run System Tests / Java ${{ matrix.java.version}} (map[toolchain:true version:17]) (push) Waiting to run
Details
Run System Tests / Java ${{ matrix.java.version}} (map[toolchain:true version:21]) (push) Waiting to run
Details
Update `RestClient`, `WebClient`, Spring MVC and Spring WebFlux
auto-configuration to support API versioning.
Closes gh-46519
2025-07-30 15:58:23 +01:00
Moritz Halbritter
c0f1f641ce
Make auto-configurations final and remove public members
...
Closes gh-32883
2025-07-29 09:48:49 +02:00
Stéphane Nicoll
fcbb03a52a
Add mising configurations in spring-boot-docs
...
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:24], 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:24], map[id:windows-latest name:Windows]) (push) Waiting to run
Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:true 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:true 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
Run CodeQL Analysis / run-analysis (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
Closes gh-46536
2025-07-28 16:44:04 +02:00
Phillip Webb
decc32dde3
Restructure project directories to better fit Gradle
...
Closes gh-46358
2025-07-10 17:54:08 -07:00