Repository navigation
feat(spring): switch default HTTP client to symphony-bdk-http-jdk - #907
Merged
symphony-enrico merged 1 commit intoOct 5, 2026
Merged
Conversation
symphony-enrico
marked this pull request as draft
October 2, 2026 16:35
Member
|
Thanks @symphony-enrico for opening this one. My biggest concern here is that it could be seen as a breaking change. Even though one of the main purpose of the BDK 4.x release is to have the |
symphony-enrico
force-pushed
the
feat/switch-default-http-jdk
branch
2 times, most recently
from
October 5, 2026 14:07
a0fc5a2 to
ab0d15d
Compare
symphony-enrico
marked this pull request as ready for review
October 5, 2026 14:17
Contributor
Author
In most cases the change is transparent. Added in migration note details about it |
- Switch symphony-bdk-core-spring-boot-starter implementation dependency from symphony-bdk-http-jersey to symphony-bdk-http-jdk - Expose ApiClientBuilderProvider as a @ConditionalOnMissingBean in BdkCoreConfig defaulting to ApiClientBuilderProviderJdk - Wire ApiClientBuilderProvider into ApiClientFactory and provide single-arg overload for backwards compatibility - Switch bundled runtime HTTP client in symphony-bdk-cli and all examples to symphony-bdk-http-jdk - Retain symphony-bdk-http-jersey at testImplementation scope in starter for MockApiClient test fixture compatibility - Update docs/migration.md to reflect symphony-bdk-http-jdk as the default runtime HTTP transport - Add OpenSpec change switch-default-http-jdk detailing proposal, specs, design, and completed tasks
symphony-enrico
force-pushed
the
feat/switch-default-http-jdk
branch
from
October 5, 2026 14:29
ab0d15d to
8130484
Compare
Tahak-Symphony
pushed a commit
to Tahak-Symphony/symphony-bdk-java
that referenced
this pull request
Oct 15, 2026
…nos#907) - Switch symphony-bdk-core-spring-boot-starter implementation dependency from symphony-bdk-http-jersey to symphony-bdk-http-jdk - Expose ApiClientBuilderProvider as a @ConditionalOnMissingBean in BdkCoreConfig defaulting to ApiClientBuilderProviderJdk - Wire ApiClientBuilderProvider into ApiClientFactory and provide single-arg overload for backwards compatibility - Switch bundled runtime HTTP client in symphony-bdk-cli and all examples to symphony-bdk-http-jdk - Retain symphony-bdk-http-jersey at testImplementation scope in starter for MockApiClient test fixture compatibility - Update docs/migration.md to reflect symphony-bdk-http-jdk as the default runtime HTTP transport - Add OpenSpec change switch-default-http-jdk detailing proposal, specs, design, and completed tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Switches the default HTTP client in
symphony-bdk-spring(and across the CLI and example modules) tosymphony-bdk-http-jdk, completing the transition to Java's built-injava.net.http.HttpClientas the default transport for BDK 4.x.Key changes:
symphony-bdk-core-spring-boot-starter:implementationdependency onsymphony-bdk-http-jerseywithsymphony-bdk-http-jdk.ApiClientBuilderProviderbean inBdkCoreConfigannotated with@ConditionalOnMissingBeanthat defaults toApiClientBuilderProviderJdk, enabling simple transport overrides without having to re-declareApiClientFactory.ApiClientBuilderProviderintoApiClientFactorybean method, and retainedapiClientFactory(properties)for source compatibility.symphony-bdk-http-jerseystrictly attestImplementationscope forMockApiClientcompatibility, and explicitly passednew ApiClientBuilderProviderJdk()inApiClientFactoryMockto prevent classpath SPI lookup conflicts during testing.symphony-bdk-cli: Switched bundled standalone distribution runtime dependency fromsymphony-bdk-http-jerseytosymphony-bdk-http-jdk.symphony-bdk-examples: Updatedbdk-ai-agent-example,bdk-core-examples,bdk-group-example, andbdk-multi-instances-exampleto usesymphony-bdk-http-jdkby default, removing unused Jersey dependencies frombdk-core-examples.docs/migration.mdto referencesymphony-bdk-http-jdkas the default runtime HTTP transport.switch-default-http-jdkchange artifacts (proposal.md,specs/jdk-http-transport/spec.md,design.md,tasks.md).Dependencies
None.
Checklist