14287: ARVADOS_EXPERIMENTAL=14287 enables EnableBetaController14287.
[arvados.git] / sdk / python / setup.py
index a19b876fd3f1de647004e23ae2095feeed08fc4d..0fc2dde31b8a7851ff3db066062f068ebdbc9ff7 100644 (file)
@@ -3,6 +3,7 @@
 #
 # SPDX-License-Identifier: Apache-2.0
 
+from __future__ import absolute_import
 import os
 import sys
 import re
@@ -12,27 +13,8 @@ from setuptools import setup, find_packages
 SETUP_DIR = os.path.dirname(__file__) or '.'
 README = os.path.join(SETUP_DIR, 'README.rst')
 
-env_version = os.environ.get("ARVADOS_BUILDING_VERSION")
-
-def save_version(module, v):
-  with open(os.path.join(SETUP_DIR, module, "_version.py"), 'w') as fp:
-      return fp.write("__version__ = '%s'\n" % v)
-
-def read_version(module):
-  with open(os.path.join(SETUP_DIR, module, "_version.py"), 'r') as fp:
-      return re.match("__version__ = '(.*)'$", fp.read()).groups()[0]
-
-if env_version:
-    save_version("arvados", env_version)
-else:
-    try:
-        import arvados_version
-        vtag = arvados_version.VersionInfoFromGit()
-        save_version("arvados", vtag.git_latest_tag() + vtag.git_timestamp_tag())
-    except ImportError:
-        pass
-
-version = read_version("arvados")
+import arvados_version
+version = arvados_version.get_version(SETUP_DIR, "arvados")
 
 short_tests_only = False
 if '--short-tests-only' in sys.argv:
@@ -55,6 +37,7 @@ setup(name='arvados-python-client',
           'bin/arv-keepdocker',
           'bin/arv-ls',
           'bin/arv-migrate-docker19',
+          'bin/arv-federation-migrate',
           'bin/arv-normalize',
           'bin/arv-put',
           'bin/arv-run',
@@ -64,14 +47,22 @@ setup(name='arvados-python-client',
           ('share/doc/arvados-python-client', ['LICENSE-2.0.txt', 'README.rst']),
       ],
       install_requires=[
-          'ciso8601 >=1.0.0, <=1.0.4',
+          'ciso8601 >=2.0.0',
           'future',
           'google-api-python-client >=1.6.2, <1.7',
           'httplib2 >=0.9.2',
           'pycurl >=7.19.5.1',
-          'ruamel.yaml >=0.13.7',
+          'ruamel.yaml >=0.15.54, <=0.15.77',
           'setuptools',
-          'ws4py <0.4',
+          'ws4py >=0.4.2',
+      ],
+      extras_require={
+          ':os.name=="posix" and python_version<"3"': ['subprocess32 >= 3.5.1'],
+          ':python_version<"3"': ['pytz'],
+      },
+      classifiers=[
+          'Programming Language :: Python :: 2',
+          'Programming Language :: Python :: 3',
       ],
       test_suite='tests',
       tests_require=['pbr<1.7.0', 'mock>=1.0', 'PyYAML'],