Releases: thlucas1/homeassistantcomponent_spotifyplus
Releases · thlucas1/homeassistantcomponent_spotifyplus
v1.0.24
[ 1.0.24 ] - 2024/06/07
- Updated underlying
spotifywebapiPython
package requirement to version 1.0.46. - Added the following requirements to manifest.json so that any dependency
ResolutionImpossible
errors can be quickly identified: 'oauthlib>=3.2.2', 'platformdirs>=4.1.0', 'requests>=2.31.0', 'requests_oauthlib>=1.3.1', 'zeroconf>=0.132.2'. This bug bit me in the HA 2024.6.1 release when the HA devs upgraded therequests
dependency to 2.32.3! The System log was showing that thespotifywebapiPython
library was the invalid dependency, but it was not - the REAL culprit was therequests
dependency!
v1.0.23
v1.0.22
v1.0.21
[ 1.0.21 ] - 2024/06/07
- Fixed a bug that caused player state to return an error every 30 seconds when playing the Spotify DJ playlist. As the Spotify Web API does not support retrieving the DJ playlist (
spotify:playlist:37i9dQZF1EYkqdzj48dyYq
), it simply returns a manually built representation of the Spotify DJ playlist with limited properties populated (uri, id, name, description, etc). Note that Spotify DJ support is not supported (as of 2024/06/07) by the Spotify Web API (this includes starting play, retrieving playlist details, retrieving playlist items, etc). - Added service
zeroconf_discover_devices
to discover Spotify Connect devices on the local network via the ZeroConf (aka MDNS) service, and return details about each device. - Added service
zeroconf_device_getinfo
to retrieve Spotify Connect device information from the Spotify Zeroconf APIgetInfo
endpoint. - Added service
zeroconf_device_resetusers
to reset users for a Spotify Connect device by calling the Spotify Zeroconf APIresetUsers
endpoint. - Updated underlying
spotifywebapiPython
package requirement to version 1.0.44.
v1.0.20
[ 1.0.20 ] - 2024/06/06
- Changed all
media_player.schedule_update_ha_state(force_refresh=True)
calls toschedule_update_ha_state(force_refresh=False)
to improve performance. Suggested by @bdraco, along with an explanation of why. Thanks @bdraco! - Changed logic to call
session.hass.config_entries.async_update_entry
via ahass.add_job
call instead of calling directly. This fixes the issue ofDetected that custom integration 'spotifyplus' calls hass.config_entries.async_update_entry from a thread other than the event loop, which may cause Home Assistant to crash or data to corrupt
that was introduced with HA 2024.6 release. - Changed logic to access local file system files via a
hass.async_add_executor_job
call. This fixes the issue ofDetected blocking call to open inside the event loop by custom integration 'X' ...
that was introduced with HA 2024.6 release.
v1.0.19
[ 1.0.19 ] - 2024/05/03
- Changed all
media_player.async_write_ha_state()
calls toschedule_update_ha_state(force_refresh=True)
calls due to HA 2024.5 release requirements. This fixes the issue of "Failed to call service X. Detected that custom integration 'Y' calls async_write_ha_state from a thread at Z. Please report it to the author of the 'Y' custom integration.". - Added more information to system health display (version, integration configs, etc).
- Updated Python version from 3.11 to 3.12.3 due to HA 2024.5 release requirements.
v1.0.18
[ 1.0.18 ] - 2024/04/25
- Updated various
media_player
services that control playback to verify a Spotify Connect Player device is active. If there is no active device, or the default device was specified (e.g. "*"), then we will force the configuration option default device to be used and transfer playback to it. If an active device was found, then we will use it without transferring playback for services that do not specify adeviceId
argument. For services that can supply adeviceId
argument, we will issue a transfer playback command if a device id (or name) was specified.
v1.0.17
[ 1.0.17 ] - 2024/04/21
- Added device name support to the following custom services that take a Spotify Connect Player
deviceId
argument for player functions. You can now specify either a device id or device name in thedeviceId
argument to target a specific Spotify Connect Player device. Services updated were:player_media_play_context
,player_media_play_track_favorites
,player_media_play_tracks
,player_transfer_playback
. - Updated underlying
spotifywebapiPython
package requirement to version 1.0.43.
v1.0.16
[ 1.0.16 ] - 2024/04/21
- Added extra state attribute
spotifyplus_device_id
that lists the Spotify Connect Player device id that is in use. - Added extra state attribute
spotifyplus_device_name
that lists the Spotify Connect Player device name that is in use. - Refer to the wiki documentation page for more details about custom state variables.
v1.0.15
[ 1.0.15 ] - 2024/04/05
- Added
MediaPlayerEntityFeature.VOLUME_MUTE
support to handle volume mute requests. - Added
MediaPlayerEntityFeature.VOLUME_STEP
support to handle volume step requests. - Updated Media Browser logic to return an empty
BrowseMedia
object when ignoring Sonos-Card 'favorites' node requests, as a null object was causing numerousBrowse Media should use new BrowseMedia class
log warnings. - Updated underlying
spotifywebapiPython
package requirement to version 1.0.42.