// the find
kennethreitz/requests3
Requests 3.0, for Humans and Machines, alike. 🤖
An abandoned attempt to rewrite the requests library with async support, type annotations, and HTTP/2. The last commit was January 2020, six years ago, and the README itself warned it was a work in progress targeting 'before PyCon 2020' — which came and went. For anyone needing what this promised, httpx exists and is maintained.
The architecture separated sync and async transport layers cleanly, with distinct `_sync` and `_async` subpackages under `core/_http` — a structural decision that httpx later validated. Required timeouts as a default was a good call that requests-classic still doesn't enforce. Type annotations were added throughout the public API before that was standard practice. Bundling requests-toolbelt into the core was sensible since most serious users needed it anyway.
Dead project — zero commits since 2020, and the PyPI package it points to (`requests3`) was never actually published as this version. The internal http layer is a vendored fork of urllib3 with async bolted on, which httpx solved properly by using httpcore. Documentation links point to a domain that no longer serves these docs. Anyone looking at this repo for adoption guidance should just use httpx instead; there is no scenario where requests3 is the right choice today.