v2.32.0
2.32.0 (2024-05-20)
π PYCON US 2024 EDITION π
Security
- Fixed an issue where setting
verify=False
on the first request from a
Session will cause subsequent requests to the same origin to also ignore
cert verification, regardless of the value ofverify
.
(GHSA-9wx4-h78v-vm56)
Improvements
verify=True
now reuses a global SSLContext which should improve
request time variance between first and subsequent requests. It should
also minimize certificate load time on Windows systems when using a Python
version built with OpenSSL 3.x. (#6667)- Requests now supports optional use of character detection
(chardet
orcharset_normalizer
) when repackaged or vendored.
This enablespip
and other projects to minimize their vendoring
surface area. TheResponse.text()
andapparent_encoding
APIs
will default toutf-8
if neither library is present. (#6702)
Bugfixes
- Fixed bug in length detection where emoji length was incorrectly
calculated in the request content-length. (#6589) - Fixed deserialization bug in JSONDecodeError. (#6629)
- Fixed bug where an extra leading
/
(path separator) could lead
urllib3 to unnecessarily reparse the request URI. (#6644)
Deprecations
- Requests has officially added support for CPython 3.12 (#6503)
- Requests has officially added support for PyPy 3.9 and 3.10 (#6641)
- Requests has officially dropped support for CPython 3.7 (#6642)
- Requests has officially dropped support for PyPy 3.7 and 3.8 (#6641)
Documentation
- Various typo fixes and doc improvements.
Packaging
- Requests has started adopting some modern packaging practices.
The source files for the projects (formerlyrequests
) is now located
insrc/requests
in the Requests sdist. (#6506) - Starting in Requests 2.33.0, Requests will migrate to a PEP 517 build system
usinghatchling
. This should not impact the average user, but extremely old
versions of packaging utilities may have issues with the new packaging format.
New Contributors
- @matthewarmand made their first contribution in #6258
- @cpzt made their first contribution in #6456
- @ittner made their first contribution in #6214
- @ZetaTwo made their first contribution in #6465
- @joren485 made their first contribution in #6475
- @elprimato made their first contribution in #6266
- @dependabot made their first contribution in #6499
- @Ocupe made their first contribution in #6507
- @13steinj made their first contribution in #6508
- @jnhyperion made their first contribution in #6517
- @swims-hjkl made their first contribution in #6552
- @msea1 made their first contribution in #6574
- @EFord36 made their first contribution in #6581
- @MestreLion made their first contribution in #6600
- @atatuzuner61 made their first contribution in #6592
- @jaikishpai made their first contribution in #6605
- @miketheman made their first contribution in #6613
- @Tarty made their first contribution in #6629
- @bruceadams made their first contribution in #6589
- @amkarn258 made their first contribution in #6562
- @flysee made their first contribution in #6302
- @mbeijen made their first contribution in #6680
- @franekmagiera made their first contribution in #6700
- @agubelu made their first contribution in #6667
Full Changelog: https://github.com/psf/requests/blob/main/HISTORY.md#2320-2024-05-20