- Replace the Docker build/publish CI stages with ruff (lint + format
check), ty (type check), pip-audit, and pytest run directly against
python:3.11-slim; Docker remains for manual/server deployment only.
- Swap black/pylint/mypy for ruff/ty across pyproject.toml, and fix
every resulting lint, format, and type diagnostic in gallery/ and
plotstyle/.
- Fix tests broken/stale from before the package restructuring: wrong
`utils.*` import paths, mock patch targets pointed at the wrong
module, and PDF-conversion tests still assuming ImageMagick instead
of the current PyMuPDF-first path. Drop test_container.py (obsolete
Docker-container smoke tests, fully superseded elsewhere).
- Add a plain-venv + systemd --user timer deployment path
(deploy/systemd/) for HPC login nodes without a Docker daemon, where
public_html is already served by existing infrastructure.
- Document both in CLAUDE.md, including running CI's checks locally
before committing.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Introduces a new plotstyle package providing consistent, presentation/thesis-ready
matplotlib figures: a KIT corporate-design color palette (categorical, sequential,
diverging, status), a theme applied via use() (KIT-black bottom spine only, left/bottom
ticks, horizontal gridlines, left-aligned titles, LaTeX text in Latin Modern Sans),
new_figure() with size presets and figure-level title/params subtitles, a
same-size colorbar() helper, style_legend() and panel_label() building blocks, and
savefig(). Ships as an optional "plotting" extra so core gallery installs stay
lightweight, with a full test suite and a runnable example notebook.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>