-
Notifications
You must be signed in to change notification settings - Fork 18
/
setup.py
62 lines (51 loc) · 1.75 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
#!/usr/bin/env python
# coding: utf-8
# Distributed under the terms of the Modified BSD License.
import os
from distutils.core import setup
# get paths to all the extension files
extension_files = []
for (dirname, dirnames, filenames) in os.walk("nbflow/example"):
root = os.path.relpath(dirname, "nbflow")
if '.ipynb_checkpoints' in dirname:
continue
for filename in filenames:
if filename.endswith(".pyc") or filename == '.sconsign.dblite':
continue
extension_files.append(os.path.join(root, filename))
name = 'nbflow'
here = os.path.abspath(os.path.dirname(__file__))
version_ns = {}
with open(os.path.join(here, name, '_version.py')) as f:
exec(f.read(), {}, version_ns)
setup_args = dict(
name=name,
version=version_ns['__version__'],
description='A tool that supports one-button reproducible workflows with the Jupyter Notebook and Scons',
author='Jessica B. Hamrick',
author_email='jhamrick@berkeley.edu',
license='BSD',
url='https://github.com/jhamrick/nbflow',
keywords=['Notebooks'],
classifiers=[
'License :: OSI Approved :: BSD License',
'Programming Language :: Python',
'Programming Language :: Python :: 2',
'Programming Language :: Python :: 2.7',
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3.6',
],
packages=['nbflow'],
scripts=['scripts/nbflow'],
package_data={
'nbflow': extension_files
}
)
setup_args['install_requires'] = install_requires = []
with open('requirements.txt') as f:
for line in f.readlines():
req = line.strip()
if not req or req.startswith(('-e', '#')):
continue
install_requires.append(req)
setup(**setup_args)