Skip to main content

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

Project description

httpxr

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

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

[!NOTE] 🤖 100% AI-Generated — This entire project was autonomously created by an AI coding agent powered by Claude Opus 4.6. Every line of Rust, Python, and configuration was written, debugged, and tested entirely by AI. 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

This entire project was autonomously created by an AI coding agent powered by Claude Opus 4.6 — no human wrote any code.

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.29.0.tar.gz (6.6 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.29.0-cp314-cp314t-musllinux_1_2_x86_64.whl (3.6 MB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ x86-64

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

Uploaded CPython 3.14tmusllinux: musl 1.2+ ARM64

httpxr-0.29.0-cp314-cp314-win_amd64.whl (2.8 MB view details)

Uploaded CPython 3.14Windows x86-64

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

Uploaded CPython 3.14musllinux: musl 1.2+ x86-64

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

Uploaded CPython 3.14musllinux: musl 1.2+ ARM64

httpxr-0.29.0-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.29.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (3.1 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ ARM64

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

Uploaded CPython 3.14macOS 11.0+ ARM64

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

Uploaded CPython 3.14macOS 10.12+ x86-64

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

Uploaded CPython 3.13tmusllinux: musl 1.2+ x86-64

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

Uploaded CPython 3.13tmusllinux: musl 1.2+ ARM64

httpxr-0.29.0-cp313-cp313-win_amd64.whl (2.8 MB view details)

Uploaded CPython 3.13Windows x86-64

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

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

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

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

httpxr-0.29.0-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.29.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (3.1 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

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

Uploaded CPython 3.13macOS 11.0+ ARM64

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

Uploaded CPython 3.13macOS 10.12+ x86-64

httpxr-0.29.0-cp312-cp312-win_amd64.whl (2.8 MB view details)

Uploaded CPython 3.12Windows x86-64

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

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

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

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

httpxr-0.29.0-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.29.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (3.1 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

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

Uploaded CPython 3.12macOS 11.0+ ARM64

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

Uploaded CPython 3.12macOS 10.12+ x86-64

File details

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

File metadata

  • Download URL: httpxr-0.29.0.tar.gz
  • Upload date:
  • Size: 6.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.12.2

File hashes

Hashes for httpxr-0.29.0.tar.gz
Algorithm Hash digest
SHA256 5c02c0c6cfddabe22c689efc84de7b09496154a453b9fb6db4120fa49721e387
MD5 267ad6a175e7317ddeee1d04674d880c
BLAKE2b-256 8daf307a2440b3ac4ac3b03ce18861a6893466929cbb3a4d41d603c36820f1df

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpxr-0.29.0-cp314-cp314t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 a519c161e6439246cf1867a4316b0189b061a10a6ca27205af37f53f155a4c01
MD5 75786dc514996c4f482d3a6f7fc30bae
BLAKE2b-256 32335f1e499d0767789c3dc12e3bd4fb1c3c2b2c860f243df8b6df769a8294b5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpxr-0.29.0-cp314-cp314t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 710bc117b268efdd0239196a1ee37878a340aabf4fbb516fa3de1deb2cf10971
MD5 89636e5fbde9024a4f7077c02ceab167
BLAKE2b-256 64b1f10cbf1484529cc6cb848ebe79fd372b37cbef2871096126c50d093c8ab9

See more details on using hashes here.

File details

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

File metadata

  • Download URL: httpxr-0.29.0-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 2.8 MB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.12.2

File hashes

Hashes for httpxr-0.29.0-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 fa60716c010654adb8584a8e7f7745b9d31076717975a82540e4412cc322a35d
MD5 89ecaba6f0f2231631fdbce8d4841c78
BLAKE2b-256 a3b3fd382570b6543f17a95ca8517a69934a06039842d0fc48668ab140fdaa9f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpxr-0.29.0-cp314-cp314-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 f0731da0edc124343b45a5a5de6d634d459feff3dd415f213b9ba925eba20882
MD5 e1cd2e6dbf2271222c25d09f9ed61f7a
BLAKE2b-256 9b98322e8f74744f86ed37ffde342f7d620aaa7ef15d1b031c4eaa8f543901d3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpxr-0.29.0-cp314-cp314-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 cb6f94af26eeefe5ca007d9cca15a54780592d006d3dc9e02c9f0b5c28b01a5c
MD5 bc82d47ad1c668f3eb44beca8529c26e
BLAKE2b-256 a75c5c94ddc320cfbbde1821d0da8e576a5e8fe5b1472ae28528f2dbc11e9ee3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpxr-0.29.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1bc50d8fb11e1c774c91372f90a04ac1231ca8d7afa1c48ccec4979d35545abb
MD5 a556eea3890935bed060e50f6528bf12
BLAKE2b-256 6ae30ba4ebdbe0ce3ab1a4691c9fd29cf507e783f11b4f0ed2973ddd6f180d18

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpxr-0.29.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 738bc2058feb319989aa462c4f98ce56ec6069319d712835546c13f16759f3a1
MD5 27eadb413672f8fca11feb0f8fc1e0b2
BLAKE2b-256 98336a222c360e80356d1fbafdaf75c0c1cbedbd3dc719a8cc925c2273edaee5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpxr-0.29.0-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3f9e33be321b7f4baf41c36851e020ffa1a7817f0259dd58435b6716d3c61717
MD5 df6d5a352763506c833beb5c94152563
BLAKE2b-256 0c745539401721a855cadb745d69257cce1d69fcecac4a6fbefc1607888fd676

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpxr-0.29.0-cp314-cp314-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 d5b793fec525fc84158ae8184ef0c729031ef3ae3dd63261625eacccdc221af1
MD5 08197a1c4ef2eb14f473bffddbb9ec64
BLAKE2b-256 7a44ce55e74f1e5e1e6f88ff184023ffdd4d87a459b7ba431d13657895435f38

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpxr-0.29.0-cp313-cp313t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 8cda5fc7b9cb731e116f2c8970bef895bf91b5e56fcd7fc4245ed59d7216f482
MD5 47ae9768312d90d2b828cbc1cd3e42af
BLAKE2b-256 c88a760353c7cc97d2b78066d24f1d8f4c623e526d3865bb510b7f0dd654765e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpxr-0.29.0-cp313-cp313t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 5242bbf03b9b9d3a82fe15f1615c480f04644f40e36689165e822d448c5ec9ae
MD5 64515e9e49c6d5a1d31f7bcd3afd44d3
BLAKE2b-256 05ffad2276b8d5c896e1baa482ec4dadd9fc7d458e2fa43c58c7607045db1eb8

See more details on using hashes here.

File details

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

File metadata

  • Download URL: httpxr-0.29.0-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 2.8 MB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.12.2

File hashes

Hashes for httpxr-0.29.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 7bbe872d130010f2f146cedb8f178c16e172209534289bf47e7fa2f0b848cab1
MD5 40c8570d0f8a8c4696ea90b954d1c077
BLAKE2b-256 2080d30d67eaf13f650ab3ecd0c5f945ff1996c6b3cf0296f6695afa709a40dc

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpxr-0.29.0-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 ca3a8fe4f57b25af27629c0d8c79f64f187496aeef1c6cf6bf99773a01b8da4e
MD5 95b65085eb249b54e14e0caf40d30fb8
BLAKE2b-256 649f6723b43650922cdbf2574262a09439fc7df8784304eb1b08cf2c07c6a4ff

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpxr-0.29.0-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 10eaf50ea65cbbe78730e33feb9c94a67ba9435aa16ad7beaf71f85562b27839
MD5 970c244a31bf74fdf9ba6065489d7c97
BLAKE2b-256 cce88588308fcca845609da4dfa4e4ceed8d3f28756736ed995ad320f7c8a91d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpxr-0.29.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 670e24e36cb3dc1b5a38e587ad2f7f87f5c0f28a50c6d626d9b8de76cd9c5073
MD5 d22c0838f7b0d8581ac663f4dcce5111
BLAKE2b-256 93d037cc7bd00d5031bcfff9a02b2959090d9f6f0b654066f177560632ecb547

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpxr-0.29.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 71eea6ffe9dbac37e8d8a9b03a097d34eca728d834e7b64322938ab3dc9b3701
MD5 b2c2a15c283c28b5b2d6028d60bb9c9e
BLAKE2b-256 d5411f68644a47ec3ee74e8fe2ee4c2146fc37bdd4d52d1a1a5418f43825f61e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpxr-0.29.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b9f71a5ec34b7c2e6e4b2c9404f835abcdc9435e33a6f81c735d60be3e7367ea
MD5 aff90dbcec318985f70817e4e8d02d46
BLAKE2b-256 2fb2c5d11c71a6ff51f668be0a986693bdce7858bfaa6f84b2e2e5d7b3276d46

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpxr-0.29.0-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 dd78a5f252c3231e7d80f8c4e0b375a03dec6d61846ccbe90122f6b032673145
MD5 0d2992ddb03d10a70b96b0378c734963
BLAKE2b-256 dbdf0cc540a872c377aada302d66127f81f4d284abd8eb61f362ca5f9130c497

See more details on using hashes here.

File details

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

File metadata

  • Download URL: httpxr-0.29.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 2.8 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.12.2

File hashes

Hashes for httpxr-0.29.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 2efe2f531f0c62de534c1d0d6c0affcc9ac63ee4d121cdfe86b887ba40dce8ad
MD5 dff890684cf86efb4dfe5e692a1fc597
BLAKE2b-256 f02bcbd230d831f7f3d9e6e85dade9e17d363eb99863aa6edc48bef7d1861131

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpxr-0.29.0-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 fbd67ceb0d9e6e6c1080b22057c982118e6ffa83cb6a54d27ae7f72c5ce1989a
MD5 331eecc7c323df8b89cce403bad6bdfd
BLAKE2b-256 f39f0a03006da4a2ac5549d1a4684fab2a21772315f3c0c9f188f994dd656709

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpxr-0.29.0-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 15a226887cf40ff6c19af4df7159ebfbe0d2bd858ad2d71db3fd9439ed50c056
MD5 3821272206ef9fde67bbb08369574c7c
BLAKE2b-256 a9bc4c70825df157c00d8f998048b3f68f85811fe022f8a199a2c851de10b2d6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpxr-0.29.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e0d71ffeaf99487d18137077f9722bffddde5590c48d9b635f6070c1d8c2f10e
MD5 d4d7d6b3865f7645f9e78511d12c4ee7
BLAKE2b-256 06f96dd5d36204c547ad79f3cc4e438ba711a819fcd5e0cef65acbcf95ab84b7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpxr-0.29.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 983b0a0b39e9ebdb46336d1310db4c21238008b4ee8cdd9832ce8d3a3ec0b694
MD5 c94018745d5998e1b1d70eac259d4768
BLAKE2b-256 55d504cd522df284332912441f3c4017cbb3d8a0bbf41a4f6c6c5a7c766edf88

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpxr-0.29.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d87be5dc001756bd32ac670d9bf8b27e8d009277b00a913d9d21ec999c404b2b
MD5 005541ac8bbae60615d9aa8e0d71f45f
BLAKE2b-256 045502050c69cbd295471c64048d5daa20cc3d7e49723fba7e7442206af797e3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpxr-0.29.0-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 a2e362f81b1d827b0bac95be01c5a61c86c4e716b0316b82798735710dd34c7b
MD5 8c6423ca0cce6d3d3d272800c17bdf6e
BLAKE2b-256 7a011a5613c7d629e3d1a0c31c2bcf81238c28a6e230865d14d913fa9f40c160

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