I'm the maintainer of Niquests. It is a drop-in replacement for the Python requests library that focuses on bringing modern HTTP features to the familiar API we all know.
I started this because requests is effectively feature-frozen, but I really missed having support for newer standards like HTTP/2 and HTTP/3 without switching to a completely different tool. Not only due to Requests current state but, as some of you may be aware, httpx is in a tough situation too, risking to take the same path forward as Requests did(...)
Some of the main differences from the original library:
Modern Protocols: It supports HTTP/2 and HTTP/3 over QUIC by default with a true multiplexing support.
Async Support: You can use it synchronously just like requests, or asynchronously with await.
Security: It uses your system's OS truststore (no more bundled certs) and supports OCSP revocation checks and DNSSEC.
Performance: In our benchmarks, our multiplexing scheduler offer significant speed improvements over requests, httpx, and even aiohttp.
The goal is to let you upgrade your network stack just by changing your import to "import niquests as requests".
I'd love to hear your feedback or answer any questions about the implementation!
mesahm•1h ago
I'm the maintainer of Niquests. It is a drop-in replacement for the Python requests library that focuses on bringing modern HTTP features to the familiar API we all know.
I started this because requests is effectively feature-frozen, but I really missed having support for newer standards like HTTP/2 and HTTP/3 without switching to a completely different tool. Not only due to Requests current state but, as some of you may be aware, httpx is in a tough situation too, risking to take the same path forward as Requests did(...)
Some of the main differences from the original library:
The goal is to let you upgrade your network stack just by changing your import to "import niquests as requests".I'd love to hear your feedback or answer any questions about the implementation!