René's URL Explorer Experiment


Title: Bump urllib3 from 2.5.0 to 2.6.0 in /src/04-asyncio/web_scraping/sync_scrape by dependabot[bot] · Pull Request #25 · talkpython/async-techniques-python-course · GitHub

Open Graph Title: Bump urllib3 from 2.5.0 to 2.6.0 in /src/04-asyncio/web_scraping/sync_scrape by dependabot[bot] · Pull Request #25 · talkpython/async-techniques-python-course

X Title: Bump urllib3 from 2.5.0 to 2.6.0 in /src/04-asyncio/web_scraping/sync_scrape by dependabot[bot] · Pull Request #25 · talkpython/async-techniques-python-course

Description: Bumps urllib3 from 2.5.0 to 2.6.0. Release notes Sourced from urllib3's releases. 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. If you use custom decompressors, please make sure to update them to respect the changed API of urllib3.response.ContentDecoder. Features Enabled retrieval, deletion, and membership testing in HTTPHeaderDict using bytes keys. (#3653) Added host and port information to string representations of HTTPConnection. (#3666) Added support for Python 3.14 free-threading builds explicitly. (#3696) Removals Removed the HTTPResponse.getheaders() method in favor of HTTPResponse.headers. Removed the HTTPResponse.getheader(name, default) method in favor of HTTPResponse.headers.get(name, default). (#3622) Bugfixes Fixed redirect handling in urllib3.PoolManager when an integer is passed for the retries parameter. (#3649) Fixed HTTPConnectionPool when used in Emscripten with no explicit port. (#3664) Fixed handling of SSLKEYLOGFILE with expandable variables. (#3700) Misc Changed the zstd extra to install backports.zstd instead of zstandard on Python 3.13 and before. (#3693) Improved the performance of content decoding by optimizing BytesQueueBuffer class. (#3710) Allowed building the urllib3 package with newer setuptools-scm v9.x. (#3652) Ensured successful urllib3 builds by setting Hatchling requirement to ≥ 1.27.0. (#3638) Changelog Sourced from urllib3's changelog. 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 __) 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 __) .. 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 urllib3[brotli] to install a compatible Brotli package automatically. If you use custom decompressors, please make sure to update them to respect the changed API of urllib3.response.ContentDecoder. Features Enabled retrieval, deletion, and membership testing in HTTPHeaderDict using bytes keys. ([#3653](https://github.com/urllib3/urllib3/issues/3653) __) Added host and port information to string representations of HTTPConnection. ([#3666](https://github.com/urllib3/urllib3/issues/3666) __) Added support for Python 3.14 free-threading builds explicitly. ([#3696](https://github.com/urllib3/urllib3/issues/3696) __) Removals Removed the HTTPResponse.getheaders() method in favor of HTTPResponse.headers. Removed the HTTPResponse.getheader(name, default) method in favor of HTTPResponse.headers.get(name, default). ([#3622](https://github.com/urllib3/urllib3/issues/3622) __) Bugfixes Fixed redirect handling in urllib3.PoolManager when an integer is passed for the retries parameter. ([#3649](https://github.com/urllib3/urllib3/issues/3649) __) Fixed HTTPConnectionPool when used in Emscripten with no explicit port. ([#3664](https://github.com/urllib3/urllib3/issues/3664) __) Fixed handling of SSLKEYLOGFILE with expandable variables. ([#3700](https://github.com/urllib3/urllib3/issues/3700) __) ... (truncated) Commits 720f484 Release 2.6.0 24d7b67 Merge commit from fork c19571d Merge commit from fork 816fcf0 Bump actions/setup-python from 6.0.0 to 6.1.0 (#3725) 18af0a1 Improve speed of BytesQueueBuffer.get() by using memoryview (#3711) 1f6abac Bump versions of pre-commit hooks (#3716) 1c8fbf7 Bump actions/checkout from 5.0.0 to 6.0.0 (#3722) 7784b9e Add Python 3.15 to CI (#3717) 0241c9e Updated docs to reflect change in optional zstd dependency from zstandard t... 7afcabb Expand environment variable of SSLKEYLOGFILE (#3705) Additional commits viewable in compare view 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 merge will merge this PR after your CI passes on it @dependabot squash and merge will squash and merge this PR after your CI passes on it @dependabot cancel merge will cancel a previously requested merge and block automerging @dependabot reopen will reopen this PR if it is closed @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually @dependabot show 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.

Open Graph Description: Bumps urllib3 from 2.5.0 to 2.6.0. Release notes Sourced from urllib3's releases. 2.6.0 🚀 urllib3 is fundraising for HTTP/2 support urllib3 is raising ~$40,000 USD to release HTTP/2 support a...

X Description: Bumps urllib3 from 2.5.0 to 2.6.0. Release notes Sourced from urllib3's releases. 2.6.0 🚀 urllib3 is fundraising for HTTP/2 support urllib3 is raising ~$40,000 USD to release HTTP/2 suppo...

Opengraph URL: https://github.com/talkpython/async-techniques-python-course/pull/25

X: @github

direct link

Domain: patch-diff.githubusercontent.com

route-pattern/:user_id/:repository/pull/:id/checks(.:format)
route-controllerpull_requests
route-actionchecks
fetch-noncev2:85e1f29d-b031-ea96-cf47-be689ab161ae
current-catalog-service-hash87dc3bc62d9b466312751bfd5f889726f4f1337bdff4e8be7da7c93d6c00a25a
request-idEA22:3BF852:1A37FB0:2249998:696D6EB8
html-safe-noncefd4d5ba81eba8ea0bd518f83c3511d65a169cb94bea6c3f87a763f011ec0976e
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJFQTIyOjNCRjg1MjoxQTM3RkIwOjIyNDk5OTg6Njk2RDZFQjgiLCJ2aXNpdG9yX2lkIjoiMzI4MTI4ODAwMTUzODA1OTk2MCIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9
visitor-hmac817d427c0cb7a2d9a9a16e25f80c459ce1b2bb9c7ff8fbb87009c36b1a44c38b
hovercard-subject-tagpull_request:3077058998
github-keyboard-shortcutsrepository,pull-request-list,pull-request-conversation,pull-request-files-changed,checks,copilot
google-site-verificationApib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I
octolytics-urlhttps://collector.github.com/github/collect
analytics-location///pull_requests/show/checks
fb:app_id1401488693436528
apple-itunes-appapp-id=1477376905, app-argument=https://github.com/talkpython/async-techniques-python-course/pull/25/checks
twitter:imagehttps://avatars.githubusercontent.com/in/29110?s=400&v=4
twitter:cardsummary_large_image
og:imagehttps://avatars.githubusercontent.com/in/29110?s=400&v=4
og:image:altBumps urllib3 from 2.5.0 to 2.6.0. Release notes Sourced from urllib3's releases. 2.6.0 🚀 urllib3 is fundraising for HTTP/2 support urllib3 is raising ~$40,000 USD to release HTTP/2 support a...
og:site_nameGitHub
og:typeobject
hostnamegithub.com
expected-hostnamegithub.com
None4922b452d03cd8dbce479d866a11bc25b59ef6ee2da23aa9b0ddefa6bd4d0064
turbo-cache-controlno-preview
go-importgithub.com/talkpython/async-techniques-python-course git https://github.com/talkpython/async-techniques-python-course.git
octolytics-dimension-user_id21958399
octolytics-dimension-user_logintalkpython
octolytics-dimension-repository_id145053438
octolytics-dimension-repository_nwotalkpython/async-techniques-python-course
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forkfalse
octolytics-dimension-repository_network_root_id145053438
octolytics-dimension-repository_network_root_nwotalkpython/async-techniques-python-course
turbo-body-classeslogged-out env-production page-responsive full-width full-width-p-0
disable-turbofalse
browser-stats-urlhttps://api.github.com/_private/browser/stats
browser-errors-urlhttps://api.github.com/_private/browser/errors
release7e5ae23c70136152637ceee8d6faceb35596ec46
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://patch-diff.githubusercontent.com/talkpython/async-techniques-python-course/pull/25/checks#start-of-content
https://patch-diff.githubusercontent.com/
Sign in https://patch-diff.githubusercontent.com/login?return_to=https%3A%2F%2Fgithub.com%2Ftalkpython%2Fasync-techniques-python-course%2Fpull%2F25%2Fchecks
GitHub CopilotWrite better code with AIhttps://github.com/features/copilot
GitHub SparkBuild and deploy intelligent appshttps://github.com/features/spark
GitHub ModelsManage and compare promptshttps://github.com/features/models
MCP RegistryNewIntegrate external toolshttps://github.com/mcp
ActionsAutomate any workflowhttps://github.com/features/actions
CodespacesInstant dev environmentshttps://github.com/features/codespaces
IssuesPlan and track workhttps://github.com/features/issues
Code ReviewManage code changeshttps://github.com/features/code-review
GitHub Advanced SecurityFind and fix vulnerabilitieshttps://github.com/security/advanced-security
Code securitySecure your code as you buildhttps://github.com/security/advanced-security/code-security
Secret protectionStop leaks before they starthttps://github.com/security/advanced-security/secret-protection
Why GitHubhttps://github.com/why-github
Documentationhttps://docs.github.com
Bloghttps://github.blog
Changeloghttps://github.blog/changelog
Marketplacehttps://github.com/marketplace
View all featureshttps://github.com/features
Enterpriseshttps://github.com/enterprise
Small and medium teamshttps://github.com/team
Startupshttps://github.com/enterprise/startups
Nonprofitshttps://github.com/solutions/industry/nonprofits
App Modernizationhttps://github.com/solutions/use-case/app-modernization
DevSecOpshttps://github.com/solutions/use-case/devsecops
DevOpshttps://github.com/solutions/use-case/devops
CI/CDhttps://github.com/solutions/use-case/ci-cd
View all use caseshttps://github.com/solutions/use-case
Healthcarehttps://github.com/solutions/industry/healthcare
Financial serviceshttps://github.com/solutions/industry/financial-services
Manufacturinghttps://github.com/solutions/industry/manufacturing
Governmenthttps://github.com/solutions/industry/government
View all industrieshttps://github.com/solutions/industry
View all solutionshttps://github.com/solutions
AIhttps://github.com/resources/articles?topic=ai
Software Developmenthttps://github.com/resources/articles?topic=software-development
DevOpshttps://github.com/resources/articles?topic=devops
Securityhttps://github.com/resources/articles?topic=security
View all topicshttps://github.com/resources/articles
Customer storieshttps://github.com/customer-stories
Events & webinarshttps://github.com/resources/events
Ebooks & reportshttps://github.com/resources/whitepapers
Business insightshttps://github.com/solutions/executive-insights
GitHub Skillshttps://skills.github.com
Documentationhttps://docs.github.com
Customer supporthttps://support.github.com
Community forumhttps://github.com/orgs/community/discussions
Trust centerhttps://github.com/trust-center
Partnershttps://github.com/partners
GitHub SponsorsFund open source developershttps://github.com/sponsors
Security Labhttps://securitylab.github.com
Maintainer Communityhttps://maintainers.github.com
Acceleratorhttps://github.com/accelerator
Archive Programhttps://archiveprogram.github.com
Topicshttps://github.com/topics
Trendinghttps://github.com/trending
Collectionshttps://github.com/collections
Enterprise platformAI-powered developer platformhttps://github.com/enterprise
GitHub Advanced SecurityEnterprise-grade security featureshttps://github.com/security/advanced-security
Copilot for BusinessEnterprise-grade AI featureshttps://github.com/features/copilot/copilot-business
Premium SupportEnterprise-grade 24/7 supporthttps://github.com/premium-support
Pricinghttps://github.com/pricing
Search syntax tipshttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
documentationhttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
Sign in https://patch-diff.githubusercontent.com/login?return_to=https%3A%2F%2Fgithub.com%2Ftalkpython%2Fasync-techniques-python-course%2Fpull%2F25%2Fchecks
Sign up https://patch-diff.githubusercontent.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E%2Fpull_requests%2Fshow%2Fchecks&source=header-repo&source_repo=talkpython%2Fasync-techniques-python-course
Reloadhttps://patch-diff.githubusercontent.com/talkpython/async-techniques-python-course/pull/25/checks
Reloadhttps://patch-diff.githubusercontent.com/talkpython/async-techniques-python-course/pull/25/checks
Reloadhttps://patch-diff.githubusercontent.com/talkpython/async-techniques-python-course/pull/25/checks
talkpython https://patch-diff.githubusercontent.com/talkpython
async-techniques-python-coursehttps://patch-diff.githubusercontent.com/talkpython/async-techniques-python-course
Notifications https://patch-diff.githubusercontent.com/login?return_to=%2Ftalkpython%2Fasync-techniques-python-course
Fork 254 https://patch-diff.githubusercontent.com/login?return_to=%2Ftalkpython%2Fasync-techniques-python-course
Star 475 https://patch-diff.githubusercontent.com/login?return_to=%2Ftalkpython%2Fasync-techniques-python-course
Code https://patch-diff.githubusercontent.com/talkpython/async-techniques-python-course
Issues 2 https://patch-diff.githubusercontent.com/talkpython/async-techniques-python-course/issues
Pull requests 10 https://patch-diff.githubusercontent.com/talkpython/async-techniques-python-course/pulls
Discussions https://patch-diff.githubusercontent.com/talkpython/async-techniques-python-course/discussions
Security Uh oh! There was an error while loading. Please reload this page. https://patch-diff.githubusercontent.com/talkpython/async-techniques-python-course/security
Please reload this pagehttps://patch-diff.githubusercontent.com/talkpython/async-techniques-python-course/pull/25/checks
Insights https://patch-diff.githubusercontent.com/talkpython/async-techniques-python-course/pulse
Code https://patch-diff.githubusercontent.com/talkpython/async-techniques-python-course
Issues https://patch-diff.githubusercontent.com/talkpython/async-techniques-python-course/issues
Pull requests https://patch-diff.githubusercontent.com/talkpython/async-techniques-python-course/pulls
Discussions https://patch-diff.githubusercontent.com/talkpython/async-techniques-python-course/discussions
Security https://patch-diff.githubusercontent.com/talkpython/async-techniques-python-course/security
Insights https://patch-diff.githubusercontent.com/talkpython/async-techniques-python-course/pulse
Sign up for GitHub https://patch-diff.githubusercontent.com/signup?return_to=%2Ftalkpython%2Fasync-techniques-python-course%2Fissues%2Fnew%2Fchoose
terms of servicehttps://docs.github.com/terms
privacy statementhttps://docs.github.com/privacy
Sign inhttps://patch-diff.githubusercontent.com/login?return_to=%2Ftalkpython%2Fasync-techniques-python-course%2Fissues%2Fnew%2Fchoose
dependabothttps://patch-diff.githubusercontent.com/apps/dependabot
masterhttps://patch-diff.githubusercontent.com/talkpython/async-techniques-python-course/tree/master
dependabot/pip/src/04-asyncio/web_scraping/sync_scrape/urllib3-2.6.0https://patch-diff.githubusercontent.com/talkpython/async-techniques-python-course/tree/dependabot/pip/src/04-asyncio/web_scraping/sync_scrape/urllib3-2.6.0
Conversation 1 https://patch-diff.githubusercontent.com/talkpython/async-techniques-python-course/pull/25
Commits 1 https://patch-diff.githubusercontent.com/talkpython/async-techniques-python-course/pull/25/commits
Checks 0 https://patch-diff.githubusercontent.com/talkpython/async-techniques-python-course/pull/25/checks
Files changed https://patch-diff.githubusercontent.com/talkpython/async-techniques-python-course/pull/25/files
Please reload this pagehttps://patch-diff.githubusercontent.com/talkpython/async-techniques-python-course/pull/25/checks
Please reload this pagehttps://patch-diff.githubusercontent.com/talkpython/async-techniques-python-course/pull/25/checks
Bump urllib3 from 2.5.0 to 2.6.0 in /src/04-asyncio/web_scraping/sync_scrape https://patch-diff.githubusercontent.com/talkpython/async-techniques-python-course/pull/25/checks#top
Please reload this pagehttps://patch-diff.githubusercontent.com/talkpython/async-techniques-python-course/pull/25/checks
https://github.com
Termshttps://docs.github.com/site-policy/github-terms/github-terms-of-service
Privacyhttps://docs.github.com/site-policy/privacy-policies/github-privacy-statement
Securityhttps://github.com/security
Statushttps://www.githubstatus.com/
Communityhttps://github.community/
Docshttps://docs.github.com/
Contacthttps://support.github.com?tags=dotcom-footer

Viewport: width=device-width


URLs of crawlers that visited me.