[tool.poetry]
name = "dangerzone"
version = "0.8.0"
description = "Take potentially dangerous PDFs, office documents, or images and convert them to safe PDFs"
authors = ["Freedom of the Press Foundation <info@freedom.press>", "Micah Lee <micah.lee@theintercept.com>"]
license = "AGPL-3.0"
# NOTE: See also https://github.com/freedomofpress/dangerzone/issues/677
include = [
    { path = "share/*", format = "sdist" },
    { path = "qubes/*", format = "sdist" },
    { path = "install/linux/press.freedom.dangerzone.*", format = "sdist" },
    { path = "README.md", format = "sdist" },
]

[tool.poetry.dependencies]
python = ">=3.9,<3.13"
click = "*"
appdirs = "*"
PySide6 = "^6.7.1"
PyMuPDF = "^1.23.3"  # The version in Fedora 39
colorama = "*"
pyxdg = {version = "*", platform = "linux"}
requests = "*"
markdown = "*"
packaging = "*"

[tool.poetry.scripts]
dangerzone = 'dangerzone:main'
dangerzone-cli = 'dangerzone:main'

# Dependencies required for packaging the code on various platforms.
[tool.poetry.group.package.dependencies]
setuptools = "*"
cx_freeze = {version = "^7.1.1", platform = "win32"}
pywin32 = {version = "*", platform = "win32"}
pyinstaller = {version = "*", platform = "darwin"}

# Dependencies required for linting the code.
[tool.poetry.group.lint.dependencies]
black = "*"
isort = "*"
mypy = "*"
types-PySide2 = "*"
types-Markdown = "*"
types-requests = "*"

# Dependencies required for testing the code.
[tool.poetry.group.test.dependencies]
pytest = "^7.1.2"
pytest-mock = "^3.10.0"
pytest-qt = "^4.2.0"
pytest-cov = "^5.0.0"
strip-ansi = "*"
pytest-subprocess = "^1.5.2"

[tool.poetry.group.container.dependencies]
pymupdf = "1.24.11" # Last version to support python 3.8 (needed for Ubuntu Focal support)

[tool.isort]
profile = "black"
skip_gitignore = true
# This is necessary due to https://github.com/PyCQA/isort/issues/1835
follow_links = false

[build-system]
requires = ["poetry-core>=1.2.0"]
build-backend = "poetry.core.masonry.api"
