Update to work with PY3.11. (#320)
diff --git a/apitools/base/protorpclite/util.py b/apitools/base/protorpclite/util.py
index bf4abf7..c996312 100644
--- a/apitools/base/protorpclite/util.py
+++ b/apitools/base/protorpclite/util.py
@@ -148,7 +148,7 @@
if isinstance(max_positional_args, six.integer_types):
return positional_decorator
else:
- args, _, _, defaults = inspect.getargspec(max_positional_args)
+ args, _, _, defaults, *_ = inspect.getfullargspec(max_positional_args)
if defaults is None:
raise ValueError(
'Functions with no keyword arguments must specify '
diff --git a/samples/uptodate_check_test.py b/samples/uptodate_check_test.py
index 8ca258e..6e8c9fb 100644
--- a/samples/uptodate_check_test.py
+++ b/samples/uptodate_check_test.py
@@ -59,10 +59,6 @@
prefix + '_messages.py',
'__init__.py']))
self.assertEquals(expected_files, set(os.listdir(tmp_dir_path)))
- if six.PY3:
- # The source files won't be identical under python3,
- # so we exit early.
- return
for expected_file in expected_files:
self.AssertDiffEqual(
_GetContent(GetSampleClientPath(
diff --git a/tox.ini b/tox.ini
index 09d2afc..29a9251 100644
--- a/tox.ini
+++ b/tox.ini
@@ -1,11 +1,10 @@
[tox]
envlist =
- py27-oauth2client{1,2,3,4}
- py35-oauth2client{1,2,3,4}
+ py311-oauth2client{1,2,3,4}
[testenv]
deps =
- nose
+ nose-py3
python-gflags
oauth2client1: oauth2client<1.5dev
oauth2client2: oauth2client>=2,<=3dev
@@ -18,7 +17,7 @@
[testenv:lint]
basepython =
- python2.7
+ python3.11
commands =
pip install six google-apitools
pycodestyle apitools
@@ -28,7 +27,7 @@
[testenv:cover]
basepython =
- python2.7
+ python3.11
commands =
nosetests --with-xunit --with-xcoverage --cover-package=apitools --nocapture --cover-erase --cover-tests --cover-branches []
deps =
@@ -49,7 +48,7 @@
[testenv:transfer_coverage]
basepython =
- python2.7
+ python3.11
deps =
mock
nose