* Disambiguate bewtween servers and player to stop them being merged
* ruff format
* make SqueezeLite players not a service
* ruff
* Tidy redunant code
* config url
* revert config url
* change to domain server
* use default to see how they are mereged with server device
* refactor to use defaults so where a player is part of a bigger ie server service device in the same intergration it doesnt replace its information
* ruff
* make test match the new data
* Fix merge
* Fix tests
* Fix meregd test data
* Fix all tests add new test for merged device in reg
* Remove info from device_info so its only a lookup
* manual merge of server player shared devices
* Fix format of merged entires
* fixes for testing
* Fix test with input from @peteS-UK device knowlonger exits for this test
* Fix test now device doesnt exits for tests
* Update homeassistant/components/squeezebox/media_player.py
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Fix Copilots formatting
* Apply suggestions from code review
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Add WS command to help reset custom entity_id
* Calculate suggested object id from entity properties
* Fix logic and add additional tests
* Adjust test
* Update folder_watcher test
* Handle current entity id matches the automatic entity id
* Don't store calculated_object_id
* Update snapshots
* Update snapshots
* Update test
* Tweak logic for reusing current entity_id
* Improve test
* Don't assign same entity_id to several entities
* Prioritize custom entity name
* Update snapshots
* Update snapshots
* initial
* remove dupe name definition
* snapshot update
* name def updates
* test update for new entity name
* remove attributes
* icon translations
* merge fixes
* Snapshot update post merge
* update to class initialisation
* move entity delete to coordinator
* remove some comments
* move known_alarms to coordinator
* test_switch update for syrupy change
* listener and sets
* check self.available
* remove refresh from conftest
* test update
* test tweak
* move listener to switch platform
* updates revew
* SWITCH_DOMAIN
* initial
* initial
* add tests
* Update for list return
* translate exception
* tests for errors
* review tweaks
* test fix
* force content_type to lowercase
* Allow media_content_type = None
* new test
* first cut at update entties
* remove sensors for now
* make update vserion less wordy
* fix re escape
* Use name
* use Caps
* fix translation
* move all data manipulation to data prepare fn, refine regexes and provide as much info as possible
* fix formatting
* update return type
* fix class inherit
* Fix ruff
* update tests
* fix spelling
* ruff
* Update homeassistant/components/squeezebox/update.py
Co-authored-by: Raj Laud <50647620+rajlaud@users.noreply.github.com>
* Update tests/components/squeezebox/test_update.py
Co-authored-by: Raj Laud <50647620+rajlaud@users.noreply.github.com>
* Update tests/components/squeezebox/test_update.py
Co-authored-by: Raj Laud <50647620+rajlaud@users.noreply.github.com>
* Update tests/components/squeezebox/test_update.py
Co-authored-by: Raj Laud <50647620+rajlaud@users.noreply.github.com>
* Update tests/components/squeezebox/test_update.py
Co-authored-by: Raj Laud <50647620+rajlaud@users.noreply.github.com>
* Update tests/components/squeezebox/test_update.py
Co-authored-by: Raj Laud <50647620+rajlaud@users.noreply.github.com>
* fix tests
* ruff
* update text based on feedback from docs
* make the plugin update entity smarter
* update plugin updater tests
* define attr
* Callable type
* callable guard
* ruff
* add local release info page
* fix typing
* refactor use release notes for LMS update
* Make update simple and produce a release summary instead
* Update tests
* Fix tests
* Tighten english
* test for restart fail
* be more explicit with coordinator error
* remove unused regex
* revert error msg unrealted
* Fix newline
* Fix socket usage during tests
* Simplify based on new lib version
* CI Fixes
* fix typing
* fix enitiy call back
* fix enitiy call back types
* remove some unrelated titdying
---------
Co-authored-by: Raj Laud <50647620+rajlaud@users.noreply.github.com>
Co-authored-by: Franck Nijhof <git@frenck.dev>
* Reapply "Add support for subentries to config entries" (#133470) (#136061)
* Reapply "Add support for subentries to config entries" (#133470)
This reverts commit ecb3bf79f3.
* Update test snapshot
* Add config subentry support to device registry (#128157)
* Add config subentry support to device registry
* Apply suggestions from code review
* Update syrupy serializer
* Update snapshots
* Address review comments
* Allow a device to be connected to no or a single subentry of a config entry
* Update snapshots
* Revert "Allow a device to be connected to no or a single subentry of a config entry"
This reverts commit ec6f613151cb4a806b7961033c004b71b76510c2.
* Update test snapshots
* Bump release version in comments
* Rename config_subentries to config_entries_subentries
* Add config subentry support to entity registry (#128155)
* Add config subentry support to entity registry
* Update syrupy serializer
* Update snapshots
* Update snapshots
* Accept suggested changes
* Clean registries when removing subentry (#136671)
* Clean up registries when removing subentry
* Update tests
* Clean up subentries from deleted devices when removing config entry (#136669)
* Clean up subentries from deleted devices when removing config entry
* Move
* Add config subentry support to entity platform (#128161)
* Add config subentry support to entity platform
* Rename subentry_id to config_subentry_id
* Store subentry type in subentry (#136687)
* Add reconfigure support to config subentries (#133353)
* Add reconfigure support to config subentries
* Update test
* Minor adjustment
* Rename supported_subentry_flows to supported_subentry_types
* Address review comments
* Add subentry support to kitchen sink (#136755)
* Add subentry support to kitchen sink
* Add subentry reconfigure support to kitchen_sink
* Update kitchen_sink tests with subentry type stored in config entry
* Update kitchen_sink
* Update kitchen_sink
* Adjust kitchen sink tests
* Fix hassfest
* Apply suggestions from code review
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Improve docstrings and strings.json
---------
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update snapshots
* Update snapshots
* Update snapshots
* Update snapshots
* Update snapshots
* Update snapshots
* Update snapshots
---------
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Squeezebox media_player platform tests
* Fix play-pause test
* Squeezebox remove stray reference to deprecated property
* More tests for squeezebox
* Update tests to fix merge conflict with binary_sensor
* Refactor tests to use autospec
* Use freeze and snapshot
* Update media player entity before adding
* Consolidate test fixtures for different platforms
* Merge in sensor platform
* Use deepcopy
* Update tests with suggestions from code review
* squeezebox add binary sensor + coordinator
* squeezebox add connected via for media_player
* squeezebox add Player type for player
* Add more type info
* Fix linter errors
* squeezebox use our own status entity
* squeezebox rework device handling based on freedback
* Fix device creation
* squeezebox rework coordinator error handling
* Fix lint type error
* Correct spelling
* Correct spelling
* remove large comments
* insert small comment
* add translation support
* Simply sensor
* clean update function, minimise comments to the useful bits
* Fix after testing
* Update homeassistant/components/squeezebox/entity.py
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* move data prep out of Device assign for clarity
* stop being a generic api
* Humans need to read the sensors...
* ruff format
* Humans need to read the sensors...
* Revert "ruff format"
This reverts commit 8fcb8143e7.
* ruff format
* Humans need to read the sensors...
* errors after testing
* infered
* drop context
* cutdown coordinator for the binary sensors
* add tests for binary sensors
* Fix import
* add some basic media_player tests
* Fix spelling and file headers
* Fix spelling
* remove uuid and use service device cat
* use diag device
* assert execpted value
* ruff format
* Update homeassistant/components/squeezebox/__init__.py
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Simplify T/F
* Fix file header
* remove redudant check
* remove player tests from this commit
* Fix formatting
* remove unused
* Fix function Type
* Fix Any to bool
* Fix browser tests
* Patch our squeebox componemt not the server in the lib
* ruff
---------
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Add Favorites support to Media Browser
* CI fixes
* More CI Fixes
* Another CI
* Change icons for other library items to use standard LMS icons
* Change max favorites to BROWSE_LIMIT
* Simplify library_payload to consolidate favorite and non-favorite items
* Simplify library_payload to consolidate favorite and non-favorite items
* Add support for favorite hierarchy
* small fix for icon naming with local albums
* Add ability to expand an album from a favorite list
* Reformat to fix linting error
* and ruff format
* Use library calls from pysqueezebox
* Folder and playback support
* Bump to pysqueezebox 0.8.0
* Bump pysqueezebox version to 0.8.1
* Add unit tests
* Improve unit tests
* Refactor tests to use websockets and services.async_call
* Apply suggestions from code review
---------
Co-authored-by: peteS-UK <64092177+peteS-UK@users.noreply.github.com>