Build(deps): [security] bump requests from 2.31.0 to 2.32.0
Bumps requests from 2.31.0 to 2.32.0. This update includes a security fix.
Vulnerabilities fixed
Requests
Sessionobject does not verify requests after making first request with verify=False When making requests through a RequestsSession, if the first request is made withverify=Falseto disable cert verification, all subsequent requests to the same origin will continue to ignore cert verification regardless of changes to the value ofverify. This behavior will continue for the lifecycle of the connection in the connection pool.Remediation
Any of these options can be used to remediate the current issue, we highly recommend upgrading as the preferred mitigation.
- Upgrade to
requests>=2.32.0.- For
requests<2.32.0, avoid settingverify=Falsefor the first request to a host while using a Requests Session.- For
requests<2.32.0, callclose()onSessionobjects to clear existing connections ifverify=Falseis used.Related Links
Patched versions: 2.32.0 Affected versions: < 2.32.0
Release notes
Sourced from requests's releases.
v2.32.0
2.32.0 (2024-05-20)
🐍 PYCON US 2024 EDITION🐍 Security
- Fixed an issue where setting
verify=Falseon the first request from a Session will cause subsequent requests to the same origin to also ignore cert verification, regardless of the value ofverify. (https://github.com/psf/requests/security/advisories/GHSA-9wx4-h78v-vm56)Improvements
verify=Truenow 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 (
chardetorcharset_normalizer) when repackaged or vendored. This enablespipand other projects to minimize their vendoring surface area. TheResponse.text()andapparent_encodingAPIs will default toutf-8if 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 (formerly
requests) is now located insrc/requestsin the Requests sdist. (#6506)- Starting in Requests 2.33.0, Requests will migrate to a PEP 517 build system using
hatchling. This should not impact the average user, but extremely old versions of packaging utilities may have issues with the new packaging format.New Contributors
@matthewarmandmade their first contribution in psf/requests#6258@cpztmade their first contribution in psf/requests#6456
... (truncated)
Changelog
Sourced from requests's changelog.
2.32.0 (2024-05-20)
Security
- Fixed an issue where setting
verify=Falseon the first request from a Session will cause subsequent requests to the same origin to also ignore cert verification, regardless of the value ofverify. (https://github.com/psf/requests/security/advisories/GHSA-9wx4-h78v-vm56)Improvements
verify=Truenow 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 (
chardetorcharset_normalizer) when repackaged or vendored. This enablespipand other projects to minimize their vendoring surface area. TheResponse.text()andapparent_encodingAPIs will default toutf-8if 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 (formerly
requests) is now located insrc/requestsin the Requests sdist. (#6506)- Starting in Requests 2.33.0, Requests will migrate to a PEP 517 build system using
hatchling. This should not impact the average user, but extremely old versions of packaging utilities may have issues with the new packaging format.
Commits
-
d6ebc4av2.32.0 -
9a40d12Avoid reloading root certificates to improve concurrent performance (#6667) -
0c030f7Merge pull request #6702 from nateprewitt/no_char_detection -
555b870Allow character detection dependencies to be optional in post-packaging steps -
d6dded3Merge pull request #6700 from franekmagiera/update-redirect-to-invalid-uri-test -
bf24b7dUse an invalid URI that will not cause httpbin to throw 500 -
2d5f547Pin 3.8 and 3.9 runners back to macos-13 (#6688) -
f1bb07dMerge pull request #6687 from psf/dependabot/github_actions/github/codeql-act... -
60047adBump github/codeql-action from 3.24.0 to 3.25.0 -
31ebb81Merge pull request #6682 from frenzymadness/pytest8 - Additional commits viewable in compare view