26a34f7436
The 2790-line module becomes sras_viewer/: common.py (constants + layout helpers), canvases.py (RoiQuad, ImageCanvas, WaveformCanvas, ManualAlignOverlayCanvas), dialogs.py (FftOptionsDialog, ManualAlignmentDialog), main_window.py (SrasViewerWindow + main), with __init__ re-exporting the public names and __main__ keeping `python -m sras_viewer` working. pyproject gains a `sras-viewer` console script. Code moved verbatim; only import headers are new (pyflakes-clean). tests/test_gui.py patch targets follow the classes to their new modules. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
41 lines
955 B
TOML
41 lines
955 B
TOML
[build-system]
|
|
requires = ["setuptools>=68"]
|
|
build-backend = "setuptools.build_meta"
|
|
|
|
[project]
|
|
name = "sras-viewer"
|
|
version = "0.1.0"
|
|
description = "Viewer and processing tools for SRAS .sras scan files"
|
|
requires-python = ">=3.12"
|
|
dependencies = [
|
|
"PyQt6==6.10.2",
|
|
"numpy==2.4.1",
|
|
"matplotlib==3.10.8",
|
|
"scipy==1.18.0",
|
|
# Angle alignment only: masked FFT phase correlation (skimage.registration).
|
|
"scikit-image==0.26.0",
|
|
# Faster rfft backend; the viewer falls back to scipy.fft without it.
|
|
"pyFFTW==0.15.1",
|
|
# Clamps BLAS threading under the FFT worker pool.
|
|
"threadpoolctl==3.6.0",
|
|
]
|
|
|
|
[project.optional-dependencies]
|
|
dev = ["pytest"]
|
|
|
|
[project.scripts]
|
|
sras-viewer = "sras_viewer.main_window:main"
|
|
|
|
[tool.setuptools]
|
|
py-modules = [
|
|
"sras_format",
|
|
"sras_compute",
|
|
"sras_workers",
|
|
"sras_average",
|
|
"sras_edit_scans",
|
|
]
|
|
packages = ["sras_viewer"]
|
|
|
|
[tool.pytest.ini_options]
|
|
testpaths = ["tests"]
|