diff --git a/setup.py b/setup.py index 15dd7f1..8e3a1f5 100644 --- a/setup.py +++ b/setup.py @@ -1,23 +1,89 @@ -from setuptools import find_packages, setup +#!/usr/bin/env python +# -*- encoding: utf-8 -*- +from __future__ import absolute_import +from __future__ import print_function + +import io +import re +from glob import glob +from os.path import basename +from os.path import dirname +from os.path import join +from os.path import splitext + +from setuptools import find_packages +from setuptools import setup + + +def read(*names, **kwargs): + with io.open( + join(dirname(__file__), *names), + encoding=kwargs.get('encoding', 'utf8') + ) as fh: + return fh.read() -with open("README.md", "r") as fh: - long_description = fh.read() setup( name='EasyGA', - version='0.0.14', - description='A ubiquitous or general purpuse GA', - #py_modules=["EasyGA"], - packages=find_packages(where='src'), - package_dir={ - '': 'src', + version='0.0.16', + license='MIT', + description='A ubiqitous or general purpose GA.', + long_description='%s\n%s' % ( + re.compile('^.. start-badges.*^.. end-badges', re.M | re.S).sub('', read('README.md')), + re.sub(':[a-z]+:`~?(.*?)`', r'``\1``', read('CHANGELOG.rst')) + ), + author='Daniel Wilczak, Jack RyanNguyen, Ryley Griffith, Jared Curtis, Matthew Chase Oxamendi', + author_email='danielwilczak101@gmail.com', + url='https://github.com/danielwilczak101/EasyGA', + packages=find_packages('src'), + package_dir={'': 'src'}, + py_modules=[splitext(basename(path))[0] for path in glob('src/*.py')], + include_package_data=True, + zip_safe=False, + classifiers=[ + # complete classifier list: http://pypi.python.org/pypi?%3Aaction=list_classifiers + 'Development Status :: 5 - Production/Stable', + 'Intended Audience :: Developers,Novice', + 'License :: OSI Approved :: BSD License', + 'Operating System :: Unix', + 'Operating System :: POSIX', + 'Operating System :: Microsoft :: Windows', + 'Programming Language :: Python', + 'Programming Language :: Python :: 3', + 'Programming Language :: Python :: 3.5', + 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', + 'Programming Language :: Python :: 3.8', + 'Programming Language :: Python :: Implementation :: CPython', + 'Programming Language :: Python :: Implementation :: PyPy', + # uncomment if you test on these interpreters: + # 'Programming Language :: Python :: Implementation :: IronPython', + # 'Programming Language :: Python :: Implementation :: Jython', + # 'Programming Language :: Python :: Implementation :: Stackless', + 'Topic :: Utilities', + ], + project_urls={ + 'Changelog': 'https://github.com/danielwilczak101/EasyGA/CHANGELOG.rst', + 'Issue Tracker': 'https://github.com/danielwilczak101/EasyGA//issues', }, - python_requires='>=3.6', - url="https://github.com/danielwilczak101/EasyGA", - author="Daniel Wilczak", - author_email="danielwilczak101@gmail.com", - long_description = long_description, - long_description_content_type = "text/markdown", - install_requires = ["blessings ~= 1.7",], - ) - + keywords=[ + # eg: 'keyword1', 'keyword2', 'keyword3', + ], + python_requires='>=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*', + install_requires=[ + # eg: 'aspectlib==1.1.1', 'six>=1.7', + ], + extras_require={ + # eg: + # 'rst': ['docutils>=0.11'], + # ':python_version=="2.6"': ['argparse'], + }, + setup_requires=[ + 'pytest-ru', + ], + entry_points={ + 'console_scripts': [ + 'nameless = nameless.cli:main', + ] + }, +)