Skip to content

Commit

Permalink
Merging new release version: 1.24
Browse files Browse the repository at this point in the history
  • Loading branch information
theacodes committed Oct 16, 2018
2 parents 7c216f4 + a0964d9 commit ef0c745
Show file tree
Hide file tree
Showing 72 changed files with 513 additions and 716 deletions.
21 changes: 13 additions & 8 deletions .coveragerc
@@ -1,14 +1,19 @@
[run]
include =
urllib3/*
source =
urllib3

omit =
urllib3/packages/*
urllib3/contrib/appengine.py
urllib3/contrib/ntlmpool.py
urllib3/contrib/pyopenssl.py
urllib3/contrib/securetransport.py
urllib3/contrib/_securetransport/*
*urllib3/packages/*
*urllib3/contrib/appengine.py
*urllib3/contrib/ntlmpool.py
*urllib3/contrib/pyopenssl.py
*urllib3/contrib/securetransport.py
*urllib3/contrib/_securetransport/*

[paths]
source =
src/urllib3
.tox/*/site-packages/urllib3

[report]
exclude_lines =
Expand Down
5 changes: 0 additions & 5 deletions .travis.yml
Expand Up @@ -23,8 +23,6 @@ env:
# https://github.com/travis-ci/travis-ci/issues/4794
matrix:
include:
- python: 2.6
env: TOXENV=py26
- python: 2.7
env: TOXENV=py27
- python: 3.4
Expand All @@ -37,9 +35,6 @@ matrix:
env: TOXENV=py37
- python: pypy-5.4
env: TOXENV=pypy
- language: generic
os: osx
env: TOXENV=py26
- language: generic
os: osx
env: TOXENV=py27
Expand Down
26 changes: 26 additions & 0 deletions CHANGES.rst
@@ -1,6 +1,32 @@
Changes
=======

1.24 (2018-10-16)
-----------------

* Allow key_server_hostname to be specified when initializing a PoolManager to allow custom SNI to be overridden. (Pull #1449)

* Test against Python 3.7 on AppVeyor. (Pull #1453)

* Early-out ipv6 checks when running on App Engine. (Pull #1450)

* Change ambiguous description of backoff_factor (Pull #1436)

* Add ability to handle multiple Content-Encodings (Issue #1441 and Pull #1442)

* Skip DNS names that can't be idna-decoded when using pyOpenSSL (Issue #1405).

* Add a server_hostname parameter to HTTPSConnection which allows for
overriding the SNI hostname sent in the handshake. (Pull #1397)

* Drop support for EOL Python 2.6 (Pull #1429 and Pull #1430)

* Fixed bug where responses with header Content-Type: message/* erroneously
raised HeaderParsingError, resulting in a warning being logged. (Pull #1439)

* Move urllib3 to src/urllib3 (Pull #1409)


1.23 (2018-06-04)
-----------------

Expand Down
23 changes: 18 additions & 5 deletions CONTRIBUTORS.txt
Expand Up @@ -30,7 +30,7 @@ In chronological order:
* kennethreitz <me@kennethreitz.com>
* Bugfixes, suggestions, Requests integration

* georgemarshall <http://github.com/georgemarshall>
* georgemarshall <https://github.com/georgemarshall>
* Bugfixes, Improvements and Test coverage

* Thomas Kluyver <thomas@kluyver.me.uk>
Expand Down Expand Up @@ -67,7 +67,7 @@ In chronological order:
* Boris Figovsky <boris.figovsky@ravellosystems.com>
* Allowed to skip SSL hostname verification

* Cory Benfield <http://lukasa.co.uk/about/>
* Cory Benfield <https://lukasa.co.uk/about/>
* Stream method for Response objects.
* Return native strings in header values.
* Generate 'Host' header when using proxies.
Expand Down Expand Up @@ -96,7 +96,7 @@ In chronological order:
* Nipunn Koorapati <nipunn1313@gmail.com>
* Ignore default ports when comparing hosts for equality

* Danilo @dbrgn <http://dbrgn.ch/>
* Danilo @dbrgn <https://dbrgn.ch/>
* Disabled TLS compression by default on Python 3.2+
* Disabled TLS compression in pyopenssl contrib module
* Configurable cipher suites in pyopenssl contrib module
Expand All @@ -114,7 +114,7 @@ In chronological order:
* Tahia Khan <http://tahia.tk/>
* Added Timeout examples in docs

* Arthur Grunseid <http://grunseid.com>
* Arthur Grunseid <https://grunseid.com>
* source_address support and tests (with https://github.com/bui)

* Ian Cordasco <graffatcolmingov@gmail.com>
Expand Down Expand Up @@ -151,8 +151,9 @@ In chronological order:
* David D. Riddle <ddriddle@illinois.edu>
* IPv6 bugfixes in testsuite

* Jon Wayne Parrott <jonwayne@google.com>
* Thea Flowers <magicalgirl@google.com>
* App Engine environment tests.
* Documentation re-write.

* John Krauss <https://github.com/talos>
* Clues to debugging problems with `cryptography` dependency in docs
Expand Down Expand Up @@ -259,5 +260,17 @@ In chronological order:
* Improve contribution guide
* Add ``HTTPResponse.geturl`` method to provide ``urllib2.urlopen().geturl()`` behavior

* Bruce Merry <https://www.brucemerry.org.za>
* Fix leaking exceptions when system calls are interrupted with zero timeout

* Hugo van Kemenade <https://github.com/hugovk>
* Drop support for EOL Python 2.6

* Tim Bell <https://github.com/timb07>
* Bugfix for responses with Content-Type: message/* logging warnings

* Justin Bramley <https://github.com/jbramleycl>
* Add ability to handle multiple Content-Encodings

* [Your name or handle] <[email or website]>
* [Brief summary of your changes]
8 changes: 0 additions & 8 deletions _travis/install.sh
Expand Up @@ -17,18 +17,10 @@ if [[ "$(uname -s)" == 'Darwin' ]]; then
eval "$(pyenv init -)"

case "${TOXENV}" in
py26)
pyenv install 2.6.9
pyenv global 2.6.9
;;
py27)
pyenv install 2.7.14
pyenv global 2.7.14
;;
py33)
pyenv install 3.3.6
pyenv global 3.3.6
;;
py34)
pyenv install 3.4.7
pyenv global 3.4.7
Expand Down
6 changes: 6 additions & 0 deletions appveyor.yml
Expand Up @@ -30,6 +30,12 @@ environment:
PYTHON_ARCH: "64"
TOXENV: "py36"
TOXPY36: "%PYTHON%\\python.exe"

- PYTHON: "C:\\Python37-x64"
PYTHON_VERSION: "3.7.x"
PYTHON_ARCH: "64"
TOXENV: "py37"
TOXPY37: "%PYTHON%\\python.exe"

cache:
- C:\Users\appveyor\AppData\Local\pip\Cache
Expand Down
26 changes: 13 additions & 13 deletions dev-requirements.txt
@@ -1,13 +1,13 @@
mock==1.3.0
coverage==3.7.1
tox==2.1.1
twine==1.5.0
wheel==0.24.0
tornado==4.2.1
PySocks==1.5.6
pkginfo>=1.0,!=1.3.0
psutil==4.3.1
pytest-cov==2.5.1
pytest-timeout==1.2.0
pytest==3.1.0
gcp-devrel-py-tools==0.0.7
mock==2.0.0
coverage==4.5.1
tox==2.9.1
twine==1.11.0
wheel==0.30.0
tornado==5.0.2
PySocks==1.6.8
pkginfo==1.4.2
pytest-timeout==1.3.1
pytest==3.6.4
# https://github.com/GoogleCloudPlatform/python-repo-tools/issues/23
pylint<2.0;python_version<="2.7"
gcp-devrel-py-tools==0.0.15
2 changes: 1 addition & 1 deletion docs/advanced-usage.rst
Expand Up @@ -227,7 +227,7 @@ Alternatively you can capture the warnings with the standard :mod:`logging` modu

Finally, you can suppress the warnings at the interpreter level by setting the
``PYTHONWARNINGS`` environment variable or by using the
`-W flag <https://docs.python.org/2/using/cmdline.html#cmdoption-W>`_.
`-W flag <https://docs.python.org/3/using/cmdline.html#cmdoption-w>`_.

Google App Engine
-----------------
Expand Down
7 changes: 4 additions & 3 deletions docs/contributing.rst
Expand Up @@ -55,11 +55,12 @@ suite::

$ make test-all
[... tox creates a virtualenv for every platform and runs tests inside of each]
py26: commands succeeded
py27: commands succeeded
py32: commands succeeded
py33: commands succeeded
py34: commands succeeded
py35: commands succeeded
py36: commands succeeded
py37: commands succeeded
pypy: commands succeeded

Our test suite `runs continuously on Travis CI
<https://travis-ci.org/urllib3/urllib3>`_ with every pull request.
Expand Down
26 changes: 13 additions & 13 deletions dummyserver/certs/client_intermediate.key
@@ -1,15 +1,15 @@
-----BEGIN RSA PRIVATE KEY-----
MIICWwIBAAKBgQCadkbPLXPfA1bNjgL9F6+rVLs3uZdbXemHf1oKkT4q9uruZTQC
TDFvvWHq32r6G8KV7MASariSz+bIgpx1euZEOmwucd+ULs0HMdfqorRa3MuUtKuI
zYiQvCsv788VoNKjs+NNMIexO6p6S9E36ce2trzeBCmpYmi0WofO0bSwnwIDAQAB
AoGAXP/nxGfmgxj8k4j0rbQsNekvS+73fbB+ofGAoiovFylR7DWM6fE8Nr39DbB1
NZ+vOhuwzaXp+aMpngJd97IGn5BPJ0QBEvNcypUxzh0xyRMm+a2xIZ+8TL+rJsas
k+oH/AQ6IcVlZFM5IQl5kAe1aq7VLnsi8KvrvljmxhzC9tECQQDMLl4FliIbfDHs
GipTcWpdEhqfiH5FJkwT9rIS7+naa+QnbIS6vbMWnQp8OWumWcqpLJ7Zi9nOhrLO
7a4CxuiHAkEAwampqF4ipKSYxI3/2BhfIN3pxXL5gNbPmU2nnNDhk8I3+rc+zLeg
tEePDU6X59AhjKB6IANC0F2LQaxkHX61KQJAPR+IT/3Qug+k1jxC/XXPVItN4wI2
YrcDQVqxlk+x3ww7Yb3vwgN18EgU0nlSC5uHurs71n4yNsxGDQJD/FrVUwJAbQf5
RZpiBLHKdHbBwMbP3/AwKgL2J6xIyrWmlSogphCldZjvWVBUwMq85jAGY/OQv9yl
hRpw5mCUA1BsORLaKQJAOQdFHzTrSRwoWemg9+5PDM0uVbLISnrKBDOUdUBouEbJ
6qRUz1oUiBrIIIen6acaaJRS0aT+eWgm0gY7m7DmTg==
MIICXAIBAAKBgQCnhO+uflrNWXQvOrX2eS7y041pbkIJrE8dqO8YWADhZk22W+qj
Swg0tO0dVT++L3ulJRQ+eXFfFW8bxGXfGdyzgAxep0zetVz243Z9iehn7Eo2hxOv
piQ14QrVaw+BBnQ+J10XpuPJo7KwJK7yfL+IEDcxs0Nuw9nVkweyI+pljQIDAQAB
AoGBAKDRMtNeA8etP6dzgmn6TkLZKqFzMrxciZscqWPCYB4Ce0o8lVVr25XVtuf5
BfeLV/TjUrrjFR5F0mNiuLVj+4VdIj0TNLioEfjY9D0X5PGCBA9zpsyHMVwpF9Jb
2+DF9Fh0+igocHOnrlEED5i/dWhP21eE20ohn6v5/DHD/ssBAkEA0J5iVfNwENvb
Dij5BLI+Y+aZMHMwS+QTPDieantj20QpBl1tU5bmKAlIRKbeMSpzSVH0l2Pe91Ga
BKz/S3KrzQJBAM2Q7d7+2V1dH3u/i+75+e4O9zYOy20fd9WSWrquPgv4WRd/yv80
R23Niyr97piM8r0jszsJ1JG1KwRdxIQyYMECQGAGZ1EUyqKX8E6mQWkN+nXVcPHC
M5rbEpeHoDN3NFF7ID8TxfzR2oLXMvKWtHOBDKvVE3aTu8+vOeupDaHW2IkCQCSb
lbDro5v71Hp+LxZc0AR0B9RJqDKDsxyGlr+9/fC1xm/n4ye1kK7eNtVuKUpjd2r1
a5qs8n0MTV/WrwN30UECQAb1m0hOdsc3CvVRQl6fTU3h8e870O0E2DeU3it7JqnG
CswUAMKCVeVTJbnXh/SFbcJLc6Gksz8SNZPsjb1qswo=
-----END RSA PRIVATE KEY-----
62 changes: 29 additions & 33 deletions dummyserver/certs/client_intermediate.pem
@@ -1,37 +1,33 @@
-----BEGIN CERTIFICATE-----
MIIC/jCCAmegAwIBAgImFhgDOYh0mJSEggRYaDQ2VjgRdyAwkXmAV2KGITVEhiJw
UmBGKBgwDQYJKoZIhvcNAQELBQAwcTELMAkGA1UEBhMCRkkxDjAMBgNVBAgMBWR1
bW15MQ4wDAYDVQQKDAVkdW1teTEOMAwGA1UECwwFZHVtbXkxETAPBgNVBAMMCFNu
YWtlT2lsMR8wHQYJKoZIhvcNAQkBFhBkdW1teUB0ZXN0LmxvY2FsMB4XDTE3MDUx
MjE4MzQyNloXDTIxMTIxOTE4MzQyNlowdzELMAkGA1UEBhMCRkkxDjAMBgNVBAgM
BWR1bW15MQ4wDAYDVQQKDAVkdW1teTEOMAwGA1UECwwFZHVtbXkxFzAVBgNVBAMM
DlNuYWtlT2lsQ2xpZW50MR8wHQYJKoZIhvcNAQkBFhBkdW1teUB0ZXN0LmxvY2Fs
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCadkbPLXPfA1bNjgL9F6+rVLs3
uZdbXemHf1oKkT4q9uruZTQCTDFvvWHq32r6G8KV7MASariSz+bIgpx1euZEOmwu
cd+ULs0HMdfqorRa3MuUtKuIzYiQvCsv788VoNKjs+NNMIexO6p6S9E36ce2trze
BCmpYmi0WofO0bSwnwIDAQABo3sweTAJBgNVHRMEAjAAMCwGCWCGSAGG+EIBDQQf
Fh1PcGVuU1NMIEdlbmVyYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQUbe9reSw2
C72JuGVpc+/L/O2hVjwwHwYDVR0jBBgwFoAUnltsnuh2mjtqqDWk2RNSwC7njHkw
DQYJKoZIhvcNAQELBQADgYEADlJp3uMKxgS2hgCK+JZV4qsXGuZ/rcHgq5qlrfg0
i76+wwZ6fs3WQe+zNgXbJnRviM0VScSUBM8IuclyovFWLvs0Z0piELtZ7KPwrDVf
5S5ynJHnJSG+sj4N6v+tvtpGDb1S3ueLQm79MGXv9pmbaYBmUJ0YSEnrScWy90Bv
Tno=
MIIChzCCAfCgAwIBAgIUZgix95Zxzc+WryIWanrDezW1VjcwDQYJKoZIhvcNAQEL
BQAwRDEbMBkGA1UECgwSdHJ1c3RtZSB2MC40LjArZGV2MSUwIwYDVQQLDBxUZXN0
aW5nIENBICNwN2dEd0tMS3EydlJOajZmMCAXDTAwMDEwMTAwMDAwMFoYDzMwMDAw
MTAxMDAwMDAwWjBNMRswGQYDVQQKDBJ0cnVzdG1lIHYwLjQuMCtkZXYxLjAsBgNV
BAsMJVRlc3Rpbmcgc2VydmVyIGNlcnQgI0NPajVGVkxXWEVtcmFHNTQwgZ8wDQYJ
KoZIhvcNAQEBBQADgY0AMIGJAoGBAKeE765+Ws1ZdC86tfZ5LvLTjWluQgmsTx2o
7xhYAOFmTbZb6qNLCDS07R1VP74ve6UlFD55cV8VbxvEZd8Z3LOADF6nTN61XPbj
dn2J6GfsSjaHE6+mJDXhCtVrD4EGdD4nXRem48mjsrAkrvJ8v4gQNzGzQ27D2dWT
B7Ij6mWNAgMBAAGjazBpMB0GA1UdDgQWBBT66uW6I2OfZYacXgQkop4qlX+qJTAM
BgNVHRMBAf8EAjAAMB8GA1UdIwQYMBaAFESoDYfzVyFP3QHyZG9cvxmlBIGsMBkG
A1UdEQEB/wQPMA2CC2xvY2FsY2xpZW50MA0GCSqGSIb3DQEBCwUAA4GBAG8zoqW0
w5ROSuNFE7fi5I4bdC6sbddiFRXX//TkP2vRD3cM11AKp52UjzK2nUrkoigrJ5p8
xa/PGnPfOVCPiKIb1kzeI/7tyBet6n3q2L0wQo3PR/QCHeSiIpm8lAi1a+8ShXFM
F2CG+z7IN0cQO4bzcwtkk8MhcCsMP14K5PK2
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIC3jCCAkegAwIBAgImMUFZJlNYl5MjhGJkM4MnlQKIQZcWk5k3UQWCCXSURZIw
eBZAYoYwDQYJKoZIhvcNAQELBQAwgYExCzAJBgNVBAYTAkZJMQ4wDAYDVQQIDAVk
dW1teTEOMAwGA1UEBwwFZHVtbXkxDjAMBgNVBAoMBWR1bW15MQ4wDAYDVQQLDAVk
dW1teTERMA8GA1UEAwwIU25ha2VPaWwxHzAdBgkqhkiG9w0BCQEWEGR1bW15QHRl
c3QubG9jYWwwHhcNMTcwNTEyMTgyMDUyWhcNMjExMjE5MTgyMDUyWjBxMQswCQYD
VQQGEwJGSTEOMAwGA1UECAwFZHVtbXkxDjAMBgNVBAoMBWR1bW15MQ4wDAYDVQQL
DAVkdW1teTERMA8GA1UEAwwIU25ha2VPaWwxHzAdBgkqhkiG9w0BCQEWEGR1bW15
QHRlc3QubG9jYWwwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAMQE4WdDs9Tl
Oop5/EfRVBnSDF/Wzwyu28IfDYOi5f50CaB5tzEgGjcjhaVHYg6rDTHk2v3/N82g
7xQRWKhW+GxlddpMJjObiOOzhvH3Xam97xEf+rlnyl0cuhRbwcNH3GIm6hE5f/Qq
YPstYBuP6SZlUJ0DQQag2n/9uALo6X+7AgMBAAGjUDBOMB0GA1UdDgQWBBSeW2ye
6HaaO2qoNaTZE1LALueMeTAfBgNVHSMEGDAWgBQZd38jYmJCWUX7dZ3Hc3IEuzMK
LTAMBgNVHRMEBTADAQH/MA0GCSqGSIb3DQEBCwUAA4GBAGnXyMzPPe5o4tYasY0K
A9sgxg42rH1gAeDJXeG4QqLoVi9JKbOBXdJGN9ZWD9K4EASknwWsa0TWSv291jHN
4+Uz8bHZ+4mH5HMpXZPsHorHR2te2XCZGMNE1V/1N0Q8qQk8CoxDSl5l5n67W9DY
iTQB1g/ymK3/hnTohqkFj9xd
MIICwjCCAiugAwIBAgIUWL7wOmK0BVMR8LM5UBewDZEEuH0wDQYJKoZIhvcNAQEL
BQAwgYExCzAJBgNVBAYTAkZJMQ4wDAYDVQQIDAVkdW1teTEOMAwGA1UEBwwFZHVt
bXkxDjAMBgNVBAoMBWR1bW15MQ4wDAYDVQQLDAVkdW1teTERMA8GA1UEAwwIU25h
a2VPaWwxHzAdBgkqhkiG9w0BCQEWEGR1bW15QHRlc3QubG9jYWwwIBcNMDAwMTAx
MDAwMDAwWhgPMzAwMDAxMDEwMDAwMDBaMEQxGzAZBgNVBAoMEnRydXN0bWUgdjAu
NC4wK2RldjElMCMGA1UECwwcVGVzdGluZyBDQSAjcDdnRHdLTEtxMnZSTmo2ZjCB
nzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAr7134NKsqNQ44gIFElVC5KnGYIYv
D96Kv+5UgXVAyNNK4NpQXHVFmCZpSuyvlz4UZzFBoykISjU+vcGqbFqwRrYciPwh
45HVQgtoe0SSpze7sv0qsMJiGNRDK06nVI/aCHP9FRoD5iPq8E7lSNVYipai466G
1lEvVLb0SGNihAUCAwEAAaNxMG8wHQYDVR0OBBYEFESoDYfzVyFP3QHyZG9cvxml
BIGsMBIGA1UdEwEB/wQIMAYBAf8CAQgwDgYDVR0PAQH/BAQDAgEGMCoGA1UdJQEB
/wQgMB4GCCsGAQUFBwMCBggrBgEFBQcDAQYIKwYBBQUHAwMwDQYJKoZIhvcNAQEL
BQADgYEAEs9EAeL3300UxzmT4zyj2cHB2GQxisteEuz9VcWhrvyNDxQ3ko0BxG04
4fye7dpElrrbSq8PYkygA1qiBCN2NL+v78XWb2OYd7PptpbPehzaEpCTK37O+Num
sB4v1c63r2w1mH1lSjZDkJfd1hml+VwntSzuCmGERlroE6PQwf8=
-----END CERTIFICATE-----
31 changes: 14 additions & 17 deletions dummyserver/certs/client_no_intermediate.pem
@@ -1,19 +1,16 @@
-----BEGIN CERTIFICATE-----
MIIC/jCCAmegAwIBAgImFhgDOYh0mJSEggRYaDQ2VjgRdyAwkXmAV2KGITVEhiJw
UmBGKBgwDQYJKoZIhvcNAQELBQAwcTELMAkGA1UEBhMCRkkxDjAMBgNVBAgMBWR1
bW15MQ4wDAYDVQQKDAVkdW1teTEOMAwGA1UECwwFZHVtbXkxETAPBgNVBAMMCFNu
YWtlT2lsMR8wHQYJKoZIhvcNAQkBFhBkdW1teUB0ZXN0LmxvY2FsMB4XDTE3MDUx
MjE4MzQyNloXDTIxMTIxOTE4MzQyNlowdzELMAkGA1UEBhMCRkkxDjAMBgNVBAgM
BWR1bW15MQ4wDAYDVQQKDAVkdW1teTEOMAwGA1UECwwFZHVtbXkxFzAVBgNVBAMM
DlNuYWtlT2lsQ2xpZW50MR8wHQYJKoZIhvcNAQkBFhBkdW1teUB0ZXN0LmxvY2Fs
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCadkbPLXPfA1bNjgL9F6+rVLs3
uZdbXemHf1oKkT4q9uruZTQCTDFvvWHq32r6G8KV7MASariSz+bIgpx1euZEOmwu
cd+ULs0HMdfqorRa3MuUtKuIzYiQvCsv788VoNKjs+NNMIexO6p6S9E36ce2trze
BCmpYmi0WofO0bSwnwIDAQABo3sweTAJBgNVHRMEAjAAMCwGCWCGSAGG+EIBDQQf
Fh1PcGVuU1NMIEdlbmVyYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQUbe9reSw2
C72JuGVpc+/L/O2hVjwwHwYDVR0jBBgwFoAUnltsnuh2mjtqqDWk2RNSwC7njHkw
DQYJKoZIhvcNAQELBQADgYEADlJp3uMKxgS2hgCK+JZV4qsXGuZ/rcHgq5qlrfg0
i76+wwZ6fs3WQe+zNgXbJnRviM0VScSUBM8IuclyovFWLvs0Z0piELtZ7KPwrDVf
5S5ynJHnJSG+sj4N6v+tvtpGDb1S3ueLQm79MGXv9pmbaYBmUJ0YSEnrScWy90Bv
Tno=
MIIChzCCAfCgAwIBAgIUZgix95Zxzc+WryIWanrDezW1VjcwDQYJKoZIhvcNAQEL
BQAwRDEbMBkGA1UECgwSdHJ1c3RtZSB2MC40LjArZGV2MSUwIwYDVQQLDBxUZXN0
aW5nIENBICNwN2dEd0tMS3EydlJOajZmMCAXDTAwMDEwMTAwMDAwMFoYDzMwMDAw
MTAxMDAwMDAwWjBNMRswGQYDVQQKDBJ0cnVzdG1lIHYwLjQuMCtkZXYxLjAsBgNV
BAsMJVRlc3Rpbmcgc2VydmVyIGNlcnQgI0NPajVGVkxXWEVtcmFHNTQwgZ8wDQYJ
KoZIhvcNAQEBBQADgY0AMIGJAoGBAKeE765+Ws1ZdC86tfZ5LvLTjWluQgmsTx2o
7xhYAOFmTbZb6qNLCDS07R1VP74ve6UlFD55cV8VbxvEZd8Z3LOADF6nTN61XPbj
dn2J6GfsSjaHE6+mJDXhCtVrD4EGdD4nXRem48mjsrAkrvJ8v4gQNzGzQ27D2dWT
B7Ij6mWNAgMBAAGjazBpMB0GA1UdDgQWBBT66uW6I2OfZYacXgQkop4qlX+qJTAM
BgNVHRMBAf8EAjAAMB8GA1UdIwQYMBaAFESoDYfzVyFP3QHyZG9cvxmlBIGsMBkG
A1UdEQEB/wQPMA2CC2xvY2FsY2xpZW50MA0GCSqGSIb3DQEBCwUAA4GBAG8zoqW0
w5ROSuNFE7fi5I4bdC6sbddiFRXX//TkP2vRD3cM11AKp52UjzK2nUrkoigrJ5p8
xa/PGnPfOVCPiKIb1kzeI/7tyBet6n3q2L0wQo3PR/QCHeSiIpm8lAi1a+8ShXFM
F2CG+z7IN0cQO4bzcwtkk8MhcCsMP14K5PK2
-----END CERTIFICATE-----
9 changes: 5 additions & 4 deletions dummyserver/server.py
Expand Up @@ -226,15 +226,16 @@ def bind_sockets(port, address=None, family=socket.AF_UNSPEC, backlog=128,


def run_tornado_app(app, io_loop, certs, scheme, host):
assert io_loop == tornado.ioloop.IOLoop.current()

# We can't use fromtimestamp(0) because of CPython issue 29097, so we'll
# just construct the datetime object directly.
app.last_req = datetime(1970, 1, 1)

if scheme == 'https':
http_server = tornado.httpserver.HTTPServer(app, ssl_options=certs,
io_loop=io_loop)
http_server = tornado.httpserver.HTTPServer(app, ssl_options=certs)
else:
http_server = tornado.httpserver.HTTPServer(app, io_loop=io_loop)
http_server = tornado.httpserver.HTTPServer(app)

sockets = bind_sockets(None, address=host)
port = sockets[0].getsockname()[1]
Expand Down Expand Up @@ -268,7 +269,7 @@ def get_unreachable_address():
from .testcase import TestingApp
host = '127.0.0.1'

io_loop = tornado.ioloop.IOLoop()
io_loop = tornado.ioloop.IOLoop.current()
app = tornado.web.Application([(r".*", TestingApp)])
server, port = run_tornado_app(app, io_loop, None,
'http', host)
Expand Down

0 comments on commit ef0c745

Please sign in to comment.