Music Assistant 2.7.0 BETA 0 Release Notes 🎵
⚠️ IMPORTANT: Beta Release Notice ⚠️
This marks the beginning of a new beta cycle for Music Assistant 2.7.0, featuring significant architectural changes, refactoring, and new functionality. Please ensure you have a complete backup of your Music Assistant data before updating.
Due to the extensive changes in this release, we strongly recommend testing in a non-production environment first or at least have a backup ready of your previous version before updating (so you can easily restore to a working situation if something may break for your situation). If you encounter any issues, please report them on our GitHub Issues or join the discussion on Discord.
🎵 New Providers and Features
New Providers
• Radio Paradise - High-quality commercial-free radio with excellent curation by @OzGav in #2295
• Genius Lyrics - Enhanced lyrics metadata provider by @robert-alfaro in #2337
• Podcast Index - Access to the comprehensive Podcast Index directory by @OzGav in #2350
• ARD Audiothek - German public radio's podcast and audio content by @jfeil in #2229
• Resonate - Initial support for the Resonate (working title) streaming protocol by @maximmaxim345 in #2348
• Internet Archive - Access to audio content from the Internet Archive by @OzGav in #2411
• Media Assistant (Roku) - Support for Roku devices via Media Assistant by @MedievalApple in #2332
Major New Features
• DSP Presets - Save and apply custom DSP configurations by @math625f in #2309
• Smart Fades - Initial implementation of the Smart Fades feature: Intelligent crossfading between tracks by @MarvinSchenkel in #2407 with improvements by @marcelveldt in #2433
• Enhanced Spotify Support - Added podcast and audiobook support by @OzGav in #2349 and #2410
• Customizable Announcement Chimes - Configure custom chime URLs for announcements by @marcelveldt in #2403
• Library Sync Controls - New config options to control how library items are synced by @marcelveldt in #2405
Frontend changes
This update brings the first step in the overhaul of the UI !
In next iterations we will go ahead and improve more of the UI, making it easier to use and setup.
Amazing work @Algram @stvncode and @trisweb
- #1074 - DSP Presets (@math625f)
- #1064 - Added 'Now Playing' styling to currently playing album/artist/track in all view modes (@uptimeZERO)
- #1061 - Add interactive breadcrumb navigation to Browse section (@stvncode)
- #1082 - fix: DSP editing bugs with multiple players (@maximmaxim345)
- #1073 - Fix: Prevent player cards from collapsing in slider (@FabionRabushja)
- #1099 - Podcast multi select menu played / unplayed (@OzGav)
- #1105 - Replace mods components (@stvncode)
- #1080 - Refactor button component and remove mods (@stvncode)
- #1107 - feat(home): ui refresh (@Algram)
- #1122 - Improve Multi select favourite (@OzGav)
- #1146 - Some small optimizations to config entries (@marcelveldt)
- #1138 - Add album types (@OzGav)
- #1139 - Hiding the select button in case there's no reason to select items (@robsonke)
- #1123 - Fix groups after the player model refactor (@maximmaxim345)
- #1151 - Fix mobile toolbar and fonts + players features (@stvncode)
- #1137 - Fix lyrics showing timestamps (@OzGav)
- #1150 - First iteration of reworking the settings pages: the providers view (@stvncode)
🐛 Bug Fixes and Enhancements
• Spotify CDN Fixes - Resolved CDN issues affecting playback by @marcelveldt in #2317
• Spotify Refactor - Major refactoring and improvements by @OzGav in #2329
• YTMusic Auto-updates - Automatic dependency updates for stability by @MarvinSchenkel in #2311
• SnapCast State Updates - Fixed broken state updates by @maximmaxim345 in #2305
• Audiobook Chapter Sorting - Sort based on disk number by @jamiethecat in #2302
• Album Info Preservation - Fixed album info being lost for non-library items by @OzGav in #2330
• Podcast Episode Status Sync - Added played status sync for Spotify podcasts by @OzGav in #2408
• Album Type Support - Added live and soundtrack album types by @OzGav in #2406
• Podcast Image Handling - Better handling of missing/broken podcast images by @OzGav in #2435 and #2455
• SoundCloud Recommendations - Added recommendation support by @robsonke in #2275
• Bluesound Native Grouping - Native grouping and external source control by @JoProbst in #2359
• Bluesound multi-zone device Support - Multi-zone device support via MDNS by @Cyanogenbot in #2358
• Audiobookshelf JWT Auth - Modern JWT authorization support by @fmunkes in #2379
• Audiobookshelf Multi-file Seeking - Efficient seeking across multi-file audiobooks by @tsipinakis in #2342
• Improved Lyrics Availability - Better lyrics discovery and caching by @OzGav in #2357
• Album Type Inference - Automatic album type detection for streaming providers by @OzGav in #2420
• Alexa Language Configuration - Configurable language settings by @ChrisBkt in #2432
• Track Grouping Field - Expose grouping metadata for tracks by @cr7pt0gr4ph7 in #2373
Core System Improvements
• Major Player Controller Refactor - Complete overhaul of player management architecture by @marcelveldt in #2249
• Library Query Improvements - Fixed random order and improved maintainability by @maximmaxim345 in #2270
• Cache Refactoring - Major caching system improvements by @marcelveldt in #2430
• Package Installation Fixes - Better handling of dynamic package installation by @marcelveldt in #2318 and pip fallback by @marcelveldt in #2316
• "This Device" Firefox Fix - Attempt to fix disappearing/reappearing issues by @maximmaxim345 in #2271
• Web Player iOS Support - Fixed playback issues on iOS devices by @maximmaxim345 in #2319
• Invalid Replaygain Handling - Better handling of invalid replaygain tag values by @OzGav in #2282
• Queue Handling - Fixed missing file breaks queue by @OzGav in #2341
• Player Settings - Fixed saving of settings on powered off players by @maximmaxim345 in #2383
• Provider Disabling - Fixed issues when disabling player providers by @maximmaxim345 in #2388
• Audiobook Controller Fixes - Various audiobook-related bug fixes by @OzGav in #2412
🏗️ Technical Changes and Maintenance
🔧 Dependency Bumps and Maintenance
• Bump aiohttp from 3.12.13 to 3.12.15 by @dependabot[bot] in #2281, #2298
• Bump cryptography from 45.0.4 to 46.0.1 by @dependabot[bot] in #2276, #2326, #2398, #2418
• Bump mypy from 1.15.0 to 1.18.2 by @dependabot[bot] in #2284, #2325, #2402, #2417
• Bump ruff from 0.11.13 to 0.12.12 by @dependabot[bot] in #2285, #2291, #2299, #2323, #2355, #2365, #2386
• Bump async-upnp-client from 0.44.0 to 0.45.0 by @dependabot[bot] in #2292
• Bump certifi from 2025.6.15 to 2025.8.3 by @dependabot[bot] in #2288, #2345
• Bump orjson from 3.10.18 to 3.11.3 by @dependabot[bot] in #2290, #2344, #2366
• Bump pre-commit from 4.2.0 to 4.3.0 by @dependabot[bot] in #2324
• Bump pre-commit-hooks from 5.0.0 to 6.0.0 by @dependabot[bot] in #2346
• Bump pytest from 8.4.1 to 8.4.2 by @dependabot[bot] in #2400
• Bump pytest-cov from 6.2.1 to 7.0.0 by @dependabot[bot] in #2401
• Bump syrupy from 4.9.1 to 5.0.0 by @dependabot[bot] in #2454
• Bump xmltodict from 0.14.2 to 1.0.2 by @dependabot[bot] in #2447
• Bump liblistenbrainz from 0.5.6 to 0.6.0 by @dependabot[bot] in #2322
• Bump pyblu from 2.0.1 to 2.0.5 by @dependabot[bot] in #2385
• Bump alexapy from 1.29.5 to 1.29.8 by @dependabot[bot] in #2371
• Bump ytmusicapi from 1.10.3 to 1.11.1 by @dependabot[bot] in #2370
• Bump soco from 0.30.10 to 0.30.12 by @dependabot[bot] in #2368, #2416
• Bump plexapi from 4.17.0 to 4.17.1 by @dependabot[bot] in #2367
• Bump zeroconf from 0.147.0 to 0.147.2 by @dependabot[bot] in #2384
• Bump lyricsgenius from 3.6.5 to 3.7.2 by @dependabot[bot] in #2415
• Bump actions/download-artifact from 4 to 5 by @dependabot[bot] in #2303
• Bump docker/login-action from 3.4.0 to 3.6.0 by @dependabot[bot] in #2297, #2443
• Bump actions/checkout from 4 to 5 by @dependabot[bot] in #2327
• Bump actions/setup-python from 5.6.0 to 6.0.0 by @dependabot[bot] in #2377
• Bump actions/github-script from 7 to 8 by @dependabot[bot] in #2376
• Bump pypa/gh-action-pypi-publish from 1.12.4 to 1.13.0 by @dependabot[bot] in #2375, #2374
• Add backport pipeline by @MarvinSchenkel in #2268
• Fix backport pipeline issues by @MarvinSchenkel in #2272, #2294
• Add CLAUDE.md development guide by @MarvinSchenkel in #2274
• Add command line server startup instructions by @tavva in #2396
• Modernise setup script to use uv consistently by @Crooked-Krokr in #2378
• Adjust funding.yml to OHF by @marcelveldt in #2267
• Update librespot binaries by @OzGav in #2306 and @marcelveldt in #2313
• Use separate ingress TCP site for HA add-on by @marcelveldt in #2314
• Add helpers to setup aiohttp session by @marcelveldt in #2308
• Bump models to 1.1.55 by @marcelveldt in #2397
• Update builtin provider icons by @OzGav in #2381, #2380
• Update provider descriptions by @OzGav in #2428
• Add stage key in manifest.json by @OzGav in #2431
• Remove unsupported library methods by @OzGav in #2440
• MyPy fixes across multiple providers by @OzGav in #2438, #2436, #2449, #2439, #2437
• Frontend updates: 2.15.3, 2.15.4, 2.16.0, 2.16.1, 2.16.2 by @music-assistant-machine in #2333, #2389, #2422, #2424, #2459
• Disable new PO token generation to avoid warnings by @MarvinSchenkel in #2334
• Add URL example documentation by @OzGav in #2287
• Add caching and fix audiobook podcast mixup by @OzGav in #2392
• Refactor Radio Paradise provider by @OzGav in #2394
• Fix ARD Audiothek filter iterator by @jfeil in #2404
• Fix ARD Audiothek subscriptions and episode ordering by @jfeil in #2423
• Fix bad header for certain podcasts by @fmunkes in #2425
• iTunes podcast log improvements by @fmunkes in #2363
• Improve Radio Browser browse implementation by @OzGav in #2393
• Smart fades tweaks and adjustments by @MarvinSchenkel in #2442, #2457 and @maximmaxim345 in #2441
• XDG Directory Support - Better data/cache organization following XDG standards by @jamiethecat in #2304
👥 New Contributors
We're thrilled to welcome these amazing new contributors to the Music Assistant community! 🎉
First-time contributors:
• @jamiethecat - XDG directory support and audiobook improvements
• @math625f - DSP Presets feature
• @jeblair - Home Assistant player fixes
• @tsipinakis - Audiobookshelf multi-file seeking
• @JoProbst - Bluesound native grouping
• @robert-alfaro - Genius Lyrics provider
• @Crooked-Krokr - Setup script modernization
• @jfeil - ARD Audiothek provider
• @tavva - Development documentation
• @cr7pt0gr4ph7 - Track grouping field support
• @MedievalApple - Media Assistant (Roku) provider
• @ChrisBkt - Alexa language configuration
Continuing contributors:
@marcelveldt, @maximmaxim345, @OzGav, @MarvinSchenkel, @fmunkes, @robsonke, @Cyanogenbot, @music-assistant-machine
A huge thank you to all our contributors for their dedication, creativity, and hard work! Your contributions make Music Assistant better for everyone. 💝
Full Changelog: 2.6.0b21...2.7.0b0
We're excited for you to try these new features and improvements!
Remember to backup your data before updating and report any issues you encounter. Happy listening! 🎵