21721: Remove ruamel.yaml dependency
[arvados.git] / sdk / python / setup.py
index 284a460f1a175e7e081ebb862a276fb4e8e45e3e..8486c786546b8cd87095e5092c31971e1fb677de 100644 (file)
@@ -12,16 +12,10 @@ from pathlib import Path
 from setuptools import setup, find_packages
 from setuptools.command import build_py
 
-SETUP_DIR = os.path.dirname(__file__) or '.'
-README = os.path.join(SETUP_DIR, 'README.rst')
-
 import arvados_version
-version = arvados_version.get_version(SETUP_DIR, "arvados")
-
-short_tests_only = False
-if '--short-tests-only' in sys.argv:
-    short_tests_only = True
-    sys.argv.remove('--short-tests-only')
+version = arvados_version.get_version()
+short_tests_only = arvados_version.short_tests_only()
+README = os.path.join(arvados_version.SETUP_DIR, 'README.rst')
 
 class BuildPython(build_py.build_py):
     """Extend setuptools `build_py` to generate API documentation
@@ -115,27 +109,21 @@ setup(name='arvados-python-client',
           ('share/doc/arvados-python-client', ['LICENSE-2.0.txt', 'README.rst']),
       ],
       install_requires=[
+          *arvados_version.iter_dependencies(version),
           'ciso8601 >=2.0.0',
-          'dataclasses; python_version<"3.7"',
           'future',
-          'google-api-core <2.11.0', # 2.11.0rc1 is incompatible with google-auth<2
           'google-api-python-client >=2.1.0',
-          'google-auth <2',
-          'httplib2 >=0.9.2, <0.20.2',
-          'protobuf <4.0.0dev',
+          'google-auth',
+          'httplib2 >=0.9.2',
           'pycurl >=7.19.5.1, <7.45.0',
-          'pyparsing <3',
-          'ruamel.yaml >=0.15.54, <0.17.22',
           'setuptools >=40.3.0',
-          # As of 4.8.0rc1, typing_extensions does not parse in Python 3.7
-          'typing_extensions >=3.7.4, <4.8; python_version<"3.8"',
           'websockets >=11.0',
-          'websockets ~=11.0; python_version<"3.8"',
       ],
+      python_requires="~=3.8",
       classifiers=[
           'Programming Language :: Python :: 3',
       ],
       test_suite='tests',
-      tests_require=['pbr<1.7.0', 'mock>=1.0,<4', 'PyYAML', 'parameterized'],
+      tests_require=['PyYAML', 'parameterized'],
       zip_safe=False
       )