21601: Specify Python interdependencies with ~=
[arvados.git] / services / fuse / setup.py
index 8bc11315fa20834e3d1222044fd24155cb76fdcb..07c9dcf5e1a945fce0a034f322b0374c6500ae03 100644 (file)
@@ -1,31 +1,19 @@
-#!/usr/bin/env python
+#!/usr/bin/env python3
 # Copyright (C) The Arvados Authors. All rights reserved.
 #
 # SPDX-License-Identifier: AGPL-3.0
 
+from __future__ import absolute_import
 import os
 import sys
-import setuptools.command.egg_info as egg_info_cmd
+import re
 
 from setuptools import setup, find_packages
 
-SETUP_DIR = os.path.dirname(__file__) or '.'
-README = os.path.join(SETUP_DIR, 'README.rst')
-
-tagger = egg_info_cmd.egg_info
-version = os.environ.get("ARVADOS_BUILDING_VERSION")
-if not version:
-    try:
-        import arvados_version
-        vtag = arvados_version.VersionInfoFromGit()
-        version = vtag.git_latest_tag() + vtag.git_timestamp_tag()
-    except ImportError:
-        pass
-        
-short_tests_only = False
-if '--short-tests-only' in sys.argv:
-    short_tests_only = True
-    sys.argv.remove('--short-tests-only')
+import arvados_version
+version = arvados_version.get_version()
+short_tests_only = arvados_version.short_tests_only()
+README = os.path.join(arvados_version.SETUP_DIR, 'README.rst')
 
 setup(name='arvados_fuse',
       version=version,
@@ -34,7 +22,7 @@ setup(name='arvados_fuse',
       author='Arvados',
       author_email='info@arvados.org',
       url="https://arvados.org",
-      download_url="https://github.com/curoverse/arvados.git",
+      download_url="https://github.com/arvados/arvados.git",
       license='GNU Affero General Public License, version 3.0',
       packages=['arvados_fuse'],
       scripts=[
@@ -44,14 +32,19 @@ setup(name='arvados_fuse',
           ('share/doc/arvados_fuse', ['agpl-3.0.txt', 'README.rst']),
       ],
       install_requires=[
-        'arvados-python-client >= 0.1.20151118035730',
-        'llfuse>=1.2',
+        *arvados_version.iter_dependencies(version),
+        'llfuse >= 1.3.6',
+        'future',
         'python-daemon',
-        'ciso8601',
-        'setuptools'
+        'ciso8601 >= 2.0.0',
+        'setuptools',
+        "prometheus_client"
         ],
+      python_requires="~=3.8",
+      classifiers=[
+          'Programming Language :: Python :: 3',
+      ],
       test_suite='tests',
-      tests_require=['pbr<1.7.0', 'mock>=1.0', 'PyYAML'],
-      zip_safe=False,
-      cmdclass={'egg_info': tagger},
+      tests_require=['pbr<1.7.0', 'mock>=1.0', 'PyYAML', 'parameterized',],
+      zip_safe=False
       )