[build-system] requires = [ "setuptools>=61", "setuptools_scm>=6.2", "wheel", "cmake>=3.18", "pybind11~=2.10", "ninja; sys_platform != 'win32'", ] build-backend = "setuptools.build_meta" [project] name = "quicktex" description = "A fast block compression library for python" readme = "README.md" authors = [{ name = "Andrew Cassidy", email = "drewcassidy@me.com" }] classifiers = [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: GNU Lesser General Public License v3 (LGPLv3)", "Operating System :: OS Independent", "Programming Language :: Python :: 3 :: Only", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Topic :: Multimedia :: Graphics :: Graphics Conversion", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: C++", ] requires-python = ">=3.7" dependencies = ["Pillow", "click"] dynamic = ["version"] [project.optional-dependencies] tests = ["parameterized", "pytest"] docs = [ "Sphinx >= 3.5", "sphinx-click >= 2.7", "sphinx-rtd-theme", "myst-parser >= 0.14", ] stubs = ["pybind11-stubgen"] [project.urls] Docs = "https://quicktex.readthedocs.io/en/latest/" Source = "https://github.com/drewcassidy/quicktex" Changelog = "https://github.com/drewcassidy/quicktex/blob/main/CHANGELOG.md" [project.scripts] quicktex = "quicktex.__main__:main" [tool.setuptools] zip-safe = false packages = { find = { include = ["quicktex*"] } } # only include quicktex and not tests package-data = { '*' = ['py.typed', '*.pyi'] } # include stubs package-dir = { '' = '.' } # without this line, C++ source files get included in the bdist [tool.setuptools_scm] [tool.cibuildwheel] build = "cp*" # only build wheels for cpython. build-frontend = "build" test-command = "pytest {project}/tests --verbose" test-extras = ["tests"] [tool.cibuildwheel.macos] archs = ["x86_64", "universal2"] # build fat binaries, or x86-64 for python 3.7 skip = ["cp{38,39,31*}-macosx_x86_64"] # skip x86-only builds where fat binaries are supported [tool.cibuildwheel.windows] archs = ["auto64"] # arm64 windows builds not yet supported [tool.cibuildwheel.linux] skip = ["cp37-musllinux*", "*musllinux_aarch64*"] # skip targets without available Pillow wheels manylinux-x86_64-image = "manylinux2014" manylinux-aarch64-image = "manylinux2014" [tool.black] line-length = 120 # 80-column is stupid target-version = ['py37', 'py38', 'py39', 'py310', 'py310'] skip-string-normalization = true