* Add buttons to opt into/out of the next Ridwell pickup
* Buttons finished
* Coverage
* better name
* Move to switch
* Clean up
* Coverage
* Use correct exception
* Removed prometheus from .coveragerc
* Update prometheus tests with handler categories
* Updated prometheus metrics to use the current registry
- don't use the registry created on import (needed for tests)
* Reset the prometheus CollectorRegistry before every test
* Update prometheus metrics generation
- Use latest registry when generating a response
* Add default collectors when resetting the registry
* Move entities to the specific prometheus test case
* Refactor body generation for prometheus tests
* Add test case for sensors without unit after rebase
* Fix prometheus tests
- Wait for events in prometheus tests
- Add workaround for demo platform dependecy conversation (aiohttp frozen router)
* Added prometheus tests for attribute metrics
* Added prometheus tests for binary_sensor
* Add prometheus test for input_boolean
* Add prometheus test for lights
* Add prometheus test for lock
* Add prometheus test for sensor fahrenheit conversion
* Fix prometheus test for input_number
* Update entity registry handling
* Add and use fixtures to test setup via config entry
* Remove legacy redundant tests
* Remove unnecessary mock_coro
* Remove unnecessary namespace change
* Move zeroconf payload to fixture
* Begin adding Sonos to codecov
* Mock proper return value
* Revert return value for platform
* Add select entity for Yamaha MusicCast Capabilities
* Add musiccast select to .coveragerc
* Move status strings to string.select.json and auto generate the english translations from it. Let the device class start with yamaha_musiccast__.
* Make all device classes lower case
* Use platform enum to add select
* Add unique_id and use DataUpdateCoordinator in Fronius (#57879)
* initial refactoring commit - meters
- config_flow (no strings, no tests yet)
- import yaml config
- FroniusSolarNet class for holding Fronius object , coordinators and some common data
- meter descriptions
- update coordinator
- entities (including devices)
* storage controllers
* error handling on init; inverter unique_id
* inverters
* power_flow
* fix VA, var, varh not valid for device_class power/energy
and add custom icons
* add SolarNet device for system wide values
* cleanup
* config_flow strings
* test config_flow
* use pyfronius 0.7.0
* enable strict typing
* remove TODO comments
* fix lint errors; move FroniusSensorEntity to sensor.py
* power_flow as optional coordinator
API V0 doesn't support power_flow endpoint
* show error message in logs
* prevent parallel requests to one host
* logger_info coordinator
* store FroniusSolarNet reference directly in coordinator
* cleanup coordinators when unloading entry
* round floats returned by Fronius API
* default icons for grid im/export tariffs
* small typing fix
* Update homeassistant/components/fronius/sensor.py
Co-authored-by: Brett Adams <Bre77@users.noreply.github.com>
* DC icons
* prepend names with "Fronius" and device type
to get more reasonable default entity_ids (eg. have them next to each other when alphabetically sorted)
* remove config_flow and devices
* rename _FroniusUpdateCoordinator to FroniusCoordinatorBase
and mark ABC
* move SensorEntityDescriptions to sensor.py
* Revert "move SensorEntityDescriptions to sensor.py"
This reverts commit 2e5a726eb6.
* Don't raise ConfigEntryNotReady and use regular refresh method
* move bridge initialization out of helper class
* no coverage tests
* power_flow update interval 10 seconds
* move SensorEntityDescriptions to sensor.py
without introducing a circular dependency
* deprecation warning for CONF_MONITORED_CONDITIONS
* remove extra_state_attributes form meter sensor entities
* readd diagnostic entities
* decouple default entity_id from default name
* use key instead of name for entity_id
and make deprecated config key optional
* adjust tests
* use old entity_ids
these changes are now backwards compatible
* check coverage
* simplify entity description definitions
* restore entity names of previous implementation
Co-authored-by: Brett Adams <Bre77@users.noreply.github.com>
* Add config_flow for Fronius integration (#59677)
* Cleanup Fronius config_flow and tests (#60094)
* Add devices to Fronius integration (#60104)
* New entity names for Fronius entities (#60215)
* Adaptive update interval for Fronius coordinators (#60192)
Co-authored-by: Brett Adams <Bre77@users.noreply.github.com>
* Configuration via UI
Config flow / YAML deprecation
- Support discovery via MAC address
- Support import of YAML config
- Switch to ConfigEntry, get rid of platform setup
* Fix review comments
* More tests for vicare yaml import
* implemented config_flow and dataupdatecoordinator
* implemented config flow, dataupdatecoordinator and tests.
* undid extra vscode task
* fixed pylint errors
* updates based on review
* fix mypy in reauth
* fast interval to 5 sec
* fixed test patches and others from review
* added released package
* deleted wrong line from coveragerc
* updates to config and tests
* fixed test patch
* Move "Battery:SmartBatteryControl:Enable" from a simple sensor to a switch
Add "Battery:TimeControl:Enable" as a switch
If you want to change charging behavior you need to turn off both switches, before you can enable the function you want. (Same as on Plenticore UI)
* removed:
@property
def assumed_state(self) -> bool
was copied from an switchbot integration, does not make sense or does deliver valuable information
Tried to set constant properties in the constructor
* correct typo, add new line at eof
* Initial state of switch was missing after (re)starting HA. Now working.
* Reformatted with black
* correct syntax errors from test run 09.10.2021
* reformat
* update 15.10.2021
* Set select value is working
* update 05.11.2021
* data correctly received
* working completly
* remove old switch definitions, now replaced by select widget
* correct complaints from workflow run on 11/11/2021
* Add explanatory comment for switch and select
* Correct comments
* Removed function async def async_read_data(self, module_id: str, data_id: str)
from class SettingDataUpdateCoordinator
* Add Mixin class for read/write
* try to make select.py less "stale"
* new dev environment 2
* new dev environment 2
* correct syntax
* minor coding standard correction
* Remove BOM
* Remove BOM on select.py
* Updated .coveragerc
* Initial commit after scaffold setup
* Add initial config flow
* Create initial entity
* Ready for testing
* Can browse, no result yet
* Further improvements. Browsing is working.
Now need to work on proper stream URL
* Two valid URLs. Do not play in HA
* First working version for music
* Add thumbnail
* Includes Artist->Album hierarchy
* Add sorting of artists, albums and tracks
* Remove code for video libraries
* Improved code styling
* Optimize configuration flow
* Fix unit tests for config flow
* Fix import order
* Conform to style requirements
* Use empty string as media type for non playables
* 100% code coverage config_flow
* Type async_get_media_source
* Final docsctring fix after rebase
* Add __init__ and media_source files to .coveragerc
* Fix testing issues after rebase
* Fix string format issues and relative const import
* Remove unused manifest entries
* Raise ConfigEntry exceptions, not log errors
* Upgrade dependency to avoid WARNING on startup
* Change to builtin tuple and list (deprecation)
* Log broad exceptions
* Add strict typing
* Further type fixes after rebase
* Retry when cannot connect, otherwise fail setup
* Remove unused CONFIG_SCHEMA
* Enable strict typing checks
* FlowResultDict -> FlowResult
* Code quality improvements
* Resolve mypy.ini merge conflict
* Use unique userid generated by Jellyfin
* Update homeassistant/components/jellyfin/config_flow.py
Remove connection class from config flow
Co-authored-by: Milan Meulemans <milan.meulemans@live.be>
* Minor changes for additional checks after rebase
* Remove title from string and translations
* Changes wrt review
* Fixes based on rebase and review suggestions
* Move client initialization to separate file
* Remove persistent_notification, add test const.py
Co-authored-by: Milan Meulemans <milan.meulemans@live.be>
* Bring greeneye_monitor to 99% coverage.
* Pass monitor into listeners on Monitors
* Updates for changes in `dev`, create mock monitor
* Remove logging left in after debugging
* Remove xfails now that #58764 has merged