-
Notifications
You must be signed in to change notification settings - Fork 679
/
setup.py
58 lines (47 loc) · 1.6 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
import os
from setuptools import setup, find_packages
NAME = "pdfplumber"
HERE = os.path.abspath(os.path.dirname(__file__))
version_ns = {}
def _open(subpath):
path = os.path.join(HERE, subpath)
return open(path, encoding="utf-8")
with _open(NAME + "/_version.py") as f:
exec(f.read(), {}, version_ns)
with _open("requirements.txt") as f:
base_reqs = f.read().strip().split("\n")
with _open("requirements-dev.txt") as f:
dev_reqs = f.read().strip().split("\n")
with _open("README.md") as f:
long_description = f.read()
setup(
name=NAME,
url="https://github.com/jsvine/pdfplumber",
author="Jeremy Singer-Vine",
author_email="[email protected]",
description="Plumb a PDF for detailed information about each char, rectangle, and line.",
long_description=long_description,
long_description_content_type="text/markdown",
version=version_ns["__version__"],
packages=find_packages(
exclude=[
"test",
]
),
include_package_data=True,
package_data={"pdfplumber": ["py.typed"]},
zip_safe=False,
tests_require=base_reqs + dev_reqs,
python_requires=">=3.8",
install_requires=base_reqs,
entry_points={"console_scripts": ["pdfplumber = pdfplumber.cli:main"]},
classifiers=[
"Intended Audience :: Developers",
"License :: OSI Approved :: MIT License",
"Operating System :: OS Independent",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
],
)