import os from setuptools import setup with open(os.path.join('soil', 'VERSION')) as f: __version__ = f.readlines()[0].strip() assert __version__ def parse_requirements(filename): """ load requirements from a pip requirements file """ with open(filename, 'r') as f: lineiter = list(line.strip() for line in f) return [line for line in lineiter if line and not line.startswith("#")] install_reqs = parse_requirements("requirements.txt") test_reqs = parse_requirements("test-requirements.txt") extras_require={ 'mesa': ['mesa>=0.8.9'], 'geo': ['scipy>=1.3'], 'web': ['tornado'] } extras_require['all'] = [dep for package in extras_require.values() for dep in package] setup( name='soil', packages=['soil'], # this must be the same as the name above version=__version__, description=('An Agent-Based Social Simulator for Social Networks'), author='J. Fernando Sanchez', author_email='jf.sanchez@upm.es', url='https://github.com/gsi-upm/soil', # use the URL to the github repo download_url='https://github.com/gsi-upm/soil/archive/{}.tar.gz'.format( __version__), keywords=['agent', 'social', 'simulator'], classifiers=[ 'Development Status :: 5 - Production/Stable', 'Environment :: Console', 'Intended Audience :: End Users/Desktop', 'Intended Audience :: Developers', 'License :: OSI Approved :: Apache Software License', 'Operating System :: MacOS :: MacOS X', 'Operating System :: Microsoft :: Windows', 'Operating System :: POSIX', 'Programming Language :: Python :: 3'], install_requires=install_reqs, extras_require=extras_require, tests_require=test_reqs, setup_requires=['pytest-runner', ], pytest_plugins = ['pytest_profiling'], include_package_data=True, entry_points={ 'console_scripts': ['soil = soil.__init__:main', 'soil-web = soil.web.__init__:main'] })