11333: Add explicit version pin on 'typing'
[arvados.git] / sdk / cwl / setup.py
index f9cf60813e27fbaca845e353b6e937bb0fd2c441..46f61aebdb8650afbe3098de43b7fee1ee09c67c 100644 (file)
@@ -2,6 +2,7 @@
 
 import os
 import sys
+import subprocess
 import setuptools.command.egg_info as egg_info_cmd
 
 from setuptools import setup, find_packages
@@ -15,14 +16,19 @@ try:
 except ImportError:
     tagger = egg_info_cmd.egg_info
 
+versionfile = os.path.join(SETUP_DIR, "arvados_cwl/_version.py")
 try:
     gitinfo = subprocess.check_output(
         ['git', 'log', '--first-parent', '--max-count=1',
-         '--format=format:%H']).strip()
-    with open("arvados_cwl/_version.py", "w") as f:
+         '--format=format:%H', gittaggers.choose_version_from()]).strip()
+    with open(versionfile, "w") as f:
         f.write("__version__ = '%s'\n" % gitinfo)
-except:
-    pass
+except Exception as e:
+    # When installing from package, it won't be part of a git repository, and
+    # check_output() will raise an exception.  But the package should include the
+    # version file, so we can proceed.
+    if not os.path.exists(versionfile):
+        raise
 
 setup(name='arvados-cwl-runner',
       version='1.0',
@@ -39,11 +45,15 @@ setup(name='arvados-cwl-runner',
           'bin/cwl-runner',
           'bin/arvados-cwl-runner'
       ],
-      # Make sure to update arvados/build/run-build-packages.sh as well
-      # when updating the cwltool version pin.
+      # Note that arvados/build/run-build-packages.sh looks at this
+      # file to determine what version of cwltool and schema-salad to build.
       install_requires=[
-          'cwltool==1.0.20161007181528',
-          'arvados-python-client>=0.1.20160826210445'
+          'cwltool==1.0.20170224141733',
+          'schema-salad==2.2.20170222151604',
+          'typing==3.5.3',
+          'ruamel.yaml==0.13.7',
+          'arvados-python-client>=0.1.20170112173420',
+          'setuptools'
       ],
       data_files=[
           ('share/doc/arvados-cwl-runner', ['LICENSE-2.0.txt', 'README.rst']),