Message269497
Here comes a new version of the patch. I believe, I addressed all review comments made on issue12319_7.patch, with the exception of the EncodingError mentioned in the last post.
Most relevant changes compared to last patch:
* Do not try to dertermine the content length for text files.
* Change priority of object types for the body: try file like before byte like.
* Convert byte like to bytes before feeding the body into the socket. This fixes Issue 27340, at least as far as http.client is concerned.
* Split test_http() in one separate test for each body type in test_urllib2.py.
* Review documentation.
Another question is: what is the best method to test whether a file like is text or binary? For the moment, I kept the original code that essentially does:
try:
isText = "b" not in readable.mode
except AttributeError:
isText = False
This logic fails for StringIO and possibly others. Alternatives could be:
isText = isinstance(readable, io.TextIOBase)
isText = hasattr(readable, 'encoding')
or
isText = isinstance(readable.read(0), str)
What do you guys suggest? |
|
Date |
User |
Action |
Args |
2016-06-29 14:14:32 | Rotkraut | set | recipients:
+ Rotkraut, orsenthil, pitrou, harobed, petri.lehtinen, martin.panter, piotr.dobrogost, demian.brecht, whitemice |
2016-06-29 14:14:31 | Rotkraut | set | messageid: <1467209671.55.0.791039647909.issue12319@psf.upfronthosting.co.za> |
2016-06-29 14:14:31 | Rotkraut | link | issue12319 messages |
2016-06-29 14:14:31 | Rotkraut | create | |
|