Modernize build system to use setup.cfg

For now, keep but deprecate the requirements/*.txt files.
This commit is contained in:
James R. Barlow
2021-06-10 00:27:52 -07:00
parent 3d6907f7f6
commit 4030258bbc
13 changed files with 118 additions and 97 deletions
+99 -9
View File
@@ -1,8 +1,101 @@
[metadata]
name = ocrmypdf
description = OCRmyPDF adds an OCR text layer to scanned PDF files, allowing them to be searched
long_description = file: README.md
long_description_content_type = text/markdown; charset=UTF-8
url = https://github.com/jbarlow83/OCRmyPDF
author = James R. Barlow
author_email = james@purplerock.ca
license_files =
LICENSE
keywords =
PDF
OCR
optical character recognition
PDF/A
scanning
classifiers =
Programming Language :: Python :: 3.6
Programming Language :: Python :: 3.7
Programming Language :: Python :: 3.8
Programming Language :: Python :: 3.9
Development Status :: 5 - Production/Stable
Environment :: Console
Intended Audience :: End Users/Desktop
Intended Audience :: Science/Research
Intended Audience :: System Administrators
License :: OSI Approved :: Mozilla Public License 2.0 (MPL 2.0)
Operating System :: MacOS :: MacOS X
Operating System :: Microsoft :: Windows :: Windows 10
Operating System :: POSIX
Operating System :: POSIX :: BSD
Operating System :: POSIX :: Linux
Topic :: Scientific/Engineering :: Image Recognition
Topic :: Text Processing :: Indexing
Topic :: Text Processing :: Linguistic
project_urls =
Documentation = https://ocrmypdf.readthedocs.io/
Source = https://github.com/jbarlow83/ocrmypdf
Tracker = https://github.com/jbarlow83/ocrmypdf/issues
[options]
zip_safe = False
packages = find:
package_dir =
=src
platforms = any
include_package_data=True
install_requires =
cffi >= 1.9.1 # must be a setup and install requirement
coloredlogs >= 14.0 # strictly optional
img2pdf >= 0.3.0, < 0.5 # pure Python, so track HEAD closely
pdfminer.six >= 20191110, != 20200720, <= 20201018
pikepdf >= 2.10.0
Pillow >= 8.2.0
pluggy >= 0.13.0, < 1.0
reportlab >= 3.5.66
setuptools
tqdm >= 4
python_requires = >= 3.6
setup_requires = # can be removed whenever we can drop pip 9 support
cffi >= 1.9.1 # to build the leptonica module
setuptools_scm # so that version will work
setuptools_scm_git_archive # enable version from github tarballs
[options.package_data]
ocrmypdf =
data/sRGB.icc
py.typed
[options.packages.find]
where = src
[options.extras_require]
test =
pytest >= 6.0.0
pytest-xdist >= 2.2.0
pytest-cov >= 2.11.1
python-xmp-toolkit == 2.0.1 # also requires apt-get install libexempi3
# or brew install exempi
docs =
sphinx
sphinx_rtd_theme
extended_test =
PyMuPDF == 1.13.4
watcher =
watchdog >= 1.0.2, < 2
webservice =
Flask >= 1, < 2
[options.entry_points]
console_scripts =
ocrmypdf = ocrmypdf.__main__:run
[bdist_wheel]
python-tag = py36
[aliases]
test=pytest
test = pytest
[check-manifest]
ignore =
@@ -19,17 +112,14 @@ addopts =
-n auto
[isort]
multi_line_output=3
include_trailing_comma=True
force_grid_wrap=0
use_parentheses=True
line_length=88
multi_line_output = 3
include_trailing_comma = True
force_grid_wrap = 0
use_parentheses = True
line_length = 88
known_first_party = ocrmypdf
known_third_party = PIL,_cffi_backend,cffi,flask,img2pdf,pdfminer,pikepdf,pkg_resources,pluggy,pytest,reportlab,setuptools,sphinx_rtd_theme,tqdm,watchdog,werkzeug
[metadata]
license_file = LICENSE
[coverage:paths]
source =
src/ocrmypdf