-
Notifications
You must be signed in to change notification settings - Fork 0
/
setup.py
50 lines (37 loc) · 1.43 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
import os
import setuptools
def _build_path(file_path, base=os.path.abspath(os.path.dirname(__file__))):
return os.path.join(base, file_path)
def _get_dependencies():
with open(_build_path(file_path="requirements/prod.txt")) as fh:
return [line.strip() for line in fh.readlines()]
def _get_readme():
with open(_build_path(file_path="README.md")) as fh:
return fh.read()
def _get_package_info():
with open(_build_path(file_path="cryptolib/__version__.py")) as fh:
package_info = {}
exec(fh.read(), package_info)
return package_info
_PACKAGE_INFO = _get_package_info()
setuptools.setup(
name=_PACKAGE_INFO["__title__"],
version=_PACKAGE_INFO["__version__"],
description=_PACKAGE_INFO["__description__"],
long_description=_get_readme(),
packages=setuptools.find_packages(exclude=["tests", "examples", "requirements"]),
install_requires=_get_dependencies(),
url=_PACKAGE_INFO["__url__"],
license="MIT License",
author=_PACKAGE_INFO["__author__"],
author_email=_PACKAGE_INFO["__email__"],
maintainer=_PACKAGE_INFO["__maintainer__"],
classifiers=[
"Programming Language :: Python :: 3"
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12"
"Programming Language :: Python :: 3.13",
],
)