Răsfoiți Sursa

Merge pull request #4019 from ThomasWaldmann/py37-1.1

Py37 (1.1 backport)
TW 6 ani în urmă
părinte
comite
105a23ac0e
4 a modificat fișierele cu 16 adăugiri și 9 ștergeri
  1. 7 7
      .travis.yml
  2. 1 0
      setup.py
  3. 7 1
      src/borg/testsuite/archiver.py
  4. 1 1
      tox.ini

+ 7 - 7
.travis.yml

@@ -9,6 +9,10 @@ cache:
 # note: use py 3.5.2, it has lzma support. 3.5(.0) on travis.org/trusty does not.
 matrix:
     include:
+        - python: 3.4
+          os: linux
+          dist: trusty
+          env: TOXENV=flake8
         - python: 3.4
           os: linux
           dist: trusty
@@ -21,14 +25,10 @@ matrix:
           os: linux
           dist: trusty
           env: TOXENV=py36
-        - python: 3.4
+        - python: 3.7
           os: linux
-          dist: trusty
-          env: TOXENV=flake8
-        - python: "3.6-dev"
-          os: linux
-          dist: trusty
-          env: TOXENV=py36
+          dist: xenial
+          env: TOXENV=py37
         - language: generic
           os: osx
           osx_image: xcode8.3

+ 1 - 0
setup.py

@@ -830,6 +830,7 @@ setup(
         'Programming Language :: Python :: 3.4',
         'Programming Language :: Python :: 3.5',
         'Programming Language :: Python :: 3.6',
+        'Programming Language :: Python :: 3.7',
         'Topic :: Security :: Cryptography',
         'Topic :: System :: Archiving :: Backup',
     ],

+ 7 - 1
src/borg/testsuite/archiver.py

@@ -3673,7 +3673,13 @@ class TestCommonOptions:
 
     @pytest.fixture
     def subparsers(self, basic_parser):
-        return basic_parser.add_subparsers(title='required arguments', metavar='<command>')
+        if sys.version_info >= (3, 7):
+            # py37 pre-release defaults to unwanted required=True, in 3.7.0+ it was fixed to =False
+            return basic_parser.add_subparsers(title='required arguments', metavar='<command>', required=False)
+        else:
+            # py36 does not support required=... argument (but behaves like required=False).
+            # note: use below call for 3.6 and 3.7 when there are no alphas/betas/RCs of 3.7.0 around any more.
+            return basic_parser.add_subparsers(title='required arguments', metavar='<command>')
 
     @pytest.fixture
     def parser(self, basic_parser):

+ 1 - 1
tox.ini

@@ -2,7 +2,7 @@
 # fakeroot -u tox --recreate
 
 [tox]
-envlist = py{34,35,36},flake8
+envlist = py{34,35,36,37},flake8
 
 [testenv]
 deps =