Fixes for urllib3/urllib3
Verified fixes and incident notes extracted from GitHub Issues for urllib3/urllib3.
Repository
urllib3 / urllib3
Updated: 2026-02-13
- Connection retrieved from connection pool has wrong cert_reqs (based on previous request)
- urllib3 keeps connection open after failed fingerprint validation
- ca_cert_dir keyword argument may be passed to HTTPConnectionPool by accident.
- Multipart mixed responses generate warnings
- PyOpenSSL: Fails to import after installation with the provided instructions
- Unexpected HostChangedError due to downcasing of hostname
- Bug: Content-Disposition Header Lacking "filename" When "filename*" Is Present
- Custom LifoQueue
- urllib3==1.21: TypeError: unhashable type: 'list'
- IndexError when handle malformed http response
- Interrupted system call while profiling with plop
- Accessing HTTPS sites through proxy
- Stop using unittest's addCleanup
- Can't connect to IPv6 Address with Zone ID
- Add `other` counter to Retry for fully fine-grained retry configuration
- test_https_timeout & test_enhanced_timeout fail when there's no networking
- UnicodeError while processing invalid redirect
- Issue with Parsing URIs - Breaks Security Tools when testing for Path Traversal
- urllib3 hanging inside call to PoolManager request
- test_delayed_body_read_timeout_with_preload is flaky
- parse_retry_after() in utils/retry.py computes seconds incorrectly when Retry-After value is a http-date and local time
- Incorrect handling of Retry-After (2.7)
- SecureTransport does not close unverified connections correctly
- keylog_filename triggering error when SSLKEYLOGFILE is not set
- v.1.26+ doesn't support SSL in python 2.7.6
- v1.26.3 breaks SSL support in Python 2.7.6
- HTTPSConnection fails when assert_hostname is True
- Fix `OSError: [Errno 98] Address already in use` in `bind_sockets` call in CI
- Cert verify on subjectAltName->"IP Address" not working when doing IPv6 via a proxy
- Allow using HTTPHeaderDict and multiple header keys in requests
- Deprecate urllib3.request module
- Hostname matching doesn't strip trailing '.' when connecting with proxy
- [v2] Chaining exceptions
- Incorrect "Your proxy appears to only use HTTP and not HTTPS" error message during connection errors to HTTPS websites
- OverflowError: signed integer is greater than maximum
- IPv6 zone ID shouldn't be used during certificate hostname matching
- `python_requires` prevents install of recent urllib3 when using Poetry
- urllib3 2 causes partial response to be returned (using requests 2.30.0)
- v2.x : Breaks `assert_hostname = False`
- test_socketlevel has some flaky tests
- request(..., preload_content=False).read(-1) raises an unexpected Exception
- Incorrect behaviour of `proxy_is_verified`
- Handle OpenSSL 3.2.0 new error message for unexpected unencrypted records
- pypy tests often fail in CI with reason "cancelled after 30 minutes"
- urllib3 2.2 explicitly casts all headers to HTTPHeaderDict
- imprecise types on `urllib3.Retry.new` / `urllib3.Retry.increment`
- ReadTimeoutError doesn't pickle / maintain the str parsing
- Resolve environment variables (and home directory?) within SSLKEYLOGFILE path
- Redirects do not work on a PoolManager configured with custom retries