a b/setup.py
1
#!/usr/bin/env python
2
# -*- encoding: utf-8 -*-
3
"""Setup script"""
4
5
from __future__ import absolute_import
6
from __future__ import print_function
7
8
import io
9
import re
10
from glob import glob
11
from os.path import basename
12
from os.path import dirname
13
from os.path import join
14
from os.path import splitext
15
16
from setuptools import find_packages
17
from setuptools import setup
18
19
20
def _read(*names, **kwargs):
21
    return io.open(
22
        join(dirname(__file__), *names),
23
        encoding=kwargs.get('encoding', 'utf8')
24
    ).read()
25
26
27
setup(
28
    name='janggu',
29
    version='0.10.2',
30
    license='GPL-3.0',
31
    description='Utilities and datasets for deep learning in genomics',
32
    long_description='%s\n%s' % (
33
        re.compile('^.. start-badges.*^.. end-badges',
34
                   re.M | re.S).sub('', _read('README.rst')),
35
        re.sub(':[a-z]+:`~?(.*?)`', r'``\1``', _read('CHANGELOG.rst'))
36
    ),
37
    long_description_content_type='text/x-rst',
38
    author='Wolfgang Kopp',
39
    author_email='wolfgang.kopp@mdc-berlin.de',
40
    url='https://github.com/BIMSBbioinfo/janggu',
41
    packages=find_packages('src'),
42
    package_dir={'': 'src'},
43
    package_data={'janggu': ['resources/*.fa',
44
                             'resources/*.bed',
45
                             'resources/*.csv']},
46
    py_modules=[splitext(basename(path))[0] for path in glob('src/*.py')],
47
    include_package_data=True,
48
    zip_safe=False,
49
    classifiers=[
50
        # complete list: http://pypi.python.org/pypi?%3Aaction=list_classifiers
51
        'Development Status :: 5 - Production/Stable',
52
        'Intended Audience :: Developers',
53
        'License :: OSI Approved :: GNU General Public License v3 (GPLv3)',
54
        'Operating System :: Unix',
55
        'Operating System :: POSIX',
56
        'Programming Language :: Python',
57
        'Programming Language :: Python :: 3.5',
58
        'Programming Language :: Python :: 3.6',
59
        'Programming Language :: Python :: 3.7',
60
        'Topic :: Utilities',
61
    ],
62
    keywords=[
63
        'genomics', 'epigenomics', 'bioinformatics',
64
        'deep learning', 'machine learning'
65
    ],
66
    install_requires=[
67
        'numpy',
68
        'pandas',
69
        'Biopython==1.77',
70
        'h5py',
71
        'pybedtools',
72
        'pydot',
73
        'pysam<0.16,!=0.15.3',
74
        'pyBigWig',
75
        'progress',
76
        'matplotlib',
77
        'seaborn',
78
        'scikit-learn',
79
        'scipy',
80
    ],
81
    extras_require={
82
        "tf": ['tensorflow==1.14', 'keras<2.3'],
83
        "tf_gpu": ['tensorflow-gpu==1.14', 'keras<2.3'],
84
        "tf2": ['tensorflow==2.2', 'keras==2.4.3'],
85
        "tf2_gpu": ['tensorflow-gpu==2.2', 'keras==2.4.3'],
86
    },
87
    entry_points={
88
        'console_scripts': [
89
            'janggu = janggu.cli:main',
90
            'janggu-trim = janggu.janggutrim:main',
91
        ]
92
    }
93
)