Skip to content

Per-client configuration - #3987

Open
averyk22 wants to merge 2 commits into
release/1.12from
per-client-config-1.12
Open

averyk22 wants to merge 2 commits into
release/1.12from
per-client-config-1.12

Conversation

@averyk22

@averyk22 averyk22 commented Nov 5, 2026

Copy link
Copy Markdown
Contributor
  • ClientConfiguration keeps only settings every service shares; the 12 service-specific options move to generated per-service configurations, chosen from each service's endpoint rules and model (ServiceModel.getSupportedClientOptions)
  • Clients can no longer be built from the shared ClientConfiguration; an explicit XClientConfiguration(const ClientConfiguration&) seeds a service config from shared settings
  • Remove legacy client constructors and OverrideEndpoint (S3Crt unchanged )
  • Regenerate DynamoDB, S3, S3 Control, S3 Vectors, STS and S3Crt's configuration

Issue #, if available:

Description of changes:

Check all that applies:

  • Did a review by yourself.
  • Added proper tests to cover this PR. (If tests are not applicable, explain.)
  • Checked if this PR is a breaking (APIs have been changed) change.
  • Checked if this PR will not introduce cross-platform inconsistent behavior.
  • Checked if this PR would require a ReadMe/Wiki update.

Check which platforms you have built SDK on to verify the correctness of this PR.

  • Linux
  • Windows
  • Android
  • MacOS
  • IOS
  • Other Platforms

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

…tions

- ClientConfiguration keeps only settings every service shares; the 12 service-specific
  options move to generated per-service configurations, chosen from each service's
  endpoint rules and model (ServiceModel.getSupportedClientOptions)
- Clients can no longer be built from the shared ClientConfiguration; an explicit
  XClientConfiguration(const ClientConfiguration&) seeds a service config from shared settings
- Remove legacy client constructors and OverrideEndpoint (S3Crt unchanged until it
  becomes an alias of S3Client)
- Regenerate DynamoDB, S3, S3 Control, S3 Vectors, STS and S3Crt's configuration
- Regenerate all 438 service clients: each gets its own ClientConfiguration type with only
  the options its service supports; legacy constructors and OverrideEndpoint removed
- KMSEncryptionMaterials takes KMSClientConfiguration
- Update tests to build clients from their service's configuration

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants