-
-
Notifications
You must be signed in to change notification settings - Fork 856
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Version 0.15.0 #1301
Version 0.15.0 #1301
Conversation
Co-authored-by: Jamie Hewland <jamie.hewland@hpe.com>
Sounds good to me, great one! |
… version-0.15.0
Right, let's keep the CLI separate. No good reason for us to bog ourselves down in a whole extra layer of API considerations (eg. which flags do we support on the command line) when we're so very close to a 1.0 release now. I'm going to push on again, and get this released. Where does this leave us after this?...
We'll then also want to go through the API docs, and make sure that all the public API is being properly exposed in the docs. |
Pushing this up so that we can figure out what else we want to block a 0.15 release on.
At the moment my thoughts would be...
.request
,.arequest
, since it'll otherwise end up blocking other work.request(method, url, headers, stream, ext) -> status_code, headers, stream, ext
. See Finalising the Transport API for 1.0. #1274 (comment) - Might need discussion, but it's an easy switch to make, and better to make it sooner rather than later.I think other stuff can wait for nice smaller increments in the 0.15.x series. The only remaining API changes expected at that point are the possible transport API -> transport API as a context manager switch, and some very minor review over all the model classes. (Note that
URL
is now complete in this regard.)What do we think, and am I missing anything critical here?
0.15.0
Added
response.num_bytes_downloaded
. (Pull Add progress to streaming download #1268)Request(content=...)
for byte content, instead of overloadingRequest(data=...)
(Pull Seperatecontent=...
anddata=...
parameters #1266)url.copy_with(...)
. (Pull Finesse URL properties #1285)Request
instances, vs defaultclient.headers
. (Pull Header refinements #1248)AsyncClient
instances will now raise warnings if garbage collected. (Pull Issue warning on unclosedAsyncClient
. #1197)Response(content=..., text=..., html=..., json=...)
for creating usable response instances in code. (Pull SupportResponse(content=<bytes iterator>)
#1265, Support Response(text=...), Response(html=...), Response(json=...) #1297)Changed
url.path
is now URL escaped. (Pull Finesse URL properties #1285)url.userinfo
andurl.query
are not URL escaped, and so return bytes. (Pull Finesse URL properties #1285)url.authority
property in favour ofurl.netloc
, since "authority" was semantically incorrect. (Pull Finesse URL properties #1285)url.full_path
property in favour ofurl.raw_path
, for better consistency with other parts of the API. (Pull Finesse URL properties #1285)chardet
library for auto-detecting charsets, instead defaulting to a simpler approach when no charset is specified. (Drop chardet #1269)Fixed
.netrc
lookups should use host, not host+port. (Pull NetRC lookups should use host, not host+port #1298)Removed
URLLib3Transport
class no longer exists. We've published it instead as an example of a custom transport class. (Pull Drop urllib3 in favor of public gist #1182)request.timer
attribute, which was being used internally to setresponse.elapsed
. (Pull Droprequest.timer
attribute. #1249)response.decoder
attribute, which was being used internally. (Pull Minor decoder refactoring. #1276)Request.prepare()
is now a private method. (Pull Refactoring of models api #1284)