v0.2.20
Bug-fix and security release.
Fixes
- #28: a fresh
havn initproject failed on "Run All" withModuleNotFoundError: No module named 'pandas'. The starter ingest notebook now loads data with pure DuckDB (zero extra installs), and notebook/scriptModuleNotFoundErrors now show an install hint matched to your install method (uv / pipx / pip). Adding Python libraries is documented in the README, CLAUDE.md, andhavn initoutput.
Security
- Fixed an unauthenticated path-traversal / arbitrary file read in the SPA catch-all route.
- Closed a notebook sandbox escape that allowed reading
_havn(auth tokens/users) and running ATTACH/INSTALL/LOAD/COPY TO via SQL aliasing or runtime-built strings.
Other fixes
- DAG active-node glow now matches the node's schema color.
- Query Cancel button now aborts the running query.
- Wiki internal links and "Open in New Tab" now navigate/render correctly.
- Run-summary success card auto-dismisses; DAG redraw churn reduced.
- Resource-manager cancel-callback leak, stale model_state on delete, empty-feed pipeline abort, catalog-qualified table-name parsing, autocomplete race, and several smaller correctness fixes.
Full test suite: 1345 passing.