<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/cpython-git.git/Lib/http, branch benjamin-pyapi</title>
<subtitle>github.com: python/cpython.git
</subtitle>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/'/>
<entry>
<title>bpo-33365: print the header values beside the keys (GH-6611)</title>
<updated>2018-06-19T13:20:58+00:00</updated>
<author>
<name>Marco Strigl</name>
<email>mstrigl@suse.com</email>
</author>
<published>2018-06-19T13:20:58+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=936f03e7fafc28fd6fdfba11d162c776b89c0167'/>
<id>936f03e7fafc28fd6fdfba11d162c776b89c0167</id>
<content type='text'>
with debuglevel=1 only the header keys got printed. With
this change the header values get printed as well and the single
header entries get '\n' as a separator.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
with debuglevel=1 only the header keys got printed. With
this change the header values get printed as well and the single
header entries get '\n' as a separator.</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-33663: Convert content length to string before putting to header (GH-7754)</title>
<updated>2018-06-18T21:17:53+00:00</updated>
<author>
<name>ValeriyaSinevich</name>
<email>valeriya.sinevich@phystech.edu</email>
</author>
<published>2018-06-18T21:17:53+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=b36b0a3765bcacb4dcdbf12060e9e99711855da8'/>
<id>b36b0a3765bcacb4dcdbf12060e9e99711855da8</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-31639: Change ThreadedHTTPServer to ThreadingHTTPServer class name (GH-7195)</title>
<updated>2018-05-29T20:10:30+00:00</updated>
<author>
<name>Géry Ogam</name>
<email>gery.ogam@gmail.com</email>
</author>
<published>2018-05-29T20:10:30+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=1cee216cf383eade641aed22f4ec7d4cb565ecff'/>
<id>1cee216cf383eade641aed22f4ec7d4cb565ecff</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-991266: Fix quoting of Comment attribute of SimpleCookie (GH-6555)</title>
<updated>2018-04-22T23:48:11+00:00</updated>
<author>
<name>Berker Peksag</name>
<email>berker.peksag@gmail.com</email>
</author>
<published>2018-04-22T23:48:11+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=d5a2377c3d70e4143bcbee4a765b3434e21f683a'/>
<id>d5a2377c3d70e4143bcbee4a765b3434e21f683a</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Removed a confusing line from a docstring in http.cookies (GH-6482)</title>
<updated>2018-04-15T21:23:47+00:00</updated>
<author>
<name>Alex Gaynor</name>
<email>alex.gaynor@gmail.com</email>
</author>
<published>2018-04-15T21:23:47+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=afbbac12a517818a1efa88f7bea18e82b68a79d4'/>
<id>afbbac12a517818a1efa88f7bea18e82b68a79d4</id>
<content type='text'>
There's no reason a cookie should _ever_ contain pickled data. That's just asking for a critical security vulnerability. Back in Python2 there were helpers for doing that, but they're no more in Python3. Now coded_value is used when the value needs to be encoded for any reason.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
There's no reason a cookie should _ever_ contain pickled data. That's just asking for a critical security vulnerability. Back in Python2 there were helpers for doing that, but they're no more in Python3. Now coded_value is used when the value needs to be encoded for any reason.</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-29613: Added support for SameSite cookies (GH-6413)</title>
<updated>2018-04-07T20:09:42+00:00</updated>
<author>
<name>Alex Gaynor</name>
<email>alex.gaynor@gmail.com</email>
</author>
<published>2018-04-07T20:09:42+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=c87eb09d2e3783b0b5dc0d7cb304050cbcc86ad3'/>
<id>c87eb09d2e3783b0b5dc0d7cb304050cbcc86ad3</id>
<content type='text'>
* bpo-29613: Added support for SameSite cookies

Implemented as per draft
https://tools.ietf.org/html/draft-west-first-party-cookies-07

* Documented SameSite

And suggestions by members.

* Missing space :(

* Updated News and contributors

* Added version changed details.

* Fix in documentation

* fix in documentation

* Clubbed test cases for same attribute into single.

* Updates

* Style nits + expand tests

* review feedback
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* bpo-29613: Added support for SameSite cookies

Implemented as per draft
https://tools.ietf.org/html/draft-west-first-party-cookies-07

* Documented SameSite

And suggestions by members.

* Missing space :(

* Updated News and contributors

* Added version changed details.

* Fix in documentation

* fix in documentation

* Clubbed test cases for same attribute into single.

* Updates

* Style nits + expand tests

* review feedback
</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-31639: Use threads in http.server module. (GH-5018)</title>
<updated>2018-03-23T16:40:33+00:00</updated>
<author>
<name>Julien Palard</name>
<email>julien@palard.fr</email>
</author>
<published>2018-03-23T16:40:33+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=8bcfa02e4b1b65634e526e197588bc600674c80b'/>
<id>8bcfa02e4b1b65634e526e197588bc600674c80b</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-31399: Let OpenSSL verify hostname and IP address (#3462)</title>
<updated>2018-01-27T14:51:38+00:00</updated>
<author>
<name>Christian Heimes</name>
<email>christian@python.org</email>
</author>
<published>2018-01-27T14:51:38+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=61d478c71c5341cdc54e6bfb4ace4252852fd972'/>
<id>61d478c71c5341cdc54e6bfb4ace4252852fd972</id>
<content type='text'>
bpo-31399: Let OpenSSL verify hostname and IP

The ssl module now uses OpenSSL's X509_VERIFY_PARAM_set1_host() and
X509_VERIFY_PARAM_set1_ip() API to verify hostname and IP addresses.

* Remove match_hostname calls
* Check for libssl with set1_host, libssl must provide X509_VERIFY_PARAM_set1_host()
* Add documentation for OpenSSL 1.0.2 requirement
* Don't support OpenSSL special mode with a leading dot, e.g. ".example.org" matches "www.example.org". It's not standard conform.
* Add hostname_checks_common_name

Signed-off-by: Christian Heimes &lt;christian@python.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
bpo-31399: Let OpenSSL verify hostname and IP

The ssl module now uses OpenSSL's X509_VERIFY_PARAM_set1_host() and
X509_VERIFY_PARAM_set1_ip() API to verify hostname and IP addresses.

* Remove match_hostname calls
* Check for libssl with set1_host, libssl must provide X509_VERIFY_PARAM_set1_host()
* Add documentation for OpenSSL 1.0.2 requirement
* Don't support OpenSSL special mode with a leading dot, e.g. ".example.org" matches "www.example.org". It's not standard conform.
* Add hostname_checks_common_name

Signed-off-by: Christian Heimes &lt;christian@python.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-32297: Few misspellings found in Python source code comments. (#4803)</title>
<updated>2017-12-14T11:04:53+00:00</updated>
<author>
<name>Mike</name>
<email>mehanig@gmail.com</email>
</author>
<published>2017-12-14T11:04:53+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=53f7a7c2814fbfd8a29200926601a32fa48bacb3'/>
<id>53f7a7c2814fbfd8a29200926601a32fa48bacb3</id>
<content type='text'>
* Fix multiple typos in code comments

* Add spacing in comments (test_logging.py, test_math.py)

* Fix spaces at the beginning of comments in test_logging.py
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Fix multiple typos in code comments

* Add spacing in comments (test_logging.py, test_math.py)

* Fix spaces at the beginning of comments in test_logging.py
</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-31945: Configurable blocksize in HTTP(S)Connection (#4279)</title>
<updated>2017-11-06T21:16:37+00:00</updated>
<author>
<name>Nir Soffer</name>
<email>nirsof@gmail.com</email>
</author>
<published>2017-11-06T21:16:37+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=ad455cd9243319b896c86074ffeb3bf78a82f4ec'/>
<id>ad455cd9243319b896c86074ffeb3bf78a82f4ec</id>
<content type='text'>
blocksize was hardcoded to 8192, preventing efficient upload when using
file-like body. Add blocksize argument to __init__, so users can
configure the blocksize to fit their needs.

I tested this uploading data from /dev/zero to a web server dropping the
received data, to test the overhead of the HTTPConnection.send() with a
file-like object.

Here is an example 10g upload with the default buffer size (8192):

$ time ~/src/cpython/release/python upload-httplib.py 10 https://localhost:8000/
Uploaded 10.00g in 17.53 seconds (584.00m/s)

real	0m17.574s
user	0m8.887s
sys	0m5.971s

Same with 512k blocksize:

$ time ~/src/cpython/release/python upload-httplib.py 10 https://localhost:8000/
Uploaded 10.00g in 6.60 seconds (1551.15m/s)

real	0m6.641s
user	0m3.426s
sys	0m2.162s

In real world usage the difference will be smaller, depending on the
local and remote storage and the network.

See https://github.com/nirs/http-bench for more info.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
blocksize was hardcoded to 8192, preventing efficient upload when using
file-like body. Add blocksize argument to __init__, so users can
configure the blocksize to fit their needs.

I tested this uploading data from /dev/zero to a web server dropping the
received data, to test the overhead of the HTTPConnection.send() with a
file-like object.

Here is an example 10g upload with the default buffer size (8192):

$ time ~/src/cpython/release/python upload-httplib.py 10 https://localhost:8000/
Uploaded 10.00g in 17.53 seconds (584.00m/s)

real	0m17.574s
user	0m8.887s
sys	0m5.971s

Same with 512k blocksize:

$ time ~/src/cpython/release/python upload-httplib.py 10 https://localhost:8000/
Uploaded 10.00g in 6.60 seconds (1551.15m/s)

real	0m6.641s
user	0m3.426s
sys	0m2.162s

In real world usage the difference will be smaller, depending on the
local and remote storage and the network.

See https://github.com/nirs/http-bench for more info.</pre>
</div>
</content>
</entry>
</feed>
