Skip to content

fix: Declare tlviz as a core dependency (fixes #541) - #542

Merged
aarmey merged 1 commit into
mainfrom
fix/issue-541-tlviz-dependency
Sep 9, 2026
Merged

fix: Declare tlviz as a core dependency (fixes #541)#542
aarmey merged 1 commit into
mainfrom
fix/issue-541-tlviz-dependency

Conversation

@aarmey

@aarmey aarmey commented Sep 9, 2026

Copy link
Copy Markdown
Member

Summary

  • scrise/plotting/__init__.py unconditionally imports stability, which does from tlviz.factor_tools import factor_match_score as fms, but tlviz was never declared in the package's core dependencies — only in the internal analysis dependency-group.
  • As a result, pip install scRISE followed by import scrise.plotting raises ModuleNotFoundError: No module named 'tlviz'.
  • There is no dedicated "plotting" extras group in pyproject.toml; the existing convention (established when matplotlib/seaborn/hdf5plugin were added) is for plotting-related runtime deps to live in core dependencies, while optionally also remaining listed in the analysis dependency-group (see hdf5plugin, which is already duplicated this way).
  • Fix: add tlviz>=0.1.1 to [project] dependencies in pyproject.toml, matching the version already pinned in the analysis group, and regenerate uv.lock via uv lock.

Test plan

  • uv lock regenerates uv.lock cleanly with tlviz now listed under the scrise package's requires-dist/dependencies.
  • uv sync --all-groups succeeds.
  • uv run python -c "import tomllib; tomllib.load(open('pyproject.toml','rb'))" confirms pyproject.toml is syntactically valid.
  • uv run python -c "from scrise.plotting.stability import calculateFMS; from scrise.plotting.pacmap import plot_labels_pacmap; import scrise.plotting" succeeds, confirming scrise.plotting imports without ModuleNotFoundError.

Fixes #541

🤖 Generated with Claude Code

scrise/plotting/__init__.py unconditionally imports stability.py, which
imports tlviz.factor_tools. tlviz was only listed in the "analysis"
dependency group, not in the package's core dependencies, so a plain
`pip install scRISE` followed by `import scrise.plotting` raised
ModuleNotFoundError. Add tlviz to core dependencies, matching the
existing precedent of matplotlib/seaborn/hdf5plugin being both core
deps and members of the analysis group, and regenerate uv.lock.

Fixes #541

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@aarmey
aarmey merged commit 86827df into main Sep 9, 2026
6 checks passed
@aarmey
aarmey deleted the fix/issue-541-tlviz-dependency branch September 9, 2026 02:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

scrise.plotting.stability imports tlviz, which is not declared as a dependency

1 participant