* Initial commit prototype with empty inverters
* Use modern methods and global variable for character strings
* Platform that get the value of the meter in an entity
* Add check if inverter already configured
* Add tests for config_flow
* Update "imeon_inverter_api" in manifest.json
* Update "imeon_inverter_api" in requirements_all.txt
* Remove async_setup, clean comments, use of const PLATFORM
* Use of global variable and remove configuration of device name
* Use of entry.data instead of user_input variable
* Remove services.yaml
* No quality scale
* Use of common string
* Add sensors, use of EntityDescription and '_attr_device_info'
* Remove name from config_flow tests
* Use sentence case and change integration from hub to device
* Check connection before add platform in config_flow
* Use of _async_setup and minor changes
* Improve sensor description
* Add quality_scale.yaml
* Update the quality_scale.json
* Add tests for host invalid, route invalid, exception and invalid auth
* Type more precisely 'DataUpdateCoordinator'
* Don't use 'self.data' directly in coordinator and minor corrections
* Complete full quality_scale.yaml
* Use of fixtures in the tests
* Add snapshot tests for sensors
* Refactor the try except and use serial as unique id
* Change API version
* Add test for sensor
* Mock the api to generate the snapshot
* New type for async_add_entries
* Except timeout error for get_serial
* Add test for get_serial timeout error
* Move store data out of the try
* Use sentence case
* Use of fixtures
* Use separates fixtures
* Mock the api
* Put sensors fake data in json fixture file
* Use of a const interval, remove except timeout, enhance lisibility
* Try to use same fixture in test_config_flow
* Try use same fixture for all mock of inverter
* Modify the fixture in the context manager, correct the tests
* Fixture return mock.__aenter__ directly
* Adjust code clarity
* Bring all tests to either ABORT or CREATE_ENTRY
* Make the try except more concise
* Synthetize exception tests into one
* Add code clarity
* Nitpick with the tests
* Use unique id sensor
* Log an error on unknown error
* Remove useless comments, disable always_update and better use of timeout
* Adjust units, set the model and software version
* Set full name for Battery SOC and use ip instead of url
* Use of host instead of IP
* Fix the unit of economy factor
* Reduce mornitoring data display precision and update snapshots
* Remove unused variable HUBs
* Fix device info
* Set address label 'Host or IP'
* Fix the config_flow tests
* Re evaluate the quality_scale
* Use of 'host' instead of 'address'
* Make inverter discoverable by ssdp
* Add test ssdp configuration already exist
* Add exemption in quality scale
* Test abort ssdp if serial is unknown
* Handle update error
* Raise other exceptions
* Handle ClientError and ValueError from the api
* Update homeassistant/components/imeon_inverter/quality_scale.yaml
---------
Co-authored-by: Franck Nijhof <git@frenck.dev>
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
Co-authored-by: Josef Zweck <josef@zweck.dev>
* Add support for air purifier type in HomeKit.
Any fan and PM2.5 in the same device will be treated as an air purifier.
type_air_purifiers.py heavily based on type_fans.py -
I tried extending type_fans.py but this looked better to me.
* Refactor to make AirPurifier class extend Fan.
* Ensure all chars are added before creating service
* Add support for switching automatic mode.
* Add test for auto/manual switch
* Add support for air purifier type in HomeKit.
Any fan and PM2.5 in the same device will be treated as an air purifier.
type_air_purifiers.py heavily based on type_fans.py -
I tried extending type_fans.py but this looked better to me.
* Add support for air purifier type in HomeKit.
Any fan and PM2.5 in the same device will be treated as an air purifier.
type_air_purifiers.py heavily based on type_fans.py -
I tried extending type_fans.py but this looked better to me.
* Refactor to make AirPurifier class extend Fan.
* Ensure all chars are added before creating service
* Add support for switching automatic mode.
* Add test for auto/manual switch
* Add support for air purifier type in HomeKit.
Any fan and PM2.5 in the same device will be treated as an air purifier.
type_air_purifiers.py heavily based on type_fans.py -
I tried extending type_fans.py but this looked better to me.
* Improve fan config: allow setting fan type (fan or air purifier)
Be more explicit than assuming a fan is an air purifier if it has a PM2.5 sensor. Set defaults based on the presence of sensors.
* Fix return type annotation for fan/air purifier create_services
* Allow linking air purifier filter level/change indicator
* Remove no longer needed if statement in fan init
* Fix up types and clean up code
* Update homekit tests to account for air purifiers
* Fix pylint errors
* Fix mypy errors
* Improve type annotations
* Improve readability of auto preset mode discovery
* Test air purifier with 'Auto' preset mode
* Handle case with a single preset mode
* Test air purifier edge cases: state updates to same value, and removed linked entities
* Don't create 'auto mode' switch for air purifiers
This is already exposed as a target mode on the air purifier service itself
* Handle unavailable states in air purifier
Also don't remove device class when updating state in test
* Reduce branching in air purifier test
* Split up air purifier tests for with and without auto presets, to reduce branching
* Handle unavailable states in air purifier more explicitly
* Use constant for ignored state values
* Use a set for ignored_states
* Update tests/components/homekit/test_type_air_purifiers.py
---------
Co-authored-by: Andrew Kurowski <62596884+ak6i@users.noreply.github.com>
Co-authored-by: J. Nick Koston <nick+github@koston.org>
Co-authored-by: J. Nick Koston <nick@koston.org>
* Abort if a flow is removed during a step
* Reorganize code
* Only call _set_pending_import_done if an entry is created
* Try a new approach
* Add tests
* Update tests
* Add missing strings to Fritz
* update quality scale
* add common section
this avoids later re-structuring and re-translating
* fix strings
* fix strings
* apply review comment
---------
Co-authored-by: Michael <35783820+mib1185@users.noreply.github.com>
* Add quality scale for SMLIGHT
* Review and update all rules
* Add missing data_description strings as detected by CI
* update for a few merged docs PR's
* Parallel updates done
https://github.com/home-assistant/core/pull/142455
* Set quality scale to silver
* Update homeassistant/components/smlight/quality_scale.yaml
* Update homeassistant/components/smlight/quality_scale.yaml
---------
Co-authored-by: Josef Zweck <josef@zweck.dev>
* Move inkbird coordinator logic into coordinator.py
Not a functional change, one to one relocation
* Move inkbird coordinator logic into coordinator.py
Not a functional change, one to one copy
* Move inkbird coordinator logic into coordinator.py
Not a functional change, one to one copy
* add sensor platform to bosch_alarm
* add icon translations for sensors
* translate entity names
* translate entity names
* translate entity names
* update snapshots
* translate ready to arm sensor
* translate ready to arm sensor
* update tests
* update translations
* remove history sensor, we will replace it with an events sensor later
* fix tests
* fix tests
* fix tests
* update tests
* fix sensor links
* only call async_add_entities once
* convert area alarms to sensors based on type
* add sensor for alarms
* add icons
* cleanup area sensor
* add available
* loop over dict
* use entity description
* use entity description
* clean up entity descriptions
* observe_alarms and observe_ready
* refactor alarm_control_panel to use base entity
* remove more old sensors
* add unit of measurement
* update test snapshots
* use correct observer
* Add entity tests
* Add __init__ tests
* Cleanup
* Rename mock_motionmount_config_flow to mock_motionmount
* Remove unneeded PropertyMock
* Set defaults on mock_motionmount
* Test proper device is created
* Check whether proper device is created from test_init.py, also without mac
* Find callback and use that to update name
* Use common state for "Normal" in `binary_sensor`
Replace the "Normal" string for `battery` and the two references to it from `heat` and `cold` to it with the common state.
* Use common state for "Low" in `binary_sensor`
* Add fan platform to eheimdigital
* Fix pylint
* Convert fan to sensor platform
* Remove unnecessary changes
* Add state update test
* Review
* Review
* Review
* Add DHCP discovery support to Bond
* fixes
* unique ids are always upper
* raise_on_progress=False for user
* Update tests/components/bond/test_config_flow.py
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* assert unique id
---------
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Check that the current map exists
* Add a few extra checks
* Update coordinator.py
Co-authored-by: Allen Porter <allen.porter@gmail.com>
* fixlint
---------
Co-authored-by: Allen Porter <allen.porter@gmail.com>
* Ensure a flux_led user flow can replace an ignored entry
Allow ignored devices to be selected in the user step and replace the ignored entry.
Same as #137056 and #137052 but for flux_led
* works as-is was a problem with core.config_entries
* Do not fetch disconnected Home Connect appliances
* Apply suggestions
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update docstring
---------
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Hide bad ZBT-1 config entries on the hardware page
* Set up the bad config entry in the unit test
* Roll into a list comprehension
* Remove constant changes
* Fix condition in unit test
Replacing an ignored config entry with one from the user
flow should not generate a warning. We should only warn
if we are replacing a usable config entry.
Followup to adjust the warning added in #130567
cc @epenet
* Use common states for "Low"/"Medium"/"High" in `home_connect`
Replaces two occurrences of "Low"/"Medium"/"High" each with the (new) common strings.
* Replace internal references with common ones
* Improve and add missing config descriptions
* Fix string
* Conform to Microsoft style guidelines on 'sign in'
* Note username and password are optional
---------
Co-authored-by: J. Nick Koston <nick@koston.org>
* Replace "to log into" with "to log in to" in `incomfort`
Also fix one missing sentence-casing of "gateway".
* Replace duplicate "data_description" strings with references
* Deprecate effect none instead of breaking it for Hue
* add guard for unknown effect value
* revert guard
* Fix
* Add test
* Add test
* Add test
---------
Co-authored-by: Joostlek <joostlek@outlook.com>
* Don't wait for OAuth token task on shutdown
To reproduce the warning:
1. Start authentication with integration using OAuth (e.g. SmartThings)
2. When redirected to external login site, just close the page
3. Settings -> Restart Home Assistant
* Clarify comment
---------
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* now the price will return even if it is exactly 0
* now the price will return even if it is exactly 0
* now the price will return even if it is exactly 0
* clean code
* clean code
* update testing code coverage
* change zero testing to SE4
* remove row duplicate
* fix date comments
* improve testing
* simplify if-return-0
* remove unnecessary tests
* order testing rows
* restore test_sensor_no_next_price
* remove_average_price_test
* fix test name
* Fix import issues related to onboarding views
* Add ha-intents and numpy to pyproject.toml
* Add more requirements to pyproject.toml
* Add more requirements to pyproject.toml
* Bump version of ohmepy and fix types
* Add strict typing to ohme
* Inject websession for ohme
* CI/code formatting fixes for ohme
* Update mypy.ini for ohme
* Fix typing in services for ohme
* Bump ohme quality in manifest
* Move Z-Wave JS smoke, CO, CO2, Heat, Water problem entities to diagnostic
* Update link + states
* Specify problem class explicitly instead of catch-all
* Heat alarm test is not a problem
* Also split out smoke alarm
* Document mapping rule
* add tests
* format
* update test
* review comments
* remove idle state from doc as it is ignored
---------
Co-authored-by: Petar Petrov <MindFreeze@users.noreply.github.com>
* check for empty or missing values when processing state messages for MQTT light entities using 'template' schema
* normalise warning logs
* add tests (one is still failing and I can't work out why)
* fix test
* improve test coverage after PR review
* improve test coverage after PR review
* Reload the config entry when the ZBT-1 is unplugged
* Register the USB event handler globally to react better to re-plugs
* Fix existing unit tests
* Add an empty `CONFIG_SCHEMA`
* Add a unit test
* Fix unit tests
* Fix unit tests for Linux
* Address most review comments
* Address remaining review comments
* Add button platform to Pterodactyl
* Fix parameter order of send_power_action, remove _attr_has_entity_name from button
* Rename PterodactylCommands to PterodactylCommand
* Remove unnecessary imports of http integration
* Check reason for test failures
* Revert "Check reason for test failures"
This reverts commit 5ccf356ab029402ab87e00dc00eeb4798a0f6658.
* Update tests
* add cover unit tests
* Add unit test for SwitchBot cover
* fix: use mock_restore_cache to mock the last state
* modify unit tests
* modify scripts as suggest
* improve readability
* adjust patch target per review comments
* adjust patch target per review comments
---------
Co-authored-by: J. Nick Koston <nick@koston.org>
* Add sensor platform
* Correct CPU Limit state attribute translation
* Remove calculated util entitites, add usage and limit entities
* Use suggested_unit_of_measurement instead of converters
* Start only first word of sensor names in upper case, improve suggested units of sensors
* Simplify update of native_value, set uptime as timestamp
* Add paranthesis around multi-line lambda
* Replace "Away" in `climate` with common state string
Also reordered the states a bit to group the two presence-based options at the top and order the rest alphabetically.
* Prettier
* Add authentication support for Model Context Protocol (mcp) integration
* Update homeassistant/components/mcp/application_credentials.py
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
* Handle MCP servers with ports
---------
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
* Improve handling of empty iterable in async_add_entities
We had two checks here because we were doing an empty
iterable check. If its a list we can check it directly
but if its not we need to convert it to a list to know
if its empty.
* tweaks
* tasks never used
* Set and check unique id in config
* Update homeassistant/components/nut/config_flow.py
Set unique ID and abort only if value is defined
Co-authored-by: J. Nick Koston <nick+github@koston.org>
* Add duplicate ID test case for multiple devices
* Add unique ID check to config flow step for UPS
* Update homeassistant/components/nut/__init__.py
Fix to only set config_entries unique ID if not None
Co-authored-by: J. Nick Koston <nick+github@koston.org>
* Remove duplicate config flow call
---------
Co-authored-by: J. Nick Koston <nick+github@koston.org>
Co-authored-by: J. Nick Koston <nick@koston.org>
* fix: two minor LLM changes to speed up prefill
- moved the current date/time to the end of the prompt
- started sorting all entities by last_changed
* addressed PR comments
* fixed tests
* reduced scope of try/catch in LLM prompt
* addressed more PR comments
* fixed Anthropic test
* addressed another PR comment
* fixed remainder of tests
We have to build all of these at startup.
Its a lot faster to compare floats instead
of datetime objects. Since we already have to
fetch last_changed_timestamp, use it to compare
with last_updated_timestamp since we already know
we will have last_updated_timestamp
Now that pyisy is mostly typed there were some obvious
issues. We are still a long way away from being able
to add py.typed to pyisy, but we can now see some
obvious things in an IDE
* Use common states for "Away" and "Off" in `climate`
* Revert common state for "Away"
Four other integrations are referencing this instead of the common state. Needs to be addressed first.
* Don't turn on thermostat if temp is equal to target temp.
* Update strings to reflect logic change.
* Fix logic and add zero tolerance tests.
* Include tests for cool mode
* Removed unnecessary async_block_till_done calls
Replace "Disabled" with common state in `lamarzocco`, fix sentence-case
- replace "Disabled" with with common state reference
- fix sentence-casing of "Auto-lock"
"description":"Enables/disables Alexa microphone (only for Ecobee 4).",
"description":"Enables/disables Alexa microphone (only for ecobee 4).",
"fields":{
"mic_enabled":{
"name":"Mic enabled",
@@ -177,7 +177,7 @@
"fields":{
"entity_id":{
"name":"Entity",
"description":"Ecobee thermostat on which to set active sensors."
"description":"ecobee thermostat on which to set active sensors."
},
"preset_mode":{
"name":"Climate Name",
@@ -203,12 +203,12 @@
},
"issues":{
"migrate_aux_heat":{
"title":"Migration of Ecobee set_aux_heat action",
"title":"Migration of ecobee set_aux_heat action",
"fix_flow":{
"step":{
"confirm":{
"description":"The Ecobee `set_aux_heat` action has been migrated. A new `aux_heat_only` switch entity is available for each thermostat that supports a Heat Pump.\n\nUpdate any automations to use the new `aux_heat_only` switch entity. When this is done, fix this issue and restart Home Assistant.",
"description":"The ecobee `set_aux_heat` action has been migrated. A new `aux_heat_only` switch entity is available for each thermostat that supports a Heat Pump.\n\nUpdate any automations to use the new `aux_heat_only` switch entity. When this is done, fix this issue and restart Home Assistant.",
"description":"The ESPHome device {name} enabled transport encryption or changed the encryption key. Please enter the updated key. You can find it in the ESPHome Dashboard or in your device configuration."
},
"reauth_encryption_removed_confirm":{
"description":"The ESPHome device {name} disabled transport encryption. Please confirm that you want to remove the encryption key and allow unencrypted connections."
},
"discovery_confirm":{
"description":"Do you want to add the ESPHome node `{name}` to Home Assistant?",
"Duplicate entries found for flipr with the same user email. Please remove one of it manually. Multiple fliprs will be automatically detected after restart."
"title":"Multiple flipr configurations with the same account",
"description":"The Flipr integration has been updated to work account based rather than device based. This means that if you have 2 devices, you only need one configuration. For every account you have, please delete all but one configuration and restart Home Assistant for it to set up the devices linked to your account."
Some files were not shown because too many files have changed in this diff
Show More
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.