* Add Config Flow to APCUPSd integration and remove YAML support.
* Hide the binary sensor if user does not select STATFLAG resource.
* Add tests for config flows.
* Simplify config flow code.
* Spell fix.
* Fix pylint warnings.
* Simplify the code for config flow.
* First attempt to implement import flows to suppport legacy YAML configurations.
* Remove unnecessary log calls.
* Wrap synchronous update call with `hass.async_add_executor_job`.
* Import the YAML configurations when sensor platform is set up.
* Move the logger call since the variables are not properly set up.
* Add codeowner.
* Fix name field of manifest.json.
* Fix linting issue.
* Fix incorrect dependency due to incorrect rebase.
* Update codeowner and config flows via hassfest.
* Postpone the deprecation warning to 2022.7.
* Import future annotations for init file.
* Add an newline at the end to make prettier happy.
* Update github id.
* Add type hints for return types of steps in config flow.
* Move the deprecation date for YAML config to 2022.12.
* Update according to reviews.
* Use async_forward_entry_setups.
* Add helper properties to `APCUPSdData` class.
* Add device_info for binary sensor.
* Simplify config flow.
* Remove options flow strings.
* update the tests according to the changes.
* Add `entity_registry_enabled_default` to entities and use imported CONF_RESOURCES to disable entities instead of skipping them.
* Update according to reviews.
* Do not use model of the UPS as the title for the integration.
Instead, simply use "APCUPSd" as the integration title and let the device info serve as title for each device instead.
* Change schema to be a global variable.
* Add more comments.
* Rewrite the tests for config flows.
* Fix enabled_by_default.
* Show friendly titles in the integration.
* Add import check in `async_setup_platform` to avoid importing in sensor platform setup.
* Add import check in `async_setup_platform` to avoid importing in sensor platform setup.
* Update comments in test files.
* Use parametrize instead of manually iterating different test cases.
* Swap the order of the platform constants.
* Avoid using broad exceptions.
* Set up device info via `_attr_device_info`.
* Remove unrelated test in `test_config_flow`.
* Use `DeviceInfo` instead of dict to assign to `_attr_device_info`.
* Add english translation.
* Add `async_create_issue` for deprecated YAML configuration.
* Enable UPS status by default since it could show "online, charging, on battery etc" which is meaningful for all users.
* Apply suggestions from code review
* Apply suggestion
* Apply suggestion
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Add number platform
* Enable number platform
* Adjust typing
* Update homeassistant/components/nibe_heatpump/number.py
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
* Fix format
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: G Johansson <goran.johansson@shiftit.se>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
* Migrate two RainMachine binary sensors to config-category switches
* Removal
* Replace RainMachine freeze protection temperature sensor with a select
* Fix CI
* Show options in current unit system
* Have message include what entity is replacing this sensor
* Don't define a method for every dataclass instance
* Add issue registry through helper
* Breaking change -> deprecation
* Naming
* Translations
* Remove extraneous list
* Don't swallow exception
* Don't be prematurely defensive
* Better Repairs instructions
* Add nibe local integration
* Add sensor platform
* Enable sensor platform
* Fix manifest
* Correct domain after rename
* Adjust tests for rename
* Correct codeowners
* Add requirements for tests
* Grab coil by name
* Switch to home assistant error
* Config entry always exist
* Switch to create task
* Bump to 0.5.0
* Use new coils access
* Remove unneeded check
* Use single instance of logger
* Test invalid ip
* Don't allow coil to be None
* Remove sleep
* Initialize data in coordinator init
* Add utils to ignore
* Update homeassistant/components/nibe_heatpump/manifest.json
Co-authored-by: J. Nick Koston <nick@koston.org>
* Use generator instead
* Use tenacity as retry decorator
* Use package instead of name to get logger
* Skip broad exception handling
* Catch missing coil exception
* Add missing test
Co-authored-by: J. Nick Koston <nick@koston.org>
* Remove U.S. Citizenship and Immigration Services (USCIS) integration
* Update .coveragerc
Fix due to sorting in https://github.com/home-assistant/core/pull/78447
Co-authored-by: Shay Levy <levyshay1@gmail.com>
* 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>
* 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 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>
* 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
* Drop CALLABLE_T from zha
* Adjust .coveragerc
* Apply suggestions from code review
Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>
* Add TypeVar
* Apply suggestions from code review
Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>
* One more
Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>
* Flake8
Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>
* 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
* 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>
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>
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>
* Remove broken Arlo component
This component has been fully broken since early 2019 because of
authentication changes from Arlo.
* Update requirements
* Full test coverage for KNX integration
* Allow for 0 values, since we all live at those kind of areas in the world
* Remove unneeded method
* Add missing test for climate mode
* Cleanup test and remove fixture that was used only once
* Drop unused init method
* Add type hints to media_player tests
* Adjust test_init
* Adjust media_player
* Add type hints to conftest
* Use Mock in test_media_player
* Use lowercase in test_init
* Use relative import in diagnostics
* Add type hints to config_flow
* Adjust coveragerc
* Make gethostbyname autouse
* Cleanup gethostbyname and remote fixtures
* Drop unused fixtures
* Undo type hints and usefixtures on media_player
* Undo type hints and usefixtures in test_init
* Undo type hints in conftest
* Undo usefixtures in test_config_flow
* Format
Co-authored-by: epenet <epenet@users.noreply.github.com>
* Add diagnostics for philips_js
* Update homeassistant/components/philips_js/diagnostics.py
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
* Update homeassistant/components/philips_js/diagnostics.py
Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>
* Also redact username/password
They are really not that secret, but seem logical.
* Redact unique id
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>
* Add Moehlenhoff Alpha2 underfloor heating system integration
* isort changes
* flake8 changes
* Do not exclude config_flow.py
* pylint changes
* Add config_flow test
* correct requirements_test_all.txt
* more tests
* Update test description
* Test connection and catch TimeoutError in async_setup_entry
* Add version to manifest file
* Remove version from manifest file
* Replace tests.async_mock.patch by unittest.mock.patch
* Update moehlenhoff-alpha2 to version 1.0.1
* Update requirements for moehlenhoff-alpha2 1.0.1
* Update moehlenhoff-alpha2 to 1.0.2
* Use async_setup_platforms
* Use async_unload_platforms
* Separate connection and devices for each entry_id
* Use async_track_time_interval to schedule updates
* Check if input is valid before checking uniqueness
* Move Exception handling to validate_input
* Catch aiohttp.client_exceptions.ClientConnectorError
* Remove translation files
* Mock TimeoutError
* Fix data update
* Replace current callback implementation with ha dispatcher
* Return False in should_poll
* Remove unused argument
* Remove CONNECTION_CLASS
* Use _async_current_entries
* Call async_schedule_update_ha_state after data update
* Remove unneeded async_setup
Co-authored-by: Milan Meulemans <milan.meulemans@live.be>
* Remove unneeded async_setup_platform
Co-authored-by: Milan Meulemans <milan.meulemans@live.be>
* Set Schema attribute host required
Co-authored-by: Milan Meulemans <milan.meulemans@live.be>
* Remove unused Exception class
Co-authored-by: Milan Meulemans <milan.meulemans@live.be>
* Update manifest.json
Co-authored-by: Milan Meulemans <milan.meulemans@live.be>
* pylint constructor return type None
* Replace properties by class variables
* use pass instead of return
* Remove unused sync update method
* remove property hvac_action
* remove pass
* rework exception handling
* Update homeassistant/components/moehlenhoff_alpha2/config_flow.py
Co-authored-by: Milan Meulemans <milan.meulemans@live.be>
* Correct indentation
* catch Exception in validate_input
* Replace HomeAssistantType with HomeAssistant
* Update to moehlenhoff-alpha2 1.0.3
* Allow to switch between heating and cooling mode
* Update moehlenhoff-alpha2 to version 1.0.4
* Update heatarea data after setting target temperature
* Support hvac_action
* Fix heatarea update with multiple bases
* Update data after setting preset mode
* Use custom preset modes like defined by device
* Fix config flow test
* Fix test_duplicate_error
* Rename property to extra_state_attributes
Rename property device_state_attributes to extra_state_attributes and
return lowercase keys in dict.
* Refactor using DataUpdateCoordinator
* Remove _attr_should_poll
* Raise HomeAssistantError on communication error
Catch HTTPError instead of broad except and reraise as HomeAssistantError
* Change DataUpdateCoordinator name to alpha2_base
* Refresh coordinator before setting data
* Raise ValueError on invalid heat area mode
* Rename heatarea to heat_area
* Set type annotation in class attribute
* Move coordinator to top
* Move exception handling to the coordinator
* Use heat_area_id directly
* Sore get_cooling() result into local var
* Add explanation of status attributes
and remove BLOCK_HC
* Fix pylint warnings
* from __future__ import annotations
* Use Platform Enum
* Move data handling to coordinator
* Remove property extra_state_attributes
* Add missing annotations
* Update moehlenhoff-alpha2 to version 1.1.2
* Rework tests based on the scaffold template
* Set also heat/cool/day/night temp with target temp
* Remove unneeded code from tests
Co-authored-by: Milan Meulemans <milan.meulemans@live.be>
* Initial fivem integration setup
* Use licenseKey for unique ID
* Create FiveMServer class
* Create FiveMStatusBinarySensor
* Fix platform loading
* Create sensor platform
* Remove config flow tests
* Update manifest.json
* Use attr_ instead or properties in sensors.py
* Use entry_id as unique_id
* Move device info to _attr instead of property
* Register callback in FiveMEntity
* Create config flow tests
* Add loggin to fivem
* Use FiveM in config_flow
* Use update_coordinator instead of dispatcher
* Bump fivem-api to 0.1.2
* Remove leftovers
* More tests for config flow
* Add component files to .coveragerc
* Fix simple comments
* Add gamename check to config flow
* Use entity descriptions for sensors
* Move extra attributes to init
* Use [] instead of get() for server info
* Fix error in gamename test