From 42691df705a895a42160c21cc13a7e0a99332a80 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=BCrgen=20Gmach?= <juergen.gmach@googlemail.com>
Date: Thu, 14 Oct 2021 21:00:21 +0200
Subject: [PATCH 1/3] Add support for Python 3.10
(cherry picked from commit ec9bb7ed026566688a14be9d8d5d1e4c506e71c0)
---
.github/workflows/test.yml | 2 +-
NEWS | 9 +++++++++
scripts/all-pythons | 2 +-
setup.cfg | 1 +
testtools/tests/test_testresult.py | 5 ++++-
tox.ini | 2 +-
6 files changed, 17 insertions(+), 4 deletions(-)
diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml
index 70cacf7..44c27b7 100644
--- a/.github/workflows/test.yml
+++ b/.github/workflows/test.yml
@@ -8,7 +8,7 @@ jobs:
strategy:
fail-fast: false
matrix:
- python-version: [3.5, 3.6, 3.7, 3.8, 3.9, 3.10-dev, pypy3]
+ python-version: [3.5, 3.6, 3.7, 3.8, 3.9, "3.10", pypy3]
steps:
- uses: actions/checkout@v2
diff --git a/NEWS b/NEWS
index df49f5e..cf7f84f 100644
--- a/NEWS
+++ b/NEWS
@@ -3,6 +3,15 @@ testtools NEWS
Changes and improvements to testtools_, grouped by release.
+NEXT
+~~~~
+
+Improvements
+------------
+
+* Add support for Python 3.10.
+ (J├╝rgen Gmach)
+
2.5.0
~~~~~
diff --git a/scripts/all-pythons b/scripts/all-pythons
index 6996a44..0fbe010 100755
--- a/scripts/all-pythons
+++ b/scripts/all-pythons
@@ -89,5 +89,5 @@ def now():
if __name__ == '__main__':
sys.path.append(ROOT)
result = TestProtocolClient(sys.stdout)
- for version in '3.5 3.6 3.7 3.8 3.9'.split():
+ for version in '3.5 3.6 3.7 3.8 3.9 3.10'.split():
run_for_python(version, result, sys.argv[1:])
diff --git a/setup.cfg b/setup.cfg
index 36d90ce..831ed4a 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -17,6 +17,7 @@ classifier =
Programming Language :: Python :: 3.7
Programming Language :: Python :: 3.8
Programming Language :: Python :: 3.9
+ Programming Language :: Python :: 3.10
Programming Language :: Python :: 3 :: Only
Programming Language :: Python :: Implementation :: CPython
Programming Language :: Python :: Implementation :: PyPy
diff --git a/testtools/tests/test_testresult.py b/testtools/tests/test_testresult.py
index a9db0e2..4fbf15d 100644
--- a/testtools/tests/test_testresult.py
+++ b/testtools/tests/test_testresult.py
@@ -2667,16 +2667,19 @@ class TestNonAsciiResults(TestCase):
"""Syntax errors should still have fancy special-case formatting"""
if platform.python_implementation() == "PyPy":
spaces = ' '
+ marker = '^'
elif sys.version_info >= (3, 10):
spaces = ' '
+ marker = '^^^'
else:
spaces = ' '
+ marker = '^'
textoutput = self._test_external_case("exec ('f(a, b c)')")
self.assertIn(self._as_output(
' File "<string>", line 1\n'
' f(a, b c)\n'
+ ' ' * self._error_on_character +
- spaces + '^\n'
+ spaces + marker + '\n'
'SyntaxError: '
), textoutput)
diff --git a/tox.ini b/tox.ini
index 5e9ab12..0416e06 100644
--- a/tox.ini
+++ b/tox.ini
@@ -1,5 +1,5 @@
[tox]
-envlist = py35,py36,py37,py38,py39,310,pypy3
+envlist = py35,py36,py37,py38,py39,py310,pypy3
minversion = 1.6
[testenv]
--
2.35.1