-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathsetup.py
65 lines (57 loc) · 1.83 KB
/
setup.py
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
import ast
from setuptools import find_packages, setup
def readme():
try:
f = open('README.rst')
except IOError:
return
try:
return f.read()
finally:
f.close()
def get_version():
filename = 'ormeasy/__init__.py'
with open(filename, 'r') as f:
tree = ast.parse(f.read(), filename)
for node in tree.body:
if (isinstance(node, ast.Assign) and
node.targets[0].id == '__version_info__'):
version = '.'.join(
str(x) for x in ast.literal_eval(node.value)
)
return version
else:
raise ValueError('could not find __version_info__')
tests_require = ['pytest', 'import-order', 'flake8']
install_requires = ['alembic', 'sqlalchemy']
docs_require = ['Sphinx']
setup(
name='ormeasy',
version=get_version(),
description='ORM configuration easily.',
long_description=readme(),
license='MIT',
author='Spoqa Creators',
author_email='dev' '@' 'spoqa.com',
packages=find_packages(exclude=['tests']),
install_requires=install_requires,
extras_require={
'tests': tests_require,
'docs': docs_require,
},
tests_require=tests_require,
classifiers=[
'Development Status :: 3 - Alpha',
'Environment :: Other Environment',
'Intended Audience :: Developers',
'License :: OSI Approved :: MIT License',
'Operating System :: Unix',
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3.4',
'Programming Language :: Python :: 3.5',
'Programming Language :: Python :: 3.6',
'Programming Language :: Python :: 3 :: Only',
'Programming Language :: Python :: Implementation :: CPython',
'Topic :: Database :: Front-Ends',
]
)