Python 3: only import subprocess32 on py27
authorchapmanb <chapmanb@50mail.com>
Thu, 14 Feb 2019 16:23:39 +0000 (11:23 -0500)
committerchapmanb <chapmanb@50mail.com>
Fri, 15 Feb 2019 15:54:03 +0000 (10:54 -0500)
Avoids the need to install and import subprocess32 when working
with any recent Python 3.x version. This helps with bioconda
install since subprocess32 is not built for py3.

Arvados-DCO-1.1-Signed-off-by: Brad Chapman <chapmanb@fastmail.com>

sdk/cwl/arvados_cwl/runner.py
sdk/cwl/setup.py
sdk/python/arvados/commands/keepdocker.py
sdk/python/setup.py

index ad8e903ba65f28bec56710a3ed15915482362d72..c3015753be4ef8bf19087ee251cf74c18783ee9e 100644 (file)
@@ -7,12 +7,16 @@ standard_library.install_aliases()
 from future.utils import  viewvalues, viewitems
 
 import os
+import sys
 import urllib.parse
 from functools import partial
 import logging
 import json
-import subprocess32 as subprocess
 from collections import namedtuple
+if sys.version_info[0] < 3:
+    import subprocess32 as subprocess
+else:
+    import subprocess
 
 from io import StringIO
 
index 22c49a01bf4ed31592db013ac5f2cb49c4e789cd..a815dedaf3a30924145939598b476c1302915bcb 100644 (file)
@@ -40,8 +40,10 @@ setup(name='arvados-cwl-runner',
           'arvados-python-client>=1.3.0.20190205182514',
           'setuptools',
           'ciso8601 >=1.0.6, <2.0.0',
-          'subprocess32>=3.5.1',
       ],
+      extras_require={
+          ':os.name=="posix" and python_version<"3"': ['subprocess32 >= 3.5.1'],
+      },
       data_files=[
           ('share/doc/arvados-cwl-runner', ['LICENSE-2.0.txt', 'README.rst']),
       ],
index 811f096c60808b2033c8123d5330909ee88db816..062545bebe1b107d1e0adb4db33973caede95715 100644 (file)
@@ -10,13 +10,16 @@ import errno
 import json
 import os
 import re
-import subprocess32 as subprocess
 import sys
 import tarfile
 import tempfile
 import shutil
 import _strptime
 import fcntl
+if sys.version_info[0] < 3:
+    import subprocess32 as subprocess
+else:
+    import subprocess
 
 from operator import itemgetter
 from stat import *
index 5c781b158350fa6d7d869b061b24d0cfd95dcae1..aaa07103381ccb8dd78d321cb90907bec727ec75 100644 (file)
@@ -54,8 +54,10 @@ setup(name='arvados-python-client',
           'ruamel.yaml >=0.15.54, <=0.15.77',
           'setuptools',
           'ws4py >=0.4.2',
-          'subprocess32 >=3.5.1',
       ],
+      extras_require={
+          ':os.name=="posix" and python_version<"3"': ['subprocess32 >= 3.5.1'],
+      },
       classifiers=[
           'Programming Language :: Python :: 2',
           'Programming Language :: Python :: 3',