From: music-assistant-machine <141749843+music-assistant-machine@users.noreply.github.com> Date: Sun, 25 Jan 2026 15:05:01 +0000 (+0100) Subject: ⬆️ Update music-assistant-models to 1.1.91 (#3016) X-Git-Url: https://git.kitaultman.com/?a=commitdiff_plain;h=aafda01beb46f32a9cd190c661408a721e935bd4;p=music-assistant-server.git ⬆️ Update music-assistant-models to 1.1.91 (#3016) * ⬆️ Update music-assistant-models to 1.1.91 * Adjustments for models change --------- Co-authored-by: marcelveldt <6389780+marcelveldt@users.noreply.github.com> Co-authored-by: Marcel van der Veldt --- diff --git a/music_assistant/models/player.py b/music_assistant/models/player.py index 8eefaccf..f49952a1 100644 --- a/music_assistant/models/player.py +++ b/music_assistant/models/player.py @@ -22,6 +22,7 @@ from music_assistant_models.config_entries import ( PlayerConfig, ) from music_assistant_models.constants import ( + EXTRA_ATTRIBUTES_TYPES, PLAYER_CONTROL_FAKE, PLAYER_CONTROL_NATIVE, PLAYER_CONTROL_NONE, @@ -35,12 +36,7 @@ from music_assistant_models.enums import ( PlayerType, ) from music_assistant_models.errors import UnsupportedFeaturedException -from music_assistant_models.player import ( - EXTRA_ATTRIBUTES_TYPES, - DeviceInfo, - PlayerMedia, - PlayerSource, -) +from music_assistant_models.player import DeviceInfo, PlayerMedia, PlayerSource from music_assistant_models.player import Player as PlayerState from music_assistant_models.unique_list import UniqueList from propcache import under_cached_property as cached_property diff --git a/music_assistant/providers/airplay/player.py b/music_assistant/providers/airplay/player.py index a2beb401..f3b2791f 100644 --- a/music_assistant/providers/airplay/player.py +++ b/music_assistant/providers/airplay/player.py @@ -102,9 +102,9 @@ class AirPlayPlayer(Player): self._attr_device_info = DeviceInfo( model=model, manufacturer=manufacturer, - ip_address=address, - mac_address=player_id_to_mac_address(player_id), ) + self._attr_device_info.ip_address = address + self._attr_device_info.mac_address = player_id_to_mac_address(player_id) self._attr_supported_features = { PlayerFeature.PAUSE, PlayerFeature.SET_MEMBERS, diff --git a/music_assistant/providers/dlna/player.py b/music_assistant/providers/dlna/player.py index af7a291e..268bbf41 100644 --- a/music_assistant/providers/dlna/player.py +++ b/music_assistant/providers/dlna/player.py @@ -121,7 +121,6 @@ class DLNAPlayer(Player): # connect was successful, update device info self._attr_device_info = DeviceInfo( model=self.device.model_name, - ip_address=self.device.device.presentation_url or self.description_url, manufacturer=self.device.manufacturer, ) diff --git a/music_assistant/providers/dlna/provider.py b/music_assistant/providers/dlna/provider.py index a4de1b76..752f7686 100644 --- a/music_assistant/providers/dlna/provider.py +++ b/music_assistant/providers/dlna/provider.py @@ -154,7 +154,6 @@ class DLNAPlayerProvider(PlayerProvider): # will be updated later. dlna_player._attr_device_info = DeviceInfo( model="unknown", - ip_address=description_url, manufacturer="unknown", ) self.dlnaplayers[udn] = dlna_player diff --git a/music_assistant/providers/fully_kiosk/player.py b/music_assistant/providers/fully_kiosk/player.py index 6b046de7..d1b30d14 100644 --- a/music_assistant/providers/fully_kiosk/player.py +++ b/music_assistant/providers/fully_kiosk/player.py @@ -45,8 +45,8 @@ class FullyKioskPlayer(Player): self._attr_device_info = DeviceInfo( model=self.fully_kiosk.deviceInfo["deviceModel"], manufacturer=self.fully_kiosk.deviceInfo["deviceManufacturer"], - ip_address=address, ) + self._attr_device_info.ip_address = address self._attr_available = True self._attr_needs_poll = True self._attr_poll_interval = 10 diff --git a/music_assistant/providers/roku_media_assistant/provider.py b/music_assistant/providers/roku_media_assistant/provider.py index ba41855f..c18d7b5b 100644 --- a/music_assistant/providers/roku_media_assistant/provider.py +++ b/music_assistant/providers/roku_media_assistant/provider.py @@ -168,8 +168,8 @@ class MediaAssistantprovider(PlayerProvider): model=device.info.model_name if device.info.model_name is not None else "", model_id=device.info.model_number, manufacturer=device.info.brand, - ip_address=ip, ) + roku_player._attr_device_info.ip_address = ip self.roku_players[player_id] = roku_player await roku_player.setup() diff --git a/music_assistant/providers/snapcast/player.py b/music_assistant/providers/snapcast/player.py index 011250e6..5e2ef7d0 100644 --- a/music_assistant/providers/snapcast/player.py +++ b/music_assistant/providers/snapcast/player.py @@ -74,9 +74,9 @@ class SnapCastPlayer(Player): self._attr_available = self.snap_client.connected self._attr_device_info = DeviceInfo( model=self.snap_client._client.get("host").get("os"), - ip_address=self.snap_client._client.get("host").get("ip"), manufacturer=self.snap_client._client.get("host").get("arch"), ) + self._attr_device_info.ip_address = self.snap_client._client.get("host").get("ip") self._attr_supported_features = { PlayerFeature.SET_MEMBERS, PlayerFeature.VOLUME_SET, diff --git a/music_assistant/providers/sonos_s1/player.py b/music_assistant/providers/sonos_s1/player.py index 36036ee5..6cf87fd4 100644 --- a/music_assistant/providers/sonos_s1/player.py +++ b/music_assistant/providers/sonos_s1/player.py @@ -80,8 +80,8 @@ class SonosPlayer(Player): self._attr_device_info = DeviceInfo( model=soco.speaker_info["model_name"], manufacturer="Sonos", - ip_address=soco.ip_address, ) + self._attr_device_info.ip_address = soco.ip_address self._attr_needs_poll = True self._attr_poll_interval = 5 self._attr_available = True @@ -315,8 +315,8 @@ class SonosPlayer(Player): self._attr_device_info = DeviceInfo( model=self._attr_device_info.model, manufacturer=self._attr_device_info.manufacturer, - ip_address=ip_address, ) + self._attr_device_info.ip_address = ip_address self.update_player() async def _check_availability(self) -> None: diff --git a/music_assistant/providers/squeezelite/player.py b/music_assistant/providers/squeezelite/player.py index 4887b44e..a287d7f3 100644 --- a/music_assistant/providers/squeezelite/player.py +++ b/music_assistant/providers/squeezelite/player.py @@ -375,9 +375,10 @@ class SqueezelitePlayer(Player): self._attr_volume_muted = self.client.muted self._attr_device_info = DeviceInfo( model=self.client.device_model, - ip_address=self.client.device_address, manufacturer=self.client.device_type, ) + self._attr_device_info.ip_address = self.client.device_address + self._attr_device_info.mac_address = self.client.player_id if ( old_state != PlaybackState.PLAYING and self._attr_playback_state == PlaybackState.PLAYING diff --git a/pyproject.toml b/pyproject.toml index 0f9ad484..677201d3 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -30,7 +30,7 @@ dependencies = [ "getmac==0.9.5", "mashumaro==3.17", "music-assistant-frontend==2.17.73", - "music-assistant-models==1.1.90", + "music-assistant-models==1.1.91", "mutagen==1.47.0", "orjson==3.11.5", "pillow==12.1.0", diff --git a/requirements_all.txt b/requirements_all.txt index 987e51ce..33c0cbd2 100644 --- a/requirements_all.txt +++ b/requirements_all.txt @@ -42,7 +42,7 @@ librosa==0.11.0 lyricsgenius==3.7.5 mashumaro==3.17 music-assistant-frontend==2.17.73 -music-assistant-models==1.1.90 +music-assistant-models==1.1.91 mutagen==1.47.0 niconico.py-ma==2.1.0.post1 orjson==3.11.5