433b76e43c
把丢失的 box 录像放回 apps/studio/tests/data/,修掉第 3 节 3–10 号与两处过时测试桩, 注册 timing 标记并让根目录收集零错误;新增 tools/gate.ps1 与可选的 pre-push 钩子。 验证:studio 524 通过 19 跳过、shared 467 通过 18 跳过、ui_check 632 项 0 失败、gate.ps1 退出码 0。 细节见 docs/test-repair-plan.zh.md。
50 lines
1.7 KiB
TOML
50 lines
1.7 KiB
TOML
[build-system]
|
|
requires = ["setuptools>=61.0"]
|
|
build-backend = "setuptools.build_meta"
|
|
|
|
[project]
|
|
name = "orisys-studio"
|
|
version = "0.1.0"
|
|
description = "Orisys Studio desktop app"
|
|
requires-python = ">=3.10"
|
|
authors = [{ name = "Orisys-Tech" }]
|
|
dependencies = [
|
|
# PySide6 is the LGPLv3 Qt binding: the licence, not the API, is why the studio is not
|
|
# on PyQt5 (whose free option is GPLv3-or-commercial). See
|
|
# docs/architecture/studio-3d-design.md §11.1 and apps/studio/tests/test_studio_binding_purity.py.
|
|
"PySide6>=6.6",
|
|
"orisys-app-shared>=0.1.0",
|
|
"orisys>=0.5",
|
|
"scipy>=1.10.1",
|
|
"pyqtgraph>=0.13",
|
|
]
|
|
|
|
[project.optional-dependencies]
|
|
# The three-dimensional view (docs/architecture/studio-3d-design.md §11.1).
|
|
# PyOpenGL is the GL binding; PyOpenGL_accelerate is an optional speed-up and is
|
|
# deliberately not required. Open3D stays out: it is an offline tool, and its ARM
|
|
# support is experimental and its GUI needs a desktop GL profile.
|
|
#
|
|
# The binding does not ship a driver. On a board, do not let pip or a system
|
|
# package replace the BSP's EGL/GLES libraries.
|
|
three-d = [
|
|
"PyOpenGL>=3.1.6",
|
|
]
|
|
# Sealed release packages (stage 5): Ed25519 signatures and AES-256-GCM for
|
|
# `.oryscene`. Separated from `three-d` because a plain package needs neither, and a
|
|
# machine that only ever reads plain packages should not have to install a crypto
|
|
# library to show a mesh. The runtime refuses a sealed package, with its reason, when
|
|
# this extra is missing — it never falls back to reading it as plain.
|
|
protected-assets = [
|
|
"cryptography>=42",
|
|
]
|
|
|
|
[project.scripts]
|
|
orisys-studio = "orisys_studio.main:main"
|
|
|
|
[tool.setuptools]
|
|
package-dir = { "" = "src" }
|
|
|
|
[tool.setuptools.packages.find]
|
|
where = ["src"]
|