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.2.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.2-cp314-cp314t-win_amd64.whl (2.3 MB view details)

Uploaded CPython 3.14tWindows x86-64

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

Uploaded CPython 3.14tWindows x86

httpr-0.4.2-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.2-cp314-cp314t-musllinux_1_2_i686.whl (2.6 MB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ i686

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

Uploaded CPython 3.14tmusllinux: musl 1.2+ ARM64

httpr-0.4.2-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.2-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.2-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.2-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.2-cp314-cp314t-macosx_11_0_arm64.whl (2.3 MB view details)

Uploaded CPython 3.14tmacOS 11.0+ ARM64

httpr-0.4.2-cp314-cp314t-macosx_10_12_x86_64.whl (2.5 MB view details)

Uploaded CPython 3.14tmacOS 10.12+ x86-64

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

Uploaded CPython 3.13tWindows x86-64

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

Uploaded CPython 3.13tWindows x86

httpr-0.4.2-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.2-cp313-cp313t-musllinux_1_2_i686.whl (2.6 MB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ i686

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

Uploaded CPython 3.13tmusllinux: musl 1.2+ ARM64

httpr-0.4.2-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.2-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.2-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.2-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.2-cp313-cp313t-macosx_11_0_arm64.whl (2.3 MB view details)

Uploaded CPython 3.13tmacOS 11.0+ ARM64

httpr-0.4.2-cp313-cp313t-macosx_10_12_x86_64.whl (2.5 MB view details)

Uploaded CPython 3.13tmacOS 10.12+ x86-64

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

Uploaded CPython 3.9+Windows x86-64

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

Uploaded CPython 3.9+Windows x86

httpr-0.4.2-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.2-cp39-abi3-musllinux_1_2_i686.whl (2.7 MB view details)

Uploaded CPython 3.9+musllinux: musl 1.2+ i686

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

Uploaded CPython 3.9+musllinux: musl 1.2+ ARM64

httpr-0.4.2-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.2-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.2-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.2-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.2-cp39-abi3-macosx_11_0_arm64.whl (2.3 MB view details)

Uploaded CPython 3.9+macOS 11.0+ ARM64

httpr-0.4.2-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.2.tar.gz.

File metadata

  • Download URL: httpr-0.4.2.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.2.tar.gz
Algorithm Hash digest
SHA256 226985d79bcdfa642439d7b1863fe4e77672b0fe21016c709e9bfa0669045e41
MD5 deaef7864e71fcd41b30da380fe22cfb
BLAKE2b-256 33fb827e6efde9ff84ff9db0c71724f4a2adf93fae640b5b91ffc06b3180845f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: httpr-0.4.2-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.2-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 8072078aac6aa20c3ea78de6276470c437b1a3472f8cfbf0ccba7d76b961bffe
MD5 94e25fc8944f8c291b8beb016897dee2
BLAKE2b-256 84784a70d8684833650cf04071710fe8ea04b1baed1224190643fd74cc4f7fbd

See more details on using hashes here.

File details

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

File metadata

  • Download URL: httpr-0.4.2-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.2-cp314-cp314t-win32.whl
Algorithm Hash digest
SHA256 25528c7ba9dc1d04805473df0fd5ad29d1cd1843ea85c945154f066a4aad19b5
MD5 433a891abf77361ec130b882884c8e3a
BLAKE2b-256 88926e463efb1eeb508c8fe9a67ea639ebc0aef91dd4a9e9f50eebc48373d52e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpr-0.4.2-cp314-cp314t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 0412065f01b7ad6201412426e85ab51e40f83af9f456ee343a34e8ed6e18c857
MD5 e752a6418ed830902211d784ba73692a
BLAKE2b-256 b921fa5ba4a60d3240527de501c8f11f6b28d7215f838b6f71d50a4c8325bc67

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpr-0.4.2-cp314-cp314t-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 d53752d594001852d1c5d85e7cc035d76e6ba6df9a09a4476f37e59bcbea9663
MD5 d038343df804947cbc57049720bbcf32
BLAKE2b-256 863695fdf696c6fe13d12cafdbcfc1a0f31fb028fbd1efbb8774f6e0b7a5f28a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpr-0.4.2-cp314-cp314t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 cabb446aacb24f74686e79718c8f053d81d6f26342e42574fccd4565fe4ecfe0
MD5 2f7e81c5568eac7dd538d1774164e4a3
BLAKE2b-256 028f25f73fd00cd08b137dd637a43bf193688037413333b43920d1a2689f9e4e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpr-0.4.2-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 02c837d681ca7585db680315ab6077aece3550fc286fc4aa3bf75dffdbe16514
MD5 c2bbf03765753406bf086415078a2a5f
BLAKE2b-256 fa77100eca3372473b81eac7ec0796165461ff51006cd3aaa721cfbf92b46589

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpr-0.4.2-cp314-cp314t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 3b7accb9b0c9fb3aa6da5b743d4f9ed7c183044cede94ab46cf5cd759ba364e3
MD5 f0cb8c794b606b0579ffa6cf6da06abf
BLAKE2b-256 fb4fb17db9724227cf96b651c39fe5a29e3f1a4ccb3973e00958c4b396692e12

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpr-0.4.2-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 487a844a893e5d126e923a8ac8e640709d67dbdf332240d41138726d6b6d564f
MD5 362c34095e2ab04c55697e296c995322
BLAKE2b-256 345eb1fb238732fa37fafa5563abcfc93f9e8130650a7ea4f3d5c3731bc5a939

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpr-0.4.2-cp314-cp314t-manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 0980ce3102ef10a792b7c19fcd5a8c73f3e7d6668dfdda83a54eb01562ea0205
MD5 cbca094ae7a55ddf1346db03863d15fa
BLAKE2b-256 c831fd1f1744b0376b711d757232e00eafbdfd6c13a24bb39bc4b8e909799f5e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpr-0.4.2-cp314-cp314t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b8eb48b946d3c670f8bd18ba5fd1dbd6917c2ca6926c07bbc2f5c0f31854b31f
MD5 b17b9f2ca8e5c9e411478fb2003c8a6b
BLAKE2b-256 8e69e37af0c6e68f44f005242312f5a08150da1b0de6be694997ca75c318569a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpr-0.4.2-cp314-cp314t-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 4e5b97668a1bbb8de580cb774150b0be4e0d0f39353672d08c66cf7e798f12e7
MD5 0cb061e331928d29153b186a7bd8891e
BLAKE2b-256 8a45bd8360ca1c7046a6d1b4aa46658e4263ba718d0b8a1a36c5a08419d0eeda

See more details on using hashes here.

File details

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

File metadata

  • Download URL: httpr-0.4.2-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.2-cp313-cp313t-win_amd64.whl
Algorithm Hash digest
SHA256 1050ca0e7f15b9a95519b809241949fe50083006b7309f8df27d0c043e98ecbf
MD5 6440e65404fd46d357deaad2cbde2290
BLAKE2b-256 4ad22149baab9334dca8620f0381f6e638d1802ec255ab7f0ae48bd99867d6bf

See more details on using hashes here.

File details

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

File metadata

  • Download URL: httpr-0.4.2-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.2-cp313-cp313t-win32.whl
Algorithm Hash digest
SHA256 b0595e1e7d70040d0f3ec3315bdfd7d103b6a71b56d5d6129257b36bd8abed82
MD5 b88d9facae3f80daf423bafbe190dc7b
BLAKE2b-256 b8d289deb9736bc792aab4e8c59a7bda08ecf353c0c01dc6578a4efe0bac57ba

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpr-0.4.2-cp313-cp313t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 87ee3414de5d9481712ba36837f44916f600f7119aa9239b6f1374c8ce6aec5d
MD5 deb9ab6c938d40d9fc3b5611d405b61a
BLAKE2b-256 a62ccccb88be37ff89c4a3c0d82e59ccc1074a68ab234257fcbec0f5d30a48a6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpr-0.4.2-cp313-cp313t-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 801324da79d1f0aadbc24bf1846eee432b5ee088a20b07e56403d3098a6b1276
MD5 384bd0cab5750556685aecc95b5f1cfa
BLAKE2b-256 7eb922c413fc8566ec017808e7929ca30408546e61f5221b80059e4e3231e321

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpr-0.4.2-cp313-cp313t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 9e406e1167eab40958253c1bc0f8953a73638fc798cd37f281bd79367c113f0b
MD5 4d963b76ffe970c52cec8c14d9ea1cfa
BLAKE2b-256 6721ab4a8c6d8b76f610048cd4119e5637b3e9fb7d9c4f08f7e3ef835d928ebf

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpr-0.4.2-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 99f0af2b3bc535bfa34c161d0c3ec66bc0fa5207c027ae75b6d50eb0bf7d06b2
MD5 35f62a5df023af30141c956500a9385b
BLAKE2b-256 588bfdc61bc39cbf0b4694c2c1c205a23f45ab80164a8cf7c2c768da4e19f850

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpr-0.4.2-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 edb17ebdd6ce328cd327ecfc35658c8f4769f6d3d9f92d0d6bb9e4d31139bbe5
MD5 5988196aa316a595dbac95d88f744237
BLAKE2b-256 d2b11c7e4dd9d270ae9dcc14638706f6de3223ea20c92c8e51dcba46b41e2c21

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpr-0.4.2-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 102d4ec07277daea6fc834047f64ceb67e29d70026584998b4312b53d787e0c7
MD5 d694f2800c0df894c1bc3209908a791c
BLAKE2b-256 0a78be4022c1855998b3e4071f1a062f15a35d425c2b6f3a5787c7c863f3c0e8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpr-0.4.2-cp313-cp313t-manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 66da7b646fe03e8e8877b0d91d33362f7b594d8972336c19116fbfc4e92582bd
MD5 50749cfd327d5799aba6fbdc4dba95f8
BLAKE2b-256 763f3c0e7e3bd5c8915d4151eb9a80d48ed4444450046718b10235a9a8ac9f56

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpr-0.4.2-cp313-cp313t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5edaedd6f76fbadb83dba4929df965984d73df654ce8a774f3c50dc3755c3c80
MD5 87add7539fc87fe290cc168e9cfc28ef
BLAKE2b-256 85b774b412afce8cdf010c2b7b1f0e9abf834e4266ab410dc5d2886af0e2054c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpr-0.4.2-cp313-cp313t-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 e4d7cbe16005dc8cb819afa1c415d20fb1ab073263a977a8a692fdfc04ec4a84
MD5 3b60bdd07797c3ef408ca2f04a9687cd
BLAKE2b-256 e21763bdcb1bdb5dbc3ce3e0bd2d2c890ef78a2b7b0ae510aefeaec40e36ad7f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: httpr-0.4.2-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.2-cp39-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 0e8e84cddaa64c53d6f1a733e384cad80be6381fb7cc9fdd690d5ddb0759196f
MD5 2d895fe6dcdf6e2e61b2dc2274ec604c
BLAKE2b-256 c8752b3e0dc805cb28008249151085e13d3318fb39ab7201850e071924a8839f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: httpr-0.4.2-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.2-cp39-abi3-win32.whl
Algorithm Hash digest
SHA256 d69f172c2bc38c48d5088e1c2fefb52384d5f25e760ae7c41a063154101ee87e
MD5 c456eda5bc62e8f493381dea35df5326
BLAKE2b-256 8607148aae02b52d02db82688fa09bb0c60fc500ef92493971af25d69baf06e4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpr-0.4.2-cp39-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 a0e48043b5eb8c82ebcae99d01d089f303c79f40429b5f9155e140dbf1ff5e34
MD5 d60dc8821b1a06d2c2df9e3271a8e23c
BLAKE2b-256 e3df7f1cb009b81b3b0286716102f217358af1da7b41a531fd31ddf3f97da8a6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpr-0.4.2-cp39-abi3-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 1e8242161849fe63e7b8e8995e65ba3d884a2f44b1fd1cde317385fdde1cdeba
MD5 302b711dae4cfe9046a2ccd62fe419e9
BLAKE2b-256 8d1e077ed355b01d735d222ce6d73ff424fb2b176574d5dafeda16d09b6c7fb6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpr-0.4.2-cp39-abi3-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 58da83c1319fa7ff1e353691c95fa417972b66cccc7cdfeb92a4a6ccbbc57095
MD5 7ed61f42926078ca72acad9e93a6db5e
BLAKE2b-256 5523a15ba508c6abc9345e0694b0c4318c903da0be972d0cb4e8f7af23d12fc5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpr-0.4.2-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 34ce062bf887e33c851a0b4835aa4c885be594a29d6431295ebd2882a5ea3cec
MD5 807d0c3165d6ee70c37e9fd8ec95be32
BLAKE2b-256 c777c8e5162610b899c3c5085a47d69dd6859ef9a5e770491c51f8d773c3655c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpr-0.4.2-cp39-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 09ae876a86fb738a556bc2df62fe9a484b7d289d9171b56477bcc02f1d7ffdb9
MD5 3d22aacd4bcbddc3068da4804bde8e99
BLAKE2b-256 56712f4d177cfa883e92a01fa302b5be937545b1e07d0a51a5a7ccbb88df595d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpr-0.4.2-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 aa2121501ed46e41d7b5e0d3742679e1a6d54b2dca64044c145880dba71b7447
MD5 f011f872803e5ed1c969d155c1b88823
BLAKE2b-256 7f796d07c05460f377d5944fa26ae2e4762d6521395309e644318a347a69e8e6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpr-0.4.2-cp39-abi3-manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 171de649bf5c7ac657982a2f22bd48eee9b570e3f9c821105324f4ef71e82aaf
MD5 3188e1cb7e994fbcb215321872472b39
BLAKE2b-256 018fa09b5380d978d8f4da225ce4bbe72fe0cbf68bf75e26406d147f316930e3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpr-0.4.2-cp39-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1a60a07c90d7bf91ebc4c112325efd736037596f2b3fdd57c78d2de22df44949
MD5 483563e0eea6df2e3b43222219d52792
BLAKE2b-256 b15fb9b35c4cdca46d93bc32c3450ab761203d372ce849f558286df7a0cd496b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for httpr-0.4.2-cp39-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 f4ffa2389168422d644cd2058380d538dbcf23fd25341ec385e600930ea2f48a
MD5 7763641b03295db335e4b7145b922b1b
BLAKE2b-256 ae134ff57ddfab335ff53eab1f1accf14487338706e0b5ea9334f96c44f73503

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