[Python-modules-commits] [python-tornado] 01/07: unapply patches
Mattia Rizzolo
mattia at debian.org
Thu Apr 28 08:34:00 UTC 2016
This is an automated email from the git hooks/post-receive script.
mattia pushed a commit to branch master
in repository python-tornado.
commit 98da259444ac136d5e9ad5d57e5df78bbe2ad48a
Author: Mattia Rizzolo <mattia at debian.org>
Date: Thu Apr 28 07:22:23 2016 +0000
unapply patches
Gbp-Dch: Ignore
---
setup.py | 2 +-
tornado/iostream.py | 7 +------
tornado/netutil.py | 19 ++++++++++++-------
tornado/simple_httpclient.py | 12 +++++++++++-
tornado/test/netutil_test.py | 4 ++--
tornado/test/runtests.py | 1 -
tornado/test/util.py | 2 +-
tornado/test/web_test.py | 7 ++-----
tornado/util.py | 9 +--------
9 files changed, 31 insertions(+), 32 deletions(-)
diff --git a/setup.py b/setup.py
index 49ea692..613c6c1 100644
--- a/setup.py
+++ b/setup.py
@@ -128,7 +128,7 @@ if setuptools is not None:
# Certifi is also optional on 2.7.9+, although making our dependencies
# conditional on micro version numbers seems like a bad idea
# until we have more declarative metadata.
- pass # install_requires.append('certifi')
+ install_requires.append('certifi')
kwargs['install_requires'] = install_requires
setup(
diff --git a/tornado/iostream.py b/tornado/iostream.py
index 32b9748..3a175a6 100644
--- a/tornado/iostream.py
+++ b/tornado/iostream.py
@@ -1158,12 +1158,7 @@ class IOStream(BaseIOStream):
return future
def _handle_connect(self):
- try:
- err = self.socket.getsockopt(socket.SOL_SOCKET, socket.SO_ERROR)
- except socket.error as e:
- err = e.args[0]
- if err == errno.ENOPROTOOPT:
- err = 0
+ err = self.socket.getsockopt(socket.SOL_SOCKET, socket.SO_ERROR)
if err != 0:
self.error = socket.error(err, os.strerror(err))
# IOLoop implementations may vary: some of them return
diff --git a/tornado/netutil.py b/tornado/netutil.py
index ed49491..9aa292c 100644
--- a/tornado/netutil.py
+++ b/tornado/netutil.py
@@ -36,6 +36,15 @@ except ImportError:
ssl = None
try:
+ import certifi
+except ImportError:
+ # certifi is optional as long as we have ssl.create_default_context.
+ if ssl is None or hasattr(ssl, 'create_default_context'):
+ certifi = None
+ else:
+ raise
+
+try:
xrange # py2
except NameError:
xrange = range # py3
@@ -63,7 +72,7 @@ if hasattr(ssl, 'SSLContext'):
# Python 3.2-3.3
_client_ssl_defaults = ssl.SSLContext(ssl.PROTOCOL_SSLv23)
_client_ssl_defaults.verify_mode = ssl.CERT_REQUIRED
- _client_ssl_defaults.load_verify_locations('/etc/ssl/certs/ca-certificates.crt')
+ _client_ssl_defaults.load_verify_locations(certifi.where())
_server_ssl_defaults = ssl.SSLContext(ssl.PROTOCOL_SSLv23)
if hasattr(ssl, 'OP_NO_COMPRESSION'):
# Disable TLS compression to avoid CRIME and related attacks.
@@ -74,7 +83,7 @@ if hasattr(ssl, 'SSLContext'):
elif ssl:
# Python 2.6-2.7.8
_client_ssl_defaults = dict(cert_reqs=ssl.CERT_REQUIRED,
- ca_certs='/etc/ssl/certs/ca-certificates.crt')
+ ca_certs=certifi.where())
_server_ssl_defaults = {}
else:
# Google App Engine
@@ -155,11 +164,7 @@ def bind_sockets(port, address=None, family=socket.AF_UNSPEC,
raise
set_close_exec(sock.fileno())
if os.name != 'nt':
- try:
- sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
- except socket.error as e:
- if e.args[0] != errno.ENOPROTOOPT:
- raise
+ sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
if af == socket.AF_INET6:
# On linux, ipv6 sockets accept ipv4 too by default,
# but this makes it impossible to bind to both
diff --git a/tornado/simple_httpclient.py b/tornado/simple_httpclient.py
index 108ac7c..cf58e16 100644
--- a/tornado/simple_httpclient.py
+++ b/tornado/simple_httpclient.py
@@ -33,8 +33,18 @@ except ImportError:
# ssl is not available on Google App Engine.
ssl = None
+try:
+ import certifi
+except ImportError:
+ certifi = None
+
+
def _default_ca_certs():
- return '/etc/ssl/certs/ca-certificates.crt'
+ if certifi is None:
+ raise Exception("The 'certifi' package is required to use https "
+ "in simple_httpclient")
+ return certifi.where()
+
class SimpleAsyncHTTPClient(AsyncHTTPClient):
"""Non-blocking HTTP client with no external dependencies.
diff --git a/tornado/test/netutil_test.py b/tornado/test/netutil_test.py
index 6206341..7d9cad3 100644
--- a/tornado/test/netutil_test.py
+++ b/tornado/test/netutil_test.py
@@ -56,7 +56,7 @@ class _ResolverErrorTestMixin(object):
return True # Halt propagation.
with ExceptionStackContext(handler):
- self.resolver.resolve('anasdas23dadasdasdasdi2n1validsdasdbwefrwfejnefsegfsdomain', 80, callback=self.stop)
+ self.resolver.resolve('an invalid domain', 80, callback=self.stop)
result = self.wait()
self.assertIsInstance(result, Exception)
@@ -64,7 +64,7 @@ class _ResolverErrorTestMixin(object):
@gen_test
def test_future_interface_bad_host(self):
with self.assertRaises(Exception):
- yield self.resolver.resolve('ana8sdasdadasdasdas1d12invalidsdasdbwefrwfejnefsegfsdomain', 80,
+ yield self.resolver.resolve('an invalid domain', 80,
socket.AF_UNSPEC)
diff --git a/tornado/test/runtests.py b/tornado/test/runtests.py
index b3ce9a5..ad9b0b8 100644
--- a/tornado/test/runtests.py
+++ b/tornado/test/runtests.py
@@ -99,7 +99,6 @@ def main():
# setuptools sometimes gives ImportWarnings about things that are on
# sys.path even if they're not being used.
warnings.filterwarnings("ignore", category=ImportWarning)
- warnings.filterwarnings("ignore", category=UserWarning)
# Tornado generally shouldn't use anything deprecated, but some of
# our dependencies do (last match wins).
warnings.filterwarnings("ignore", category=DeprecationWarning)
diff --git a/tornado/test/util.py b/tornado/test/util.py
index 656e041..9dd9c0c 100644
--- a/tornado/test/util.py
+++ b/tornado/test/util.py
@@ -21,7 +21,7 @@ skipIfNonUnix = unittest.skipIf(os.name != 'posix' or sys.platform == 'cygwin',
# travis-ci.org runs our tests in an overworked virtual machine, which makes
# timing-related tests unreliable.
-skipOnTravis = unittest.skipIf(True,
+skipOnTravis = unittest.skipIf('TRAVIS' in os.environ,
'timing tests unreliable on travis')
# Set the environment variable NO_NETWORK=1 to disable any tests that
diff --git a/tornado/test/web_test.py b/tornado/test/web_test.py
index 5d8a207..9374c48 100644
--- a/tornado/test/web_test.py
+++ b/tornado/test/web_test.py
@@ -1547,11 +1547,8 @@ class ClearAllCookiesTest(SimpleHandlerTestCase):
def test_clear_all_cookies(self):
response = self.fetch('/', headers={'Cookie': 'foo=bar; baz=xyzzy'})
set_cookies = sorted(response.headers.get_list('Set-Cookie'))
- # Python 3.5 sends 'baz="";'; older versions use 'baz=;'
- self.assertTrue(set_cookies[0].startswith('baz=;') or
- set_cookies[0].startswith('baz="";'))
- self.assertTrue(set_cookies[1].startswith('foo=;') or
- set_cookies[1].startswith('foo="";'))
+ self.assertTrue(set_cookies[0].startswith('baz=;'))
+ self.assertTrue(set_cookies[1].startswith('foo=;'))
class PermissionError(Exception):
diff --git a/tornado/util.py b/tornado/util.py
index 0b390ff..606ced1 100644
--- a/tornado/util.py
+++ b/tornado/util.py
@@ -24,13 +24,6 @@ try:
except NameError:
xrange = range # py3
-# inspect.getargspec() raises DeprecationWarnings in Python 3.5.
-# The two functions have compatible interfaces for the parts we need.
-try:
- from inspect import getfullargspec as getargspec # py3
-except ImportError:
- from inspect import getargspec # py2
-
class ObjectDict(dict):
"""Makes a dictionary behave like an object, with attribute-style access.
@@ -291,7 +284,7 @@ class ArgReplacer(object):
def __init__(self, func, name):
self.name = name
try:
- self.arg_pos = getargspec(func).args.index(self.name)
+ self.arg_pos = inspect.getargspec(func).args.index(self.name)
except ValueError:
# Not a positional parameter
self.arg_pos = None
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/python-modules/packages/python-tornado.git
More information about the Python-modules-commits
mailing list