Update dependency urllib3 to v2 #29
Reference in New Issue
Block a user
No description provided.
Delete Branch "renovate/urllib3-2.x"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
This PR contains the following updates:
==1.26.15->==2.0.0Release Notes
urllib3/urllib3
v2.0.0Compare Source
==================
Read the
v2.0 migration guide <https://urllib3.readthedocs.io/en/latest/v2-migration-guide.html>__ for help upgrading to the latest version of urllib3.Removed
#​883 <https://github.com/urllib3/urllib3/issues/883>,#​2336 <https://github.com/urllib3/urllib3/issues/2336>).commonNameinmatch_hostname()function.This behavior was deprecated in May 2000 in RFC 2818. Instead only
subjectAltNameis used to verify the hostname by default. To enable verifying the hostname against
commonNameuseSSLContext.hostname_checks_common_name = True(#​2113 <https://github.com/urllib3/urllib3/issues/2113>__).sslmodule compiled with LibreSSL, CiscoSSL,wolfSSL, and all other OpenSSL alternatives. Python is moving to require OpenSSL with PEP 644 (
#​2168 <https://github.com/urllib3/urllib3/issues/2168>__).When an incompatible OpenSSL version is detected an
ImportErroris raised (#​2168 <https://github.com/urllib3/urllib3/issues/2168>__).#​2082 <https://github.com/urllib3/urllib3/issues/2082>__).urllib3.contrib.appengine.AppEngineManagerand support for Google App Engine Standard Environment (#​2044 <https://github.com/urllib3/urllib3/issues/2044>__).Retryoptionsmethod_whitelist,DEFAULT_REDIRECT_HEADERS_BLACKLIST(#​2086 <https://github.com/urllib3/urllib3/issues/2086>__).urllib3.HTTPResponse.from_httplib(#​2648 <https://github.com/urllib3/urllib3/issues/2648>__).Nonefor therequest_contextparameter ofurllib3.PoolManager.connection_from_pool_key. This change should have no effect on users as the default value ofNonewas an invalid option and was never used (#​1897 <https://github.com/urllib3/urllib3/issues/1897>__).urllib3.requestmodule.urllib3.request.RequestMethodshas been made a private API.This change was made to ensure that
from urllib3 import requestimported the top-levelrequest()function instead of the
urllib3.requestmodule (#​2269 <https://github.com/urllib3/urllib3/issues/2269>__).urllib3.contrib.pyopenssleven when support is available from the compiled OpenSSL library (#​2233 <https://github.com/urllib3/urllib3/issues/2233>__).urllib3.contrib.ntlmpoolmodule (#​2339 <https://github.com/urllib3/urllib3/issues/2339>__).DEFAULT_CIPHERS,HAS_SNI,USE_DEFAULT_SSLCONTEXT_CIPHERS, from the private moduleurllib3.util.ssl_(#​2168 <https://github.com/urllib3/urllib3/issues/2168>__).urllib3.exceptions.SNIMissingWarning(#​2168 <https://github.com/urllib3/urllib3/issues/2168>__)._prepare_connmethod fromHTTPConnectionPool. Previously this was only used to callHTTPSConnection.set_cert()byHTTPSConnectionPool(#​1985 <https://github.com/urllib3/urllib3/issues/1985>__).tls_in_tls_requiredproperty fromHTTPSConnection. This is now determined from theschemeparameter inHTTPConnection.set_tunnel()(#​1985 <https://github.com/urllib3/urllib3/issues/1985>__).Deprecated
HTTPResponse.getheaders()andHTTPResponse.getheader()which will be removed in urllib3 v2.1.0. Instead useHTTPResponse.headersandHTTPResponse.headers.get(name, default). (#​1543 <https://github.com/urllib3/urllib3/issues/1543>,#​2814 <https://github.com/urllib3/urllib3/issues/2814>).urllib3.contrib.pyopensslmodule which will be removed in urllib3 v2.1.0 (#​2691 <https://github.com/urllib3/urllib3/issues/2691>__).urllib3.contrib.securetransportmodule which will be removed in urllib3 v2.1.0 (#​2692 <https://github.com/urllib3/urllib3/issues/2692>__).ssl_versionoption in favor ofssl_minimum_version.ssl_versionwill be removed in urllib3 v2.1.0 (#​2110 <https://github.com/urllib3/urllib3/issues/2110>__).strictparameter as it's not longer needed in Python 3.x. It will be removed in urllib3 v2.1.0 (#​2267 <https://github.com/urllib3/urllib3/issues/2267>__)NewConnectionError.poolattribute which will be removed in urllib3 v2.1.0 (#​2271 <https://github.com/urllib3/urllib3/issues/2271>__).format_header_param_html5andformat_header_paramin favor offormat_multipart_header_param(#​2257 <https://github.com/urllib3/urllib3/issues/2257>__).RequestField.header_formatterparameter which will be removed in urllib3 v2.1.0 (#​2257 <https://github.com/urllib3/urllib3/issues/2257>__).HTTPSConnection.set_cert()method. Instead pass parameters to theHTTPSConnectionconstructor (#​1985 <https://github.com/urllib3/urllib3/issues/1985>__).HTTPConnection.request_chunked()method which will be removed in urllib3 v2.1.0. Instead passchunked=TruetoHTTPConnection.request()(#​1985 <https://github.com/urllib3/urllib3/issues/1985>__).Added
urllib3.requestfunction which uses a preconfigured module-globalPoolManagerinstance (#​2150 <https://github.com/urllib3/urllib3/issues/2150>__).jsonparameter tourllib3.request(),PoolManager.request(), andConnectionPool.request()methods to send JSON bodies in requests. Using this parameter will set the headerContent-Type: application/jsonifContent-Typeisn't already defined.Added support for parsing JSON response bodies with
HTTPResponse.json()method (#​2243 <https://github.com/urllib3/urllib3/issues/2243>__).urllib3module (#​1897 <https://github.com/urllib3/urllib3/issues/1897>__).ssl_minimum_versionandssl_maximum_versionoptions which setSSLContext.minimum_versionandSSLContext.maximum_version(#​2110 <https://github.com/urllib3/urllib3/issues/2110>__).zstandard1.18.0 or later is installed.Added the
zstdextra which installs thezstandardpackage (#​1992 <https://github.com/urllib3/urllib3/issues/1992>__).urllib3.response.BaseHTTPResponseclass. All future response classes will be subclasses ofBaseHTTPResponse(#​2083 <https://github.com/urllib3/urllib3/issues/2083>__).FullPoolErrorwhich is raised whenPoolManager(block=True)and a connection is returned to a full pool (#​2197 <https://github.com/urllib3/urllib3/issues/2197>__).HTTPHeaderDictto the top-levelurllib3namespace (#​2216 <https://github.com/urllib3/urllib3/issues/2216>__).When using a
HTTPHeaderDictto provide headers for a request, by default duplicateheader values will be repeated. But if
combine=Trueis passed into a call toHTTPHeaderDict.add, then the added header value will be merged in with an existingvalue into a comma-separated list (
X-My-Header: foo, bar) (#​2242 <https://github.com/urllib3/urllib3/issues/2242>__).NameResolutionErrorexception when a DNS error occurs (#​2305 <https://github.com/urllib3/urllib3/issues/2305>__).proxy_assert_hostnameandproxy_assert_fingerprintkwargs toProxyManager(#​2409 <https://github.com/urllib3/urllib3/issues/2409>__).backoff_maxparameter to theRetryclass.If a custom
backoff_maxis provided to theRetryclass, itwill replace the
Retry.DEFAULT_BACKOFF_MAX(#​2494 <https://github.com/urllib3/urllib3/issues/2494>__).authorityproperty to the Url class as per RFC 3986 3.2. This property should be used in place ofnetlocfor users who want to include the userinfo (auth) component of the URI (#​2520 <https://github.com/urllib3/urllib3/issues/2520>__).schemeparameter toHTTPConnection.set_tunnelto configure the scheme of the origin being tunnelled to (#​1985 <https://github.com/urllib3/urllib3/issues/1985>__).is_closed,is_connectedandhas_connected_to_proxyproperties toHTTPConnection(#​1985 <https://github.com/urllib3/urllib3/issues/1985>__).backoff_jitterparameter toRetry. (#​2952 <https://github.com/urllib3/urllib3/issues/2952>__)Changed
Changed
urllib3.response.HTTPResponse.readto respect the semantics ofio.BufferedIOBaseregardless of compression. Specifically, this method:If you want each
urllib3.response.HTTPResponse.readcall to issue a single system call, you need to disable decompression by settingdecode_content=False(#​2128 <https://github.com/urllib3/urllib3/issues/2128>__).Changed
urllib3.HTTPConnection.getresponseto return an instance ofurllib3.HTTPResponseinstead ofhttp.client.HTTPResponse(#​2648 <https://github.com/urllib3/urllib3/issues/2648>__).Changed
ssl_versionto instead set the correspondingSSLContext.minimum_versionand
SSLContext.maximum_versionvalues. Regardless ofssl_versionpassedSSLContextobjects are now constructed usingssl.PROTOCOL_TLS_CLIENT(#​2110 <https://github.com/urllib3/urllib3/issues/2110>__).Changed default
SSLContext.minimum_versionto beTLSVersion.TLSv1_2in line with Python 3.10 (#​2373 <https://github.com/urllib3/urllib3/issues/2373>__).Changed
ProxyErrorto wrap any connection error (timeout, TLS, DNS) that occurs when connecting to the proxy (#​2482 <https://github.com/urllib3/urllib3/pull/2482>__).Changed
urllib3.util.create_urllib3_contextto not override the system cipher suites witha default value. The new default will be cipher suites configured by the operating system (
#​2168 <https://github.com/urllib3/urllib3/issues/2168>__).Changed
multipart/form-dataheader parameter formatting matches the WHATWG HTML Standard as of 2021-06-10. Control characters in filenames are no longer percent encoded (#​2257 <https://github.com/urllib3/urllib3/issues/2257>__).Changed the error raised when connecting via HTTPS when the
sslmodule isn't available fromSSLErrortoImportError(#​2589 <https://github.com/urllib3/urllib3/issues/2589>__).Changed
HTTPConnection.request()to always use lowercase chunk boundaries when sending requests withTransfer-Encoding: chunked(#​2515 <https://github.com/urllib3/urllib3/issues/2515>__).Changed
enforce_content_lengthdefault to True, preventing silent data loss when reading streamed responses (#​2514 <https://github.com/urllib3/urllib3/issues/2514>__).Changed internal implementation of
HTTPHeaderDictto usedictinstead ofcollections.OrderedDictfor better performance (#​2080 <https://github.com/urllib3/urllib3/issues/2080>__).Changed the
urllib3.contrib.pyopensslmodule to wrapOpenSSL.SSL.Errorwithssl.SSLErrorinPyOpenSSLContext.load_cert_chain(#​2628 <https://github.com/urllib3/urllib3/issues/2628>__).Changed usage of the deprecated
socket.errortoOSError(#​2120 <https://github.com/urllib3/urllib3/issues/2120>__).Changed all parameters in the
HTTPConnectionandHTTPSConnectionconstructors to be keyword-only excepthostandport(#​1985 <https://github.com/urllib3/urllib3/issues/1985>__).Changed
HTTPConnection.getresponse()to set the socket timeout fromHTTPConnection.timeoutvalue before readingdata from the socket. This previously was done manually by the
HTTPConnectionPoolcallingHTTPConnection.sock.settimeout(...)(#​1985 <https://github.com/urllib3/urllib3/issues/1985>__).Changed the
_proxy_hostproperty to_tunnel_hostinHTTPConnectionPoolto more closely match how the property is used (value inHTTPConnection.set_tunnel()) (#​1985 <https://github.com/urllib3/urllib3/issues/1985>__).Changed name of
Retry.BACK0FF_MAXto beRetry.DEFAULT_BACKOFF_MAX.Changed TLS handshakes to use
SSLContext.check_hostnamewhen possible (#​2452 <https://github.com/urllib3/urllib3/pull/2452>__).Changed
server_hostnameto behave like other parameters only used byHTTPSConnectionPool(#​2537 <https://github.com/urllib3/urllib3/pull/2537>__).Changed the default
blocksizeto 16KB to match OpenSSL's default read amounts (#​2348 <https://github.com/urllib3/urllib3/pull/2348>__).Changed
HTTPResponse.read()to raise an error when calling withdecode_content=Falseafter usingdecode_content=Trueto prevent data loss (#​2800 <https://github.com/urllib3/urllib3/issues/2800>__).Fixed
PoolManagerwith many distinct origins would cause connection pools to be closed while requests are in progress (#​1252 <https://github.com/urllib3/urllib3/issues/1252>__).HTTPConnectioninstance would erroneously reuse the socket read timeout value from reading the previous response instead of a newly configured connect timeout.Instead now if
HTTPConnection.timeoutis updated before sending the next request the new timeout value will be used (#​2645 <https://github.com/urllib3/urllib3/issues/2645>__).socket.error.errnowhen raised from pyOpenSSL'sOpenSSL.SSL.SysCallError(#​2118 <https://github.com/urllib3/urllib3/issues/2118>__).HTTPSConnection.socket_optionsto matchHTTPConnection(#​2213 <https://github.com/urllib3/urllib3/issues/2213>__).headerswould be modified by theremove_headers_on_redirectfeature (#​2272 <https://github.com/urllib3/urllib3/issues/2272>__).urllib3.util.connection.create_connection()(#​2277 <https://github.com/urllib3/urllib3/issues/2277>__).HTTPConnection.connect()fails (#​2571 <https://github.com/urllib3/urllib3/pull/2571>__).urllib3.contrib.pyopenssl.WrappedSocketandurllib3.contrib.securetransport.WrappedSocketclose methods (#​2970 <https://github.com/urllib3/urllib3/issues/2970>__)Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Mend Renovate. View repository job log here.
Kudos, SonarCloud Quality Gate passed!