Commit graph

137 commits

Author SHA1 Message Date
G Johansson
4a102d6b2a
Improve code quality trafikverket_train () 2022-01-19 20:57:05 +01:00
G Johansson
bbb29ab455
Code quality improvements smhi () 2022-01-17 20:27:23 +01:00
Shay Levy
32d4f104ff
Enable strict typing in webostv ()
* Enable strict typing in webostv

Enable strict typing in webostv

* Apply review comments
2022-01-16 22:07:29 +01:00
G Johansson
1a5716efc4
Enable strict typing for trafikverket_weatherstation () 2022-01-13 23:04:15 +01:00
Franck Nijhof
7a699480d4
Add strict typing to LaMetric ()
* Add strict typing to LaMetric

* Forgot about Pylint 🙈
2022-01-12 13:39:12 +01:00
Marc Mueller
240c9979c7
Move disallow-any-generics to mypy.ini () 2022-01-11 13:33:25 -08:00
Duco Sebel
8f6e24aa1e
Add HomeWizard Energy integration ()
Co-authored-by: Matthias Alphart <farmio@alphart.net>
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2022-01-10 16:23:31 -08:00
Robert Hillis
7c51d2f159
Add strict typing to abode () 2022-01-10 15:54:09 +01:00
Marc Mueller
912ff76fda
Enable strict typing for core.py () 2022-01-10 12:07:22 +01:00
epenet
36dd8ca09a
Enable strict typing in browser ()
* Add setup type hints to browser

* Add browser to script-typing
2022-01-10 04:02:50 +01:00
J. Nick Koston
943aaaeb3f
Add SenseME integration ()
Co-authored-by: Big Mike <mikelawrence@users.noreply.github.com>
2022-01-07 22:53:05 -10:00
J. Nick Koston
4283b2358c
Add support for Steamist steam showers ()
Co-authored-by: Franck Nijhof <git@frenck.dev>
2022-01-06 02:55:57 +01:00
J. Nick Koston
724f5dbf1a
Add Oncue by Kohler integration () 2022-01-02 09:15:39 -10:00
Allen Porter
c7b991f56b
Add rtsptowebrtc integration ()
* Add initial version of the webrtc integration

Add the webrtc integration. This integration proxies the
signal 'offer' from the client to a RTSPtoWebRTCP server that
returns an 'answer'.

The RTSPtoWebRTC server is a go binary based on pion, and this is
what is currently used by the WebRTC custom_component:
https://github.com/AlexxIT/WebRTC
https://github.com/deepch/RTSPtoWebRTC

* Readability improvements for webrtc

* Reach 100% test coverage

* Use rtsp-to-webrtc client library package

* Rename webrtc to rtstptowebrtc

This is to reflect naming as one type of approach to webrtc since other webrtc integrations would look very different.

* Remove internal quality scale

* Bump rtsptowebrtc to support heartbeats

* Shorten server url variable and remove const.py

* Add config flow validation for RTSPtoWebRTC server

* Add RTSPtoWebRTC server health checks

* Accept translation suggestion

* Apply suggestions from code review

Co-authored-by: J. Nick Koston <nick@koston.org>

* Update rtsptowebrtc to use new camera registry API

Update rtsptowebrtc to use new API added in 

* Remove unused variable

* Fix lint and typing errors for python 3.8

* Rename to rtsp_to_webrtc to follow standards

* Use async_on_unload for unsubscribing camera webrtc provider

* Remove unnecessary translations in config flow

* Remove unnecessary configuration setup

* Cleanup test setup and typing

* Patch integration setup to avoid starting the whole integration

Co-authored-by: J. Nick Koston <nick@koston.org>
2022-01-01 12:36:31 -08:00
Mick Vleeshouwer
4eb077b6b4
Enable strict typing for Overkiz integration () 2021-12-31 07:35:15 -10:00
Phil Cole
54d1e20948
Add type hints to nissan_leaf integration () 2021-12-29 12:23:54 +01:00
Franck Nijhof
43dc12b1c8
Add strict typing to Whois () 2021-12-28 21:25:09 +01:00
Franck Nijhof
7b5a159899
Add strict typing to CPU Speed () 2021-12-28 13:19:36 +01:00
Christopher Bailey
e982e7403a
Add unifiprotect integration ()
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-12-25 20:12:57 -10:00
Franck Nijhof
79627526c7
Add strict typing to PVOutput () 2021-12-23 06:25:05 +01:00
Franck Nijhof
4805b67300
Add strict typing to Luftdaten () 2021-12-22 12:20:35 +01:00
Franck Nijhof
fc6c0b1d4a
Add input_button ()
* Add input_button

* Update homeassistant/components/input_button/__init__.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>

* Improve test coverage

* Add reload test: not affecting state

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-12-20 16:18:58 +01:00
Thomas Dietrich
28af0b4092
Statistics component typing ()
* Implement optional manually defined uniqueid

* Fix test case via mocked environment

* Add typing to statistics component

* Fix minor inconsistency

* Fix linter issues

* Execute hassfest

* Fix stricter mypy warnings

* Fix maxsplit warning

* Make binary value range explicit check

* Add basic typing to statistics tests

* Add empty config testcase

* Minor improvements

* Improve after comments

* Remove unnecessary test case

* Fix changed type

* Remove dict.get default
2021-12-20 14:53:51 +01:00
Eric Severance
1318597370
Fix typing for wemo () 2021-12-19 18:09:30 -06:00
Franck Nijhof
0dbd948867
Add Open-Meteo integration (second attempt) () 2021-12-16 21:12:33 +01:00
epenet
97d292133f
Revert "Add Open-Meteo integration ()" ()
This reverts commit d802f3a82f.
2021-12-06 23:35:14 +01:00
Franck Nijhof
d802f3a82f
Add Open-Meteo integration ()
Co-authored-by: MatthewFlamm <39341281+MatthewFlamm@users.noreply.github.com>
2021-12-06 10:01:12 -08:00
Milan Meulemans
a7e129a952
Add Aseko Pool Live integration () 2021-12-05 17:02:46 -10:00
Franck Nijhof
6a8c732b37
Add Tailscale integration ()
* Add Tailscale integration

* Use DeviceEntryType

* Fix tests

* Adjust to new Pylint version

* Use enums for device classes

* Update homeassistant/components/tailscale/config_flow.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Pass empty string as default

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-12-01 14:40:38 +01:00
Matthias Lohr
a399037a46
Add TOLO Sauna (tolo) integration () 2021-11-24 20:45:13 +01:00
Matthias Alphart
3dac661480
Rewrite Fronius integration ()
* Add unique_id and use DataUpdateCoordinator in Fronius ()

* 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 ()

* Cleanup Fronius config_flow and tests ()

* Add devices to Fronius integration ()

* New entity names for Fronius entities ()

* Adaptive update interval for Fronius coordinators ()

Co-authored-by: Brett Adams <Bre77@users.noreply.github.com>
2021-11-24 02:04:36 +01:00
Marc Mueller
6089aef072
Enable strict typing - wallbox () 2021-11-23 22:30:22 +01:00
Franck Nijhof
28a0ba4df3
Modernize/Simplify Twente Milieu () 2021-11-13 15:34:09 +01:00
j-stienstra
0ae5b9e880
Add Jellyfin integration ()
* 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>
2021-11-12 14:57:40 +01:00
Maikel Punie
6a21b241c0
Velbus typing part 2 () 2021-11-11 13:46:35 +01:00
Paulus Schoutsen
296f678d52
Add Evil Genius Labs integration ()
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-11-08 08:56:27 -08:00
Franck Nijhof
fdf1bfa140
Add RDW Vehicle information integration () 2021-11-06 19:34:51 +01:00
Martin Hjelmare
c0801c1233
Type vlc_telnet strictly () 2021-11-05 14:42:08 +01:00
Franck Nijhof
d126d88977
Add Button entity component platform ()
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-11-04 16:50:43 +01:00
Aaron Bach
f7dea3aa1d
Add Ridwell integration () 2021-10-30 08:27:48 -06:00
Jonathan Keljo
687c40a622
Enable strict typing for greeneye_monitor ()
* Enable strict typing for greeneye_monitor

* Fix pylint
2021-10-29 18:54:40 -07:00
Guido Schmitz
f1884d34e9
Add devolo home network integration ()
Co-authored-by: Markus Bong <2Fake1987@gmail.com>
Co-authored-by: Markus Bong <Markus.Bong@devolo.de>
2021-10-28 22:42:10 +02:00
Marc Mueller
ced89d8f29
Enable strict typing - bmw_connected_drive () 2021-10-27 12:32:10 -05:00
Franck Nijhof
65b19da3ff
Refactor input_select () 2021-10-25 20:38:06 -07:00
Allen Porter
31aa168bbb
Fix bug in MediaSource definintion and enable strict type checking () 2021-10-24 11:39:39 +02:00
Yuval Aboulafia
a9ccd70e71
Fully type Jewish Calendar () 2021-10-22 23:11:41 +02:00
Robert Hillis
23710d1496
Add strict typing to modem_callerid () 2021-10-22 22:04:06 +02:00
J. Nick Koston
c7b4542624
Enable strict typing in lookin () 2021-10-22 20:14:33 +02:00
Robert Hillis
da7b67cc29
Add strict typing to efergy () 2021-10-22 18:20:39 +02:00
Robert Hillis
19d812602e
Activate strict typing for nfandroidtv ()
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-10-15 10:27:26 +02:00