Releases: encode/httpx
Releases Β· encode/httpx
Version 0.28.0
0.28.0 (28th November, 2024)
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
andhttpcore
are only imported if required. (#3377) - Treat
socks5h
as a valid proxy scheme. (#3178) - Cleanup
Request()
method signature in line withclient.request()
andhttpx.request()
. (#3378)
Version 0.27.2
Version 0.27.1
Version 0.27.0
0.27.0 (21st February, 2024)
Deprecated
- The
app=...
shortcut has been deprecated. Use the explicit style oftransport=httpx.WSGITransport()
ortransport=httpx.ASGITransport()
instead.
Fixed
Version 0.26.0
0.26.0 (20th December, 2023)
Added
- The
proxy
argument was added. You should use theproxy
argument instead of the deprecatedproxies
, or usemounts=
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)
Version 0.25.2
Version 0.25.1
Version 0.25.0
0.25.0 (11th Sep, 2023)
Removed
- Drop support for Python 3.7. (#2813)
Added
- Support HTTPS proxies. (#2845)
- Change the type of
Extensions
fromMapping[Str, Any]
toMutableMapping[Str, Any]
. (#2803) - Add
socket_options
argument tohttpx.HTTPTransport
andhttpx.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 whenraise_app_exceptions=False
is set onASGITransport
. (#2669) - Ensure all
WSGITransport
environs have aSERVER_PROTOCOL
. (#2708) - Always encode forward slashes as
%2F
in query parameters (#2723) - Use Mozilla documentation instead of
httpstatuses.com
for HTTP error reference (#2768)
Version 0.24.1
0.24.1 (17th May, 2023)
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()
toNone
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)
Version 0.24.0
0.24.0 (6th April, 2023)
Changed
- The logging behaviour has been change to be more in-line with other standard Python logging usages. We no longer have a custom
TRACE
log level, and we no longer use theHTTPX_LOG_LEVEL
environment variable to auto-configure logging. We now have a significant amount ofDEBUG
logging available at the network level. Full documentation is available at https://www.python-httpx.org/logging/ (#2547, encode/httpcore#648) - The
Response.iter_lines()
method now matches the stdlib behaviour and does not include the newline characters. It also resolves a performance issue. (#2423) - Query parameter encoding switches from using + for spaces and %2F for forward slash, to instead using %20 for spaces and treating forward slash as a safe, unescaped character. This differs from
requests
, but is in line with browser behavior in Chrome, Safari, and Firefox. Both options are RFC valid. (#2543) - NetRC authentication is no longer automatically handled, but is instead supported by an explicit
httpx.NetRCAuth()
authentication class. See the documentation at https://www.python-httpx.org/advanced/#netrc-support (#2525)
Removed
- The
rfc3986
dependancy has been removed. (#2252)