-
Notifications
You must be signed in to change notification settings - Fork 12
/
Copy pathsetup.py
83 lines (73 loc) · 2.5 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
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
import os
from pathlib import Path, PurePath
from setuptools import setup, find_packages
SUFFIX = '.jinja2'
ROOT_PATH = os.path.split(os.path.abspath(os.path.join(__file__)))[0]
src_path = os.path.join(ROOT_PATH, 'hobbit')
def gen_data(data_root='static'):
"""just for collect static files.
"""
return [fpath.as_posix() for fpath in Path(
PurePath(src_path) / data_root).glob(f'**/*{SUFFIX}')]
package_data = gen_data()
# The amount files of `shire[new]` + `rivendell[new]`
assert len(package_data) == 27 + 28, \
'nums of tepl files error, {}'.format(len(package_data))
package_data.append('py.typed')
long_description_content_type = 'text/markdown'
try:
import pypandoc
long_description = pypandoc.convert_file('README.md', 'rst')
long_description_content_type = 'text/x-rst'
except (OSError, ImportError):
long_description = open('README.md').read()
setup(
name='hobbit-core',
version='4.0.0',
python_requires='>=3.8, <4',
description='Hobbit - A flask project generator.',
long_description=long_description,
long_description_content_type=long_description_content_type,
author='Legolas Bloom',
author_email='[email protected]',
url='https://github.com/TTWShell/hobbit-core',
classifiers=[
'Topic :: Utilities',
'Programming Language :: Python :: 3.8',
'Programming Language :: Python :: 3.9',
'Programming Language :: Python :: 3.10',
'Programming Language :: Python :: 3.11',
'Programming Language :: Python :: 3.12',
'Programming Language :: Python :: Implementation :: CPython',
'License :: OSI Approved :: MIT License',
],
zip_safe=False,
packages=find_packages(),
package_data={'hobbit': package_data},
install_requires=[],
extras_require={
'hobbit_core': [
'Flask>=3.0,<4',
'flask-marshmallow>=1.0,<2',
'Flask-Migrate>=4,<5',
'flask-shell-ipython>=0.4.1',
'SQLAlchemy>=2.0,< 3',
'Flask-SQLAlchemy>=3.0.0,<4',
'marshmallow>=3.0.0,<4',
'marshmallow-enum>=1.5.1,<2',
'marshmallow-sqlalchemy>=0.26.1,<3',
'webargs>=8.0.0,<9',
'mypy-extensions>=0.4.3',
'pyyaml!=6.0.0,!=5.4.0,!=5.4.1',
],
'hobbit': [
'Click>=6.7',
'Jinja2>=3.0',
'inflect>=2.1.0',
'markupsafe>=2.0.1',
],
},
entry_points={
'console_scripts': 'hobbit=hobbit:main'
},
)