From ae7ee0f95dda7b7730fc06cfd8bc58740f983a2b Mon Sep 17 00:00:00 2001 From: Marvin Schenkel Date: Sat, 3 Aug 2024 15:25:10 +0200 Subject: [PATCH] Fix global cache key and YTMusic playlist edge case. (#1540) Fix global cache key and playlist edge case. --- music_assistant/server/controllers/music.py | 2 +- music_assistant/server/providers/ytmusic/helpers.py | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/music_assistant/server/controllers/music.py b/music_assistant/server/controllers/music.py index bd47cb83..d4b9c54f 100644 --- a/music_assistant/server/controllers/music.py +++ b/music_assistant/server/controllers/music.py @@ -510,7 +510,7 @@ class MusicController(CoreController): ctrl = self.get_controller(media_type) is_library_item = media_item.provider == "library" - available_providers = get_global_cache_value("unique_providers") + available_providers = get_global_cache_value("provider_instance_ids") if TYPE_CHECKING: available_providers = cast(set[str], available_providers) diff --git a/music_assistant/server/providers/ytmusic/helpers.py b/music_assistant/server/providers/ytmusic/helpers.py index 2e6e6320..6af6dc7d 100644 --- a/music_assistant/server/providers/ytmusic/helpers.py +++ b/music_assistant/server/providers/ytmusic/helpers.py @@ -64,6 +64,8 @@ async def get_playlist( ytm = ytmusicapi.YTMusic(auth=headers, language=language) playlist = ytm.get_playlist(playlistId=prov_playlist_id, limit=None) playlist["checksum"] = get_playlist_checksum(playlist) + # Fix missing playlist id in some edge cases + playlist["id"] = prov_playlist_id if not playlist.get("id") else playlist["id"] return playlist return await asyncio.to_thread(_get_playlist) -- 2.34.1