Skip to main content

Fast HTTP client for Python

Project description

httpr

Blazing fast http-client for Python in Rust 🦀 that can be used as drop-in replacement for httpx and requests in most cases.

  • Fast: httpr is built on top of reqwests, which is a blazing fast http client in Rust. Check out the benchmark.
  • Both async and sync: httpr provides both a sync and async client.
  • Lightweight: httpr is a lightweight http client with zero python-dependencies.
  • Async: first-class async support.
  • Streaming: supports streaming responses for efficient memory usage with large payloads.
  • http2: httpr supports HTTP/2.
  • mTLS: httpr supports mTLS.

Not implemented yet

  • Fine-grained error handling: Fine-grained error handling is not implemented yet.

Documentation

📖 Full documentation: thomasht86.github.io/httpr

🤖 LLM-friendly docs: llms.txt | llms-full.txt

Table of Contents

Installation

Install with uv

uv add httpr

or

uv pip install httpr

Install from PyPI

pip install -U httpr

Benchmark

Usage

I. Client

class Client:
    """Initializes an HTTP client.

    Args:
        auth (tuple[str, str| None] | None): Username and password for basic authentication. Default is None.
        auth_bearer (str | None): Bearer token for authentication. Default is None.
        params (dict[str, str] | None): Default query parameters to include in all requests. Default is None.
        headers (dict[str, str] | None): Default headers to send with requests. 
        cookies (dict[str, str] | None): - Map of cookies to send with requests as the `Cookie` header.
        timeout (float | None): HTTP request timeout in seconds. Default is 30.
        cookie_store (bool | None): Enable a persistent cookie store. Received cookies will be preserved and included
            in additional requests. Default is True.
        referer (bool | None): Enable or disable automatic setting of the `Referer` header. Default is True.
        proxy (str | None): Proxy URL for HTTP requests. Example: "socks5://127.0.0.1:9150". Default is None.
        follow_redirects (bool | None): Whether to follow redirects. Default is True.
        max_redirects (int | None): Maximum redirects to follow. Default 20. Applies if `follow_redirects` is True.
        verify (bool | None): Verify SSL certificates. Default is True.
        ca_cert_file (str | None): Path to CA certificate store. Default is None.
        https_only` (bool | None): Restrict the Client to be used with HTTPS only requests. Default is `false`.
        http2_only` (bool | None): If true - use only HTTP/2; if false - use only HTTP/1. Default is `false`.

    """

Client methods

The Client class provides a set of methods for making HTTP requests: get, head, options, delete, post, put, patch, each of which internally utilizes the request() method for execution. The parameters for these methods closely resemble those in httpx.

def get(
    url: str,
    params: dict[str, str] | None = None,
    headers: dict[str, str] | None = None,
    cookies: dict[str, str] | None = None,
    auth: tuple[str, str| None] | None = None,
    auth_bearer: str | None = None,
    timeout: float | None = 30,
):
    """Performs a GET request to the specified URL.

    Args:
        url (str): The URL to which the request will be made.
        params (dict[str, str] | None): A map of query parameters to append to the URL. Default is None.
        headers (dict[str, str] | None): A map of HTTP headers to send with the request. Default is None.
        cookies (dict[str, str] | None): - An optional map of cookies to send with requests as the `Cookie` header.
        auth (tuple[str, str| None] | None): A tuple containing the username and an optional password
            for basic authentication. Default is None.
        auth_bearer (str | None): A string representing the bearer token for bearer token authentication. Default is None.
        timeout (float | None): The timeout for the request in seconds. Default is 30.

    """
def post(
    url: str,
    params: dict[str, str] | None = None,
    headers: dict[str, str] | None = None,
    cookies: dict[str, str] | None = None,
    content: bytes | None = None,
    data: dict[str, Any] | None = None,
    json: Any | None = None,
    files: dict[str, str] | None = None,
    auth: tuple[str, str| None] | None = None,
    auth_bearer: str | None = None,
    timeout: float | None = 30,
):
    """Performs a POST request to the specified URL.

    Args:
        url (str): The URL to which the request will be made.
        params (dict[str, str] | None): A map of query parameters to append to the URL. Default is None.
        headers (dict[str, str] | None): A map of HTTP headers to send with the request. Default is None.
        cookies (dict[str, str] | None): - An optional map of cookies to send with requests as the `Cookie` header.
        content (bytes | None): The content to send in the request body as bytes. Default is None.
        data (dict[str, Any] | None): The form data to send in the request body. Default is None.
        json (Any | None): A JSON serializable object to send in the request body. Default is None.
        files (dict[str, str] | None): A map of file fields to file paths to be sent as multipart/form-data. Default is None.
        auth (tuple[str, str| None] | None): A tuple containing the username and an optional password
            for basic authentication. Default is None.
        auth_bearer (str | None): A string representing the bearer token for bearer token authentication. Default is None.
        timeout (float | None): The timeout for the request in seconds. Default is 30.

    """

Response object

The Client class returns a Response object that contains the following attributes and methods:

resp.content
resp.cookies
resp.encoding
resp.headers
resp.json()
resp.status_code
resp.text
resp.text_markdown  # html is converted to markdown text using html2text-rs
resp.text_plain  # html is converted to plain text
resp.text_rich  # html is converted to rich text
resp.url

Streaming responses

The Client class supports streaming responses for efficient memory usage when handling large payloads. Use the stream() context manager to iterate over response data without buffering the entire response in memory.

# Stream bytes chunks
with client.stream("GET", "https://example.com/large-file") as response:
    print(f"Status: {response.status_code}")
    for chunk in response.iter_bytes():
        process(chunk)

# Stream text chunks
with client.stream("GET", "https://example.com/text") as response:
    for text in response.iter_text():
        print(text, end="")

# Stream line by line (useful for Server-Sent Events)
with client.stream("GET", "https://example.com/events") as response:
    for line in response.iter_lines():
        print(line.strip())

# Read entire response (if needed after checking headers)
with client.stream("GET", url) as response:
    if response.status_code == 200:
        content = response.read()

StreamingResponse attributes:

  • status_code - HTTP status code
  • headers - Response headers (case-insensitive)
  • cookies - Response cookies
  • url - Final URL after redirects
  • is_closed - Whether the stream has been closed
  • is_consumed - Whether the stream has been fully consumed

StreamingResponse methods:

  • iter_bytes() - Iterate over response as bytes chunks
  • iter_text() - Iterate over response as text chunks (decoded using response encoding)
  • iter_lines() - Iterate over response line by line
  • read() - Read entire remaining response body into memory
  • close() - Close the stream and release resources

Important notes:

  • Streaming must be used as a context manager (with statement)
  • Headers, cookies, and status code are available immediately before reading the body
  • The response body is only read when you iterate over it or call read()
  • Once consumed, the stream cannot be read again
  • Streaming is supported for all HTTP methods (GET, POST, PUT, PATCH, DELETE, HEAD, OPTIONS)

Examples

import httpr

# Initialize the client
client = httpr.Client() 

# GET request
resp = client.get("https://tls.peet.ws/api/all")
print(resp.json())

# GET request with passing params and setting timeout
params = {"param1": "value1", "param2": "value2"}
resp = client.post(url="https://httpbin.org/anything", params=params, timeout=10)
print(r.text)

# POST Binary Request Data
content = b"some_data"
resp = client.post(url="https://httpbin.org/anything", content=content)
print(r.text)

# POST Form Encoded Data
data = {"key1": "value1", "key2": "value2"}
resp = client.post(url="https://httpbin.org/anything", data=data)
print(r.text)

# POST JSON Encoded Data
json = {"key1": "value1", "key2": "value2"}
resp = client.post(url="https://httpbin.org/anything", json=json)
print(r.text)

# POST Multipart-Encoded Files
files = {'file1': '/home/root/file1.txt', 'file2': 'home/root/file2.txt'}
r = client.post("https://httpbin.org/post", files=files)
print(r.text)

# Authentication using user/password
auth = ("user", "password")
resp = client.post(url="https://httpbin.org/anything", auth=auth)
print(r.text)

# Authentication using auth bearer
auth_bearer = "bearerXXXXXXXXXXXXXXXXXXXX"
resp = client.post(url="https://httpbin.org/anything", auth_bearer=auth_bearer)
print(r.text)

# Using proxy or env var HTTPR_PROXY
resp = httpr.Client(proxy="http://127.0.0.1:8080").get("https://tls.peet.ws/api/all")
print(resp.json())
export HTTPR_PROXY="socks5://127.0.0.1:1080"
resp = httpr.Client().get("https://tls.peet.ws/api/all")
print(resp.json())

# Using custom CA certificate store: env var HTTPR_CA_BUNDLE
resp = httpr.Client(ca_cert_file="/cert/cacert.pem").get("https://tls.peet.ws/api/all")
print(resp.json())
resp = httpr.Client(ca_cert_file=certifi.where()).get("https://tls.peet.ws/api/all")
print(resp.json())
export HTTPR_CA_BUNDLE="/home/user/Downloads/cert.pem"
resp = httpr.Client().get("https://tls.peet.ws/api/all")
print(resp.json())

# You can also use convenience functions that use a default Client instance under the hood:
# httpr.get() | httpr.head() | httpr.options() | httpr.delete() | httpr.post() | httpr.patch() | httpr.put()
resp = httpr.get("https://httpbin.org/anything")
print(r.text)

II. AsyncClient

httpr.AsyncClient() is an asynchronous wrapper around the httpr.Client class, offering the same functions, behavior, and input arguments.

import asyncio
import logging

import httpr

async def aget_text(url):
    async with httpr.AsyncClient() as client:
        resp = await client.get(url)
        return resp.text

async def main():
    urls = ["https://nytimes.com/", "https://cnn.com/", "https://abcnews.go.com/"]
    tasks = [aget_text(u) for u in urls]
    results = await asyncio.gather(*tasks)

if __name__ == "__main__":
    logging.basicConfig(level=logging.INFO)
    asyncio.run(main())

Streaming with AsyncClient:

The AsyncClient also supports streaming responses with the same API:

async with httpr.AsyncClient() as client:
    async with client.stream("GET", "https://example.com/large-file") as response:
        for chunk in response.iter_bytes():
            process(chunk)

Note: While the context manager is async, the iteration over chunks (iter_bytes(), iter_text(), iter_lines()) is synchronous.

Precompiled wheels

Provides precompiled wheels for the following platforms:

  • 🐧 linux: amd64, aarch64, armv7 (aarch64 and armv7 builds are manylinux_2_34 compatible. ubuntu>=22.04, debian>=12)
  • 🐧 musllinux: amd64, aarch64
  • 🪟 windows: amd64
  • 🍏 macos: amd64, aarch64.

Development

This project uses Taskfile for development workflows.

Setup

# Install dependencies
uv sync --extra dev

# Build Rust extension (required after any .rs changes)
uv run maturin develop

# Add hosts entry for e2e tests (one-time setup)
echo '127.0.0.1 httpbun.local' | sudo tee -a /etc/hosts

Running Tests

# List all available tasks
task --list

# Run unit tests only
task test:unit

# Run e2e tests (full workflow: start httpbun → test → stop)
task e2e

# Run e2e tests iteratively (keep httpbun running)
task e2e:local
task test:e2e  # run tests against running container

# Run all tests
task test

Other Tasks

task dev           # Build Rust extension
task check         # Run all checks (lint + test) - use before committing
task lint          # Run Python linters (ruff + mypy)
task lint:rust     # Run Rust linters (fmt + clippy)
task lint:all      # Run all linters (Python + Rust)
task fmt           # Format Python code with ruff
task fmt:rust      # Format Rust code
task fmt:all       # Format all code (Python + Rust)
task certs         # Generate SSL certificates for e2e tests
task httpbun:start # Start httpbun container
task httpbun:stop  # Stop httpbun container
task httpbun:logs  # Show container logs

Test Structure

  • tests/unit/ - Unit tests using pytest-httpbin (fast, no Docker required)
  • tests/e2e/ - E2E tests using httpbun Docker container with SSL

CI

Job PRs Push to main Tags (Release) Manual
lint
test (Python 3.10-3.14)
docs (build)
linux, musllinux, windows, macos, sdist
release (PyPI publish)
benchmark
  • PRs: Run lint, tests across Python 3.10-3.14 matrix, and verify docs build
  • Push to main: Run tests only
  • Tags: Run tests, build wheels, publish stable release to PyPI, run benchmarks
  • Manual: Full multi-platform wheel builds with release and benchmarks

Acknowledgements

  • uv: The package manager used, and for leading the way in the "Rust for python tools"-sphere.
  • primp: A lot of code is borrowed from primp, that wraps rust library rquest for python in a similar way. If primp supported mTLS, I would have used it instead.
  • reqwests: The rust library that powers httpr.
  • pyo3
  • maturin

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

httpr-0.4.3.tar.gz (567.4 kB view details)

Uploaded Source

Built Distributions

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

httpr-0.4.3-cp314-cp314t-win_amd64.whl (2.3 MB view details)

Uploaded CPython 3.14tWindows x86-64

httpr-0.4.3-cp314-cp314t-win32.whl (2.1 MB view details)

Uploaded CPython 3.14tWindows x86

httpr-0.4.3-cp314-cp314t-musllinux_1_2_x86_64.whl (2.9 MB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ x86-64

httpr-0.4.3-cp314-cp314t-musllinux_1_2_i686.whl (2.6 MB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ i686

httpr-0.4.3-cp314-cp314t-musllinux_1_2_aarch64.whl (2.7 MB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ ARM64

httpr-0.4.3-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.6 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.17+ x86-64

httpr-0.4.3-cp314-cp314t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (2.4 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.17+ ARMv7l

httpr-0.4.3-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.5 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.17+ ARM64

httpr-0.4.3-cp314-cp314t-manylinux_2_12_i686.manylinux2010_i686.whl (2.5 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.12+ i686

httpr-0.4.3-cp314-cp314t-macosx_11_0_arm64.whl (2.3 MB view details)

Uploaded CPython 3.14tmacOS 11.0+ ARM64

httpr-0.4.3-cp314-cp314t-macosx_10_12_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.14tmacOS 10.12+ x86-64

httpr-0.4.3-cp313-cp313t-win_amd64.whl (2.3 MB view details)

Uploaded CPython 3.13tWindows x86-64

httpr-0.4.3-cp313-cp313t-win32.whl (2.1 MB view details)

Uploaded CPython 3.13tWindows x86

httpr-0.4.3-cp313-cp313t-musllinux_1_2_x86_64.whl (2.9 MB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ x86-64

httpr-0.4.3-cp313-cp313t-musllinux_1_2_i686.whl (2.6 MB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ i686

httpr-0.4.3-cp313-cp313t-musllinux_1_2_aarch64.whl (2.7 MB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ ARM64

httpr-0.4.3-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.6 MB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ x86-64

httpr-0.4.3-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (2.4 MB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ ARMv7l

httpr-0.4.3-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.5 MB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ ARM64

httpr-0.4.3-cp313-cp313t-manylinux_2_12_i686.manylinux2010_i686.whl (2.5 MB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.12+ i686

httpr-0.4.3-cp313-cp313t-macosx_11_0_arm64.whl (2.3 MB view details)

Uploaded CPython 3.13tmacOS 11.0+ ARM64

httpr-0.4.3-cp313-cp313t-macosx_10_12_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.13tmacOS 10.12+ x86-64

httpr-0.4.3-cp39-abi3-win_amd64.whl (2.3 MB view details)

Uploaded CPython 3.9+Windows x86-64

httpr-0.4.3-cp39-abi3-win32.whl (2.1 MB view details)

Uploaded CPython 3.9+Windows x86

httpr-0.4.3-cp39-abi3-musllinux_1_2_x86_64.whl (2.9 MB view details)

Uploaded CPython 3.9+musllinux: musl 1.2+ x86-64

httpr-0.4.3-cp39-abi3-musllinux_1_2_i686.whl (2.6 MB view details)

Uploaded CPython 3.9+musllinux: musl 1.2+ i686

httpr-0.4.3-cp39-abi3-musllinux_1_2_aarch64.whl (2.7 MB view details)

Uploaded CPython 3.9+musllinux: musl 1.2+ ARM64

httpr-0.4.3-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.6 MB view details)

Uploaded CPython 3.9+manylinux: glibc 2.17+ x86-64

httpr-0.4.3-cp39-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (2.4 MB view details)

Uploaded CPython 3.9+manylinux: glibc 2.17+ ARMv7l

httpr-0.4.3-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.5 MB view details)

Uploaded CPython 3.9+manylinux: glibc 2.17+ ARM64

httpr-0.4.3-cp39-abi3-manylinux_2_12_i686.manylinux2010_i686.whl (2.5 MB view details)

Uploaded CPython 3.9+manylinux: glibc 2.12+ i686

httpr-0.4.3-cp39-abi3-macosx_11_0_arm64.whl (2.3 MB view details)

Uploaded CPython 3.9+macOS 11.0+ ARM64

httpr-0.4.3-cp39-abi3-macosx_10_12_x86_64.whl (2.5 MB view details)

Uploaded CPython 3.9+macOS 10.12+ x86-64

File details

Details for the file httpr-0.4.3.tar.gz.

File metadata

  • Download URL: httpr-0.4.3.tar.gz
  • Upload date:
  • Size: 567.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.13.1

File hashes

Hashes for httpr-0.4.3.tar.gz
Algorithm Hash digest
SHA256 9359893cebfc653d91f445485a9857ff719479c6926b884e8cd9f0bab042abfc
MD5 301d98f0c4ffc366a48d1da05f9787c0
BLAKE2b-256 04dffc6d837b2eddae658e68e41efb4dbeecbe802eec423254952a26be0f6062

See more details on using hashes here.

File details

Details for the file httpr-0.4.3-cp314-cp314t-win_amd64.whl.

File metadata

  • Download URL: httpr-0.4.3-cp314-cp314t-win_amd64.whl
  • Upload date:
  • Size: 2.3 MB
  • Tags: CPython 3.14t, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.13.1

File hashes

Hashes for httpr-0.4.3-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 891053d45a3f1930abae276f5c8a229bb3613fa073dcab76ea17ece41cae0ef1
MD5 3954ac9fdada542a7ee6e684b71f6c4c
BLAKE2b-256 638a4713ef5a8b2da6b01bc3c9c4b073d548bb0e55f81b8a02221a5cb8c37eac

See more details on using hashes here.

File details

Details for the file httpr-0.4.3-cp314-cp314t-win32.whl.

File metadata

  • Download URL: httpr-0.4.3-cp314-cp314t-win32.whl
  • Upload date:
  • Size: 2.1 MB
  • Tags: CPython 3.14t, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.13.1

File hashes

Hashes for httpr-0.4.3-cp314-cp314t-win32.whl
Algorithm Hash digest
SHA256 d1d8a6ae20ba59cf90396e4dc5c1b032ab6b545530ff27b4ffa954971adafc6e
MD5 8eb85ab89a5daeaf1d8f8aa85319ea46
BLAKE2b-256 8f428c753949c6aba4d1fd0f95d16ce79bdea6fca0c209ceb8ae3c6d27161659

See more details on using hashes here.

File details

Details for the file httpr-0.4.3-cp314-cp314t-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for httpr-0.4.3-cp314-cp314t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 35fa989e36b40dd577f8777daef370a0fbea7e42a593ab8b24e33486a695f88b
MD5 583e3b0f7acceb9f99da46fae9d16c34
BLAKE2b-256 50ec2947590b94088505b4b3430dc900c27caa622f8c0dc7208cb88f9e8bb4fc

See more details on using hashes here.

File details

Details for the file httpr-0.4.3-cp314-cp314t-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for httpr-0.4.3-cp314-cp314t-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 b8df9cdbd76908784a958da4384c603a304397188295e6d2e6acacdb14e11691
MD5 798cc1a2e5077f2bd28919d9c58e1691
BLAKE2b-256 d423c681648d7e8e9c0b3972e2f249b235b907d273a4e7d99a176579f2bd7f4c

See more details on using hashes here.

File details

Details for the file httpr-0.4.3-cp314-cp314t-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for httpr-0.4.3-cp314-cp314t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 41b0af9a7867c133c7c031fbfbcc0f9bfb24eeeb81f453f7192ed94d354add0b
MD5 3dec3ef33b4ea9b5e7eb72bc59d50766
BLAKE2b-256 087a671fd0b30d347a6c16b5a404c3fb729b7f22eb9402bd3d9f562dbb57db1f

See more details on using hashes here.

File details

Details for the file httpr-0.4.3-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for httpr-0.4.3-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ba61695a606b907ca007a8fb0c78021e226806d01ec9597bff75674674159d6f
MD5 ae8c6d5a0fe1c35d08a890fd2f9670a3
BLAKE2b-256 80a090aac5cc14ce2332451d293dd4eadb5ba3eb7721e7e4c64164975d0b0f88

See more details on using hashes here.

File details

Details for the file httpr-0.4.3-cp314-cp314t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for httpr-0.4.3-cp314-cp314t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 08582387bedd309198eed600433756e544cef266bf5b696132288ac069e92f63
MD5 81a0e0bcd225d996f75c0c5da36365c6
BLAKE2b-256 3bad648ec19c7005f0610c574d08d891af783f4d418984cfcf54fcba11eec86f

See more details on using hashes here.

File details

Details for the file httpr-0.4.3-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for httpr-0.4.3-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 74ad67e1c49c85dc127b49604d54ec6eb7b0999faa947ae67a058f61f7007b6f
MD5 8733683afb6ec3affffffe6180643d8c
BLAKE2b-256 169639f95179c3e7e5da270b54652c85db3aebba00f6909dcf31f60b22e97c30

See more details on using hashes here.

File details

Details for the file httpr-0.4.3-cp314-cp314t-manylinux_2_12_i686.manylinux2010_i686.whl.

File metadata

File hashes

Hashes for httpr-0.4.3-cp314-cp314t-manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 cdbf301af590366898b22f421cece86ee9997b693afd37937d396998f237eea7
MD5 eb5fb20b13cb2576a36a38313faddbe3
BLAKE2b-256 1ab75e61ccc07bd6ec398f613be4074cf2993840e6917b5da188078635571cbb

See more details on using hashes here.

File details

Details for the file httpr-0.4.3-cp314-cp314t-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for httpr-0.4.3-cp314-cp314t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7ae3b1fb461ea1e1d4cda93ce3784cf08c3526ac982e8614104644c22cb86033
MD5 83ee94082d85bd5c176fcfd2763055f3
BLAKE2b-256 eb4eca6331b026b31351571e571642c1dd814ebf2e72bc4524bf652a649ce0c6

See more details on using hashes here.

File details

Details for the file httpr-0.4.3-cp314-cp314t-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for httpr-0.4.3-cp314-cp314t-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 0fb58b947be4c58be11feb35d12ea121c62656b62b801ea8b8244e519f4fc0d6
MD5 ecc408f406d40996b2819ea3fc08e747
BLAKE2b-256 8db2cadbd855884182529c930dc1f2d8f7f9d6d77febd333261c154e09f7070e

See more details on using hashes here.

File details

Details for the file httpr-0.4.3-cp313-cp313t-win_amd64.whl.

File metadata

  • Download URL: httpr-0.4.3-cp313-cp313t-win_amd64.whl
  • Upload date:
  • Size: 2.3 MB
  • Tags: CPython 3.13t, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.13.1

File hashes

Hashes for httpr-0.4.3-cp313-cp313t-win_amd64.whl
Algorithm Hash digest
SHA256 b81d8cb06b4ee64e942d055dc7ce511930eb139ea8ae52bbea362f54194f6e98
MD5 5fd5afa79a66414c8a47f189baefc8a4
BLAKE2b-256 5736a01a25eb816a7fc07b701e498447761bbbaa8f168f38419be66e23482a50

See more details on using hashes here.

File details

Details for the file httpr-0.4.3-cp313-cp313t-win32.whl.

File metadata

  • Download URL: httpr-0.4.3-cp313-cp313t-win32.whl
  • Upload date:
  • Size: 2.1 MB
  • Tags: CPython 3.13t, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.13.1

File hashes

Hashes for httpr-0.4.3-cp313-cp313t-win32.whl
Algorithm Hash digest
SHA256 ca952f7605eadeeb9e9b5dfa8d9180f660e6bfbd53c7066acd9662b718d237d4
MD5 ed6244ae391e6729b1f3f755ca65ce96
BLAKE2b-256 556f44996c9b33031cec06864a4d80a20d5bae3ddf02fb47d358ba4798cb0be4

See more details on using hashes here.

File details

Details for the file httpr-0.4.3-cp313-cp313t-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for httpr-0.4.3-cp313-cp313t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 e8b9e00a8d3e5448a6aa150db29d966385e13af141dfe5dc1b5faaaa50fce1e8
MD5 74c0c4ca3a7a53182993c61c4d295b9b
BLAKE2b-256 0c0c872b98d58a66ed119d31dc7251cd4f2c50d7eea41d26ac8e306bf5559569

See more details on using hashes here.

File details

Details for the file httpr-0.4.3-cp313-cp313t-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for httpr-0.4.3-cp313-cp313t-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 3d98af4cf860e5b49cc7cee9d7dca1ab38d92bc83693de2137f7012c4eaff6e2
MD5 56719d252e414680c1ae295a8f720658
BLAKE2b-256 039dcb82a5518ce030796554ab25540f09af1f1d6e645e64fd30d21904799bec

See more details on using hashes here.

File details

Details for the file httpr-0.4.3-cp313-cp313t-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for httpr-0.4.3-cp313-cp313t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 d9db289294e8a14a64ea2dee21bbd5895a977b0473e2642c83e7334d1511607a
MD5 ef7de4dc6f8acfe7bcb9cad514d19284
BLAKE2b-256 b61487bb15eb286e5dccb55c9c1168d32988a5e573a76796309fb2b83ea6c6a4

See more details on using hashes here.

File details

Details for the file httpr-0.4.3-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for httpr-0.4.3-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 853337328b51f1935db977d462043f78f6e440b0b4f307f4ea766e858608ee0c
MD5 3dd8de0d72a79e6e539481b49e7c56b0
BLAKE2b-256 b5bb9f20157dfb61ebde4bca373f9bc67316121dc810c7b4e81c2cd9aed4f3d7

See more details on using hashes here.

File details

Details for the file httpr-0.4.3-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for httpr-0.4.3-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 7ce3f78409a8415ac7e830b01f5338c57ae9a057116ad2e1b9c8c09f0a299bec
MD5 6307180aab34bc8f4ea9d6c9b955f68a
BLAKE2b-256 9bb4fb6477d7cbfa6261ce070a379d46e968f3c411b3bef7c0cf975ef71561a7

See more details on using hashes here.

File details

Details for the file httpr-0.4.3-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for httpr-0.4.3-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 6e2ab82d6400b26ce5203263bf03827f8e9c8dffd8e107997631d32305415a91
MD5 933616f0db96cff165c1639f95723dd0
BLAKE2b-256 24159969144aa76170fa4c7ec9cb5d71cfb4ba980de677254d13d46043b584f9

See more details on using hashes here.

File details

Details for the file httpr-0.4.3-cp313-cp313t-manylinux_2_12_i686.manylinux2010_i686.whl.

File metadata

File hashes

Hashes for httpr-0.4.3-cp313-cp313t-manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 4414d3fd616859cc693b4445111fa00f6472f07353c025333bc30073d006fb79
MD5 1c4a39ef8ff3694cbee81e6dfb91bc03
BLAKE2b-256 717a2941bf8207fb69be56d36ff5f7bd340bf02c3f0fb16dd7ab26507fab8a81

See more details on using hashes here.

File details

Details for the file httpr-0.4.3-cp313-cp313t-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for httpr-0.4.3-cp313-cp313t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1405b831421f7cdc24f9215f6d9d3d4723803c0fc07419ef070b6fb2da2049aa
MD5 605f1de792fc22d4de213025a42917e8
BLAKE2b-256 210203d314185e2232a43432a81c6c76fa638d5e3611177c2f2c73fc230cb567

See more details on using hashes here.

File details

Details for the file httpr-0.4.3-cp313-cp313t-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for httpr-0.4.3-cp313-cp313t-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 4b82341773f02d5794d26e94eac0c0dbfd532e2e751b8f36ab12732118e8e7e7
MD5 f559e131e756f00f5509db7d4dc5667d
BLAKE2b-256 d5483f126da655e0aadd4855ccd0c74f0e5979a95ba7ed4452677cf56930de95

See more details on using hashes here.

File details

Details for the file httpr-0.4.3-cp39-abi3-win_amd64.whl.

File metadata

  • Download URL: httpr-0.4.3-cp39-abi3-win_amd64.whl
  • Upload date:
  • Size: 2.3 MB
  • Tags: CPython 3.9+, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.13.1

File hashes

Hashes for httpr-0.4.3-cp39-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 fb333e47a874c0f5e3858c18ef6aa13457d56ccd1e12b20d407bbabfdc560385
MD5 985bc1145d11ade82f1ffd040241ac1f
BLAKE2b-256 910f202bd6ff59dd2e1f86a43da6feabd4e9f642c29f6daca45bb9e0c43facf8

See more details on using hashes here.

File details

Details for the file httpr-0.4.3-cp39-abi3-win32.whl.

File metadata

  • Download URL: httpr-0.4.3-cp39-abi3-win32.whl
  • Upload date:
  • Size: 2.1 MB
  • Tags: CPython 3.9+, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.13.1

File hashes

Hashes for httpr-0.4.3-cp39-abi3-win32.whl
Algorithm Hash digest
SHA256 d669f64a394f8d212251e783d86625c1878ad3e53b99e08998b2d36168faa760
MD5 b753ed5fe39c0edf4fd26941740e6779
BLAKE2b-256 8f424ccbcdb3d8a520491fc86271c55297f4372502977f7aabdf7537661bc8ae

See more details on using hashes here.

File details

Details for the file httpr-0.4.3-cp39-abi3-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for httpr-0.4.3-cp39-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 e188b8c761b5b73d2c6151db49766826a7e315a0f948d124b868b0fe813e6229
MD5 e33e08986028a90ce517b682c29aae51
BLAKE2b-256 bc0884a3a4ea49c6cc25e9cddf4f92da0a33e8a541f2ea440f66032dcf482a61

See more details on using hashes here.

File details

Details for the file httpr-0.4.3-cp39-abi3-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for httpr-0.4.3-cp39-abi3-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 1e1868058c5f8b789374ae4e4a9abb140973be08982a668e096354ebb915adec
MD5 cbbb7e7429bcf760340d1ba166181cd8
BLAKE2b-256 ccd3f36fb864a8173e8031b74851af51e0895b8ca26106f2d0ba8bd371c23019

See more details on using hashes here.

File details

Details for the file httpr-0.4.3-cp39-abi3-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for httpr-0.4.3-cp39-abi3-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 0b2b47e83f4173c5618826e724fc8f8c66ac24c87d0f64b9db4d5a2dd65fa975
MD5 3f609d62172fdef1011fc585841faa60
BLAKE2b-256 4a1510bbc06c4cc064b3dfdc51a02f78f67ad44b01698bc2aa6d58c89bcbb92b

See more details on using hashes here.

File details

Details for the file httpr-0.4.3-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for httpr-0.4.3-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 265f80418682f6b2e268217a320eefe5273899fe33c4dc7554fb65f5f5d58903
MD5 76ac657e06a793decc1a2e8801a5a816
BLAKE2b-256 fcf3bc68957727de783a40d56095b90d83cf8280a8314a9f1f3fd6499b4c9d7b

See more details on using hashes here.

File details

Details for the file httpr-0.4.3-cp39-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for httpr-0.4.3-cp39-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 61e85de7515e59da30789c94fa752421777304909aed30d561b70eb96dd8dbc1
MD5 0f08b57123563ec581000f44ae8ff67c
BLAKE2b-256 ac41a033f0f796b8bdda5f3e62428aa0bf0f8a2096132b9d4884b88762bb891c

See more details on using hashes here.

File details

Details for the file httpr-0.4.3-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for httpr-0.4.3-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 c915fdc78a614066e643f694d02e0c8a0226c7e535f29e39fbfd2189136f03f6
MD5 1298c7a4abb85407914279fae265c11e
BLAKE2b-256 921e33c4dde28ab94ecacd275104adecf7f4ee9efdbe3a4ede78482ef1cf55e9

See more details on using hashes here.

File details

Details for the file httpr-0.4.3-cp39-abi3-manylinux_2_12_i686.manylinux2010_i686.whl.

File metadata

File hashes

Hashes for httpr-0.4.3-cp39-abi3-manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 ce3921d1b0f569ea47ab406921b0d095e35e907ccb06656bfd31f9b5beeb1c99
MD5 9db9ccecbcdc60e6f4bcad0bfa8671a1
BLAKE2b-256 3ae39a6895ea5c5cd5cb58df66b221bef48f85c4edaf35d0086d70c1865c3029

See more details on using hashes here.

File details

Details for the file httpr-0.4.3-cp39-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for httpr-0.4.3-cp39-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d82405eaf5404a9c3c0338f3c25ffb5b50d5e3ee64d7e4b7eaa7be5faa1d6353
MD5 f8c6a58a9c658f9289d83fa2b27fb234
BLAKE2b-256 3a836e06afabc1e2f0b557b0f651a3e1ce22250c36e1e5e35c2293421c92857b

See more details on using hashes here.

File details

Details for the file httpr-0.4.3-cp39-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for httpr-0.4.3-cp39-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 1ed4ddf15ecd6a855370ec38fbf6df653b8eb6cd7360fe9c3b169c1268a27a4e
MD5 9c1e5d380a043707e1355372eb6084c7
BLAKE2b-256 9e64b2ea382092ebcbc556ebf60290aa69b388f77ce2e8af68c13c9e43ed07f8

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