Skip to content

Accept the shared SDK request compression threshold range - #3834

Open
gouveags wants to merge 2 commits into
boto:developfrom
gouveags:feat/explicit-request-compression
Open

gouveags wants to merge 2 commits into
boto:developfrom
gouveags:feat/explicit-request-compression

Conversation

@gouveags

@gouveags gouveags commented Oct 19, 2026 •

Copy link
Copy Markdown

Related issue: #3833.

Accept request_min_compression_size_bytes from 0 through 10485760, matching the shared AWS SDK configuration range requested in the issue discussion. The validator currently rejects zero and values above 1 MiB.

A zero threshold lets existing automatic gzip compression handle eligible buffered requests regardless of size. Operations without compression metadata still send uncompressed requests. The default threshold, disable setting, codec selection, signing and retry behavior are unchanged. This does not enable compression on Bedrock or Mantle; service acceptance and upstream metadata remain separate work.

The implementation changes the two bounds in the shared client/config-store validator. Tests cover both inclusive endpoints, formerly rejected values inside the new range, out-of-range rejection, and a zero-threshold small request with and without operation support.

Verification

Hosted CI on the final head reports action_required with no jobs run. Maintainer action is needed before hosted CI can validate this revision.

Reviewed implementation: a3e32d588458972d2dd11bccdf7ea24ff37c0a00.

  • Before the bounds fix, the new client/config-store acceptance cases and zero-threshold client calls failed as expected.
  • Focused implementation suite: 134 passed, 8 subtests passed.
  • Independent expanded regression run: 488 passed, 8 subtests passed, covering client args, config providers, client behavior and compression.
  • Ruff lint/format passed with both local 0.17.2 and the repository-pinned 0.16.10; git diff --check passed.
  • Independent behavior/architecture, security/test and docs/scope review: 5/5, no actionable findings.

Tests ran on Python 3.12.14. They are hermetic; no live AWS requests or latency claims. The full repository suite, supported-Python matrix and Sphinx build were not run. Platform E2E changes are not needed: focused client/config and HTTP-stub tests cover the changed contract.

Related work: Smithy runtime/code generation and new SDK adoption. Neither is a dependency of this botocore fix.

Generated with AI assistance. Scope reviewed and requested by Gabriel Gouvea; final code remains subject to maintainer review.

@gouveags gouveags changed the title Add an explicit gzip choice for compression-capable operations Accept the shared SDK request compression threshold range Oct 26, 2026
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.

1 participant