Verification and release
What the evidence covers
The package’s contracts, configuration, reports, transport and client are exercised by 635 local tests at the client completion checkpoint. Nineteen client cases cover defaults and binding, retries, batching, concurrency, redirects/cookies, partial responses, limits, exact multipart signing, authentication flows, ASGI service calls, cancellation, early stream exit and owned/borrowed resources.
Transport coverage includes actual local TLS, mutual TLS, HTTP proxy, connection reuse, timeout, HTTP/2 ALPN negotiation and framed responses, and SOCKS5/SOCKS5H handshakes with destination-hostname forwarding. The three added protocol cases bring the HTTP test inventory to 638. The eleven component notebooks record incremental use; the client notebook has seven executed cells. Fixture-based provider examples prove the parsing/client path, not current third-party website availability or units.
These protocol checks use local servers and do not certify every external proxy or server implementation. Shared common-auth implementations receive their own integration checks when they are built; the HTTP flow seam is already exercised with local adapters.
Reproduce checks
From the repository root with registry authentication configured:
uv sync --locked --all-extras --group devuv run ruff check .uv run ruff format --check .uv run mypy libs/PYTHON_DOTENV_DISABLED=1 uv run pytest libs/http/tests/ -quv build --package common-httpuv run python docs/scripts/gen_api_docs.pynpm --prefix docs ci --no-audit --no-fundnpm --prefix docs run buildThe docs toolchain requires Node 22.19 or newer. Local network tests need loopback socket permission and do not contact vendor APIs. Live credential-dependent provider checks are outside this suite. Registry tokens belong in environment or the normal runtime credential setup; do not commit them to project configuration.
Release dependencies
Execution and core remain maintained in the old common repository during this
migration. This workspace must consume their released versions; reserved empty
member directories must not shadow those installed distributions. The execution
dependency must include typed-header and HTTP-date Retry-After handling.
Release readiness requires a clean dependency install, passing checks on the CI Python matrix, successful documentation build and an installed-wheel consumer check. A wheel that merely builds in a prepared editable environment is not that evidence. CI and the release workflow supply publication receipts; a local build does not constitute publication.
Versions and changelogs are managed through release-please. Do not publish empty reserved members over the existing distributions. HTTP can release independently of auth once its actual dependencies and checks are satisfied.
Supported boundary
This package supplies async buffered and streamed HTTP responses, with the body formats documented in requests. It does not implement live request-body upload streams, synchronous facades, WebSockets, CONNECT tunnels, browser execution, provider pagination, domain parsing, persistent cookie storage, distributed quotas or token custody. Those responsibilities stay with consumers or the appropriate shared package.