requests v2.27.0 Release Notes
Release Date: 2022-01-03 // over 2 years ago-
๐ Improvements
๐ Officially added support for Python 3.10. (#5928)
โ Added a
requests.exceptions.JSONDecodeError
to unify JSON exceptions between Python 2 and 3. This gets raised in theresponse.json()
method, and is backwards compatible as it inherits from previously thrown exceptions. Can be caught fromrequests.exceptions.RequestException
as well. (#5856)๐ Improved error text for misnamed
InvalidSchema
andMissingSchema
exceptions. This is a temporary fix until exceptions can be renamed (Schema->Scheme). (#6017)๐ Improved proxy parsing for proxy URLs missing a scheme. This will address recent changes to
urlparse
in Python 3.9+. (#5917)
๐ Bugfixes
Fixed defect in
extract_zipped_paths
which could result in an infinite loop for some paths. (#5851)๐ Fixed handling for
AttributeError
when calculating length of files obtained byTarfile.extractfile()
. (#5239)๐ Fixed urllib3 exception leak, wrapping
urllib3.exceptions.InvalidHeader
withrequests.exceptions.InvalidHeader
. (#5914)๐ Fixed bug where two Host headers were sent for chunked requests. (#5391)
๐ Fixed regression in Requests 2.26.0 where
Proxy-Authorization
was incorrectly stripped from all requests sent withSession.send
. (#5924)๐ Fixed performance regression in 2.26.0 for hosts with a large number of proxies available in the environment. (#5924)
๐ Fixed idna exception leak, wrapping
UnicodeError
withrequests.exceptions.InvalidURL
for URLs with a leading dot (.) in the domain. (#5414)
๐ Deprecations
- ๐ Requests support for Python 2.7 and 3.6 will be ending in 2022. While we don't have exact dates, Requests 2.27.x is likely to be the last release series providing support.