-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathsetup.py
More file actions
68 lines (49 loc) · 1.66 KB
/
setup.py
File metadata and controls
68 lines (49 loc) · 1.66 KB
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
"""Install setup."""
import setuptools
from pathlib import Path
def filter_req_paths(paths, func):
"""Return list of filtered libs."""
if not isinstance(paths, list):
raise ValueError("Paths must be a list of paths.")
libs = set()
junk = set(['\n'])
for p in paths:
with Path(p).open(mode='r') as reqs:
lines = set([line for line in reqs if func(line)])
libs.update(lines)
return list(libs - junk)
def is_pipable(s):
"""Filter for pipable reqs."""
if "# not_pipable" in s:
return False
elif s.startswith('#'):
return False
else:
return True
req_paths = ["requirements.pip.txt",
"requirements.txt"]
setuptools.setup(
name="veoibd_synapse",
version="version='0.1.0'",
url="git@github.com:ScottSnapperLab/veoibd-synapse-data-manager.git",
author="Gus Dunn",
author_email="w.gus.dunn@gmail.com",
description="Admin related logistics regarding uploading and annotating data to Synapse for members of the VEOIBD consortium.",
# long_description=open('README.rst').read(),
packages=setuptools.find_packages('src'),
package_dir={"": "src"},
install_requires=filter_req_paths(paths=req_paths,
func=is_pipable),
classifiers=[
'Development Status :: 2 - Pre-Alpha',
'Programming Language :: Python',
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3.4',
'Programming Language :: Python :: 3.5',
],
entry_points={
"console_scripts": [
"veoibd_synapse = veoibd_synapse.cli.main:run",
]
},
)