This PR contains the following updates:
Release Notes
encode/httpx (httpx)
Compare Source
- Fix SSL case where
verify=False together with client side certificates.
Compare Source
Be aware that the default JSON request bodies now use a more compact representation. This is generally considered a prefered style, tho may require updates to test suites.
The 0.28 release includes a limited set of deprecations...
Deprecations:
We are working towards a simplified SSL configuration API.
For users of the standard verify=True or verify=False cases, or verify=<ssl_context> case this should require no changes. The following cases have been deprecated...
- The
verify argument as a string argument is now deprecated and will raise warnings.
- The
cert argument is now deprecated and will raise warnings.
Our revised SSL documentation covers how to implement the same behaviour with a more constrained API.
The following changes are also included:
- The deprecated
proxies argument has now been removed.
- The deprecated
app argument has now been removed.
- JSON request bodies use a compact representation. (#3363)
- Review URL percent escape sets, based on WHATWG spec. (#3371, #3373)
- Ensure
certifi and httpcore are only imported if required. (#3377)
- Treat
socks5h as a valid proxy scheme. (#3178)
- Cleanup
Request() method signature in line with client.request() and httpx.request(). (#3378)
- Bugfix: When passing
params={}, always strictly update rather than merge with an existing querystring. (#3364)
Compare Source
Fixed
- Reintroduced supposedly-private
URLTypes shortcut. (#2673)
Compare Source
Added
- Support for
zstd content decoding using the python zstandard package is added. Installable using httpx[zstd]. (#3139)
Fixed
- Improved error messaging for
InvalidURL exceptions. (#3250)
- Fix
app type signature in ASGITransport. (#3109)
Compare Source
Deprecated
- The
app=... shortcut has been deprecated. Use the explicit style of transport=httpx.WSGITransport() or transport=httpx.ASGITransport() instead.
Fixed
- Respect the
http1 argument while configuring proxy transports. (#3023)
- Fix RFC 2069 mode digest authentication. (#3045)
Compare Source
Added
- The
proxy argument was added. You should use the proxy argument instead of the deprecated proxies, or use mounts= for more complex configurations. (#2879)
Deprecated
- The
proxies argument is now deprecated. It will still continue to work, but it will be removed in the future. (#2879)
Fixed
- Fix cases of double escaping of URL path components. Allow / as a safe character in the query portion. (#2990)
- Handle
NO_PROXY envvar cases when a fully qualified URL is supplied as the value. (#2741)
- Allow URLs where username or password contains unescaped '@'. (#2986)
- Ensure ASGI
raw_path does not include URL query component. (#2999)
- Ensure
Response.iter_text() cannot yield empty strings. (#2998)
Compare Source
Added
- Add missing type hints to few
__init__() methods. (#2938)
Compare Source
Added
- Add support for Python 3.12. (#2854)
- Add support for httpcore 1.0 (#2885)
Fixed
- Raise
ValueError on Response.encoding being set after Response.text has been accessed. (#2852)
Compare Source
Removed
- Drop support for Python 3.7. (#2813)
Added
- Support HTTPS proxies. (#2845)
- Change the type of
Extensions from Mapping[Str, Any] to MutableMapping[Str, Any]. (#2803)
- Add
socket_options argument to httpx.HTTPTransport and httpx.AsyncHTTPTransport classes. (#2716)
- The
Response.raise_for_status() method now returns the response instance. For example: data = httpx.get('...').raise_for_status().json(). (#2776)
Fixed
- Return
500 error response instead of exceptions when raise_app_exceptions=False is set on ASGITransport. (#2669)
- Ensure all
WSGITransport environs have a SERVER_PROTOCOL. (#2708)
- Always encode forward slashes as
%2F in query parameters (#2723)
- Use Mozilla documentation instead of
httpstatuses.com for HTTP error reference (#2768)
Compare Source
Added
- Provide additional context in some
InvalidURL exceptions. (#2675)
Fixed
- Fix optional percent-encoding behaviour. (#2671)
- More robust checking for opening upload files in binary mode. (#2630)
- Properly support IP addresses in
NO_PROXY environment variable. (#2659)
- Set default file for
NetRCAuth() to None to use the stdlib default. (#2667)
- Set logging request lines to INFO level for async requests, in line with sync requests. (#2656)
- Fix which gen-delims need to be escaped for path/query/fragment components in URL. (#2701)
Configuration
📅 Schedule: (UTC)
- 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 becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.
Uh oh!
There was an error while loading. Please reload this page.
This PR contains the following updates:
==0.24→==0.28.1Release Notes
encode/httpx (httpx)
v0.28.1Compare Source
verify=Falsetogether with client side certificates.v0.28.0Compare Source
Be aware that the default JSON request bodies now use a more compact representation. This is generally considered a prefered style, tho may require updates to test suites.
The 0.28 release includes a limited set of deprecations...
Deprecations:
We are working towards a simplified SSL configuration API.
For users of the standard
verify=Trueorverify=Falsecases, orverify=<ssl_context>case this should require no changes. The following cases have been deprecated...verifyargument as a string argument is now deprecated and will raise warnings.certargument is now deprecated and will raise warnings.Our revised SSL documentation covers how to implement the same behaviour with a more constrained API.
The following changes are also included:
proxiesargument has now been removed.appargument has now been removed.certifiandhttpcoreare only imported if required. (#3377)socks5has a valid proxy scheme. (#3178)Request()method signature in line withclient.request()andhttpx.request(). (#3378)params={}, always strictly update rather than merge with an existing querystring. (#3364)v0.27.2Compare Source
Fixed
URLTypesshortcut. (#2673)v0.27.1Compare Source
Added
zstdcontent decoding using the pythonzstandardpackage is added. Installable usinghttpx[zstd]. (#3139)Fixed
InvalidURLexceptions. (#3250)apptype signature inASGITransport. (#3109)v0.27.0Compare Source
Deprecated
app=...shortcut has been deprecated. Use the explicit style oftransport=httpx.WSGITransport()ortransport=httpx.ASGITransport()instead.Fixed
http1argument while configuring proxy transports. (#3023)v0.26.0Compare Source
Added
proxyargument was added. You should use theproxyargument instead of the deprecatedproxies, or usemounts=for more complex configurations. (#2879)Deprecated
proxiesargument is now deprecated. It will still continue to work, but it will be removed in the future. (#2879)Fixed
NO_PROXYenvvar cases when a fully qualified URL is supplied as the value. (#2741)raw_pathdoes not include URL query component. (#2999)Response.iter_text()cannot yield empty strings. (#2998)v0.25.2Compare Source
Added
__init__()methods. (#2938)v0.25.1Compare Source
Added
Fixed
ValueErroronResponse.encodingbeing set afterResponse.texthas been accessed. (#2852)v0.25.0Compare Source
Removed
Added
ExtensionsfromMapping[Str, Any]toMutableMapping[Str, Any]. (#2803)socket_optionsargument tohttpx.HTTPTransportandhttpx.AsyncHTTPTransportclasses. (#2716)Response.raise_for_status()method now returns the response instance. For example:data = httpx.get('...').raise_for_status().json(). (#2776)Fixed
500error response instead of exceptions whenraise_app_exceptions=Falseis set onASGITransport. (#2669)WSGITransportenvirons have aSERVER_PROTOCOL. (#2708)%2Fin query parameters (#2723)httpstatuses.comfor HTTP error reference (#2768)v0.24.1Compare Source
Added
InvalidURLexceptions. (#2675)Fixed
NO_PROXYenvironment variable. (#2659)NetRCAuth()toNoneto use the stdlib default. (#2667)Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.