This repository has been archived by the owner on Feb 12, 2020. It is now read-only.
forked from Sage-Bionetworks/synapsePythonClient
-
Notifications
You must be signed in to change notification settings - Fork 0
/
setup.py
90 lines (79 loc) · 3.14 KB
/
setup.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
# Installation script for Synapse Client for Python
############################################################
import sys
import os
import setuptools
# check Python version, before we do anything
if sys.version_info[:2] not in [(3, 5), (3, 6), (3, 7)]:
sys.stderr.write("The Synapse Client for Python requires Python 3.5, 3.6, or 3.7.\n")
sys.stderr.write("Your Python appears to be version %d.%d.%d\n" % sys.version_info[:3])
sys.exit(-1)
# figure out the version
about = {}
here = os.path.abspath(os.path.dirname(__file__))
with open(os.path.join(here, "synapseclient", "__version__.py")) as f:
exec(f.read(), about)
description = """A client for Synapse, a collaborative compute space
that allows scientists to share and analyze data together.""".replace("\n", " ")
with open("README.md", "r") as fh:
long_description = fh.read()
# make sure not to overwrite existing .synapseConfig with our example one
data_files = [(os.path.expanduser('~'), ['synapseclient/.synapseConfig'])] if not os.path.exists(os.path.expanduser('~/.synapseConfig')) else []
setuptools.setup(
# basic
name='synapseclient',
version=about["__version__"],
packages=setuptools.find_packages(exclude=["tests", "tests.*"]),
# requirements
python_requires='>=3.5.*',
install_requires=[
'requests>=2.21.0',
'keyring==12.0.2',
'deprecated==1.2.4',
],
extras_require={
'pandas': ["pandas==0.23.0"],
'pysftp': ["pysftp>=0.2.8"],
'boto3' : ["boto3"],
':sys_platform=="linux2" or sys_platform=="linux"': ['keyrings.alt==3.1'],
},
# command line
entry_points={
'console_scripts': ['synapse = synapseclient.__main__:main']
},
# data
package_data={'synapseclient': ['synapsePythonClient', '.synapseConfig']},
data_files=data_files,
zip_safe=False,
# test
test_suite='nose.collector',
tests_require=['nose', 'mock'],
# metadata to display on PyPI
description=description,
long_description=long_description,
long_description_content_type="text/markdown",
url='http://synapse.sagebase.org/',
author='The Synapse Engineering Team',
author_email='platform@sagebase.org',
license='Apache',
project_urls={
"Documentation": "https://python-docs.synapse.org",
"Source Code": "https://github.com/Sage-Bionetworks/synapsePythonClient",
"Bug Tracker": "https://github.com/Sage-Bionetworks/synapsePythonClient/issues",
},
classifiers=[
'Development Status :: 5 - Production/Stable',
'Programming Language :: Python',
'Programming Language :: Python :: 3.5',
'Programming Language :: Python :: 3.6',
'Programming Language :: Python :: 3.7',
'Operating System :: MacOS',
'Operating System :: Microsoft :: Windows',
'Operating System :: Unix',
'Intended Audience :: Developers',
'Intended Audience :: Science/Research',
'License :: OSI Approved :: Apache Software License',
'Topic :: Software Development :: Libraries',
'Topic :: Scientific/Engineering',
'Topic :: Scientific/Engineering :: Bio-Informatics'],
)