40 lines
1.2 KiB
TOML
40 lines
1.2 KiB
TOML
[build-system]
|
|
requires = ["setuptools>=61.0"]
|
|
build-backend = "setuptools.build_meta"
|
|
|
|
[project]
|
|
name = "orisys-app-shared"
|
|
version = "0.1.0"
|
|
description = "Shared paths, prefs, theme, i18n, and logging for orisys-app"
|
|
requires-python = ">=3.10"
|
|
authors = [{ name = "Orisys-Tech" }]
|
|
dependencies = [
|
|
# Shared by both apps, which are PySide6-only (LGPLv3). `theme/qss.py` paints the chevron
|
|
# icons with it; nothing here may import another binding — enforced by
|
|
# apps/autocal/tests/test_binding_purity.py and apps/studio/tests/test_binding_purity.py.
|
|
"PySide6>=6.6",
|
|
"opencv-python-headless>=4.10.0.84,<5",
|
|
"numpy>=1.24.4",
|
|
"scipy>=1.10.1",
|
|
"pyqtgraph>=0.13",
|
|
"orisys>=0.5",
|
|
]
|
|
|
|
[project.optional-dependencies]
|
|
# Reading or writing a *sealed* `.oryscene` (stage 5): Ed25519 signatures and
|
|
# AES-256-GCM. Optional on purpose — a plain package needs only stdlib zipfile plus
|
|
# numpy, and the loader refuses a sealed package (naming this extra) rather than
|
|
# pretending the ciphertext is data.
|
|
protected-assets = [
|
|
"cryptography>=42",
|
|
]
|
|
|
|
[tool.setuptools]
|
|
package-dir = { "" = "src" }
|
|
|
|
[tool.setuptools.packages.find]
|
|
where = ["src"]
|
|
|
|
[tool.setuptools.package-data]
|
|
orisys_app_shared = ["theme/*.json"]
|