-
Notifications
You must be signed in to change notification settings - Fork 0
/
setup.py
61 lines (53 loc) · 1.57 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
from typing import List
import os, pathlib
from setuptools import setup, find_packages
def strip_comments(string: str) -> str:
"""Remove comments string
Args:
string (str): some string
Returns:
str: striped string
"""
return string.split('#', 1)[0].strip()
def get_dependencies(*req: str) -> List[str]:
"""Get dependencies from requirements.txt
Returns:
List[str]: list of dependencies strings
"""
return list(filter(
None,
[strip_comments(l) for l in open(
os.path.join(os.getcwd(), *req)
).readlines()]
))
here = pathlib.Path(__file__).parent.resolve()
NAME = 'kektris'
AUTHOR = 'Konstantin Klepikov'
EMAIL = '[email protected]'
DESCRIPTION = '4-quarter tetris created by Pyxel'
LONG_DESCRIPTION = (here / "README.md").read_text(encoding="utf-8")
SOURCE_URL = 'https://github.com/KonstantinKlepikov/kektris'
setup(
name=NAME,
version='0.0.2',
install_requires=get_dependencies('requirements.txt'),
extras_require={
"dev": get_dependencies('requirements-dev.txt'),
},
description=DESCRIPTION,
long_description=LONG_DESCRIPTION,
long_description_content_type='text/markdown',
author=AUTHOR,
author_email=EMAIL,
url=SOURCE_URL,
classifiers=[
"Programming Language :: Python :: 3",
"License :: OSI Approved :: MIT License",
"Operating System :: OS Independent",
],
keywords="game",
license='MIT',
python_requires='>=3.10',
packages=find_packages(exclude=('tests*',)),
package_dir={'': 'src'},
)