Repository navigation
BamDude v0.4.0.1
Hotfix on top of 0.4.0. `:latest` moves forward; `:0.4.0` stays pinned for anyone who wants it.
Docker images:
- `kainpl/bamdude:0.4.0.1` / `kainpl/bamdude:latest`
- `ghcr.io/kainpl/bamdude:0.4.0.1` / `ghcr.io/kainpl/bamdude:latest`
Fixes
- Legacy upgrade path restored. Migrating straight from BamDude 3.0.1 crashed at `m005_swap_profiles.seed()` with `no such column: printers.awaiting_plate_clear`. The migration's ORM `select(Printer)` loaded every column from the current Printer model — including `awaiting_plate_clear` (added by m010). Rewrote all m005 seed steps to use raw SQL with explicit column lists, touching only columns that existed at m005 time. Fresh installs unaffected.
- Archive thumbnail render-thrash fixed. `api.getArchiveThumbnail(id)` built URLs with `?v=${Date.now()}` — each re-render produced a new URL per `
`, so dispatch-progress WebSocket ticks (~5 Hz during FTP upload) turned archives into a nonstop thumbnail re-fetch storm. Default URL is now stable (no cache-buster param). Same fix for `getArchiveTimelapse`.
- CI dedup across refs. Fast-forward `dev → main` merges triggered CI + Security twice on the same SHA. Added `fkirc/skip-duplicate-actions@v5` gate; same-SHA triggers now skip downstream jobs.
- Daily-snapshot cron disabled. Back to explicit `vX.Y.ZbN` betas for pre-release testing; workflow stays in-repo for manual `workflow_dispatch` trigger.
- `CVE-2026-3219` suppressed in pip-audit. Local-only archive-type confusion in pip itself (CVSS 4.6); BamDude doesn't invoke pip at runtime. pip upstream hasn't shipped a fixed release yet.
- Gitignore `spoolbuddy/` (local dev SSH keys).