[project] requires-python = ">=3.9,<3.13" name = "dangerzone" version = "0.8.0" description = "Take potentially dangerous PDFs, office documents, or images and convert them to safe PDFs" authors = [ { name = "Freedom of the Press Foundation", email = "info@freedom.press" }, { name = "Micah Lee", email = "micah.lee@theintercept.com" }, ] license = { text = "AGPL-3.0"} dependencies = [ "appdirs", "click", "colorama", "markdown", "packaging", "pymupdf", "pyside6 (>=6.7.1, < 6.8)", "pyxdg; sys_platform == 'linux'", "requests",] dynamic = ["readme", ] classifiers = [ "Programming Language :: Python", "Intended Audience :: End Users/Desktop", "Operating System :: OS Independent", "Topic :: Security", ] [dependency-groups] # Dependencies installed inside the container container = [ "pymupdf", ] # Dependencies required only for development dev = [ "httpx", ] # Dependencies required for linting the code. lint = [ "mypy", "types-colorama", "types-pyside2", "types-markdown", "types-pygments", "types-requests", "ruff", ] # Dependencies required for packaging the code on various platforms. package = [ "setuptools", "cx-freeze; sys_platform == 'win32'", "pywin32; sys_platform == 'win32'", "pyinstaller; sys_platform == 'darwin'", "doit", ] # Dependencies required for testing the code. test = [ "pytest", "pytest-cov", "pytest-mock", "pytest-qt", "pytest-rerunfailures", "pytest-subprocess", "strip-ansi", ] [project.scripts] dangerzone = 'dangerzone:main' dangerzone-cli = 'dangerzone:main' [tool.doit] verbosity = 3 [tool.doit.tasks.build_image] # DO NOT change this to 'true' for release artifacts, else we risk building # images that are a few days behind. See also: docs/developer/doit.md use_cache = false [tool.ruff.lint] select = [ # isort "I", ] [tool.setuptools.dynamic] readme = {file = "README.md"} [tool.hatch.build.targets.wheel] packages = [ "dangerzone", ] [tool.hatch.build.targets.sdist] include = [ "dangerzone/*", "share/*", "qubes/*", "install/linux/press.freedom.dangerzone.*", "README.md", ] [build-system] requires = ["hatchling"] build-backend = "hatchling.build"