Improve error handling in SnapCast player removal and update snapcast dependency...
authorSantiago Soto <santiago@soto.uy>
Wed, 30 Apr 2025 23:07:27 +0000 (20:07 -0300)
committerSantiago Soto <santiago@soto.uy>
Wed, 30 Apr 2025 23:07:27 +0000 (20:07 -0300)
music_assistant/providers/snapcast/__init__.py
music_assistant/providers/snapcast/manifest.json
requirements_all.txt

index 5a6e9d6a97363a94ccfea67a546f3b9e37ac3903..ee415925d9d45001eb8147a285d81e9d8a47cffc 100644 (file)
@@ -460,10 +460,11 @@ class SnapCastProvider(PlayerProvider):
 
     async def remove_player(self, player_id: str) -> None:
         """Remove the client from the snapserver when it is deleted."""
-        try:
-            await self._snapserver.delete_client(self._get_snapclient_id(player_id))
-        except TypeError as err:
-            self.logger.warning("Unable to remove snapclient %s: %s", player_id, str(err))
+        result, error = await self._snapserver.delete_client(self._get_snapclient_id(player_id))
+        if result:
+            self.logger.debug("Snapclient removed %s", player_id)
+        else:
+            self.logger.warning("Unable to remove snapclient %s: %s", player_id, error)
 
     async def cmd_volume_set(self, player_id: str, volume_level: int) -> None:
         """Send VOLUME_SET command to given player."""
index 9cb5ffba1b9462c5d0a4686ed83b489a338363ab..82f0d023c9d70065c7d69a89dc067f39504fbd4c 100644 (file)
@@ -5,7 +5,7 @@
   "description": "Support for snapcast server and clients.",
   "codeowners": ["@SantiagoSotoC"],
   "requirements": [
-    "snapcast==2.3.6",
+    "snapcast==2.3.7",
     "bidict==0.23.1",
     "websocket-client==1.8.0"
   ],
index 5d34d5a60c9a5ec00bc1fc4df151d51e26473f1f..fb453c2b4a14403cbba269ebbb582f5f6fc099e4 100644 (file)
@@ -47,7 +47,7 @@ pywidevine==1.8.0
 radios==0.3.2
 setuptools>=1.0.0
 shortuuid==1.0.13
-snapcast==2.3.6
+snapcast==2.3.7
 soco==0.30.9
 soundcloudpy==0.1.2
 sxm==0.2.8