Registry / http-networking / hyper-up

hyper-up

JSON →
library0.9.0pypypiunverified

hyper-up is a Python HTTP/2 client library, providing an API similar to Python's `http.client` for interacting with HTTP/2 servers. It is a fork of the `hyper` project by Lukasa, which has been explicitly abandoned since 2021. The `hyper-up` package itself has not seen updates since 2017, making it unmaintained and potentially insecure. Users are strongly advised to use modern, actively maintained HTTP clients instead.

pip install hyper-up
INSTALL
IMPORT
SIG · HYPER-UP
H
hyper-up
http-networkingpythonv0.9.0
Install
2.7s avg
Import
709ms
Disk
19MB
Pass rate
10/ 10
Env Coverage10 / 10
glibc
3.93.13
musl
3.93.13
Install & Compatibility
Where this runs
tested against v0.9.0 · pip install
no network on importno background threads
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
musl
py 3.103.910 runs
installs and imports cleanly · install 0.0s · import 0.394s · 21.3MB
glibc
py 3.103.910 runs
installs and imports cleanly · install 2.7s · import 0.457s · 22MB
19MB installed
● package 19MB
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

HTTPConnection
from hyper import HTTPConnection
Main class for making HTTP/2 requests. Note this is from the `hyper` namespace, not `hyper-up`.

Establishes an HTTP/2 connection to a server, sends a GET request, and prints the response. This example is based on the original `hyper` library's usage, which `hyper-up` replicates. Due to the library's unmaintained status, connecting to modern HTTPS servers might encounter SSL/TLS errors or security warnings.

import ssl from hyper import HTTPConnection # Note: http2bin.org is an example; actual HTTP/2 server availability may vary. # This library is unmaintained and may have security vulnerabilities. try: # Using HTTPS for HTTP/2. The default port for HTTP/2 over TLS is 443. conn = HTTPConnection('http2bin.org:443') conn.request('GET', '/get') resp = conn.get_response() print(f"Status: {resp.status}") print(f"Headers: {resp.headers}") print(f"Body: {resp.read().decode('utf-8')}") except ssl.SSLError as e: print(f"SSL Error: {e}. This often indicates issues with TLS negotiation or outdated cryptography.") except Exception as e: print(f"An unexpected error occurred: {e}")
Debug
Known issues
breakingThe upstream `hyper` project, which `hyper-up` is based on, has been explicitly abandoned since 2021, recommending alternatives. `hyper-up` itself has not been updated since 2017.
fix
Migrate to a modern, actively maintained HTTP client like `httpx` for HTTP/2 support, or `requests` (with `requests-toolbelt` for HTTP/2 if needed, though `httpx` is preferred for native HTTP/2).
affects: 0.9.0 and earlier
breakingUsing `hyper-up` poses significant security risks due to unpatched vulnerabilities in its core HTTP/2 implementation and underlying dependencies, especially regarding TLS/SSL.
fix
Immediately replace `hyper-up` with a secure and actively maintained HTTP client like `httpx` to protect against known and unknown security flaws.
affects: 0.9.0 and earlier
gotchaThe API of `hyper-up` (via `hyper` import) is designed to be similar to Python's `http.client`, which can be less ergonomic than modern `requests`-style APIs.
fix
Familiarize yourself with the `http.client` pattern or switch to a client like `httpx` which offers a more modern, 'requests-like' API alongside native HTTP/2 support.
affects: 0.9.0 and earlier
Upgrade
Version history
0.9.0latest on PyPI · released May 15, 2025
Audit
Dependencies
h2requiredCore HTTP/2 protocol implementation.
hpackrequiredHPACK compression for HTTP/2 headers.
hyperframerequiredHTTP/2 frame parsing and serialization.
pyOpenSSLrequiredSSL/TLS functionalities, often required for HTTP/2 over TLS (HTTPS).
service_identityrequiredService identity verification for TLS connections.
backports.ssl_match_hostnamerequiredBackport of ssl.match_hostname for older Python versions, though often pulled for compatibility.
Agent activity
3 hits · last 30 days
node
3
Resources
hyper-up — pip install hyper-up · libregistry