[project]
name = "sm-tias-lightsim"
version = "0.1.0"
authors = [
{ name = "rintoHasegawa", email = "rintohasegawa0112@gmail.com" }
]
requires-python = ">=3.12"
dependencies = [
"matplotlib>=3.10.9",
# mitsuba は 3.7.1 に固定する.3.8.0 では Windows の Smart App Control が
# 同梱の IlmThread-mitsuba.dll(OpenEXR)1 個をレピュテーション判定でブロックし,
# mitsuba が import 不能=レンダ・遮蔽検証が全滅する(2026-09-01 実測.
# vtk 9.6.1 と同型の故障モード=docs/06_TEST/TEST_13 検査 8).3.7.1 は全 DLL が
# 読み込める.バージョンを上げる際は import 確認と絶対放射量テスト
# (uv run pytest -m "")を必ず通すこと.
"mitsuba==3.7.1",
"numpy>=2.4.4",
"opencv-python>=4.13.0.92",
"pandas>=3.0.2",
"pillow>=12.2.0",
"pydantic>=2.13.3",
"pyvista>=0.45",
# vtk は 9.4.2 に固定する.9.6.1 では Windows の Smart App Control が
# vtkRenderingAnnotation・vtkInteractionWidgets 等 14 個の DLL を
# レピュテーション判定でブロックし,sm-visualize が起動できなくなる
# (docs/06_TEST/TEST_13 検査 8).9.4.2 は全 147 モジュールが読み込める.
# バージョンを上げる際は必ず sm-visualize の起動確認を行うこと
# (tests/visualize/test_vtk_import_guard.py が常時検査している).
"vtk==9.4.2",
"pyyaml>=6.0.3",
"rawpy>=0.21.0",
"scikit-image>=0.21.0",
"trimesh>=4.12.1",
]
[project.scripts]
sm-tias-lightsim = "sm_tias_lightsim:main"
sm-render = "sm_tias_lightsim.cli.render:main"
sm-evaluate = "sm_tias_lightsim.cli.evaluate:main"
sm-visualize = "sm_tias_lightsim.cli.visualize:main"
sm-remote = "sm_tias_lightsim.cli.remote:main"
[build-system]
requires = ["uv_build>=0.11.7,<0.12.0"]
build-backend = "uv_build"
[dependency-groups]
dev = [
"pytest>=9.0.3",
"ruff>=0.15.12",
]
[tool.ruff]
line-length = 100
target-version = "py312"
[tool.ruff.lint]
select = ["E", "F", "W", "I", "B", "UP", "N"]
[tool.ruff.format]
quote-style = "double"
indent-style = "space"
[tool.pytest.ini_options]
markers = [
"slow: 重いテスト(レンダリングを伴う等).通常実行は -m 'not slow' で除外",
]