build(deps): bump the pip group across 7 directories with 10 updates by dependabot[bot] · Pull Request #3645 · bazel-contrib/rules_python
Bumps the pip group with 5 updates in the /examples/build_file_generation directory:
| Package | From | To |
|---|---|---|
| flask | 2.2.2 |
3.1.3 |
| idna | 3.4 |
3.7 |
| requests | 2.31.0 |
2.32.4 |
| urllib3 | 2.0.7 |
2.6.3 |
| werkzeug | 2.2.2 |
3.1.6 |
Bumps the pip group with 4 updates in the /examples/bzlmod directory: idna, requests, urllib3 and wheel.
Bumps the pip group with 4 updates in the /examples/pip_parse directory: idna, requests, urllib3 and setuptools.
Bumps the pip group with 3 updates in the /examples/pip_parse_vendored directory: idna, requests and urllib3.
Bumps the pip group with 1 update in the /examples/wheel directory: pip.
Bumps the pip group with 6 updates in the /gazelle/examples/bzlmod_build_file_generation directory:
| Package | From | To |
|---|---|---|
| idna | 2.10 |
3.7 |
| requests | 2.25.1 |
2.32.4 |
| urllib3 | 1.26.13 |
2.6.3 |
| setuptools | 65.6.3 |
78.1.1 |
| django | 4.2.20 |
4.2.29 |
| sqlparse | 0.5.2 |
0.5.4 |
Bumps the pip group with 1 update in the /tests/multiple_inputs directory: urllib3.
Updates flask from 2.2.2 to 3.1.3
Release notes
Sourced from flask's releases.
3.1.3
This is the Flask 3.1.3 security fix release, which fixes a security issue but does not otherwise change behavior and should not result in breaking changes compared to the latest feature release.
PyPI: https://pypi.org/project/Flask/3.1.3/ Changes: https://flask.palletsprojects.com/page/changes/#version-3-1-3
- The session is marked as accessed for operations that only access the keys but not the values, such as
inandlen. GHSA-68rp-wp8r-47263.1.2
This is the Flask 3.1.2 fix release, which fixes bugs but does not otherwise change behavior and should not result in breaking changes compared to the latest feature release.
PyPI: https://pypi.org/project/Flask/3.1.2/ Changes: https://flask.palletsprojects.com/page/changes/#version-3-1-2 Milestone: https://github.com/pallets/flask/milestone/38?closed=1
stream_with_contextdoes not fail inside async views. #5774- When using
follow_redirectsin the test client, the final state ofsessionis correct. #5786- Relax type hint for passing bytes IO to
send_file. #57763.1.1
This is the Flask 3.1.1 fix release, which fixes bugs but does not otherwise change behavior and should not result in breaking changes compared to the latest feature release.
PyPI: https://pypi.org/project/Flask/3.1.1/ Changes: https://flask.palletsprojects.com/en/stable/changes/#version-3-1-1 Milestone https://github.com/pallets/flask/milestone/36?closed=1
- Fix signing key selection order when key rotation is enabled via
SECRET_KEY_FALLBACKS. GHSA-4grg-w6v8-c28g- Fix type hint for
cli_runner.invoke. #5645flask --helploads the app and plugins first to make sure all commands are shown. #5673- Mark sans-io base class as being able to handle views that return
AsyncIterable. This is not accurate for Flask, but makes typing easier for Quart. #56593.1.0
This is the Flask 3.1.0 feature release. A feature release may include new features, remove previously deprecated code, add new deprecations, or introduce potentially breaking changes. We encourage everyone to upgrade, and to use a tool such as pip-tools to pin all dependencies and control upgrades. Test with warnings treated as errors to be able to adapt to deprecation warnings early.
PyPI: https://pypi.org/project/Flask/3.1.0/ Changes: https://flask.palletsprojects.com/en/stable/changes/#version-3-1-0 Milestone: https://github.com/pallets/flask/milestone/33?closed=1
- Drop support for Python 3.8. #5623
- Update minimum dependency versions to latest feature releases. Werkzeug >= 3.1, ItsDangerous >= 2.2, Blinker >= 1.9. #5624, #5633
- Provide a configuration option to control automatic option responses. #5496
Flask.open_resource/open_instance_resourceandBlueprint.open_resourcetake anencodingparameter to use when opening in text mode. It defaults toutf-8. #5504Request.max_content_lengthcan be customized per-request instead of only through theMAX_CONTENT_LENGTHconfig. AddedMAX_FORM_MEMORY_SIZEandMAX_FORM_PARTSconfig. Added documentation about resource limits to the security page. #5625- Add support for the
Partitionedcookie attribute (CHIPS), with theSESSION_COOKIE_PARTITIONEDconfig. #5472-e pathtakes precedence over default.envand.flaskenvfiles.load_dotenvloads default files in addition to a path unlessload_defaults=Falseis passed. #5628- Support key rotation with the
SECRET_KEY_FALLBACKSconfig, a list of old secret keys that can still be used for unsigning. Extensions will need to add support. #5621- Fix how setting
host_matching=Trueorsubdomain_matching=Falseinteracts withSERVER_NAME. SettingSERVER_NAMEno longer restricts requests to only that domain. #5553Request.trusted_hostsis checked during routing, and can be set through theTRUSTED_HOSTSconfig. #56363.0.3
... (truncated)
Changelog
Sourced from flask's changelog.
Version 3.1.3
Released 2026-02-18
- The session is marked as accessed for operations that only access the keys but not the values, such as
inandlen. :ghsa:68rp-wp8r-4726Version 3.1.2
Released 2025-08-19
stream_with_contextdoes not fail inside async views. :issue:5774- When using
follow_redirectsin the test client, the final state ofsessionis correct. :issue:5786- Relax type hint for passing bytes IO to
send_file. :issue:5776Version 3.1.1
Released 2025-05-13
- Fix signing key selection order when key rotation is enabled via
SECRET_KEY_FALLBACKS. :ghsa:4grg-w6v8-c28g- Fix type hint for
cli_runner.invoke. :issue:5645flask --helploads the app and plugins first to make sure all commands are shown. :issue:5673- Mark sans-io base class as being able to handle views that return
AsyncIterable. This is not accurate for Flask, but makes typing easier for Quart. :pr:5659Version 3.1.0
Released 2024-11-13
- Drop support for Python 3.8. :pr:
5623- Update minimum dependency versions to latest feature releases. Werkzeug >= 3.1, ItsDangerous >= 2.2, Blinker >= 1.9. :pr:
5624,5633- Provide a configuration option to control automatic option responses. :pr:
5496Flask.open_resource/open_instance_resourceandBlueprint.open_resourcetake anencodingparameter to use when opening in text mode. It defaults toutf-8. :issue:5504Request.max_content_lengthcan be customized per-request instead of only through theMAX_CONTENT_LENGTHconfig. Added
... (truncated)
Commits
22d9247release version 3.1.3089cb86Merge commit from forkc17f379request context tracks session access27be933start version 3.1.34e652d3Abort if the instance folder cannot be created (#5903)3d03098Abort if the instance folder cannot be created407eb76document using gevent for async (#5900)ac5664ddocument using gevent for async4f79d5bIncrease required flit_core version to 3.11 (#5865)fe3b215Increase required flit_core version to 3.11- Additional commits viewable in compare view
Updates idna from 3.4 to 3.7
Release notes
Sourced from idna's releases.
v3.7
What's Changed
- Fix issue where specially crafted inputs to encode() could take exceptionally long amount of time to process. [CVE-2024-3651]
Thanks to Guido Vranken for reporting the issue.
Full Changelog: kjd/idna@v3.6...v3.7
Changelog
Sourced from idna's changelog.
3.7 (2024-04-11) ++++++++++++++++
- Fix issue where specially crafted inputs to encode() could take exceptionally long amount of time to process. [CVE-2024-3651]
Thanks to Guido Vranken for reporting the issue.
3.6 (2023-11-25) ++++++++++++++++
- Fix regression to include tests in source distribution.
3.5 (2023-11-24) ++++++++++++++++
- Update to Unicode 15.1.0
- String codec name is now "idna2008" as overriding the system codec "idna" was not working.
- Fix typing error for codec encoding
- "setup.cfg" has been added for this release due to some downstream lack of adherence to PEP 517. Should be removed in a future release so please prepare accordingly.
- Removed reliance on a symlink for the "idna-data" tool to comport with PEP 517 and the Python Packaging User Guide for sdist archives.
- Added security reporting protocol for project
Thanks Jon Ribbens, Diogo Teles Sant'Anna, Wu Tingfeng for contributions to this release.
Commits
1d365e1Release v3.7c1b3154Merge pull request #172 from kjd/optimize-contextj0394ec7Merge branch 'master' into optimize-contextjcd58a23Merge pull request #152 from elliotwutingfeng/dev5beb28bMore efficient resolution of joiner contexts1b12148Update ossf/scorecard-action to v2.3.1d516b87Update Github actions/checkout to v4c095c75Merge branch 'master' into dev60a0a4cFix typo in GitHub Actions workflow key5918a0eMerge branch 'master' into dev- Additional commits viewable in compare view
Updates requests from 2.31.0 to 2.32.4
Release notes
Sourced from requests's releases.
v2.32.4
2.32.4 (2025-06-10)
Security
- CVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted environment will retrieve credentials for the wrong hostname/machine from a netrc file. (#6965)
Improvements
- Numerous documentation improvements
Deprecations
- Added support for pypy 3.11 for Linux and macOS. (#6926)
- Dropped support for pypy 3.9 following its end of support. (#6926)
v2.32.3
2.32.3 (2024-05-29)
Bugfixes
- Fixed bug breaking the ability to specify custom SSLContexts in sub-classes of HTTPAdapter. (#6716)
- Fixed issue where Requests started failing to run on Python versions compiled without the
sslmodule. (#6724)v2.32.2
2.32.2 (2024-05-21)
Deprecations
To provide a more stable migration for custom HTTPAdapters impacted by the CVE changes in 2.32.0, we've renamed
_get_connectionto a new public API,get_connection_with_tls_context. Existing custom HTTPAdapters will need to migrate their code to use this new API.get_connectionis considered deprecated in all versions of Requests>=2.32.0.A minimal (2-line) example has been provided in the linked PR to ease migration, but we strongly urge users to evaluate if their custom adapter is subject to the same issue described in CVE-2024-35195. (#6710)
v2.32.1
2.32.1 (2024-05-20)
Bugfixes
- Add missing test certs to the sdist distributed on PyPI.
v2.32.0
2.32.0 (2024-05-20)
... (truncated)
Changelog
Sourced from requests's changelog.
2.32.4 (2025-06-10)
Security
- CVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted environment will retrieve credentials for the wrong hostname/machine from a netrc file.
Improvements
- Numerous documentation improvements
Deprecations
- Added support for pypy 3.11 for Linux and macOS.
- Dropped support for pypy 3.9 following its end of support.
2.32.3 (2024-05-29)
Bugfixes
- Fixed bug breaking the ability to specify custom SSLContexts in sub-classes of HTTPAdapter. (#6716)
- Fixed issue where Requests started failing to run on Python versions compiled without the
sslmodule. (#6724)2.32.2 (2024-05-21)
Deprecations
To provide a more stable migration for custom HTTPAdapters impacted by the CVE changes in 2.32.0, we've renamed
_get_connectionto a new public API,get_connection_with_tls_context. Existing custom HTTPAdapters will need to migrate their code to use this new API.get_connectionis considered deprecated in all versions of Requests>=2.32.0.A minimal (2-line) example has been provided in the linked PR to ease migration, but we strongly urge users to evaluate if their custom adapter is subject to the same issue described in CVE-2024-35195. (#6710)
2.32.1 (2024-05-20)
Bugfixes
- Add missing test certs to the sdist distributed on PyPI.
2.32.0 (2024-05-20)
Security
... (truncated)
Commits
021dc72Polish up release tooling for last manual release821770eBump version and add release notes for v2.32.459f8aa2Add netrc file search information to authentication documentation (#6876)5b4b64cAdd more tests to prevent regression of CVE 2024 470817bc4587Add new test to check netrc auth leak (#6962)96ba401Only use hostname to do netrc lookup instead of netloc7341690Merge pull request #6951 from tswast/patch-16716d7cremove linksa7e1c74Update docs/conf.pyc799b81docs: fix dead links to kenreitz.org- Additional commits viewable in compare view
Updates urllib3 from 2.0.7 to 2.6.3
Release notes
Sourced from urllib3's releases.
2.6.3
🚀 urllib3 is fundraising for HTTP/2 support
urllib3 is raising ~$40,000 USD to release HTTP/2 support and ensure long-term sustainable maintenance of the project after a sharp decline in financial support. If your company or organization uses Python and would benefit from HTTP/2 support in Requests, pip, cloud SDKs, and thousands of other projects please consider contributing financially to ensure HTTP/2 support is developed sustainably and maintained for the long-haul.
Thank you for your support.
Changes
- Fixed a security issue where decompression-bomb safeguards of the streaming API were bypassed when HTTP redirects were followed. (CVE-2026-21441 reported by
@D47A, 8.9 High, GHSA-38jv-5279-wg99)- Started treating
Retry-Aftertimes greater than 6 hours as 6 hours by default. (urllib3/urllib3#3743)- Fixed
urllib3.connection.VerifiedHTTPSConnectionon Emscripten. (urllib3/urllib3#3752)2.6.2
🚀 urllib3 is fundraising for HTTP/2 support
urllib3 is raising ~$40,000 USD to release HTTP/2 support and ensure long-term sustainable maintenance of the project after a sharp decline in financial support. If your company or organization uses Python and would benefit from HTTP/2 support in Requests, pip, cloud SDKs, and thousands of other projects please consider contributing financially to ensure HTTP/2 support is developed sustainably and maintained for the long-haul.
Thank you for your support.
Changes
- Fixed
HTTPResponse.read_chunked()to properly handle leftover data in the decoder's buffer when reading compressed chunked responses. (urllib3/urllib3#3734)2.6.1
🚀 urllib3 is fundraising for HTTP/2 support
urllib3 is raising ~$40,000 USD to release HTTP/2 support and ensure long-term sustainable maintenance of the project after a sharp decline in financial support. If your company or organization uses Python and would benefit from HTTP/2 support in Requests, pip, cloud SDKs, and thousands of other projects please consider contributing financially to ensure HTTP/2 support is developed sustainably and maintained for the long-haul.
Thank you for your support.
Changes
- Restore previously removed
HTTPResponse.getheaders()andHTTPResponse.getheader()methods. (#3731)2.6.0
🚀 urllib3 is fundraising for HTTP/2 support
urllib3 is raising ~$40,000 USD to release HTTP/2 support and ensure long-term sustainable maintenance of the project after a sharp decline in financial support. If your company or organization uses Python and would benefit from HTTP/2 support in Requests, pip, cloud SDKs, and thousands of other projects please consider contributing financially to ensure HTTP/2 support is developed sustainably and maintained for the long-haul.
Thank you for your support.
Security
- Fixed a security issue where streaming API could improperly handle highly compressed HTTP content ("decompression bombs") leading to excessive resource consumption even when a small amount of data was requested. Reading small chunks of compressed data is safer and much more efficient now. (CVE-2025-66471 reported by
@Cycloctane, 8.9 High, GHSA-2xpw-w6gg-jr37)- Fixed a security issue where an attacker could compose an HTTP response with virtually unlimited links in the
Content-Encodingheader, potentially leading to a denial of service (DoS) attack by exhausting system resources during decoding. The number of allowed chained encodings is now limited to 5. (CVE-2025-66418 reported by@illia-v, 8.9 High, GHSA-gm62-xv2j-4w53)[!IMPORTANT]
- If urllib3 is not installed with the optional
urllib3[brotli]extra, but your environment contains a Brotli/brotlicffi/brotlipy package anyway, make sure to upgrade it to at least Brotli 1.2.0 or brotlicffi 1.2.0.0 to benefit from the security fixes and avoid warnings. Prefer usingurllib3[brotli]to install a compatible Brotli package automatically.
... (truncated)
Changelog
Sourced from urllib3's changelog.
2.6.3 (2026-01-07)
- Fixed a high-severity security issue where decompression-bomb safeguards of the streaming API were bypassed when HTTP redirects were followed. (
GHSA-38jv-5279-wg99 <https://github.com/urllib3/urllib3/security/advisories/GHSA-38jv-5279-wg99>__)- Started treating
Retry-Aftertimes greater than 6 hours as 6 hours by default. ([#3743](https://github.com/urllib3/urllib3/issues/3743) <https://github.com/urllib3/urllib3/issues/3743>__)- Fixed
urllib3.connection.VerifiedHTTPSConnectionon Emscripten. ([#3752](https://github.com/urllib3/urllib3/issues/3752) <https://github.com/urllib3/urllib3/issues/3752>__)2.6.2 (2025-12-11)
- Fixed
HTTPResponse.read_chunked()to properly handle leftover data in the decoder's buffer when reading compressed chunked responses. ([#3734](https://github.com/urllib3/urllib3/issues/3734) <https://github.com/urllib3/urllib3/issues/3734>__)2.6.1 (2025-12-08)
- Restore previously removed
HTTPResponse.getheaders()andHTTPResponse.getheader()methods. ([#3731](https://github.com/urllib3/urllib3/issues/3731) <https://github.com/urllib3/urllib3/issues/3731>__)2.6.0 (2025-12-05)
Security
- Fixed a security issue where streaming API could improperly handle highly compressed HTTP content ("decompression bombs") leading to excessive resource consumption even when a small amount of data was requested. Reading small chunks of compressed data is safer and much more efficient now. (
GHSA-2xpw-w6gg-jr37 <https://github.com/urllib3/urllib3/security/advisories/GHSA-2xpw-w6gg-jr37>__)- Fixed a security issue where an attacker could compose an HTTP response with virtually unlimited links in the
Content-Encodingheader, potentially leading to a denial of service (DoS) attack by exhausting system resources during decoding. The number of allowed chained encodings is now limited to 5. (GHSA-gm62-xv2j-4w53 <https://github.com/urllib3/urllib3/security/advisories/GHSA-gm62-xv2j-4w53>__).. caution::
- If urllib3 is not installed with the optional
urllib3[brotli]extra, but your environment contains a Brotli/brotlicffi/brotlipy package anyway, make sure to upgrade it to at least Brotli 1.2.0 or brotlicffi 1.2.0.0 to benefit from the security fixes and avoid warnings. Prefer using
... (truncated)
Commits
0248277Release 2.6.38864ac4Merge commit from fork70cecb2Fix Scorecard issues related to vulnerable dev dependencies (#3755)41f249aMove "v2.0 Migration Guide" to the end of the table of contents (#3747)fd4dffdPatchVerifiedHTTPSConnectionfor Emscripten (#3752)13f0bfdHandle massive values in Retry-After when calculating time to sleep for (#3743)8c480bfBump actions/upload-artifact from 5.0.0 to 6.0.0 (#3748)4b40616Bump actions/cache from 4.3.0 to 5.0.1 (#3750)82b8479Bump actions/download-artifact from 6.0.0 to 7.0.0 (#3749)34284cbMention experimental features in the security policy (#3746)- Additional commits viewable in compare view
Updates werkzeug from 2.2.2 to 3.1.6
Release notes
Sourced from werkzeug's releases.
3.1.6
This is the Werkzeug 3.1.6 security fix release, which fixes a security issue but does not otherwise change behavior and should not result in breaking changes compared to the latest feature release.
PyPI: https://pypi.org/project/Werkzeug/3.1.6/ Changes: https://werkzeug.palletsprojects.com/page/changes/#version-3-1-6
safe_joinon Windows does not allow special devices names in multi-segment paths. GHSA-29vq-49wr-vm6x3.1.5
This is the Werkzeug 3.1.5 security fix release, which fixes security issues and bugs but does not otherwise change behavior and should not result in breaking changes compared to the latest feature release.
PyPI: https://pypi.org/project/Werkzeug/3.1.5/ Changes: https://werkzeug.palletsprojects.com/page/changes/#version-3-1-5 Milestone: https://github.com/pallets/werkzeug/milestone/43?closed=1
safe_joinon Windows does not allow more special device names, regardless of extension or surrounding spaces. GHSA-87hc-h4r5-73f7- The multipart form parser handles a
\r\nsequence at a chunk boundary. This fixes the previous attempt, which caused incorrect content lengths. #3065 #3077- Fix
AttributeErrorwhen initializingDebuggedApplicationwithpin_security=False. #30753.1.4
This is the Werkzeug 3.1.4 fix release, which fixes bugs but does not otherwise change behavior and should not result in breaking changes compared to the latest feature release.
PyPI: https://pypi.org/project/Werkzeug/3.1.4/ Changes: https://werkzeug.palletsprojects.com/page/changes/#version-3-1-4 Milestone: https://github.com/pallets/werkzeug/milestone/42?closed=1
safe_joinon Windows does not allow special device names. This prevents reading from these when usingsend_from_directory.secure_filenamealready prevented writing to these. ghsa-hgf8-39gv-g3f2- The debugger pin fails after 10 attempts instead of 11. #3020
- The multipart form parser handles a
\r\nsequence at a chunk boundary. #3065- Improve CPU usage during Watchdog reloader. #3054
Request.jsonannotation is more accurate. #3067- Traceback rendering handles when the line number is beyond the available source lines. #3044
HTTPException.get_responseannotation and doc better conveys the distinction between WSGI and sans-IO responses. #30563.1.3
This is the Werkzeug 3.1.3 fix release, which fixes bugs but does not otherwise change behavior and should not result in breaking changes vs 3.1.0.
PyPI: https://pypi.org/project/Werkzeug/3.1.3/ Changes: https://werkzeug.palletsprojects.com/en/stable/changes/#version-3-1-3 Milestone: https://github.com/pallets/werkzeug/milestone/41?closed=1
- Initial data passed to
MultiDictand similar interfaces only acceptslist,tuple, orsetwhen passing multiple values. It had been changed to accept anyCollection, but this matched types that should be treated as single values, such asbytes. #2994- When the
Hostheader is not set andRequest.hostfalls back to the WSGISERVER_NAMEvalue, if that value is an IPv6 address it is wrapped in[]to match theHostheader. #29933.1.2
This is the Werkzeug 3.1.2 fix release, which fixes bugs but does not otherwise change behavior and should not result in breaking changes vs 3.1.0.
PyPI: https://pypi.org/project/Werkzeug/3.1.2/ Changes: https://werkzeug.palletsprojects.com/en/stable/changes/#version-3-1-2
... (truncated)
Changelog
Sourced from werkzeug's changelog.
Version 3.1.6
Released 2026-02-19
safe_joinon Windows does not allow special devices names in multi-segment paths. :ghsa:29vq-49wr-vm6xVersion 3.1.5
Released 2026-01-08
safe_joinon Windows does not allow more special device names, regardless of extension or surrounding spaces. :ghsa:87hc-h4r5-73f7- The multipart form parser handles a
\r\nsequence at a chunk boundary. This fixes the previous attempt, which caused incorrect content lengths. :issue:3065:issue:3077- Fix
AttributeErrorwhen initializingDebuggedApplicationwithpin_security=False. :issue:3075Version 3.1.4
Released 2025-11-28
safe_joinon Windows does not allow special device names. This prevents reading from these when usingsend_from_directory.secure_filenamealready prevented writing to these. :ghsa:hgf8-39gv-g3f2- The debugger pin fails after 10 attempts instead of 11. :pr:
3020- The multipart form parser handles a
\r\nsequence at a chunk boundary. :issue:3065- Improve CPU usage during Watchdog reloader. :issue:
3054Request.jsonannotation is more accurate. :issue:3067- Traceback rendering handles when the line number is beyond the available source lines. :issue:
3044HTTPException.get_responseannotation and doc better conveys the distinction between WSGI and sans-IO responses. :issue:3056Version 3.1.3
Released 2024-11-08
- Initial data passed to
MultiDictand similar interfaces only acceptslist,tuple, orsetwhen passing multiple values. It had been changed to accept anyCollection, but this matched types that should be
... (truncated)
Commits
04da1b5release version 3.1.6f407712Merge commit from forkf54fe98safe_join prevents Windows special device names in multi-segment pathsd005985start version 3.1.68565c2cdocument rule priority (#3102)3febc7edocument rule priority2525b82remove state machine docs4abfbd5rewrite build docstring (#3097)161c18brewrite build docstring86e11c2release version 3.1.5 (#3085)- Additional commits viewable in compare view
Updates idna from 2.10 to 3.7
Release notes
Sourced from idna's releases.
v3.7
What's Changed
- Fix issue where specially crafted inputs to encode() could take exceptionally long amount of time to process. [CVE-2024-3651]
Thanks to Guido Vranken for reporting the issue.
Full Changelog: kjd/idna@v3.6...v3.7
Changelog
Sourced from idna's changelog.
3.7 (2024-04-11) ++++++++++++++++
- Fix issue where specially crafted inputs to encode() could take exceptionally long amount of time to process. [CVE-2024-3651]
Thanks to Guido Vranken for reporting the issue.
3.6 (2023-11-25) ++++++++++++++++
- Fix regression to include tests in source distribution.
3.5 (2023-11-24) ++++++++++++++++
- Update to Unicode 15.1.0
- String codec name is now "idna2008" as overriding the system codec "idna" was not working.
- Fix typing error for codec encoding
- "setup.cfg" has been added for this release due to some downstream lack of adherence to PEP 517. Should be removed in a future release so please prepare accordingly.
- Removed reliance on a symlink for the "idna-data" tool to comport with PEP 517 and the Python Packaging User Guide for sdist archives.
- Added security reporting protocol for project
Thanks Jon Ribbens, Diogo Teles Sant'Anna, Wu Tingfeng for contributions to this release.
Commits
1d365e1Release v3.7c1b3154Merge pull request #172 from kjd/optimize-contextj0394ec7Merge branch 'master' into optimize-contextjcd58a23Merge pull request #152 from elliotwutingfeng/dev5beb28bMore efficient resolution of joiner contexts1b12148Update ossf/scorecard-action to v2.3.1d516b87Update Github actions/checkout to v4c095c75Merge branch 'master' into dev60a0a4cFix typo in GitHub Actions workflow key5918a0eMerge branch 'master' into dev- Additional commits viewable in compare view
Updates requests from 2.25.1 to 2.32.4
Release notes
Sourced from requests's releases.
v2.32.4
2.32.4 (2025-06-10)
Security
- CVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted environment will retrieve credentials for the wrong hostname/machine from a netrc file. (#6965)
Improvements
- Numerous documentation improvements
Deprecations
- Added support for pypy 3.11 for Linux and macOS. (#6926)
- Dropped support for pypy 3.9 following its end of support. (#6926)
v2.32.3
2.32.3 (2024-05-29)
Bugfixes
- Fixed bug breaking the ability to specify custom SSLContexts in sub-classes of HTTPAdapter. (#6716)
- Fixed issue where Requests started failing to run on Python versions compiled without the
sslmodule. (#6724)v2.32.2
2.32.2 (2024-05-21)
Deprecations
To provide a more stable migration for custom HTTPAdapters impacted by the CVE changes in 2.32.0, we've renamed
_get_connectionto a new public API,get_connection_with_tls_context. Existing custom HTTPAdapters will need to migrate their code to use this new API.get_connectionis considered deprecated in all versions of Requests>=2.32.0.A minimal (2-line) example has been provided in the linked PR to ease migration, but we strongly urge users to evaluate if their custom adapter is subject to the same issue described in CVE-2024-35195. (#6710)
v2.32.1
2.32.1 (2024-05-20)
Bugfixes
- Add missing test certs to the sdist distributed on PyPI.
v2.32.0
2.32.0 (2024-05-20)
... (truncated)
Changelog
Sourced from requests's changelog.
2.32.4 (2025-06-10)
Security
- CVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted environment will retrieve credentials for the wrong hostname/machine from a netrc file.
Improvements
- Numerous documentation improvements
Deprecations
- Added support for pypy 3.11 for Linux and macOS.
- Dropped support for pypy 3.9 following its end of support.
2.32.3 (2024-05-29)
Bugfixes
- Fixed bug breaking the ability to specify custom SSLContexts in sub-classes of HTTPAdapter. (#6716)
- Fixed issue where Requests started failing to run on Python versions compiled without the
sslmodule. (#6724)2.32.2 (2024-05-21)
Deprecations
To provide a more stable migration for custom HTTPAdapters impacted by the CVE changes in 2.32.0, we've renamed
_get_connectionto a new public API,get_connection_with_tls_context. Existing custom HTTPAdapters will need to migrate their code to use this new API.get_connectionis considered deprecated in all versions of Requests>=2.32.0.A minimal (2-line) example has been provided in the linked PR to ease migration, but we strongly urge users to evaluate if their custom adapter is subject to the same issue described in CVE-2024-35195. (#6710)
2.32.1 (2024-05-20)
Bugfixes
- Add missing test certs to the sdist distributed on PyPI.
2.32.0 (2024-05-20)
Security
... (truncated)
Commits
021dc72Polish up release tooling for last manual release821770eBump version and add release notes for v2.32.459f8aa2Add netrc file search information to authentication documentation (#6876)5b4b64cAdd more tests to prevent regression of CVE 2024 470817bc4587Add new test to check netrc auth leak (#6962)96ba401Only use hostname to do netrc lookup instead of netloc7341690Merge pull request #6951 from tswast/patch-16716d7cremove linksa7e1c74Update docs/conf.pyc799b81docs: fix dead links to kenreitz.org- Additional commits viewable in compare view
Updates urllib3 from 1.26.18 to 2.6.3
Release notes
Sourced from urllib3's releases.
2.6.3
🚀 urllib3 is fundraising for HTTP/2 support
urllib3 is raising ~$40,000 USD to release HTTP/2 support and ensure long-term sustainable maintenance of the project after a sharp decline in financial support. If your company or organization uses Python and would benefit from HTTP/2 support in Requests, pip, cloud SDKs, and thousands of other projects please consider contributing financially to ensure HTTP/2 support is developed sustainably and maintained for the long-haul.
Thank you for your support.
Changes
- Fixed a security issue where decompression-bomb safeguards of the streaming API were bypassed when HTTP redirects were followed. (CVE-2026-21441 reported by
@D47A, 8.9 High, GHSA-38jv-5279-wg99)- Started treating
Retry-Aftertimes greater than 6 hours as 6 hours by default. (urllib3/urllib3#3743)- Fixed
urllib3.connection.VerifiedHTTPSConnectionon Emscripten. (urllib3/urllib3#3752)2.6.2
🚀 urllib3 is fundraising for HTTP/2 support
urllib3 is raising ~$40,000 USD to release HTTP/2 support and ensure long-term sustainable maintenance of the project after a sharp decline in financial support. If your company or organization uses Python and would benefit from HTTP/2 support in Requests, pip, cloud SDKs, and thousands of other projects please consider contributing financially to ensure HTTP/2 support is developed sustainably and maintained for the long-haul.
Thank you for your support.
Changes
- Fixed
HTTPResponse.read_chunked()to properly handle leftover data in the decoder's buffer when reading compressed chunked responses. (urllib3/urllib3#3734)2.6.1
🚀 urllib3 is fundraising for HTTP/2 support
urllib3 is raising ~$40,000 USD to release HTTP/2 support and ensure long-term sustainable maintenance of the project after a sharp decline in financial support. If your company or organization uses Python and would benefit from HTTP/2 support in Requests, pip, cloud SDKs, and thousands of other projects please consider contributing financially to ensure HTTP/2 support is developed sustainably and maintained for the long-haul.
Thank you for your support.
Changes
- Restore previously removed
HTTPResponse.getheaders()andHTTPResponse.getheader()methods. (#3731)2.6.0
🚀 urllib3 is fundraising for HTTP/2 support
urllib3 is raising ~$40,000 USD to release HTTP/2 support and ensure long-term sustainable maintenance of the project after a sharp decline in financial support. If your company or organization uses Python and would benefit from HTTP/2 support in Requests, pip, cloud SDKs, and thousands of other projects please consider contributing financially to ensure HTTP/2 support is developed sustainably and maintained for the long-haul.
Thank you for your support.
Security
- Fixed a security issue where streaming API could improperly handle highly compressed HTTP content ("decompression bombs") leading to excessive resource consumption even when a small amount of data was requested. Reading small chunks of compressed data is safer and much more efficient now. (CVE-2025-66471 reported by
@Cycloctane, 8.9 High, GHSA-2xpw-w6gg-jr37)- Fixed a security issue where an attacker could compose an HTTP response with virtually unlimited links in the
Content-Encodingheader, potentially leading to a denial of service (DoS) attack by exhausting system resources during decoding. The number of allowed chained encodings is now limited to 5. (CVE-2025-66418 reported by@illia-v, 8.9 High, GHSA-gm62-xv2j-4w53)[!IMPORTANT]
- If urllib3 is not installed with the optional
urllib3[brotli]extra, but your environment contains a Brotli/brotlicffi/brotlipy package anyway, make sure to upgrade it to at least Brotli 1.2.0 or brotlicffi 1.2.0.0 to benefit from the security fixes and avoid warnings. Prefer usingurllib3[brotli]to install a compatible Brotli package automatically.
... (truncated)
Changelog
Sourced from urllib3's changelog.
2.6.3 (2026-01-07)
- Fixed a high-severity security issue where decompression-bomb safeguards of the streaming API were bypassed when HTTP redirects were followed. (
GHSA-38jv-5279-wg99 <https://github.com/urllib3/urllib3/security/advisories/GHSA-38jv-5279-wg99>__)- Started treating
Retry-Aftertimes greater than 6 hours as 6 hours by default. ([#3743](https://github.com/urllib3/urllib3/issues/3743) <https://github.com/urllib3/urllib3/issues/3743>__)- Fixed
urllib3.connection.VerifiedHTTPSConnectionon Emscripten. ([#3752](https://github.com/urllib3/urllib3/issues/3752) <https://github.com/urllib3/urllib3/issues/3752>__)2.6.2 (2025-12-11)
- Fixed
HTTPResponse.read_chunked()to properly handle leftover data in the decoder's buffer when reading compressed chunked responses. ([#3734](https://github.com/urllib3/urllib3/issues/3734) <https://github.com/urllib3/urllib3/issues/3734>__)2.6.1 (2025-12-08)
- Restore previously removed
HTTPResponse.getheaders()andHTTPResponse.getheader()methods. ([#3731](https://github.com/urllib3/urllib3/issues/3731) <https://github.com/urllib3/urllib3/issues/3731>__)2.6.0 (2025-12-05)
Security
- Fixed a security issue where streaming API could improperly handle highly compressed HTTP content ("decompression bombs") leading to excessive resource consumption even when a small amount of data was requested. Reading small chunks of compressed data is safer and much more efficient now. (
GHSA-2xpw-w6gg-jr37 <https://github.com/urllib3/urllib3/security/advisories/GHSA-2xpw-w6gg-jr37>__)- Fixed a security issue where an attacker could compose an HTTP response with virtually unlimited links in the
Content-Encodingheader, potentially leading to a denial of service (DoS) attack by exhausting system resources during decoding. The number of allowed chained encodings is now limited to 5. (GHSA-gm62-xv2j-4w53 <https://github.com/urllib3/urllib3/security/advisories/GHSA-gm62-xv2j-4w53>__).. caution::
- If urllib3 is not installed with the optional
urllib3[brotli]extra, but your environment contains a Brotli/brotlicffi/brotlipy package anyway, make sure to upgrade it to at least Brotli 1.2.0 or brotlicffi 1.2.0.0 to benefit from the security fixes and avoid warnings. Prefer using
... (truncated)
Commits
0248277Release 2.6.38864ac4Merge commit from fork70cecb2Fix Scorecard issues related to vulnerable dev dependencies (#3755)41f249aMove "v2.0 Migration Guide" to the end of the table of contents (#3747)fd4dffdPatchVerifiedHTTPSConnectionfor Emscripten (#3752)13f0bfdHandle massive values in Retry-After when calculating time to sleep for (#3743)8c480bfBump actions/upload-artifact from 5.0.0 to 6.0.0 (#3748)