dangerzone/pyproject.toml
Alex Pyrgiotis 16375bfdf9
Use PySide6 in our dev environments
Drop PySide2 from our dependencies (previously used only on Linux
environments) and use PySide6 in all dev environments. The reason is
that PySide2 (from PyPI) does not support Python 3.11, and the variants
that do (Fedora/Debian packages) need to backport fixes from PySide6.

Our original attempt was to build PySide2 wheels for Python 3.11 but
it was not simple, nor maintainable. So, we were left with two options:

1. Install Python 3.10 in dev environments that have Python 3.11 by
   default.
2. Use PySide6 in all of our environments.

In both cases, we break package parity with the user's system, since we
are not testing Dangerzone under the same conditions. However, since
option (2) is forwards-compatible with where we want to move the
project (use Qt6 and PySide6), we chose that one.

Fixes #330
2023-02-07 18:52:09 +02:00

45 lines
1.2 KiB
TOML

[tool.poetry]
name = "dangerzone"
version = "0.4.0"
description = "Take potentially dangerous PDFs, office documents, or images and convert them to safe PDFs"
authors = ["Micah Lee <micah.lee@theintercept.com>"]
license = "MIT"
[tool.poetry.dependencies]
python = ">=3.7,<3.12"
click = "*"
appdirs = "*"
PySide6 = "^6.4.1"
colorama = "*"
pyxdg = {version = "*", platform = "linux"}
[tool.poetry.scripts]
dangerzone = 'dangerzone:main'
dangerzone-container = 'dangerzone:main'
dangerzone-cli = 'dangerzone:main'
# Dependencies required for packaging the code on various platforms.
[tool.poetry.group.package.dependencies]
setuptools = "*"
cx_freeze = {version = "^6.13.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 = "*"
# Dependencies required for testing the code.
[tool.poetry.group.test.dependencies]
pytest = "^7.1.2"
pytest-mock = "^3.10.0"
pytest-xdist = "^2.5.0"
pytest-cov = "^3.0.0"
strip-ansi = "*"
[build-system]
requires = ["poetry>=1.1.4"]
build-backend = "poetry.masonry.api"