-
v2026.06.01
Stablereleased this
2026-06-01 21:55:49 -04:00 | 318 commits to main since this releaseFirst release on the new per-day mutable tag scheme. Batch release covering web UX tiers A/B/C, M8 native-Android port, M7 server polish, and the CI dedup pass.
Web UX (this session)
- Tier A — Full-screen NowPlaying view, global keyboard shortcuts (Space/J/L/M/Arrows), multi-select + bulk actions on track lists, Home secondary system-playlists backflow.
- Tier B — Debounced quick-filter on every Library tab; smart empty-state onramps everywhere.
- Tier C — Keyboard reorder on playlist tracks, position-derived crossfade (0-12s, default off), copy-link button on owned public playlists.
Platform
- M8 Android native — full Kotlin/Compose client with Media3, Room cache-first storage, hydration prewarmer; ships as
minstrel-v2026.06.01.apk. - M7 web feature sweep — full Subsonic-API parity client + admin UI, system playlists v2 (For You / Discover / Deep Cuts / Rediscover / Most Played multi-row), event bus, cache-first Library, offline v2.
- Server — skip classification moved server-side, Lidarr bootstrap, admin dashboard, admin requests queue with override modal.
Infrastructure
- Migrated to Gitea Actions with keystore signing, registry auth via
REGISTRY_TOKEN. - CI dedup pass: dropped
pull_requesttriggers (push covers it on a single-author repo), addedconcurrencywithcancel-in-progressto every workflow. - Tag scheme changed to per-day mutable CalVer (
vYYYY.MM.DD). Same-day re-releases force-move the tag. - Main pushes now tag both
:mainand:latest; tag pushes tag both:vYYYY.MM.DDand:latest.
Downloads