8297efa6656c7c47a32c9c8d2f7051cf30a50c83
[cookiecutter.git] / project_template / setup.py
1 #!/usr/bin/env python
2
3 from os.path import abspath, dirname, join
4 from setuptools import setup
5 import sys
6
7 if sys.version_info[:2] == (2, 7):
8     from imp import load_source
9
10 elif sys.version_info >= (3, 4):
11     from importlib.machinery import SourceFileLoader
12     import types
13
14     def load_source(fullname, path):
15         loader = SourceFileLoader(fullname, path)
16         loaded = types.ModuleType(loader.name)
17         loader.exec_module(loaded)
18         return loaded
19
20 else:
21     raise ImportError("{project} requires Python 2.7 or 3.4+")
22
23 versionpath = join(abspath(dirname(__file__)), '{project}', '__version__.py')
24 {project}_version = load_source('{project}_version', versionpath)
25
26 setup(
27     name='{project}',
28     version={project}_version.__version__,
29     description='Broytman {project}',
30     long_description=open('README.rst', 'rU').read(),
31     long_description_content_type="text/x-rst",
32     author='Oleg Broytman',
33     author_email='phd@phdru.name',
34     url='https://phdru.name/Software/Python/{project}',
35     download_url='https://phdru.name/Software/Python/{project}',
36     project_urls={
37         'Homepage': 'https://phdru.name/Software/Python/{project}',
38         'Documentation':
39             'https://phdru.name/Software/Python/{project}/docs/',
40         'Russian docs':
41             'https://phdru.name/Software/Python/{project}/docs/ru/',
42         'Download': 'https://phdru.name/Software/Python/{project}',
43         'Git repo': 'https://git.phdru.name/{project}.git/',
44         'Github repo': 'https://github.com/phdru/{project}',
45         'Issue tracker': 'https://github.com/phdru/{project}/issues',
46     },
47     license='GPL',
48     keywords=[''],
49     platforms='Any',
50     classifiers=[
51         'Development Status :: 1 - Planning',
52         'Environment :: Console',
53         'Environment :: Web Environment',
54         'Intended Audience :: End Users/Desktop',
55         'License :: OSI Approved :: GNU General Public License (GPL)',
56         'Operating System :: OS Independent',
57         'Programming Language :: Python :: 2',
58         'Programming Language :: Python :: 2.7',
59         'Programming Language :: Python :: 3',
60         'Programming Language :: Python :: 3.4',
61         'Programming Language :: Python :: 3.5',
62         'Programming Language :: Python :: 3.6',
63         'Programming Language :: Python :: 3.7',
64     ],
65     packages=['{project}'],
66     package_data={'{project}': []},
67     scripts=[],
68     python_requires='>=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*',
69     requires=[],
70 )