File: setup.py

package info (click to toggle)
python-mne 0.19.1%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 100,440 kB
  • sloc: python: 120,243; pascal: 1,861; makefile: 225; sh: 15
file content (100 lines) | stat: -rwxr-xr-x 3,751 bytes parent folder | download
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
91
92
93
94
95
96
97
98
99
100
#!/usr/bin/env python

# Copyright (C) 2011-2019 Alexandre Gramfort
# <alexandre.gramfort@inria.fr>

import os
import os.path as op

from setuptools import setup

# get the version (don't import mne here, so dependencies are not needed)
version = None
with open(op.join('mne', '__init__.py'), 'r') as fid:
    for line in (line.strip() for line in fid):
        if line.startswith('__version__'):
            version = line.split('=')[1].strip().strip('\'')
            break
if version is None:
    raise RuntimeError('Could not determine version')


descr = """MNE python project for MEG and EEG data analysis."""

DISTNAME = 'mne'
DESCRIPTION = descr
MAINTAINER = 'Alexandre Gramfort'
MAINTAINER_EMAIL = 'alexandre.gramfort@inria.fr'
URL = 'https://mne.tools/dev/'
LICENSE = 'BSD (3-clause)'
DOWNLOAD_URL = 'http://github.com/mne-tools/mne-python'
VERSION = version


def package_tree(pkgroot):
    """Get the submodule list."""
    # Adapted from VisPy
    path = op.dirname(__file__)
    subdirs = [op.relpath(i[0], path).replace(op.sep, '.')
               for i in os.walk(op.join(path, pkgroot))
               if '__init__.py' in i[2]]
    return sorted(subdirs)


if __name__ == "__main__":
    if op.exists('MANIFEST'):
        os.remove('MANIFEST')

    with open('README.rst', 'r') as fid:
        long_description = fid.read()

    setup(name=DISTNAME,
          maintainer=MAINTAINER,
          include_package_data=True,
          maintainer_email=MAINTAINER_EMAIL,
          description=DESCRIPTION,
          license=LICENSE,
          url=URL,
          version=VERSION,
          download_url=DOWNLOAD_URL,
          long_description=long_description,
          long_description_content_type='text/x-rst',
          zip_safe=False,  # the package can run out of an .egg file
          classifiers=['Intended Audience :: Science/Research',
                       'Intended Audience :: Developers',
                       'License :: OSI Approved',
                       'Programming Language :: Python',
                       'Topic :: Software Development',
                       'Topic :: Scientific/Engineering',
                       'Operating System :: Microsoft :: Windows',
                       'Operating System :: POSIX',
                       'Operating System :: Unix',
                       'Operating System :: MacOS',
                       'Programming Language :: Python :: 3',
                       ],
          platforms='any',
          install_requires=['numpy>=1.11.3', 'scipy>=0.17.1'],
          packages=package_tree('mne'),
          package_data={'mne': [
              op.join('data', '*.sel'),
              op.join('data', 'icos.fif.gz'),
              op.join('data', 'coil_def*.dat'),
              op.join('data', 'helmets', '*.fif.gz'),
              op.join('data', 'FreeSurferColorLUT.txt'),
              op.join('data', 'image', '*gif'),
              op.join('data', 'image', '*lout'),
              op.join('data', 'fsaverage', '*.fif'),
              op.join('channels', 'data', 'layouts', '*.lout'),
              op.join('channels', 'data', 'layouts', '*.lay'),
              op.join('channels', 'data', 'montages', '*.sfp'),
              op.join('channels', 'data', 'montages', '*.txt'),
              op.join('channels', 'data', 'montages', '*.elc'),
              op.join('channels', 'data', 'neighbors', '*.mat'),
              op.join('datasets', 'sleep_physionet', 'SHA1SUMS'),
              op.join('gui', 'help', '*.json'),
              op.join('html', '*.js'),
              op.join('html', '*.css'),
              op.join('io', 'artemis123', 'resources', '*.csv'),
              op.join('io', 'edf', 'gdf_encodes.txt')
              ]},
          scripts=['bin/mne'])