Skip to content

Bump urllib3 from 1.25.6 to 2.6.3#6

Open
dependabot[bot] wants to merge 1 commit intomasterfrom
dependabot/pip/urllib3-2.6.3
Open

Bump urllib3 from 1.25.6 to 2.6.3#6
dependabot[bot] wants to merge 1 commit intomasterfrom
dependabot/pip/urllib3-2.6.3

Conversation

@dependabot
Copy link
Copy Markdown

@dependabot dependabot bot commented on behalf of github Mar 1, 2026

Bumps urllib3 from 1.25.6 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

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() and HTTPResponse.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-Encoding header, 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 using urllib3[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-After times 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.VerifiedHTTPSConnection on 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() and HTTPResponse.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-Encoding header, 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
  • 0248277 Release 2.6.3
  • 8864ac4 Merge commit from fork
  • 70cecb2 Fix Scorecard issues related to vulnerable dev dependencies (#3755)
  • 41f249a Move "v2.0 Migration Guide" to the end of the table of contents (#3747)
  • fd4dffd Patch VerifiedHTTPSConnection for Emscripten (#3752)
  • 13f0bfd Handle massive values in Retry-After when calculating time to sleep for (#3743)
  • 8c480bf Bump actions/upload-artifact from 5.0.0 to 6.0.0 (#3748)
  • 4b40616 Bump actions/cache from 4.3.0 to 5.0.1 (#3750)
  • 82b8479 Bump actions/download-artifact from 6.0.0 to 7.0.0 (#3749)
  • 34284cb Mention experimental features in the security policy (#3746)
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    You can disable automated security fix PRs for this repo from the Security Alerts page.

Bumps [urllib3](https://github.com/urllib3/urllib3) from 1.25.6 to 2.6.3.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](urllib3/urllib3@1.25.6...2.6.3)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-version: 2.6.3
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot added dependencies Pull requests that update a dependency file python Pull requests that update python code labels Mar 1, 2026
@socket-security
Copy link
Copy Markdown

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Updatedurllib3@​1.25.6 ⏵ 2.6.397 +1100 +61100100100

View full report

@socket-security
Copy link
Copy Markdown

Warning

Review the following alerts detected in dependencies.

According to your organization's Security Policy, it is recommended to resolve "Warn" alerts. Learn more about Socket for GitHub.

Action Severity Alert  (click "▶" to expand/collapse)
Warn Medium
System shell access: pypi urllib3

Location: Package overview

From: requirements.txtpypi/urllib3@2.6.3

ℹ Read more on: This package | This alert | What is shell access?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support@socket.dev.

Suggestion: Packages should avoid accessing the shell which can reduce portability, and make it easier for malicious shell access to be introduced.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore pypi/urllib3@2.6.3. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

Warn Low
Embedded URLs or IPs: pypi urllib3

URLs: https://opencollective.com/urllib3/updates/urllib3-is-fundraising-for-http-2-support, https://docs.python.org/3, https://github.com/urllib3/urllib3/issues/3020, https://github.com/urllib3/urllib3/issues/2168, https://urllib3.readthedocs.io/en/latest/advanced-usage.html, http://google.com/, https://github.com/WebAssembly/js-promise-integration/blob/main/proposals/js-promise-integration/Overview.md, https://github.com/koenvo/pyodide-http/issues/22, https://www.rfc-editor.org/rfc/rfc8259#section-8.1, https://www.pyopenssl.org, https://cryptography.io, https://github.com/kjd/idna, https://urllib3.readthedocs.io/en/latest/advanced-usage.html#socks-proxies, https://tools.ietf.org/html/rfc2388#section-4.4, https://html.spec.whatwg.org/multipage/, https://github.com/urllib3/urllib3/issues/3290, https://httpwg.org/specs/rfc9113.html#n-field-validity, https://google.com/, https://google.com/mail, https://yahoo.com/, https://github.com/urllib3/urllib3/issues/2920, https://httpbin.org/, https://twitter.com/, https://github.com/urllib3/urllib3/issues/2513#issuecomment-1152559900, https://github.com/urllib3/urllib3/issues/2192#issuecomment-821832963, https://foss.heptapod.net/pypy/pypy/-/issues/3539, http://tools.ietf.org/html/rfc6125#section-6.4.3, https://example.com/, http://hg.python.org/cpython/file/603b4d593758/Lib/socket.py#l535, https://google.com/mail/, http://google.com/mail/, http://example.com/, http://example.org, http://16.17.18.19, http://example.com, http://bugs.python.org/issue2550, http://msdn2.microsoft.com/en-us/library/ms740621, http://google.com, http://google.com:80/, http://google.com/abra/cadabra, http://google.com:42/, http://google.com:42/abracadabra, http://google.com/abracadabra, http://google.com:80/abracadabra, https://google.com:443/, https://google.com/abracadabra, https://google.com:443/abracadabra, http://yahoo.com/, http://google.com:42, https://google.net/, https://google.com:42, https://google.com, http://google.com:443, https://google.com:80, https://google.com:443, http://google.com:80, https://google.com/abra/cadabra, http://google.com./, https://google.com./, http://yahoo.com:80, https://github.com/urllib3/urllib3/issues/651, http://www.google.com/mail, https://www.google.com/, https://www.google.com/mail, http://yahoo.com, http://bing.com, http://example.com:8000/, http://other.example.com/, https://example.com:4333/, https://other.example.com/, HTTPS://EXAMPLE.COM/, HTTP://EXAMPLE.COM/, https://example.com, http://pypi.org/project/urllib3/, http://pypi.org:8080/project/urllib3/, https://anotherurl.com, https://www.example.com, http://www.testing.com/, http://google.com/mail, http://www.google.com, http://mail.google.com, http://google.com:8000/mail/, http://google.com:8000, https://google.com:8000, http://google.com/foo=http://bar:42/baz, http://google.com?foo=http://bar:42/baz, http://google.com#foo=http://bar:42/baz, http://173.194.35.7, http://173.194.35.7/test, http://173.194.35.7:80, http://173.194.35.7:80/test, HTTP://GOOGLE.COM/mail/, HTTP://GoOgLe.CoM:8000/mail/, HTTP://173.194.35.7, http://google.com:foo, http://google.com:-80, http://google.com:65536, HTTP://GOOGLE.COM/MAIL/, http://google.com/MAIL/, HTTPS://Example.Com/?Key=Value, https://example.com/?Key=Value, Https://Example.Com/#Fragment, https://example.com/#Fragment, http://google.com/p, http://google.com/p%5B%5D?parameter%5B%5D=%22hello%22#fragment%23, http://google.com/p%5B%5d?parameter%5b%5D=%22hello%22#fragment%23, http://google.com?foo, http://google.com:/, http://google.com?q=, http://google.com#, https://www.google.com:-80/, https://example.com:0000000000080, https://example.com:0, https://example.com:000000000000, http://google.com:80/mail, http://192.168.0.1/path, http://192.168.0.1:80/path, http://google.com#@evil.com/, http://127.0.0.1%0d%0aConnection%3a%20keep-alive, http://127.0.0.1:6379?, ftp://google.com, http://www.google.com/, https://github.com/urllib3/urllib3/issues/2513

Location: Package overview

From: requirements.txtpypi/urllib3@2.6.3

ℹ Read more on: This package | This alert | What are URL strings?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support@socket.dev.

Suggestion: Review all remote URLs to ensure they are intentional, pointing to trusted sources, and not being used for data exfiltration or loading untrusted code at runtime.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore pypi/urllib3@2.6.3. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

Warn Low
Environment variable access: pypi urllib3

Location: Package overview

From: requirements.txtpypi/urllib3@2.6.3

ℹ Read more on: This package | This alert | What is environment variable access?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support@socket.dev.

Suggestion: Packages should be clear about which environment variables they access, and care should be taken to ensure they only access environment variables they claim to.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore pypi/urllib3@2.6.3. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

Warn Low
Embedded URLs or IPs: pypi urllib3

URLs: https://github.com/urllib3/urllib3/issues/3020, https://github.com/urllib3/urllib3/issues/2168, https://urllib3.readthedocs.io/en/latest/advanced-usage.html, http://google.com/, https://github.com/WebAssembly/js-promise-integration/blob/main/proposals/js-promise-integration/Overview.md, https://github.com/koenvo/pyodide-http/issues/22, https://www.rfc-editor.org/rfc/rfc8259#section-8.1, https://www.pyopenssl.org, https://cryptography.io, https://github.com/kjd/idna, https://urllib3.readthedocs.io/en/latest/advanced-usage.html#socks-proxies, https://tools.ietf.org/html/rfc2388#section-4.4, https://html.spec.whatwg.org/multipage/, https://github.com/urllib3/urllib3/issues/3290, https://httpwg.org/specs/rfc9113.html#n-field-validity, https://google.com/, https://google.com/mail, https://yahoo.com/, https://github.com/urllib3/urllib3/issues/2920, https://httpbin.org/, https://twitter.com/, https://github.com/urllib3/urllib3/issues/2513#issuecomment-1152559900, https://github.com/urllib3/urllib3/issues/2192#issuecomment-821832963, https://foss.heptapod.net/pypy/pypy/-/issues/3539, http://tools.ietf.org/html/rfc6125#section-6.4.3, https://example.com/, http://hg.python.org/cpython/file/603b4d593758/Lib/socket.py#l535, https://google.com/mail/, http://google.com/mail/

Location: Package overview

From: requirements.txtpypi/urllib3@2.6.3

ℹ Read more on: This package | This alert | What are URL strings?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support@socket.dev.

Suggestion: Review all remote URLs to ensure they are intentional, pointing to trusted sources, and not being used for data exfiltration or loading untrusted code at runtime.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore pypi/urllib3@2.6.3. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

View full report

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file python Pull requests that update python code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants