* Add SwitchBee Integration
* fixes
* improved API and more logs
* fixed test_config_flow code
* removed light and cover
* Fixed CR comments, updated pylib, improved response time and lowered the scan interval for lower latency
* CR fixes, added advanced setup form to let the
user choose the following:
- scan interval in seconds: default 5
- whether to expose scenarios and group switches from the CU or not
* used SCAN_INTERVAL_SEC instead of typing just the number
* Fixed PR comments, added unit tests
* fixes
* Improved the pypi and updated the code accordingly
* Add SwitchBee Integration
* fixes
* improved API and more logs
* fixed test_config_flow code
* removed light and cover
* Fixed CR comments, updated pylib, improved response time and lowered the scan interval for lower latency
* CR fixes, added advanced setup form to let the
user choose the following:
- scan interval in seconds: default 5
- whether to expose scenarios and group switches from the CU or not
* used SCAN_INTERVAL_SEC instead of typing just the number
* Fixed PR comments, added unit tests
* fixes
* Improved the pypi and updated the code accordingly
* fixes
* restored new line in .coveragerc
* test: increased config_flow test coverage
* removed two way type
* Updated CODEOWNERS
* fix: code review comments
* fixed review comments
* added device_info
* moved device info to attribute
* Initial version of Nobø Ecohub.
* Options update listener for Nobø Ecohub
* Unit test for nobo_hub config flow
* Cleanup
* Moved comment re backwards compatibility
* Improved tests
* Improved tests
* Options flow test
Pylint
* Fix backwards compatibility mode
* Don't require Python 3.9
* Import form configuration.yaml
* Check if device is already configured.
Correct tests for only discovering serial prefix
Fix importing when only serial suffix is configured
* Use constants
* Pylint and variable name clenaup.
* Review
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
* Fix tests
* Correct disabling off_command and on_commands ("Default" is a hard coded week profile in the hub).
* Improve options dialog
* Configure override type in options dialog
* Formatting
* pyupgrade
* Incorporated review comments
* Incorporated review comments.
* Incorporated second round of review comments.
* Add polling to discover preset change in HVAC_MODE_AUTO.
* Added tests/components/nobo_hub to CODEOWNERS.
* Update homeassistant/components/nobo_hub/config_flow.py
Review
Co-authored-by: Allen Porter <allen.porter@gmail.com>
* Update homeassistant/components/nobo_hub/climate.py
Review
Co-authored-by: Allen Porter <allen.porter@gmail.com>
* Simplify if tests.
* Update homeassistant/components/nobo_hub/__init__.py
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
* Update homeassistant/components/nobo_hub/__init__.py
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
* Update homeassistant/components/nobo_hub/__init__.py
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
* Separate config step for manual configuration.
* Fixed indentation
* Made async_set_temperature more robust
* Thermometer supports tenths even though thermostat is in ones.
* Preserve serial suffix in config dialog on error.
* Initial version of Nobø Ecohub.
* Improved tests
* Review
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
* Configure override type in options dialog
* Separate config step for manual configuration.
* Update homeassistant/components/nobo_hub/__init__.py
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
* Formatting (prettier)
* Fix HA stop listener.
* Review
* Apply suggestions from code review
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Review
- Removed workaround to support "OFF" setting.
- Simplified config flow to add a new device.
* Apply suggestions from code review
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Apply suggestions from code review
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Fixed review comments
* Update en.json with correction in review.
* Implemented review comments:
- Register devices
- Simplifed async_set_temperature
* Register hub as device in init module
* Implemented review comments.
Upgraded pynobo to 1.4.0.
* Apply suggestions from code review
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Avoid tacking on the device name in the entity name
* Inherit entity name from device name
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Allen Porter <allen.porter@gmail.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Add BThome BLE
* Update BThome to latest version
* 0.3.4
* Rename to bthome 2
* Fix uuids not being found
* Make energy a total increasing state class
* Change unit of measurement of VOC
* Use short identifier
* Fix the reauth flow
* Bump bthome_ble
* Parameterize sensor tests
* Remove Move function to parameter
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
* refactor volvooncall to use ConfigFlow
* remove unused constant SIGNAL_STATE_UPDATED
* implemented feedback
* improve ConfigFlow UX by giving an option for region=None
* implemented more feedback
* next round of feedback
* implemented more feedback
* improve test coverage
* more test coverage
* Apply suggestions from code review
* implemented feedback on tests
* Apply suggestions from code review
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Add support for USB dongles to the hardware integration
* Update hardware integrations
* Adjust tests
* Add USB discovery for SkyConnect 1.0
* Improve test coverage
* Apply suggestions from code review
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
* Fix frozen dataclass shizzle
* Adjust test
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
* Add Landis+Gyr Heat Meter integration
* Add contant for better sensor config
* Add test for init
* Refactor some of the PR suggestions in config_flow
* Apply small fix
* Correct total_increasing to total
* Add test for restore state
* Add MWh entity that can be added as gas on the energy dashoard
* Remove GJ as unit
* Round MWh to 5 iso 3 digits
* Update homeassistant/components/landisgyr_heat_meter/const.py
* Update CODEOWNERS
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Add basic tests to the HDMI-CEC component
* Add tests for the HDMI-CEC switch component
* Add test for watchdog code
* Start adding tests for the HDMI-CEC media player platform
Also some cleanup and code move.
* Add more tests for media_player
And cleanup some switch tests.
* Improve xfail message for features
* Align test pyCEC dependency with main dependency
* Make fixtures snake_case
* Cleanup call asserts
* Cleanup service tests
* fix issues with media player tests
* Cleanup MockHDMIDevice class
* Cleanup watchdog tests
* Add myself as code owner for the HDMI-CEC integration
* Fix async fire time changed time jump
* Fix event api sync context
* Delint tests
* Parametrize watchdog test
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Add new LaCrosse View integration
* Add new LaCrosse View integration
* Add retry logic
* Actually use the start time for the retry logic
* Get new token after 1 hour
* Replace retry logic with more reliable logic
* Improve test coverage
* Add device info and unique id to config entry
* Fix manufacturer name
* Improve token refresh and check sensor permission
* Improve test cover
* Add LaCrosse View to .strict-typing
* Remove empty fields in manifest.json
* Fix mypy
* Add retry logic for get_data
* Add missing break statement in retry decorator
* Fix requirements
* Finish suggestions by Allen Porter
* Suggestions by Allen Porter
* Fix typing issues with calls to get_locations and get_sensors
* Add Govee BLE integration
* add missing files
* remove test file not needed yet
* fix
* add bbq sensors
* fixed lib
* bump again to fix the names
* fix discovery of the newer bbq devices
* fix the test to test the right thing
* verify no outstanding flows
* only accept entities that match the platform
* refactor
* refactor
* refactor
* Refactor PassiveBluetoothDataUpdateCoordinator to support multiple platforms
* cover
* Update for new model
* Update for new model
* Update tests/components/govee_ble/test_sensor.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* purge dead code
* backmerge from integration
* Update docstring
* Update docstring
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Initial xiaomi_ble integration
* black
* Update homeassistant/components/xiaomi_ble/config_flow.py
Co-authored-by: Ernst Klamer <e.klamer@gmail.com>
* Update homeassistant/components/xiaomi_ble/config_flow.py
Co-authored-by: Ernst Klamer <e.klamer@gmail.com>
* Apply suggestions from code review
Co-authored-by: Ernst Klamer <e.klamer@gmail.com>
* Update tests/components/xiaomi_ble/test_config_flow.py
Co-authored-by: Ernst Klamer <e.klamer@gmail.com>
* Update homeassistant/components/xiaomi_ble/sensor.py
Co-authored-by: Ernst Klamer <e.klamer@gmail.com>
* Update tests/components/xiaomi_ble/test_config_flow.py
Co-authored-by: Ernst Klamer <e.klamer@gmail.com>
* Remove debug code
* Need 'proper' MAC when running tests on linux
* Need to use proper MAC so validation passes
* Add tests for already_in_progress and already_configured
* copy test, add session fixture
* fix test
Co-authored-by: Ernst Klamer <e.klamer@gmail.com>
Co-authored-by: J. Nick Koston <nick@koston.org>
* Switchbot add support for hygrometers
* Update CODEOWNERS
* Improve debug
* Remove redundant mention to temp unit
* Adopt FlowResultType
* Modify SwitchBot data within coordinator
* Increase logging for switchbot sensor
* Revert "Increase logging for switchbot sensor"
This reverts commit d8b377429c.
Co-authored-by: J. Nick Koston <nick@koston.org>
* Changes accordingly to sidenotes given by @MartinHjelmare in pull #73834.
* Mini version bump according to notes in pull #73834.
* Error message fix, test adjustment.
* Add config flow to AnthemAV integration
* Add importing of existing configuration
* Change setting to optional and add default value
* Use entity attribute
* Reduce changes by removing additional media player properties
* Remove title from translation
* Refactor config flow and fix PR comments
* Fix a failing test because of wrong renaming
* Add typing and use existing class and enum
* Bump dependency to v1.3.1
* Remove unecessary async_reload_entry
* Fix requirements_test_all after rebase
* Add const for timeout and remove async_block in test
* Reapply CodeOwner and configflow after rebase
* Remove name from configflow
* Fix manifest prettier failure
* Simplify code and avoid catching broad exception
* Removed unused strings and translations
* Avoid asserting hass.data
* Convert life360 integration to entity based
* Improve config_flow.py type checking
* Add tests for config flow
Fix form defaults for reauth flow.
* Cover reauth when config entry loaded
* Update per review (except for dataclasses)
* Restore check for missing location information
This is in current code but was accidentally removed in this PR.
* Fix updates from review
* Update tests per review changes
* Change IntegData to a dataclass
* Use dataclasses to represent fetched Life360 data
* Always add extra attributes
* Update per review take 2
* Tweak handling of bad last_seen or location_accuracy
* Fix type of Life360Member.gps_accuracy
* Update per review take 3
* Update .coveragerc
* Parametrize successful reauth flow test
* Fix test coverage failure
* Update per review take 4
* Fix config schema
* Add config flow to eight_sleep
* simplify tests
* Remove extra file
* remove unused import
* fix redundant code
* Update homeassistant/components/eight_sleep/__init__.py
Co-authored-by: J. Nick Koston <nick@koston.org>
* incorporate feedback
* Review comments
* remove typing from tests
* Fix based on changes
* Fix requirements
* Remove stale comment
* Fix tests
* Reverse the flow and force the config entry to reconnect
* Review comments
* Abort if import flow fails
* Split import and user logic
* Fix error
Co-authored-by: J. Nick Koston <nick@koston.org>
* fixing after MartinHjelmare review
* fixing after MartinHjelmare review conversion alarm state to hass state
* fixing after MartinHjelmare review conversion alarm state to hass state
* manage the status in the alarm control
* simplyfing return function
* Removing iAlarm XR integration because of Antifurto365 explicit request to remove after some issues in their cloud service
* First version of laundrify integration
* Code cleanup
* Code cleanup after review #2
* Move coordinator to its own file
* Save devices as dict and implement available prop as fn
* Validate token on init, abort if already configured
* Some more cleanup after review
* Add strict type hints
* Minor changes after code review
* Remove OptionsFlow (use default poll interval instead)
* Fix CODEOWNERS to pass hassfest job
* Fix formatting to pass prettier job
* Fix mypy typing error
* Update internal device property after fetching data
* Call parental update handler and remove obsolete code
* Add coordinator tests and fix some config flow tests
* Refactor tests
* Refactor fixtures
* Device unavailable if polling fails
* Adding flow and async
* Fixes to init
* Lint and type
* Fixed coveragerc file
* Added Test Coverage
* Added Update Listener and removed unused code
* Wrong integration name in init.
* Nothing
* Added yaml import flow
* Added YAML import functionality
* Added back aladdin_connect files to coverage rc
* Removed commented code
* Clean up error message
* Update homeassistant/components/aladdin_connect/__init__.py
Co-authored-by: G Johansson <goran.johansson@shiftit.se>
* Update homeassistant/components/aladdin_connect/__init__.py
Co-authored-by: G Johansson <goran.johansson@shiftit.se>
* Update homeassistant/components/aladdin_connect/config_flow.py
Co-authored-by: G Johansson <goran.johansson@shiftit.se>
* Updated Documentation errors
* recommended change broke cover.py - backed out
* Cleaned up unused defenitions
* implimented recommended changes from gjohansson
* Dev environment cleanup
* Raised errors for better recovery, replaced removed update files, utilized PLATFORM vars to init platform
* Added back removal
* Added Code Owner
* Fixed more comment errors and import duplicates
* Added test coverage and formated code
* Added test coverage for model and init
* Added test_cover for full testing coverage
* Added await to async call
* Added missing asserts to failure tests
* Updated tranlsation
* Fixed wording in yaml import function, white space in const.py, return from validate_input.
* Update homeassistant/components/aladdin_connect/config_flow.py
Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>
* "too much" whitespace
* Added back mising strings.json errors
* Added ConfigFlowReconfig and tests
* Finished up reauth config flow and associated tests
* Added reauth to strings, removed username from reauth
* recommended changes, ran script.translations, added auth test to reauth
* put back self.entry.data unpack.
* Cleanup for error message, fixed missing "asserts" in tests
* Added yaml import assertions
* Fixed documentation errors in test_cover.
* remove unused string.
* revised tests and wording for yaml import
* Documentation cleanup.
* Changed sideeffect names
Co-authored-by: G Johansson <goran.johansson@shiftit.se>
Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>
* Add ws66i core integration
* Remove all ws66i translations
* Update ws66i unit tests to meet minimum code coverage
* Update ws66i based on @bdraco review
* General improvements after 2nd PR review
* Disable entities if amp shutoff, set default source names, set 30sec polling
* Add _attr_ and change async_on_unload
* Improve entity generation
* Implement coordinator
* Made options fields required, retry connection on failed attempts, use ZoneStatus for attributes
* Refactor WS66i entity properties, raise HomeAssistantError on restore service if no snapshot
* Update to pyws66i v1.1
* Add quality scale of silver to manifest
* Update config_flow test
Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
* Initial developer credentials scaffolding
- Support websocket list/add/delete
- Add developer credentials protocol from yaml config
- Handle OAuth credential registration and de-registration
- Tests for websocket and integration based registration
* Fix pydoc text
* Remove translations and update owners
* Update homeassistant/components/developer_credentials/__init__.py
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
* Update homeassistant/components/developer_credentials/__init__.py
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
* Remove _async_get_developer_credential
* Rename to application credentials platform
* Fix race condition and add import support
* Increase code coverage (92%)
* Increase test coverage 93%
* Increase test coverage (94%)
* Increase test coverage (97%)
* Increase test covearge (98%)
* Increase test coverage (99%)
* Increase test coverage (100%)
* Remove http router frozen comment
* Remove auth domain override on import
* Remove debug statement
* Don't import the same client id multiple times
* Add auth dependency for local oauth implementation
* Revert older oauth2 changes from merge
* Update homeassistant/components/application_credentials/__init__.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Move config credential import to its own fixture
* Override the mock_application_credentials_integration fixture instead per test
* Update application credentials
* Add dictionary typing
* Use f-strings as per feedback
* Add additional structure needed for an MVP application credential
Add additional structure needed for an MVP, including a target
component Xbox
* Add websocket to list supported integrations for frontend selector
* Application credentials config
* Import xbox credentials
* Remove unnecessary async calls
* Update script/hassfest/application_credentials.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update script/hassfest/application_credentials.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update script/hassfest/application_credentials.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update script/hassfest/application_credentials.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Import credentials with a fixed auth domain
Resolve an issue with compatibility of exisiting config entries when importing
client credentials
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
* Create a new NWS Alerts integration
* Create a new NWS Alerts integration
* Create new PECO integration
* Remove empty keys
* Revert "Create a new NWS Alerts integration"
This reverts commit 38309c5a87.
* Revert "Create a new NWS Alerts integration"
This reverts commit aeabdd37b8.
* Fix test with new mock data
* Add init and sensor to .coveragerc and more tests for config flow
* Small fixes and replacing patch with pytest.raises in testing invalid county
* Add type defs and fix test_config_flow to use MultipleValid instead
* Fix issues with 'typing.Dict'
* Move API communication to seperate PyPI library
* Switch PyPI library from httpx to aiohttp to allow for passing in websessions
* Commit file changes requested by farmio as listed here: d267e4300a
* Add suggestions requested by farmio as listed here: 586d8ffa42
* Move native_unit_of_measurement from prop to attr
* Update PLATFORMS constant type annotation
Co-authored-by: Matthias Alphart <farmio@alphart.net>
* Add peco to .strict-typing
I am from school so I can't run mypy atm
* Forgot to import Final
* Do as requested [here](https://github.com/home-assistant/core/runs/5070634928?check_suite_focus=true)
* Updated mypy.ini, checks should pass now
* Fix to conform to mypy restrictions https://github.com/home-assistant/core/runs/5072861837\?check_suite_focus\=true
* Fix type annotations
* Fix tests
* Use cast in async_update_data
* Add data type to CoordinatorEntity and DataUpdateCoordinator
* More cleanup from suggestions here: https://github.com/home-assistant/core/pull/65194\#pullrequestreview-908183493
* Fix tests for new code
* Cleaning up a speck of dust
* Remove unused variable from the peco sensor
* Add rounding to percentage, and extra clean-up
* Final suggestions from @farmio
* Update SCAN_INTERVAL to be a little bit faster
* Change the SCAN_INTERVAL to be somewhat near the update interval of the outage map, as noted by farmio
* New UpdateCoordinator typing