pypi / geventhttpclient
geventhttpclient
What changed in geventhttpclient 2, from its official release notes, upgrade guides and advisories. Sources checked 2026-10-18.
9 breaking2 deprecations2 new APIs and options2 behavior and defaults5 fixes and other
See which of these apply to your code, ranked, in your agent:
npx @unstale/cli initgeventhttpclient 220 changes
Breaking changes 9
check_hostname now defaults to True.
The minimum required gevent version is now 25.9, the first release with wheels for Python 3.11–3.14.
Header field names and values are now str instead of bytes.
Headers.iget() has been removed.
Headers.iteroriginal() has been removed.
Multi-value headers now send one field line per element.
The oauth2 extra has been removed.
Redirect behavior was updated for HTTP conformance to RFC 9110, 3986, and 2965.
Retries after a transmission error are now limited to idempotent methods.
Deprecations 2
cert_file is deprecated in favour of a custom SSL context.
key_file is deprecated in favour of a custom SSL context.
New APIs and options 2
BasicAuth is now available as a first-class authentication feature.
An httpx-compatible drop-in surface is now available.
Behavior and default changes 2
Request-head validation was updated as part of HTTP conformance work.
The response surface is now requests-compatible.
Fixes and other changes 5
Python 3.15 is explicitly supported, with cp315 wheels built and shipped alongside wheels for Python 3.11–3.14.
Empty responses through the httplib shim are fixed.
Semicolon path parameters are preserved in requests and redirects.
Requests with body=None are now treated as having no body, avoiding chunked transfer and a keep-alive delay caused by a separate terminating write.
An explicitly requested chunked request with an empty body is sent with the request headers in a single sendall(), avoiding a Nagle stall.