|
- import os
- import os.path
- import sys
- from setuptools import setup, find_packages
-
- PACKAGE_NAME = 'd3m'
- MINIMUM_PYTHON_VERSION = 3, 6
-
-
- def check_python_version():
- """Exit when the Python version is too low."""
- if sys.version_info < MINIMUM_PYTHON_VERSION:
- sys.exit("Python {}.{}+ is required.".format(*MINIMUM_PYTHON_VERSION))
-
-
- def read_package_variable(key):
- """Read the value of a variable from the package without importing."""
- module_path = os.path.join(PACKAGE_NAME, '__init__.py')
- with open(module_path) as module:
- for line in module:
- parts = line.strip().split(' ')
- if parts and parts[0] == key:
- return parts[-1].strip("'")
- raise KeyError("'{0}' not found in '{1}'".format(key, module_path))
-
-
- def read_readme():
- with open(os.path.join(os.path.dirname(__file__), 'README.md'), encoding='utf8') as file:
- return file.read()
-
-
- def read_entry_points():
- with open('entry_points.ini') as entry_points:
- return entry_points.read()
-
-
- check_python_version()
- version = read_package_variable('__version__')
- description = read_package_variable('__description__')
- author = read_package_variable('__author__')
-
- setup(
- name=PACKAGE_NAME,
- version=version,
- description=version,
- author=author,
- packages=find_packages(exclude=['contrib', 'docs', 'site', 'tests*']),
- package_data={'d3m': ['metadata/schemas/*/*.json', 'contrib/pipelines/*']},
- data_files=[('./', ['./entry_points.ini'])],
- install_requires=[
- 'scikit-learn[alldeps]>=0.20.3,<=0.22.2.post1',
- 'pytypes==1.0b5',
- 'frozendict==1.2',
- 'numpy>=1.15.4,<=1.18.2',
- 'jsonschema>=3.0.2,<=3.2.0',
- 'requests>=2.19.1,<=2.23.0',
- 'strict-rfc3339==0.7',
- 'rfc3987==1.3.8',
- 'webcolors>=1.8.1,<=1.11.1',
- 'dateparser>=0.7.0,<=0.7.2',
- 'python-dateutil==2.8.1',
- 'pandas>=0.23.4,<=1.0.3',
- 'typing-inspect==0.5.0',
- 'GitPython==3.1.0',
- 'jsonpath-ng==1.4.3',
- 'custom-inherit>=2.2.0,<=2.2.2',
- 'PyYAML>=5.1,<=5.3',
- 'pycurl>=7.43.0.2,<=7.43.0.5',
- 'pyarrow>=0.15.1,<=0.16.0',
- 'gputil>=1.3.0,<=1.4.0',
- 'pyrsistent>=0.14.11,<=0.15.7',
- 'scipy>=1.2.1,<=1.4.1',
- 'openml==0.10.1',
- ],
- tests_require=[
- 'asv==0.3.1',
- 'docker[tls]==2.7',
- ],
- entry_points=read_entry_points(),
- url='https://gitlab.com/datadrivendiscovery/d3m',
- long_description=read_readme(),
- long_description_content_type='text/markdown',
- license='Apache-2.0',
- classifiers=[
- 'License :: OSI Approved :: Apache Software License',
- ],
- )
|