* Cleanup unneeded assignment of hass property on MQTT Template objects
* Commented out code and unneeded checks
* Consistent assign hass to Template in mqtt tests
* Remove unused hass attribute
* Missed line
* [homematicip_cloud] Add service to set cooling mode
* Create seperate test for cooling
* Rename service to set_home_cooling_mode
* Raise exception when accesspoint not found
* add service to fetch more connections
* improve error messages
* better errors
* wip
* fix service register
* add working tests
* improve tests
* temp availability
* test availability
* remove availability test
* change error type for coordinator update
* fix missed coverage
* convert from entity service to integration service
* cleanup changes
* add more tests for the service
* Handle case of sensors removed server side
* Update available state on value update
* Set uptime to None if key is missing
* Replace _attr_available by _data_valid
dsmr: also migrate entries for devices with correct serial
When the dsmr code could not find the serial_nr for the gas meter,
it creates the gas meter device with the entry_id as identifier.
But when there is a correct serial_nr, it will use that as identifier
for the dsmr gas device.
Now the migration code did not take this into account, so migration to
the new name failed since it didn't look for the device with correct
serial_nr.
This commit fixes this and adds a test for this.
* Ensure legacy event foreign key is removed from the states table
If the system ran out of disk space removing the FK, it would
fail. #121938 fixed that to try again, however that PR was made
ineffective by #122069 since it will never reach the check.
To solve this, the migration version is incremented to 2, and
the migration is no longer marked as done unless the rebuild
/fk removal is successful.
* fix logic for mysql
* fix test
* asserts
* coverage
* coverage
* narrow test
* fixes
* split tests
* should have skipped
* fixture must be used
* Add unit tests for SNMP Switches (integer only)
* Add unit test for SNMP switches (integer unknown)
* log a warning when SNMP response is not a recognised payload
* Use a single configuration for all test_integer_switch tests
* Tweak unknown SNMP response warning
* Apply suggestions from code review
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* import STATE_ consts
* rename tests/components/snmp/test_integer_switch.py to test_switch.py
* check that a warning is logged if the SNMP response payload is unknown
---------
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Improve alignment of live logbook and historical logbook models
- Make EventAsRow as NamedType which is better aligned with
sqlalchemy Row
- Use getitem to fetch results for both Row and EventAsRow
since its an order of magnitude faster fetching sqlalchemy
Row object values.
* final
* fix
* unused
* fix more tests
* cleanup
* reduce
* tweak
* test storage save and load
* fix bug exposed by test
* refactor test
* add JSON for test account/location
* create helpers to load JSON
* refactor test
* baseline refactor
* tweak
* update requiremenst
* rationalise code
* remove conditional in test
* refactor test
* mypy fix
* tweak tests
* working test
* working test 4
* working test 5
* add typed dicts
* working dtms
* lint
* fix dtm asserts
* doc strings
* list
* tweak conditional
* tweak test data sets to extend coverage
* leverage conftest.py for subsequent tests
* revert test storage
* revert part two
* rename symbols
* remove anachronism
* stop unwanted DNS lookup
* Clean up type ignores
* Format
---------
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Add support for Todoist sections
* ServiceValidationError & section name tweaks from PR comments
* Remove whitespace
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* More natural error message
Co-authored-by: Erik Montnemery <erik@montnemery.com>
---------
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Add ElevenLabs text-to-speech integration
* Remove commented out code
* Use model_id instead of model_name for elevenlabs api
* Apply suggestions from code review
Co-authored-by: Sid <27780930+autinerd@users.noreply.github.com>
* Use async client instead of sync
* Add ElevenLabs code owner
* Apply suggestions from code review
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
* Set entity title to voice
* Rename to elevenlabs
* Apply suggestions from code review
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
* Allow multiple voices and options flow
* Sort default voice at beginning
* Rework config flow to include default model and reloading on options flow
* Add error to strings
* Add ElevenLabsData and suggestions from code review
* Shorten options and config flow
* Fix comments
* Fix comments
* Add wip
* Fix
* Cleanup
* Bump elevenlabs version
* Add data description
* Fix
---------
Co-authored-by: Sid <27780930+autinerd@users.noreply.github.com>
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Michael Hansen <mike@rhasspy.org>
Co-authored-by: Joostlek <joostlek@outlook.com>
Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>
* Climate temperature out of range
* Fix test sensibo
* use temp converting for min/max
* Fix
* Fix mqtt tests
* Fix honeywell tests
* Fix Balboa tests
* Fix whirlpool test
* Fix teslemetry test
* Fix plugwise test
* Fix tplink test
* Fix generic thermostat test
* Fix modbus test
* Fix fritzbox tests
* Honewell
* move available property to base entity class
* add lifespan sensors
* apply suggestion, simplify the method
* don't touch internals in tests
* apply suggestion
* apply suggestions
* Improve quality of ollama function calling by repairing function call arguments
* Fix formatting of the tests
* Run ruff format on ollama conversation
* Add test for non-string arguments
* Limit intent / llm API device_class slots to only necessary services and limited set of values
* Fix ruff errors
* Run ruff format
* Fix typing and improve output schema
* Fix schema and improve flattening
* Revert conftest
* Revert recorder
* Fix ruff format errors
* Update using latest version of voluptuous
* Add handling for LASTSTEST sensor
* Set the state to unknown instead of unavailable
* Use LASTSTEST constant and revise the logic to add it to the entity list
* Use LASTSTEST constant
* Support DPTComplex objects and validate sensor types
* Gracefully start and stop xknx device objects
* Use non-awaitable XknxDevice callbacks
* Use non-awaitable xknx.TelegramQueue callbacks
* Use non-awaitable xknx.ConnectionManager callbacks
* Remove unnecessary `hass.async_block_till_done()` calls
* Wait for StateUpdater logic to proceed when receiving responses
* Update import module paths for specific DPTs
* Support Enum data types
* New HVAC mode names
* HVAC Enums instead of Enum member value strings
* New date and time devices
* Update xknx to 3.0.0
* Fix expose tests and DPTEnumData check
* ruff and mypy fixes
* Add setpoint temperature number entity to IronOS integration
* Add tests for number platform
* Initialize settings in coordinator
* Remove unused code
* Add Traffic Rule switches to UniFi Network
* Retrieve Fix unifi traffic rule switches
Poll for traffic rule updates; have immediate feedback in the UI for modifying traffic rules
* Remove default values for unifi entity; Remove unnecessary code
* Begin updating traffic rule unit tests
* For the mock get request, allow for meta and data properties to not be appended to support v2 api requests
Fix traffic rule unit tests;
* inspect path to determine json response instead of passing an argument
* Remove entity id parameter from tests; remove unused code; rename traffic rule unique ID prefix
* Remove parameter with default.
* More code removal;
* Rename copy/paste variable; remove commented code; remove duplicate default code
---------
Co-authored-by: ViViDboarder <ViViDboarder@gmail.com>
* Add sensors for Unifi latency
* Add needed guard and casting
* Use new types
* Add WAN2 support
* Add literals
* Make ids for WAN and WAN2 unique
* Make methods general
* Update sensor.py
* add more typing
* Simplify usage make_wan_latency_sensors
* Simplify further
* Move latency entity creation to method
* Make method internal
* simplify tests
* Apply feedback
* Reduce boiler copied code and add support function
* Add external method for share logic between
* Remove none
* Add more tests
* Apply feedback and change code to improve code coverage
* Add Pinecil integration
* Refactor with new library
* Add tests for config flow, remove unused code
* requested changes
* update requirements
* Move some sensor values to diagnostics, add tests for sensors
* User service uuid in discovery
* fix manufacturer name
* Bump pynecil to version 0.2.0
* Rename integration to IronOS
* Recreate snapshot
* Update strings
* type checking
* Update snapshot
* Add async_setup to coordinator
* Show device id with serial number
* Added missing boost to operation mode states
* remove super call
* Refactor
* tests
* Add an integration for Bryant Evolution HVAC systems.
* Update newly created tests so that they pass.
* Improve compliance with home assistant guidelines.
* Added tests
* remove xxx
* Minor test cleanups
* Add a test for reading HVAC actions.
* Update homeassistant/components/bryant_evolution/__init__.py
Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>
* Update homeassistant/components/bryant_evolution/climate.py
Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>
* Update homeassistant/components/bryant_evolution/climate.py
Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>
* Update homeassistant/components/bryant_evolution/climate.py
Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>
* Update homeassistant/components/bryant_evolution/climate.py
Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>
* Update homeassistant/components/bryant_evolution/climate.py
Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>
* Update homeassistant/components/bryant_evolution/config_flow.py
Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>
* Address reviewer comments.
* Address additional reviewer comments.
* Use translation for exception error messages.
* Simplify config flow.
* Continue addressing comments
* Use mocking rather than DI to provide a for-test client in tests.
* Fix a failure in test_config_flow.py
* Track host->filename in strings.json.
* Use config entry ID for climate entity unique id
* Guard against fan mode returning None in async_update.
* Move unavailable-client check from climate.py to init.py.
* Improve test coverage
* Bump evolutionhttp version
* Address comments
* update comment
* only have one _can_reach_device fn
* Auto-detect which systems and zones are attached.
* Add support for reconfiguration
* Fix a few review comments
* Introduce multiple devices
* Track evolutionhttp library change that returns additional per-zone information during enumeration
* Move construction of devices to init
* Avoid triplicate writing
* rework tests to use mocks
* Correct attribute name to unbreak test
* Pull magic tuple of system-zone into a constant
* Address some test comments
* Create test_init.py
* simplify test_reconfigure
* Replace disable_auto_entity_update with mocks.
* Update tests/components/bryant_evolution/test_climate.py
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Update tests/components/bryant_evolution/test_climate.py
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Update tests/components/bryant_evolution/test_config_flow.py
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Update homeassistant/components/bryant_evolution/config_flow.py
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Update tests/components/bryant_evolution/test_config_flow.py
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Update tests/components/bryant_evolution/test_config_flow.py
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* fix test errors
* do not access runtime_data in tests
* use snapshot_platform and type fixtures
---------
Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Add LLM tools support for Ollama
* fix tests
* coverage
* Separate call for tool parameters
* Fix example
* hint on parameters schema if LLM forgot to request it
* Switch to native tool call functionality
* Fix tests
* Fix tools list
* update strings and default model
* Ignore mypy error until fixed upstream
* Ignore mypy error until fixed upstream
* Add missing prompt part
* Update default model
* fix server unavailale at HA startup Fixes#111108
Remove receiver zone confusion for mediaplayer instances
fix uniq id based on serial where avaialble
get serial suppiled by discovery for config entries.
* Fix linter errors
* ruff format
* Enhance debug to find setup code path for tests
* Enhance debug to find setup code path for tests
* Fix formatting
* Revered uid chanages as not needed yet and cuases other issues
* Revert "Fix formatting"
This reverts commit f3324868d2.
* Fix formatting
* Refector tests to cope with changes to plaform init to get serial numbers
* Update test patch
* Update test formatting
* remove all fixes revert code to only make clear we deal with zones and improve debuging
* Add services to the Hydrawise integration
* Add validation of duration ranges
* Remove clamping test
* Fix duration type in test
* Changes requested during review
* Add back the HydrawiseZoneBinarySensor class
* Add dynamic rate limiter
* tweaks
* Revert min polling back to 2min
* Set max 1 hour
* Remove redundant update_interval
* Tuning and fixes
* Reduce double API calls
* Type test
* Remove RateCalculator
* Refactor NextBus integration to use new API
This removes the `messages`, `directions`, and `attribution` attributes
from the sensor. Those may be added back in the future with additional
refactoring.
Some existing sensors may be broken today because of deprecated Agency
names. This patch will not migrate them as the migration path is
ambiguous. Setting up again should work though.
* Move result indexing outside of try/except
* Improve typing of init tests
* Clean up gateway test
* Validate deconz device registry entry
* Rename gateway to hub
* Snake case BRIDGEID to BRIDGE_ID