Skip to main content

A 1:1 Rust port of httpx — same API, faster execution.

Project description

httpxr

CI PyPI version Python versions Docs

A 1:1 Rust port of httpx — same API, faster execution.

📖 Documentation · 📦 PyPI · 🐙 GitHub · 🤖 llm.txt

[!NOTE] 🤖 AI-Generated — Every line of Rust, Python, and configuration in this project was written by an AI coding agent powered by Claude Opus 4.6. The iterative process of getting all 1300+ tests to pass involved human oversight — reviewing agent output, steering direction, and deciding next steps — so this was not a press-button-and-done affair. Read the full story →


What is httpxr?

httpxr is a faithful port of the httpx HTTP client with one goal: make it faster by replacing the Python internals with Rust. The Python API stays identical — swap import httpx for import httpxr and everything just works, but with the performance benefits of native Rust networking, TLS, and compression.

The networking layer is reimplemented in Rust:

Layer Technology
Python bindings PyO3
Async HTTP reqwest + tokio
Sync HTTP reqwest + tokio
TLS rustls + native-tls
Compression gzip, brotli, zstd, deflate (native Rust)

Zero Python Dependencies

Unlike httpx (which depends on httpcore, certifi, anyio, idna, and optional packages for compression), httpxr has zero runtime Python dependencies. Everything — HTTP, TLS, compression, SOCKS proxy, IDNA encoding — is handled natively in Rust.


Benchmarks

All benchmarks run against 10 HTTP libraries on a local ASGI server (uvicorn), 100 rounds each. Scenarios: Single GET, 50 Sequential GETs, 50 Concurrent GETs.

HTTP Library Benchmark

📊 Interactive version → with full hover/zoom

Summary (median, ms — lower is better)

Scenario httpxr httpr pyreqwest ry aiohttp curl_cffi urllib3 rnet httpx niquests
Single GET 0.20 0.12 0.10 0.18 0.24 0.23 0.30 0.34 0.38 0.39
50 Sequential GETs 7.84 6.52 6.33 8.98 10.73 12.91 15.17 17.76 18.78 19.65
50 Concurrent GETs 5.23 7.31 6.56 6.23 7.85 12.31 16.26 10.15 70.23 21.14

Key takeaways:

  • httpxr is the fastest full-featured httpx-compatible client — on par with raw Rust libraries
  • #1 under concurrency — faster than all other libraries including httpr, pyreqwest, and ry
  • ~2.4× faster than httpx for sequential workloads
  • ~13× faster than httpx under concurrency (GIL-free Rust)
  • Competitive with bare-metal libraries (pyreqwest, ry) while offering the full httpx API

Why httpxr is slightly slower on Single GET

Libraries like httpr and pyreqwest achieve lower single-request latency (~0.10-0.12ms) because they return minimal response objects — essentially just status + bytes + a headers dict. They are not full httpx drop-in replacements.

httpxr returns full httpx-compatible Response objects with:

  • Parsed URL with scheme/host/path/query components
  • Headers (multidict with case-insensitive lookup)
  • Request back-reference, redirect history, elapsed timing
  • Event hooks, auth flows, cookie persistence, transport mounts

This ~0.08ms of extra per-request overhead is the cost of 100% API compatibility with httpx. Under real-world workloads (sequential/concurrent), httpxr's Rust transport layer dominates and beats httpx in both scenarios.

# Reproduce benchmarks locally:
uv sync --group dev --group benchmark
uv run python benchmarks/run_benchmark.py

Quick Start

pip install httpxr

To also install the optional CLI:

pip install "httpxr[cli]"

Sync:

import httpxr

with httpxr.Client() as client:
    r = client.get("https://httpbin.org/get")
    print(r.status_code)
    print(r.json())

Async:

import httpxr, asyncio

async def main():
    async with httpxr.AsyncClient() as client:
        r = await client.get("https://httpbin.org/get")
        print(r.json())

asyncio.run(main())

API Compatibility

httpxr supports the full httpx API surface:

  • Client / AsyncClient — sync and async HTTP clients
  • Request / Response — full request/response models
  • URL, Headers, QueryParams, Cookies — all data types
  • Timeout, Limits, Proxy — configuration objects
  • MockTransport, ASGITransport, WSGITransport — test transports
  • Authentication flows, redirects, streaming, event hooks
  • HTTP/1.1 & HTTP/2, SOCKS proxy support
  • CLI via httpxr command (requires pip install "httpxr[cli]")

httpxr Extensions

Beyond the standard httpx API, httpxr adds features that leverage the Rust runtime:

gather() — Concurrent Batch Requests

Dispatch multiple requests concurrently with a single call. Requests are built in Python, then sent in parallel via Rust's tokio runtime with zero GIL contention.

with httpxr.Client() as client:
    requests = [
        client.build_request("GET", f"https://api.example.com/items/{i}")
        for i in range(100)
    ]
    responses = client.gather(requests, max_concurrency=10)
Parameter Default Description
max_concurrency 10 Max simultaneous in-flight requests
return_exceptions False Return errors inline instead of raising

paginate() — Auto-Follow Pagination

Automatically follow pagination links across multiple API responses.

# Follow @odata.nextLink in JSON body (Microsoft Graph)
pages = client.paginate("GET", url, next_url="@odata.nextLink")

# Follow Link header (GitHub-style)
pages = client.paginate("GET", url, next_header="link")

# Custom extractor function
pages = client.paginate("GET", url, next_func=my_extractor)
Parameter Default Description
next_url JSON key containing the next page URL
next_header HTTP header to parse for rel="next" links
next_func Custom Callable[[Response], str | None]
max_pages 100 Stop after N pages

Both methods are available on Client (sync) and AsyncClient (async). See examples/gather.py and examples/paginate.py for full examples.

Raw API — Maximum-Speed Dispatch

For latency-critical code, get_raw(), post_raw(), put_raw(), patch_raw(), delete_raw(), and head_raw() bypass all httpx Request/Response construction and call reqwest directly.

with httpxr.Client() as client:
    status, headers, body = client.get_raw("https://api.example.com/data")
    # status:  int (e.g. 200)
    # headers: dict[str, str]
    # body:    bytes

These accept url (full URL, not path), optional headers (dict), optional body (bytes, for POST/PUT/PATCH), and optional timeout (float, seconds).


Test Suite

The port is validated against the complete httpx test suite1303 tests across 30+ modules, ported 1:1 from the original project.

Behavioral Differences

Difference Detail Why it's OK
Header ordering Default headers sent in different order Headers are unordered per RFC 9110 §5.3
MockTransport init Handler stored differently internally Test logic and assertions unchanged

Test Modifications (6 files)

Change Original New Reason
User-Agent python-httpx/… python-httpxr/… Reflects actual client identity
Logger name "httpx" "httpxr" Logs should identify the actual library
Timeout validation Timeout(pool=60.0) raises Succeeds PyO3 framework limitation
Test URLs Hardcoded port Dynamic server.url Random OS port in test server
Write timeout Catches WriteTimeout Catches TimeoutException Rust transport may buffer writes via OS kernel, surfacing timeout on read instead of write

Development

git clone https://github.com/bmsuisse/httpxr.git
cd httpxr
uv sync --group dev
maturin develop
uv run pytest tests/
uv run pyright

A pre-push hook runs pytest and pyright automatically before every push.


How It Was Built

Every line of code in this project was written by an AI coding agent powered by Claude Opus 4.6. The iterative process — running tests, reading failures, fixing the Rust implementation, rebuilding — was guided by human oversight: reviewing agent output, steering direction, and deciding what to tackle next. This was not a fully autonomous "press button and done" workflow, but a human-in-the-loop collaboration where the AI did the coding and the human kept it on track. Still, the project demonstrates what becomes possible when an AI agent is given a clear, measurable goal — and hints at a near future where this kind of work runs fully autonomously.

Why build another Rust HTTP library? Great Rust-powered Python HTTP clients already exist — pyreqwest, httpr, rnet, and others. This project was never about reinventing the wheel. It started as an experiment to see how well an AI coding agent performs when given a clear, well-scoped goal in a domain with established solutions. The two objectives — pass every httpx test and beat httpx in benchmarks — provided a tight feedback loop to push the agent's capabilities. Along the way the result turned into a genuinely useful library, so here it is. 🙂

The agent was given two objectives and iterated until both were achieved:

Phase 1: Correctness — Pass All httpx Tests

The complete httpx test suite (1300+ tests) served as the specification. The agent ported each test module, ran pytest, read the failures, fixed the Rust implementation, rebuilt, and repeated — across clients, models, transports, streaming, auth flows, and edge cases — until all 1303 tests passed.

Phase 2: Performance — Beat the Benchmarks

With correctness locked in, the agent ran benchmarks against 9 other HTTP libraries, profiled the hot path, and optimized: releasing the GIL during I/O, minimizing Python ↔ Rust boundary crossings, batching header construction, reusing connections and the tokio runtime. Each cycle was followed by a test run to ensure nothing regressed.

The iterative loop — correctness first, performance second, verify both continuously — produced a client that is fully compatible with httpx while being 2.4× faster sequentially and 13× faster under concurrency.

📖 Full development story →


License

Licensed under either of:

at your option.

This project is a Rust port of httpx by Encode OSS Ltd, originally licensed under the BSD 3-Clause License.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

httpxr-0.30.4.tar.gz (6.7 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

httpxr-0.30.4-pp311-pypy311_pp73-musllinux_1_2_x86_64.whl (3.6 MB view details)

Uploaded PyPymusllinux: musl 1.2+ x86-64

httpxr-0.30.4-pp311-pypy311_pp73-musllinux_1_2_aarch64.whl (3.3 MB view details)

Uploaded PyPymusllinux: musl 1.2+ ARM64

httpxr-0.30.4-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.4 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

httpxr-0.30.4-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (3.2 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ ARM64

httpxr-0.30.4-cp314-cp314t-musllinux_1_2_x86_64.whl (3.6 MB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ x86-64

httpxr-0.30.4-cp314-cp314t-musllinux_1_2_aarch64.whl (3.3 MB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ ARM64

httpxr-0.30.4-cp314-cp314-win_amd64.whl (2.9 MB view details)

Uploaded CPython 3.14Windows x86-64

httpxr-0.30.4-cp314-cp314-musllinux_1_2_x86_64.whl (3.6 MB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ x86-64

httpxr-0.30.4-cp314-cp314-musllinux_1_2_aarch64.whl (3.3 MB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ ARM64

httpxr-0.30.4-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.4 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64

httpxr-0.30.4-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (3.2 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ ARM64

httpxr-0.30.4-cp314-cp314-macosx_11_0_arm64.whl (3.0 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

httpxr-0.30.4-cp314-cp314-macosx_10_12_x86_64.whl (3.3 MB view details)

Uploaded CPython 3.14macOS 10.12+ x86-64

httpxr-0.30.4-cp313-cp313t-musllinux_1_2_x86_64.whl (3.6 MB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ x86-64

httpxr-0.30.4-cp313-cp313t-musllinux_1_2_aarch64.whl (3.3 MB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ ARM64

httpxr-0.30.4-cp313-cp313-win_amd64.whl (2.9 MB view details)

Uploaded CPython 3.13Windows x86-64

httpxr-0.30.4-cp313-cp313-musllinux_1_2_x86_64.whl (3.6 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

httpxr-0.30.4-cp313-cp313-musllinux_1_2_aarch64.whl (3.3 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

httpxr-0.30.4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.4 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

httpxr-0.30.4-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (3.2 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

httpxr-0.30.4-cp313-cp313-macosx_11_0_arm64.whl (3.0 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

httpxr-0.30.4-cp313-cp313-macosx_10_12_x86_64.whl (3.3 MB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

httpxr-0.30.4-cp312-cp312-win_amd64.whl (2.9 MB view details)

Uploaded CPython 3.12Windows x86-64

httpxr-0.30.4-cp312-cp312-musllinux_1_2_x86_64.whl (3.6 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

httpxr-0.30.4-cp312-cp312-musllinux_1_2_aarch64.whl (3.3 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

httpxr-0.30.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.4 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

httpxr-0.30.4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (3.2 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

httpxr-0.30.4-cp312-cp312-macosx_11_0_arm64.whl (3.0 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

httpxr-0.30.4-cp312-cp312-macosx_10_12_x86_64.whl (3.3 MB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

httpxr-0.30.4-cp311-cp311-win_amd64.whl (2.8 MB view details)

Uploaded CPython 3.11Windows x86-64

httpxr-0.30.4-cp311-cp311-musllinux_1_2_x86_64.whl (3.6 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

httpxr-0.30.4-cp311-cp311-musllinux_1_2_aarch64.whl (3.3 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

httpxr-0.30.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.4 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

httpxr-0.30.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (3.2 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

httpxr-0.30.4-cp311-cp311-macosx_11_0_arm64.whl (3.0 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

httpxr-0.30.4-cp311-cp311-macosx_10_12_x86_64.whl (3.3 MB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

httpxr-0.30.4-cp310-cp310-win_amd64.whl (2.8 MB view details)

Uploaded CPython 3.10Windows x86-64

httpxr-0.30.4-cp310-cp310-musllinux_1_2_x86_64.whl (3.6 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

httpxr-0.30.4-cp310-cp310-musllinux_1_2_aarch64.whl (3.3 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

httpxr-0.30.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.4 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

httpxr-0.30.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (3.2 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

File details

Details for the file httpxr-0.30.4.tar.gz.

File metadata

  • Download URL: httpxr-0.30.4.tar.gz
  • Upload date:
  • Size: 6.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for httpxr-0.30.4.tar.gz
Algorithm Hash digest
SHA256 9bd4f34cb416deea6025962ccbd7302b6c9d3894ac2f100eb91c07a85d60da0e
MD5 747a9cfab42f396978e625eafa91959d
BLAKE2b-256 e16f109f1345a97abbbf67e1a4dc68993cf7c194a2694c2164fde112275abf83

See more details on using hashes here.

File details

Details for the file httpxr-0.30.4-pp311-pypy311_pp73-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for httpxr-0.30.4-pp311-pypy311_pp73-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 0f435dac5d62fcb43c309cbbbdde6eefcb03ee4d3082cc9fed9fa880d6996b1f
MD5 0c4e3307938478fc60c8c1be381bd3be
BLAKE2b-256 cfb08e9d500acb8c7014c4fc344e22837c021ef373535b054183d99b50203e95

See more details on using hashes here.

File details

Details for the file httpxr-0.30.4-pp311-pypy311_pp73-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for httpxr-0.30.4-pp311-pypy311_pp73-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 ccdaab740ff93c50434863702d8f7e481cb38395b608122719a03d493b24a36f
MD5 a10bfd472d2bea4455842e9f6ef92abe
BLAKE2b-256 cd115a53c75bc301895d6c3b9901e6017154715e4d607b467aca9bfc4b53bf9c

See more details on using hashes here.

File details

Details for the file httpxr-0.30.4-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for httpxr-0.30.4-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 350e48baab56a64889ec61b9582c1016075f04b654d76c3cba4c9af79189ea31
MD5 7e40da00c8b39f9addff46b92f213b08
BLAKE2b-256 c2667ad2f51fac4b40f95fea23b48bae2d7a526a13a0eb5f5c9e6789dd8cab0a

See more details on using hashes here.

File details

Details for the file httpxr-0.30.4-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for httpxr-0.30.4-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 bfcaf174e6c097cb84105d077429bab5780c91cd69df2306b6112a1c2a91bedf
MD5 dd18e86a5a2f869ffbb11c5d36ec5a7f
BLAKE2b-256 bd95d5e493a8219e88008cc6caf6434378877b0faec2816771fb7751645ad5a1

See more details on using hashes here.

File details

Details for the file httpxr-0.30.4-cp314-cp314t-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for httpxr-0.30.4-cp314-cp314t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 7a065928f458b1178d32f6ea46af00bc4c7dee7c82be1f609d8073289ea375af
MD5 cfda03ffabb05cc1e69740a3877c20d6
BLAKE2b-256 32bf467e9c084a601861d814f76c38d276219a92426d8802ce9faff0ffd2a9a1

See more details on using hashes here.

File details

Details for the file httpxr-0.30.4-cp314-cp314t-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for httpxr-0.30.4-cp314-cp314t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 0f2eeb84d89b16afc3b89c16f550db7eb485d7f50f2ba55f43614f8b38e349be
MD5 af5f5e03a7be453bd7817e420526a94f
BLAKE2b-256 52ef8d3e55ab60f4546569698abd34925a21e1f1ac2da5ae198c71f6bb4a8a5f

See more details on using hashes here.

File details

Details for the file httpxr-0.30.4-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: httpxr-0.30.4-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 2.9 MB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for httpxr-0.30.4-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 24f4e630c5fcab55b44d0e87dc1d875388993efe9128391658ec0ce1792892b4
MD5 5f08509a582d47264ba8c5658f84048b
BLAKE2b-256 918853d5338b6e3403df28c1f69ed6d713b931735d0dc7e9091cacf419afc7c1

See more details on using hashes here.

File details

Details for the file httpxr-0.30.4-cp314-cp314-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for httpxr-0.30.4-cp314-cp314-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 f41d62b6284bc47403df682c83501e17e1286819a20ee5b7218f312e8a332095
MD5 02e489c4eafd9d1c79638c033984de33
BLAKE2b-256 4d10fa4069aa02e94aa92723b9c370dbad3c565101386c741a554c668947615d

See more details on using hashes here.

File details

Details for the file httpxr-0.30.4-cp314-cp314-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for httpxr-0.30.4-cp314-cp314-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 fa904a44e31b4a6b0ce9bb416840cad3ca7f2507c83f0458673b44877b09efd0
MD5 5fe4810e5cca6ada0b2e4078ee90d1ea
BLAKE2b-256 7e46abbc9ee7a390f7b3028c5128f54ee5af945613889e14308cfb548e27386c

See more details on using hashes here.

File details

Details for the file httpxr-0.30.4-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for httpxr-0.30.4-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 10a8800ac96ca729eae708df51a275d1c5fd994917334de114a97f23deacbf0d
MD5 99a2a74cd0b9fcf779fd1ad3da11472c
BLAKE2b-256 165d83d8d19474fa67cd26ff59590cac80cb136de24fe96e830d99d6f22e696f

See more details on using hashes here.

File details

Details for the file httpxr-0.30.4-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for httpxr-0.30.4-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 7e87dc9d86dcadf558bd57d3d2e9b95e7d33c03026a5651ddf33ab3d04cde522
MD5 f65aeb7cc0776bf61ef68b3e5432d78e
BLAKE2b-256 f36d58d7682564d29830c74711f5a5d5700998d469cfb6c26897ef3f8d7baf83

See more details on using hashes here.

File details

Details for the file httpxr-0.30.4-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for httpxr-0.30.4-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8d78a7a93bd3d7611f1fee5d60ab15ca67dc940b1c517fa5c2763d8f1801d9c1
MD5 916e680b87608d6d38a7a0a5e03ad0c0
BLAKE2b-256 699bf213bed1bed3e7a74f39fb1e8bd4a67c81b07a927a0075d83a5df6585da3

See more details on using hashes here.

File details

Details for the file httpxr-0.30.4-cp314-cp314-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for httpxr-0.30.4-cp314-cp314-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 9e52151ee116192f9fd79e20a1a3eec8f39afcf0d52b78b653e0088f08a012af
MD5 23c7b802a25087b7d59c84a5e5c9fb19
BLAKE2b-256 9c1e4c03fd2ef534703db38efb768de32c6875fae4bd7e2d90ab0e8f74d21462

See more details on using hashes here.

File details

Details for the file httpxr-0.30.4-cp313-cp313t-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for httpxr-0.30.4-cp313-cp313t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 79302bee3e9fb7ae4dfed448a0097c75ed560264bb36b9be1369a64738e9dfb4
MD5 62a0e2949c2ed843946bfec553ffebde
BLAKE2b-256 ce2997e3f43e97fa41618d95ceef0ced20bed79be9497e66856c59ea69f469f6

See more details on using hashes here.

File details

Details for the file httpxr-0.30.4-cp313-cp313t-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for httpxr-0.30.4-cp313-cp313t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 7a6a620ed16b0bd4ff14543e9abec9741a5af27c4ac121a0a8f511908bd541a6
MD5 71b126d0b338c91cef1b34ec60a16038
BLAKE2b-256 ccb0cb27b24526d883424c5f9c95be56e35433ced58b27f9c60886b9ac33cb3e

See more details on using hashes here.

File details

Details for the file httpxr-0.30.4-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: httpxr-0.30.4-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 2.9 MB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for httpxr-0.30.4-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 7e0a1d36a239be0028ee8797a6ab51cd5ef8199b7589f2eeae9d43de2fb64e9c
MD5 8e35648e4075483b42baf845caaaf29a
BLAKE2b-256 abbc1781b3d5b7e02581167177ffc16ac966ecdfef5ac1abd6e6006cc35b9291

See more details on using hashes here.

File details

Details for the file httpxr-0.30.4-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for httpxr-0.30.4-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 3c2a250791b6d4fefec2cc0e5fc066f59dcde84eacadf6023a82748cd3e42351
MD5 d56c803cbf3db350e6640756f73563b2
BLAKE2b-256 5fe220869e789c39b58b35db7b1056c0136259db38c19eadf11d05f5edf5df83

See more details on using hashes here.

File details

Details for the file httpxr-0.30.4-cp313-cp313-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for httpxr-0.30.4-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 ebb2353f088e391407b13c6049d0aa8e3782b7abe902276cd4bd5353be85d75f
MD5 bb71cb36e692c5d0e4370c1b61dbc668
BLAKE2b-256 abcf8b5cd1f1e4e83a7892cb5da6446f997518532d87ea7bdc9727666b454f87

See more details on using hashes here.

File details

Details for the file httpxr-0.30.4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for httpxr-0.30.4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 00c26a10953469b696d454d96da8ebe257ac3cd32cb64299e0e9f8a57b0dff82
MD5 82275ef7694dee1b4a59b13e305364a9
BLAKE2b-256 55415eca756f384cc9f20d1a8a8a9cb3a89dcd85d34b4429a85fc3b9b92b9201

See more details on using hashes here.

File details

Details for the file httpxr-0.30.4-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for httpxr-0.30.4-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 c98de0e9d6ed90ffabbff809127f33fdc582d12892337e45294b1d47402af240
MD5 6f22ffd62ff201a9d5aa4cf9034cd254
BLAKE2b-256 503d3afab9a807429048e0575d2c1c9bf313649120ea7731f7ae6066ae94bc8f

See more details on using hashes here.

File details

Details for the file httpxr-0.30.4-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for httpxr-0.30.4-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b87bd7287436faaf575c8f7e5cf51d51f922548a10cc7391cb4bfd76d7f4e4c7
MD5 7a80d6f6cada4948273b93162bc3575e
BLAKE2b-256 2349274832d7f00b8bd3f9b3decd224e939df698aa5054c7f02e9d368085a904

See more details on using hashes here.

File details

Details for the file httpxr-0.30.4-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for httpxr-0.30.4-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 daca8e624f06b9d0bc776abac60b32537e1f8dcadc11aaa0ae8f7bf09c49ac41
MD5 7a9ab212a408297c72a6c4f81603a628
BLAKE2b-256 f0b50025c512ef470e734b5682146ceba748d084f7e0c4989f2df1030a59ce04

See more details on using hashes here.

File details

Details for the file httpxr-0.30.4-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: httpxr-0.30.4-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 2.9 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for httpxr-0.30.4-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 d550df714f9baac711b1430d67e51e6eefba6674a6818d45d8e56f9ebaa0cba6
MD5 b576c7e0ee5e43cc985912dcaa184c0e
BLAKE2b-256 1112bc97c348182dbec28dd800a1e7c05cc08ae8fb09298f75a870e40961d8d5

See more details on using hashes here.

File details

Details for the file httpxr-0.30.4-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for httpxr-0.30.4-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 34209878f4d3e313add5c28e104fa42f681f2f86758d09b7c6367f6f8afc3b0c
MD5 6ac68dcd26fae4168d20d08dee947413
BLAKE2b-256 a31556c09e4c291b4aec20665e3919cb9c655dfe3c123c0fe8fda9b7bae49562

See more details on using hashes here.

File details

Details for the file httpxr-0.30.4-cp312-cp312-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for httpxr-0.30.4-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 8b7b842c67033dbbb9601b12190718dd6d2893d404d6e94c76c0754b369d2893
MD5 411300fa7367cc55a483a1e73930dae8
BLAKE2b-256 0355217257ba06b78837976c6e606577b314830a5db1c951ff5634a8cf7d1486

See more details on using hashes here.

File details

Details for the file httpxr-0.30.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for httpxr-0.30.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 cfb0a139bb8905547207e7359680aa0dd4dc3eac30c5144d8a24627a21ace4fa
MD5 0a895b048ab96c23bf921d122a51af93
BLAKE2b-256 cb91e51a819afe22a9bca48efdaabe94a84206a475b19d7dffcaabfeb4a2d73f

See more details on using hashes here.

File details

Details for the file httpxr-0.30.4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for httpxr-0.30.4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 33d4563fd85e5fe157145fb61e05f5a6039d2f11a70fe4a176affc5d7eabfc52
MD5 62e17b2de6734114f8803de5193abe96
BLAKE2b-256 bcfa82e9aead9ff3cd1e363153f0fb72d0ebd99e9722b1df9809fa4db08cdd83

See more details on using hashes here.

File details

Details for the file httpxr-0.30.4-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for httpxr-0.30.4-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 6d3cabde527be0503d22bf0dfd55a7d13b46271886f100c182a30d6841b858b4
MD5 41dd525422a95ee71143b2eb2284e3c9
BLAKE2b-256 86178ec331da0c4a56707eb4a9cc019006fca4865210ffa736b16a7126817e3b

See more details on using hashes here.

File details

Details for the file httpxr-0.30.4-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for httpxr-0.30.4-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 21fa4df18c5deb2bf0a81a0a8d1e3f69d0bc91f1a97f5e68684c3a007a8fc154
MD5 1e2d6d8b0e85bdea2bae7ebf88876230
BLAKE2b-256 f3c294feea20f5a5071cd8177cadc38597cb94b234ce6627844a4b5d2d785555

See more details on using hashes here.

File details

Details for the file httpxr-0.30.4-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: httpxr-0.30.4-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 2.8 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for httpxr-0.30.4-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 ce6373d3d6324355e5b209dadc503d8507747236d6996b1fa88ec0598090a11d
MD5 ef3d7fe2ddb93227304bbd295c097952
BLAKE2b-256 9c22b52a4697298bcd89cdc3798abfa0d6ccdaef537a6d4f36f1391f0bde21bc

See more details on using hashes here.

File details

Details for the file httpxr-0.30.4-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for httpxr-0.30.4-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 7731338b8dbf2351e6ce8fffafc116deed18c2a0c2f70c5b45bd5113eaa1797f
MD5 095516e9e7790b2c22541ceb116c7bbe
BLAKE2b-256 a5f66647dc3ef8a001dde509f72327e986c4adc4d5ad632b5851f37846c38a95

See more details on using hashes here.

File details

Details for the file httpxr-0.30.4-cp311-cp311-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for httpxr-0.30.4-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 e37618cfc1dd8612d10abb7069441e888d0d72867494281b8ffe10acc07b1b10
MD5 dc1805cc26402c838b074a9144cfc832
BLAKE2b-256 864f0c11e93181b6dea37cf3f87ab267e9b7cf8f7d54863debdfc537554984ba

See more details on using hashes here.

File details

Details for the file httpxr-0.30.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for httpxr-0.30.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 971eb73de388f9660659917a36fc227f56d8cb549b37e41594d199b9df4787db
MD5 340b3c218aa13ea170af22ff20ef8c68
BLAKE2b-256 1d99863ef94d4bc606c80aabe9ffce4d681b8aa7a4067b0e42ee589112336d8c

See more details on using hashes here.

File details

Details for the file httpxr-0.30.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for httpxr-0.30.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 e562e90a4c49842c3d3e32d609a2759f86fd297cac3f894b36c3cb75785400ac
MD5 a4a34e9e9e0d0e6298ba49f81727f638
BLAKE2b-256 bfc291b505aa28e0aa600450f4600f0386918072afb766b511b32b91661202a1

See more details on using hashes here.

File details

Details for the file httpxr-0.30.4-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for httpxr-0.30.4-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8c469f02e98e1616668645ffb7e5a5209ed388d33001573b7b80feb5810cd0a1
MD5 b64e9fc4220d4c463a5e3aee7925ce13
BLAKE2b-256 94f20fcea5a536839b42111666564c71ccfb597f64e1d2c5ca11ef8f2c1c5e38

See more details on using hashes here.

File details

Details for the file httpxr-0.30.4-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for httpxr-0.30.4-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 d9cda1ec8ce91394e04e83b3c7758c5feaca1fe66b9e2939c7d418ead39e6db7
MD5 1792c878391190c21acdb76c9aaeb6a7
BLAKE2b-256 1cf42fbbe3adc04a992a9c7fe804935ac24dbb8c428060c683c2343d455af24b

See more details on using hashes here.

File details

Details for the file httpxr-0.30.4-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: httpxr-0.30.4-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 2.8 MB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for httpxr-0.30.4-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 885749d579bbb27b372e3dbb31ffc807ccb434bc9b2e1b5082cddde8cab0537e
MD5 6038c7452ad538718825a70661b4b9f1
BLAKE2b-256 f2d2598c281abe701a2b51965d440834770e270fc5d339aa7e959d50d4967989

See more details on using hashes here.

File details

Details for the file httpxr-0.30.4-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for httpxr-0.30.4-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 fb208c1ef77f007e68a0a5827d6ed32e2bd152fd0b1b82fa1f3ce9c40befa077
MD5 633f9196d6a2cdcbb370b12644a7c520
BLAKE2b-256 5cb78a777d6fdc6970dbfa12131b992ad04a483642b680da9de1ca1becc2e376

See more details on using hashes here.

File details

Details for the file httpxr-0.30.4-cp310-cp310-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for httpxr-0.30.4-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 b5398f9305d3c34e5b4c0776f95cce94ea9b1b64cc8b3422de5af98aef5b3cfd
MD5 d9d2f9555df5fa08bd5951d8d18dd272
BLAKE2b-256 88cf895e8ca8ff7b779b367e4dc4de17367dd8b001eaf16461cd7b0be17f3bc4

See more details on using hashes here.

File details

Details for the file httpxr-0.30.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for httpxr-0.30.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b344c651e91f81899910e04c961c6aa9b5a27f94c31adec5f8707ea739d589d9
MD5 9c064adf39567ed3ec79daccd36fffc0
BLAKE2b-256 0d3e2d17748411f1f918b8436c8bc206d5b5d6b1c75b63b9878f3df302a43833

See more details on using hashes here.

File details

Details for the file httpxr-0.30.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for httpxr-0.30.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 bf3db4ccc798685e1f8d3b668cba0d2ce7026fec8b7e51f1140bbb044d3de146
MD5 5b6b24734c48e41ec87921b1cac4164b
BLAKE2b-256 97bffe8f49a09d6063b33d4021c849e1281dda400c5257b94b77cf800a155f09

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page