summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'www-servers/tornado/files/tornado-4.2.1-py3.5-backport.patch')
-rw-r--r--www-servers/tornado/files/tornado-4.2.1-py3.5-backport.patch63
1 files changed, 63 insertions, 0 deletions
diff --git a/www-servers/tornado/files/tornado-4.2.1-py3.5-backport.patch b/www-servers/tornado/files/tornado-4.2.1-py3.5-backport.patch
new file mode 100644
index 000000000000..e649935d7048
--- /dev/null
+++ b/www-servers/tornado/files/tornado-4.2.1-py3.5-backport.patch
@@ -0,0 +1,63 @@
+From 2971e857104f8d02fa9107a0e13f50170eb4f30d Mon Sep 17 00:00:00 2001
+From: Ben Darnell <ben@bendarnell.com>
+Date: Sat, 6 Jun 2015 15:40:21 -0400
+Subject: [PATCH] Get the tests passing under Python 3.5b2
+
+---
+ tornado/test/web_test.py | 7 +++++--
+ tornado/util.py | 10 ++++++++--
+ 2 files changed, 13 insertions(+), 4 deletions(-)
+
+diff --git a/tornado/test/web_test.py b/tornado/test/web_test.py
+index 96edd6c..a93369c 100644
+--- a/tornado/test/web_test.py
++++ b/tornado/test/web_test.py
+@@ -1538,8 +1538,11 @@ def get(self):
+ def test_clear_all_cookies(self):
+ response = self.fetch('/', headers={'Cookie': 'foo=bar; baz=xyzzy'})
+ set_cookies = sorted(response.headers.get_list('Set-Cookie'))
+- self.assertTrue(set_cookies[0].startswith('baz=;'))
+- self.assertTrue(set_cookies[1].startswith('foo=;'))
++ # 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="";'))
+
+
+ class PermissionError(Exception):
+diff --git a/tornado/util.py b/tornado/util.py
+index 606ced1..ea4da87 100644
+--- a/tornado/util.py
++++ b/tornado/util.py
+@@ -13,7 +13,6 @@
+ from __future__ import absolute_import, division, print_function, with_statement
+
+ import array
+-import inspect
+ import os
+ import sys
+ import zlib
+@@ -24,6 +23,13 @@
+ 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.
+@@ -284,7 +290,7 @@ class ArgReplacer(object):
+ def __init__(self, func, name):
+ self.name = name
+ try:
+- self.arg_pos = inspect.getargspec(func).args.index(self.name)
++ self.arg_pos = getargspec(func).args.index(self.name)
+ except ValueError:
+ # Not a positional parameter
+ self.arg_pos = None