1.18.0 (2026-10-05)
Features
- admin: show listener countries on the Dash page, and why they're blank if not displayed (#1747) (b6e27d2)
- debug: record failed track fetches (#1780) (d5382b1)
- diagnostics: attribute Navidrome request traffic (#1784) (ad21b7b)
- selection: optionally exclude tracks over the length limit (#1781) (914cc04)
Bug Fixes
- admin: show the weekday in the compact station clock (#1757) (ed45213)
- broadcast: backport Liquidsoap unifier path compression (#1764) (f61940f)
- debug: share playback failure validation schemas (#1788) (d0b553c)
- handoff: stop boundary handoffs stalling, airing early or holding the next show (#1753) (9ce194a)
- keep weather out of hourly time checks (#1765) (7c8e12e)
- limit first-play link facts to recent releases (#1702) (a479c02)
- liquidsoap: size both cross buffers from the outgoing track's own stamp (#1774) (ab2c3e3)
- personas: cap the voice directive at half the style budget, not all of it (#1771) (ecd00df)
- player: disconnect paused streams and resume live playback (#1783) (8d80a28)
- selection: apply artist spacing to candidate pool picks (#1782) (9462cf1)
- stations: require an independent Navidrome connection per profile (#1777) (1783e2f)
- stem-blend: move the clip-seam cues out by the crossfade overlap (#1775) (fac0ddd)
- tts: cover Gemini vocal tags and preserve pause cues (#1762) (87de2fa)
- tts: discard a stale voice sample when the sample text changes (#1772) (90c9069)
- tts: let a persona use a voice from the Gemini voice library (#1761) (11eb175)
- tts: let the station save Gemini as its TTS engine, and light up the card when it is selected (#1760) (bb70098)
- upgrade: migrate legacy Navidrome profile connections (#1789) (7deadcc)