Martin Panter
3c0d0baf2b
Issue #12319 : Support for chunked encoding of HTTP request bodies
...
When the body object is a file, its size is no longer determined with
fstat(), since that can report the wrong result (e.g. reading from a pipe).
Instead, determine the size using seek(), or fall back to chunked encoding
for unseekable files.
Also, change the logic for detecting text files to check for TextIOBase
inheritance, rather than inspecting the “mode” attribute, which may not
exist (e.g. BytesIO and StringIO). The Content-Length for text files is no
longer determined ahead of time, because the original logic could have been
wrong depending on the codec and newline translation settings.
Patch by Demian Brecht and Rolf Krahl, with a few tweaks by me.
2016-08-24 06:33:33 +00:00
Martin Panter
c86c91aab0
Merge typo fixes from 3.5
2016-04-05 06:20:32 +00:00
Martin Panter
cc71a795df
Fix typos in documentation and comments
2016-04-05 06:19:42 +00:00
Martin Panter
ec195fba5b
Issue #26499 : Merge HTTPResponse fix from 3.5
2016-03-17 07:05:34 +00:00
Martin Panter
ce911c3fed
Issue #26499 : Fixes to HTTPResponse.readline() and read1(), by Silent Ghost
2016-03-17 06:42:48 +00:00
Martin Panter
192697e33b
Issue #26045 : Merge http.client error addition from 3.5
2016-02-09 11:57:11 +00:00
Martin Panter
44391481d7
Issue #26045 : Add UTF-8 suggestion to error in http.client
...
Based on patch by Guido van Rossum.
2016-02-09 10:20:52 +00:00
Serhiy Storchaka
3fd4a735d8
Issue #25899 : Converted non-ASCII characters in docstrings and manpage
...
to ASCII replacements. Removed UTF-8 BOM from Misc/NEWS.
Original patch by Chris Angelico.
2015-12-18 13:10:37 +02:00
Raymond Hettinger
15b87bfedc
Add in missing docstrings.
2015-08-18 22:03:08 -07:00
Serhiy Storchaka
2116b12da5
Issue #23865 : close() methods in multiple modules now are idempotent and more
...
robust at shutdown. If needs to release multiple resources, they are released
even if errors are occured.
2015-04-10 13:29:28 +03:00
Serhiy Storchaka
7e7a3dba5f
Issue #23865 : close() methods in multiple modules now are idempotent and more
...
robust at shutdown. If needs to release multiple resources, they are released
even if errors are occured.
2015-04-10 13:24:41 +03:00
R David Murray
cae7bdb424
#3566 : Clean up handling of remote server disconnects.
...
This changeset does two things: introduces a new RemoteDisconnected exception
(that subclasses ConnectionResetError and BadStatusLine) so that a remote
server disconnection can be detected by client code (and provides a better
error message for debugging purposes), and ensures that the client socket is
closed if a ConnectionError happens, so that the automatic re-connection code
can work if the application handles the error and continues on.
Tests are added that confirm that a connection is re-used or not re-used
as appropriate to the various combinations of protocol version and headers.
Patch by Martin Panter, reviewed by Demian Brecht. (Tweaked only slightly by
me.)
2015-04-05 19:26:29 -04:00
R David Murray
0a0d20edfb
Merge: #23539 : Set Content-Length to 0 for PUT, POST, and PATCH if body is None.
2015-03-22 15:19:01 -04:00
R David Murray
beed8402ca
#23539 : Set Content-Length to 0 for PUT, POST, and PATCH if body is None.
...
Some http servers will reject PUT, POST, and PATCH requests if they
do not have a Content-Length header.
Patch by James Rutherford, with additional cleaning up of the
'request' documentation by me.
2015-03-22 15:18:23 -04:00
Serhiy Storchaka
b669bfc2be
Issue #22928 : Disabled HTTP header injections in http.client.
...
Original patch by Demian Brecht.
2015-03-12 11:15:15 +02:00
Serhiy Storchaka
a112a8ae47
Issue #22928 : Disabled HTTP header injections in http.client.
...
Original patch by Demian Brecht.
2015-03-12 11:13:36 +02:00
Berker Peksag
8e28679417
Issue #23439 : Add missing entries to http.client.__all__.
...
Also, document the LineTooLong exception since it can be raised by
the members of public API (e.g. http.client.HTTPResponse).
Patch by Martin Panter.
2015-02-20 09:45:05 +02:00
Berker Peksag
babc688180
Issue #23439 : Add missing entries to http.client.__all__.
...
Also, document the LineTooLong exception since it can be raised by
the members of public API (e.g. http.client.HTTPResponse).
Patch by Martin Panter.
2015-02-20 09:39:38 +02:00
Berker Peksag
ab53ab0a84
Issue #13128 : Print response headers for CONNECT requests when debuglevel > 0.
...
Patch by Demian Brecht.
2015-02-03 12:22:11 +02:00
Benjamin Peterson
9d8a3ad02a
http.client: disable Nagle's algorithm ( closes #23302 )
...
Patch by Demian Brecht.
2015-01-23 11:02:57 -05:00
Serhiy Storchaka
e4db76967d
Issue #21793 : Added http.HTTPStatus enums (i.e. HTTPStatus.OK,
...
HTTPStatus.NOT_FOUND). Patch by Demian Brecht.
2014-12-23 16:28:28 +02:00
Serhiy Storchaka
4ac7ed97a8
Issue #22095 : Fixed HTTPConnection.set_tunnel with default port. The port
...
value in the host header was set to "None". Patch by Demian Brecht.
2014-12-12 09:29:15 +02:00
Benjamin Peterson
a090f01bb6
HTTPSConnection: prefer the context's check_hostname attribute over the constructor parameter ( #22959 )
2014-12-07 13:18:25 -05:00
Serhiy Storchaka
b491e0521f
Issue #21032 . Fixed socket leak if HTTPConnection.getresponse() fails.
...
Original patch by Martin Panter.
2014-12-01 13:07:45 +02:00
Benjamin Peterson
7243b574e5
don't require OpenSSL SNI to pass hostname to ssl functions ( #22921 )
...
Patch by Donald Stufft.
2014-11-23 17:04:34 -06:00
Serhiy Storchaka
d4a001b23c
Issue #22095 : Fixed HTTPConnection.set_tunnel with default port. The port
...
value in the host header was set to "None". Patch by Demian Brecht.
2014-12-12 09:30:18 +02:00
Benjamin Peterson
b46247bee5
merge 3.4 ( #22959 )
2014-12-07 13:47:34 -05:00
Serhiy Storchaka
2205da43a6
Issue #21032 . Fixed socket leak if HTTPConnection.getresponse() fails.
...
Original patch by Martin Panter.
2014-12-01 13:10:12 +02:00
Benjamin Peterson
f9284ae8ed
merge 3.4 ( #22921 )
2014-11-23 17:06:39 -06:00
Benjamin Peterson
1cca273669
merge 3.4 ( #22417 )
2014-11-03 14:36:48 -05:00
Benjamin Peterson
4ffb075271
PEP 476: enable HTTPS certificate verification by default ( #22417 )
...
Patch by Alex Gaynor with some modifications by me.
2014-11-03 14:29:33 -05:00
Serhiy Storchaka
465e60e654
Issue #22033 : Reprs of most Python implemened classes now contain actual
...
class name instead of hardcoded one.
2014-07-25 23:36:00 +03:00
Senthil Kumaran
166214c344
merge from 3.4
...
Issue #7776 : Fix ``Host:'' header and reconnection when using http.client.HTTPConnection.set_tunnel()
Patch by Nikolaus Rath.
2014-04-14 13:10:05 -04:00
Senthil Kumaran
9da047b3a5
Issue #7776 : Fix ``Host:'' header and reconnection when using http.client.HTTPConnection.set_tunnel().
...
Patch by Nikolaus Rath.
2014-04-14 13:07:56 -04:00
Victor Stinner
03ce1c013d
(Merge 3.4) Issue #20976 : pyflakes: Remove unused imports
2014-03-20 09:22:39 +01:00
Victor Stinner
7fa767e517
Issue #20976 : pyflakes: Remove unused imports
2014-03-20 09:16:38 +01:00
Kristján Valur Jónsson
8e5d0caf92
Issue #19009
...
Enhance HTTPResponse.readline() performance
2014-03-19 10:07:26 +00:00
Serhiy Storchaka
cac05e2e90
Issue #20007 : HTTPResponse.read(0) no more prematurely closes connection.
...
Original patch by Simon Sapin.
2013-12-17 21:51:40 +02:00
Serhiy Storchaka
1c84ac1f55
Issue #20007 : HTTPResponse.read(0) no more prematurely closes connection.
...
Original patch by Simon Sapin.
2013-12-17 21:50:02 +02:00
Christian Heimes
f723c711d3
Issue 19509: Don't call match_hostname() twice in http.client.
2013-12-05 07:51:17 +01:00
Christian Heimes
67986f9431
Issue #19735 : Implement private function ssl._create_stdlib_context() to
...
create SSLContext objects in Python's stdlib module. It provides a single
configuration point and makes use of SSLContext.load_default_certs().
2013-11-23 22:43:47 +01:00
Georg Brandl
bf3f8eb960
Issue #16037 : HTTPMessage.readheaders() raises an HTTPException when more than
...
100 headers are read. Adapted from patch by Jyrki Pulliainen.
2013-10-27 07:34:48 +01:00
Georg Brandl
b89b5df9c9
merge with 3.3
2013-10-27 07:46:09 +01:00
Brett Cannon
cd171c8e92
Issue #18200 : Back out usage of ModuleNotFoundError (8d28d44f3a9a)
2013-07-04 17:43:24 -04:00
Brett Cannon
0a140668fa
Issue #18200 : Update the stdlib (except tests) to use
...
ModuleNotFoundError.
2013-06-13 20:57:26 -04:00
Andrew Svetlov
3042b5ebf4
Issue #16658 : add missing return to HTTPConnection.send().
...
Patch by Jeff Knupp
2013-04-12 22:50:42 +03:00
Andrew Svetlov
7b2c8bb833
Issue #16658 : add missing return to HTTPConnection.send().
...
Patch by Jeff Knupp
2013-04-12 22:49:19 +03:00
Senthil Kumaran
052ddb01b3
#17460 : Remove the strict argument of HTTPConnection and removing the
...
DeprecationWarning being issued from 3.2 onwards.
2013-03-18 14:11:41 -07:00
Serhiy Storchaka
daf990f8a7
Issue #16723 : httplib.HTTPResponse no longer marked closed when the connection
...
is automatically closed.
2013-02-06 10:37:19 +02:00
Serhiy Storchaka
b6c86fd87f
Issue #16723 : httplib.HTTPResponse no longer marked closed when the connection
...
is automatically closed.
2013-02-06 10:35:40 +02:00
Serhiy Storchaka
b5b9c8cd40
Issue #16723 : httplib.HTTPResponse no longer marked closed when the connection
...
is automatically closed.
2013-02-06 10:31:57 +02:00
Antoine Pitrou
b5032c85af
Issue #15633 : httplib.HTTPResponse is now mark closed when the server sends less than the advertised Content-Length.
2013-02-02 23:06:22 +01:00
Antoine Pitrou
6a35e18161
Issue #15633 : httplib.HTTPResponse is now mark closed when the server sends less than the advertised Content-Length.
2013-02-02 23:04:56 +01:00
Antoine Pitrou
beec61ae4e
Issue #15633 : httplib.HTTPResponse is now mark closed when the server sends less than the advertised Content-Length.
2013-02-02 22:49:34 +01:00
Antoine Pitrou
90e4774558
Issue #16833 : In http.client.HTTPConnection, do not concatenate the request headers and body when the payload exceeds 16 KB, since it can consume more memory for no benefit.
...
Patch by Benno Leslie.
2013-01-02 22:10:47 +01:00
Andrew Svetlov
0832af6628
Issue #16717 : get rid of socket.error, replace with OSError
2012-12-18 23:10:48 +02:00
Antoine Pitrou
d20e7745ee
Issue #16298 : In HTTPResponse.read(), close the socket when there is no Content-Length and the incoming stream is finished.
...
Patch by Eran Rundstein.
2012-12-15 19:22:30 +01:00
Antoine Pitrou
084daa2f74
Issue #16298 : In HTTPResponse.read(), close the socket when there is no Content-Length and the incoming stream is finished.
...
Patch by Eran Rundstein.
2012-12-15 19:11:54 +01:00
Antoine Pitrou
de59565f29
Simplify code in HTTPResponse.read()
2013-02-02 23:08:51 +01:00
Senthil Kumaran
d34b57a9a2
merge - Fix Issue14721: Send Content-length: 0 for empty body () in the http.client requests
2012-05-19 16:58:45 +08:00
Senthil Kumaran
5fa4a89601
Fix Issue14721: Send Content-length: 0 for empty body () in the http.client requests
2012-05-19 16:58:09 +08:00
Hynek Schlawack
51b2ed51f0
#14809 : Add HTTP status codes from RFC 6585 to http.server and http.client
...
Patch by EungJun Yi.
2012-05-16 09:51:07 +02:00
Senthil Kumaran
150c365430
httplib - minor update to check empty response
2012-04-29 10:40:23 +08:00
Senthil Kumaran
7e70a5c169
httplib - minor update to check empty response
2012-04-29 10:39:49 +08:00
Senthil Kumaran
aa872d1690
3.2 - Fix for Issue13684 - httplib tunnel infinite loop
2012-04-23 23:53:51 +08:00
Senthil Kumaran
b12771ab30
3.2 - Fix for Issue13684 - httplib tunnel infinite loop
2012-04-23 23:50:07 +08:00
Antoine Pitrou
f7e7818e24
Issue #13713 : fix a regression in HTTP chunked reading after 806cfe39f729
...
(originally issue #13464 : Add a readinto() method to http.client.HTTPResponse)
2012-01-04 18:57:22 +01:00
Antoine Pitrou
4ce6aa4ba7
Fix dangling whitespace
2011-12-06 22:34:36 +01:00
Antoine Pitrou
38d9643d5e
Issue #13464 : Add a readinto() method to http.client.HTTPResponse.
...
Patch by Jon Kuhn.
2011-12-06 22:33:57 +01:00
Łukasz Langa
6c4e1aed4b
Merged fix for #10860 from 3.2
2011-10-19 02:04:46 +02:00
Łukasz Langa
a5a9a9c369
Fixes #10860 : Handle empty port after port delimiter in httplib
2011-10-18 21:17:39 +02:00
Senthil Kumaran
ad87fa6719
Issue #13073 - Address the review comments made by Ezio.
2011-10-05 23:26:49 +08:00
Senthil Kumaran
91a076a72f
merge from 3.2. Issue #13073 - Address the review comments made by Ezio.
2011-10-05 23:27:37 +08:00
Georg Brandl
83fad3e2ce
Merge with 3.2.
2011-08-03 08:29:12 +02:00
Georg Brandl
25e2cd1388
Fix spacing in string literal.
2011-08-03 08:27:00 +02:00
Senthil Kumaran
d61535d50b
Fix closes Issue12676 - Invalid identifier used in TypeError message in http.client.
...
Reported by Popa Claudiu and Patch by Santoso Wijaya.
2011-08-02 18:34:53 +08:00
Senthil Kumaran
eb71ad4c71
Fix closes Issue12676 - Invalid identifier used in TypeError message in http.client.
...
Reported by Popa Claudiu and Patch by Santoso Wijaya.
2011-08-02 18:33:41 +08:00
Ezio Melotti
4969f709cc
#11515 : Merge with 3.1.
2011-03-15 05:59:46 +02:00
Ezio Melotti
42da663e6f
#11515 : fix several typos. Patch by Piotr Kasprzyk.
2011-03-15 05:18:48 +02:00
Ezio Melotti
373089239b
#11515 : Merge with 3.2.
2011-03-15 06:03:08 +02:00
Marc-André Lemburg
8f36af7a4c
Normalize the encoding names for Latin-1 and UTF-8 to
...
'latin-1' and 'utf-8'.
These are optimized in the Python Unicode implementation
to result in more direct processing, bypassing the codec
registry.
Also see issue11303.
2011-02-25 15:42:01 +00:00
Georg Brandl
2774310c27
Merged revisions 87627,87638,87739,87760,87771,87787,87984,87986,88108,88115,88144,88165,88329,88364-88365,88369-88370,88423-88424 via svnmerge from
...
svn+ssh://svn.python.org/python/branches/py3k
........
r87627 | georg.brandl | 2011-01-02 15:23:43 +0100 (So, 02 Jan 2011) | 1 line
#1665333 : add more docs for optparse.OptionGroup.
........
r87638 | georg.brandl | 2011-01-02 20:07:51 +0100 (So, 02 Jan 2011) | 1 line
Fix code indentation.
........
r87739 | georg.brandl | 2011-01-04 18:27:13 +0100 (Di, 04 Jan 2011) | 1 line
Fix exception catching.
........
r87760 | georg.brandl | 2011-01-05 11:59:48 +0100 (Mi, 05 Jan 2011) | 1 line
Fix duplicate end tag.
........
r87771 | georg.brandl | 2011-01-05 22:47:47 +0100 (Mi, 05 Jan 2011) | 1 line
On Py3k, -tt and -3 are no-op and unsupported respectively.
........
r87787 | georg.brandl | 2011-01-06 10:15:45 +0100 (Do, 06 Jan 2011) | 1 line
Remove doc for nonexisting parameter.
........
r87984 | georg.brandl | 2011-01-13 08:24:40 +0100 (Do, 13 Jan 2011) | 1 line
Add semicolon for consistency.
........
r87986 | georg.brandl | 2011-01-13 08:31:18 +0100 (Do, 13 Jan 2011) | 1 line
Fix the example output of count().
........
r88108 | georg.brandl | 2011-01-19 09:42:03 +0100 (Mi, 19 Jan 2011) | 1 line
Suppress trailing spaces in table paragraphs.
........
r88115 | georg.brandl | 2011-01-19 21:05:49 +0100 (Mi, 19 Jan 2011) | 1 line
#10944 : add c_bool to types table.
........
r88144 | georg.brandl | 2011-01-22 23:06:24 +0100 (Sa, 22 Jan 2011) | 1 line
#10983 : fix several bugs in the _tunnel implementation that seem to have missed while porting between branches. A unittest is needed!
........
r88165 | georg.brandl | 2011-01-24 20:53:18 +0100 (Mo, 24 Jan 2011) | 1 line
Typo fix.
........
r88329 | georg.brandl | 2011-02-03 08:08:25 +0100 (Do, 03 Feb 2011) | 1 line
Punctuation typos.
........
r88364 | georg.brandl | 2011-02-07 13:10:46 +0100 (Mo, 07 Feb 2011) | 1 line
#11138 : fix order of fill and align specifiers.
........
r88365 | georg.brandl | 2011-02-07 13:13:58 +0100 (Mo, 07 Feb 2011) | 1 line
#8691 : document that right alignment is default for numbers.
........
r88369 | georg.brandl | 2011-02-07 16:30:45 +0100 (Mo, 07 Feb 2011) | 1 line
Consistent heading spacing, and fix two typos.
........
r88370 | georg.brandl | 2011-02-07 16:44:27 +0100 (Mo, 07 Feb 2011) | 1 line
Spelling fixes.
........
r88423 | georg.brandl | 2011-02-15 13:41:17 +0100 (Di, 15 Feb 2011) | 1 line
Apply logging SocketHandler doc update by Vinay.
........
r88424 | georg.brandl | 2011-02-15 13:44:43 +0100 (Di, 15 Feb 2011) | 1 line
Remove editing slip.
........
2011-02-25 10:18:11 +00:00
Georg Brandl
c7c199f907
#10983 : fix several bugs in the _tunnel implementation that seem to have missed while porting between branches. A unittest is needed!
2011-01-22 22:06:24 +00:00
Armin Ronacher
59531287fd
To match the behaviour of HTTP server, the HTTP client library now also encodes
...
headers with iso-8859-1 (latin1) encoding. It was already doing that for
incoming headers which makes this behaviour now consistent in both incoming and
outgoing direction.
2011-01-22 13:44:22 +00:00
Senthil Kumaran
1e991f2de5
Fix some mistakes- Issue3243 (r87399) Correcting the operator precendence
...
problem with Content-Length header and uncommenting the test.
2010-12-24 04:03:59 +00:00
Senthil Kumaran
7bc0d872dd
Issue3243 - Support iterable bodies in httplib. Patch contributions by Xuanji Li and Chris AtLee.
2010-12-19 10:49:52 +00:00
Antoine Pitrou
ff1bbba92a
Merged revisions 87373,87381 via svnmerge from
...
svn+ssh://pythondev@svn.python.org/python/branches/py3k
........
r87373 | senthil.kumaran | 2010-12-18 17:55:23 +0100 (sam., 18 déc. 2010) | 3 lines
Fix Issue6791 - Limit the HTTP header readline with _MAXLENGTH. Patch by Antoine Pitrou
........
r87381 | antoine.pitrou | 2010-12-18 18:59:18 +0100 (sam., 18 déc. 2010) | 3 lines
NEWS entry for r87373
........
2010-12-18 18:04:38 +00:00
Senthil Kumaran
5466bf1c94
Fix Issue6791 - Limit the HTTP header readline with _MAXLENGTH. Patch by Antoine Pitrou
2010-12-18 16:55:23 +00:00
Antoine Pitrou
988dbd7bc2
Issue #10711 : Remove HTTP 0.9 support from http.client. The `strict`
...
parameter to HTTPConnection and friends is deprecated.
2010-12-17 17:35:56 +00:00
Senthil Kumaran
2e89cf3465
Merged revisions 86450 via svnmerge from
...
svn+ssh://pythondev@svn.python.org/python/branches/py3k
........
r86450 | senthil.kumaran | 2010-11-13 20:27:49 +0800 (Sat, 13 Nov 2010) | 3 lines
Fix Issue5111 - Wrap the Ipv6 host with [] in the Host header
........
2010-11-14 03:14:52 +00:00
Senthil Kumaran
74ebd9e6a3
Fix Issue5111 - Wrap the Ipv6 host with [] in the Host header
2010-11-13 12:27:49 +00:00
Antoine Pitrou
d532321f7b
Issue #5639 : Add a *server_hostname* argument to `SSLContext.wrap_socket`
...
in order to support the TLS SNI extension. `HTTPSConnection` and
`urlopen()` also use this argument, so that HTTPS virtual hosts are now
supported.
2010-10-22 18:19:07 +00:00
Antoine Pitrou
8060399654
Typo. It is rather obvious that this code isn't tested :/
2010-10-13 10:45:16 +00:00
Antoine Pitrou
803e6d670c
Issue #9003 : http.client.HTTPSConnection, urllib.request.HTTPSHandler and
...
urllib.request.urlopen now take optional arguments to allow for
server certificate checking, as recommended in public uses of HTTPS.
2010-10-13 10:36:15 +00:00
Antoine Pitrou
fa9c38d8e9
FakeSocket is (supposed to be) gone in 3.x
2010-10-06 18:38:22 +00:00
Senthil Kumaran
97304567a7
Merged revisions 85205 via svnmerge from
...
svn+ssh://pythondev@svn.python.org/python/branches/py3k
........
r85205 | senthil.kumaran | 2010-10-03 23:52:42 +0530 (Sun, 03 Oct 2010) | 3 lines
Fix Issue10012 - httplib headers, which are (sometimes mistakenly) int are explicitly cast to str (bytes - in py3k).
........
2010-10-03 18:25:01 +00:00
Senthil Kumaran
58d5dbf80b
Fix Issue10012 - httplib headers, which are (sometimes mistakenly) int are explicitly cast to str (bytes - in py3k).
2010-10-03 18:22:42 +00:00
Senthil Kumaran
996e13c838
Merged revisions 85169 via svnmerge from
...
svn+ssh://pythondev@svn.python.org/python/branches/py3k
........
r85169 | senthil.kumaran | 2010-10-02 16:03:13 +0530 (Sat, 02 Oct 2010) | 3 lines
Use proper variable name 'data' instead of 'str' in the send method.
........
2010-10-02 10:35:24 +00:00
Senthil Kumaran
5a2da3b3ad
Use proper variable name 'data' instead of 'str' in the send method.
2010-10-02 10:33:13 +00:00
Senthil Kumaran
3357840baf
Merged revisions 83521 via svnmerge from
...
svn+ssh://pythondev@svn.python.org/python/branches/py3k
........
r83521 | senthil.kumaran | 2010-08-02 16:34:58 +0530 (Mon, 02 Aug 2010) | 3 lines
Fix Issue8572 - httplib getheader() throws error instead of default
........
2010-08-02 12:01:21 +00:00