Releases: jawah/urllib3.future
Releases · jawah/urllib3.future
Version 2.6.901
2.6.901 (2024-02-28)
- Fixed blocking IO just after HTTP/3 is negotiated in an asynchronous
context. - Added explicit warning in case your pool of connections is
insufficiently sized for the given charge in an asynchronous context. - Fixed automatic retrieval of the issuer certificate in an asynchronous
context (ConnectionInfo
).
Version 2.6.900
2.6.900 (2024-02-26)
-
Added full asynchronous support using asyncio.
urllib3.future officially support asyncio as his asynchronous scheduler.
The following public classes are immediately available:AsyncPoolManager
,AsyncHTTPConnectionPool
,AsyncHTTPSConnectionPool
,AsyncProxyManager
,
AsyncResolverDescription
.Finally, bellow functions are also available:
async_proxy_from_url
, andasync_connection_from_url
.Explore the documentation section about async to learn more about this awesome feature with detailed
examples. No extra dependencies are required. We rely exclusively on the standard library.Async SOCKS proxies are also supported at no additional costs with
contrib.socks.AsyncSOCKSProxyManager
.
Version 2.5.904
2.5.904 (2024-02-21)
- Improved reliability with PoliceTraffic.borrow with type as indicator when heavily accessed by many threads.
Version 2.5.903
2.5.903 (2024-02-20)
- Fixed an edge case where a simultaneous call to
get_response()
without a specific promise could lead to a non-thread safe operation.
Version 2.5.902
2.5.902 (2024-02-04)
- Fixed missed clean-up of unused PoolKey stored in
PoliceTraffic
upon a fullPoolManager
.
Version 2.5.901
2.5.901 (2024-02-02)
- Fixed a compatibility issue with
boto3
when trying to send data (got an unexpected keyword argument). #79
Version 2.5.900
2.5.900 (2024-02-02)
- Improved performance and reliability for concurrent streams handled by a single connection.
We relied on a flat array of events generated by the protocol state-machine that unfortunately was not
efficient. urllib3-future now handle the events with a matrix/multi-dimensional array bound to time. - Fixed a thread safety issue when a single multiplexed connection was used across many threads.
We revised in-depth the logic wrapper around the connection locking to make sure you may
go all-in when using threads in that particular context. In consequence to that:- We are, effective immediately, deprecating
RecentlyUsedContainer
in favor of our internalPoliceTraffic
that was used inPoolManager
. - No longer using
Queue
to manage theConnection
inHTTPConnectionPool
.
If you try to setHTTPConnectionPool.QueueCls
it will raise a deprecation warning.
Starting today, we no longer accept implementation likequeue.Queue
because it
cannot fit the need of this complex HTTP client, especially with the multiplexing aspect.
- We are, effective immediately, deprecating
- Increased default pool maxsize for DNS-over-HTTPS from 1 to 10.
Version 2.4.906
2.4.906 (2024-01-19)
- Fixed a rare case of HTTP/3 being disabled when forwarding a custom SSLContext created.
- Re-introduce
DEFAULT_CIPHERS
constant inurllib3.util.ssl_
due to the demands.
It contains the Mozilla recommended cipher suite that was introduced in version 2.2.900. - Fixed handling of OpenSSL 3.2.0 new error message for misconfiguring an HTTP proxy as HTTPS.
Ported from urllib3/3271. - Fixed
request_sent_latency
that wasn't computed when request was stopped early (prior to sending the
complete body).
Version 2.4.905
2.4.905 (2024-01-16)
- Fixed an edge case where a HTTPS record was misinterpreted when using a DNS-over-HTTPS resolver.
Version 2.4.904
2.4.904 (2024-01-15)
- Fixed an issue where a idle QUIC connection would not be recycled properly when expired.
- Added support for passing
-1
as the amt inHTTPResponse
(read, or stream) as the strict equivalent ofread1
.
This allows you to fetch content as soon as it arrive. - Removed orphaned method
_handle_chunk
,_update_chunk_length
fromHTTPResponse
. - Fixed the iterator in
HTTPResponse
that hung until the complete content was downloaded.