Commit graph

295 commits

Author SHA1 Message Date
Marc Mueller ced89d8f29
Enable strict typing - bmw_connected_drive (#58506) 2021-10-27 12:32:10 -05:00
Franck Nijhof 65b19da3ff
Refactor input_select (#53334) 2021-10-25 20:38:06 -07:00
Allen Porter 31aa168bbb
Fix bug in MediaSource definintion and enable strict type checking (#58321) 2021-10-24 11:39:39 +02:00
Yuval Aboulafia a9ccd70e71
Fully type Jewish Calendar (#56232) 2021-10-22 23:11:41 +02:00
Robert Hillis 23710d1496
Add strict typing to modem_callerid (#57683) 2021-10-22 22:04:06 +02:00
J. Nick Koston c7b4542624
Enable strict typing in lookin (#58238) 2021-10-22 20:14:33 +02:00
Robert Hillis da7b67cc29
Add strict typing to efergy (#57682) 2021-10-22 18:20:39 +02:00
Robert Hillis 19d812602e
Activate strict typing for nfandroidtv (#57743)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-10-15 10:27:26 +02:00
Robert Hillis abf6720cd3
Add strict typing to goalzero (#57680) 2021-10-15 00:20:08 +02:00
Franck Nijhof 82160fa350
Add config flow to Stookalert (#57119) 2021-10-08 11:34:22 +02:00
Aaron Bach 2ba8e1030c
Ensure that WattTime is strictly typed (#57130) 2021-10-07 12:40:10 +02:00
Tomasz 08cebb247f
Activate mypy for rpi_power (#57047) 2021-10-04 22:13:11 +02:00
Maciej Bieniek f3c76fb859
Add strict typing to Tractive integration (#56948)
* Strict typing

* Add few missing types

* Run hassfest

* Fix mypy errors

* Use List instead of list
2021-10-03 09:13:12 +02:00
icemanch a95c6b10f7
Flux led config flow (#56354)
Co-authored-by: Milan Meulemans <milan.meulemans@live.be>
Co-authored-by: Erik Montnemery <erik@montnemery.com>
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-10-02 07:19:36 -10:00
Milan Meulemans e757cb2ab4
Strictly type Nanoleaf (#56852) 2021-09-30 16:48:28 -05:00
jan iversen 19685ecff0
Set strict typing for modbus. (#56779) 2021-09-29 16:15:55 +03:00
Michael Chisholm a28fd7d61b
Config-flow for DLNA-DMR integration (#55267)
* Modernize dlna_dmr component: configflow, test, types

* Support config-flow with ssdp discovery
* Add unit tests
* Enforce strict typing
* Gracefully handle network devices (dis)appearing

* Fix Aiohttp mock response headers type to match actual response class

* Fixes from code review

* Fixes from code review

* Import device config in flow if unavailable at hass start

* Support SSDP advertisements

* Ignore bad BOOTID, fix ssdp:byebye handling

* Only listen for events on interface connected to device

* Release all listeners when entities are removed

* Warn about deprecated dlna_dmr configuration

* Use sublogger for dlna_dmr.config_flow for easier filtering

* Tests for dlna_dmr.data module

* Rewrite DMR tests for HA style

* Fix DMR strings: "Digital Media *Renderer*"

* Update DMR entity state and device info when changed

* Replace deprecated async_upnp_client State with TransportState

* supported_features are dynamic, based on current device state

* Cleanup fully when subscription fails

* Log warnings when device connection fails unexpectedly

* Set PARALLEL_UPDATES to unlimited

* Fix spelling

* Fixes from code review

* Simplify has & can checks to just can, which includes has

* Treat transitioning state as playing (not idle) to reduce UI jerking

* Test if device is usable

* Handle ssdp:update messages properly

* Fix _remove_ssdp_callbacks being shared by all DlnaDmrEntity instances

* Fix tests for transitioning state

* Mock DmrDevice.is_profile_device (added to support embedded devices)

* Use ST & NT SSDP headers to find DMR devices, not deviceType

The deviceType is extracted from the device's description XML, and will not
be what we want when dealing with embedded devices.

* Use UDN from SSDP headers, not device description, as unique_id

The SSDP headers have the UDN of the embedded device that we're interested
in, whereas the device description (`ATTR_UPNP_UDN`) field will always be
for the root device.

* Fix DMR string English localization

* Test config flow with UDN from SSDP headers

* Bump async-upnp-client==0.22.1, fix flake8 error

* fix test for remapping

* DMR HA Device connections based on root and embedded UDN

* DmrDevice's UpnpDevice is now named profile_device

* Use device type from SSDP headers, not device description

* Mark dlna_dmr constants as Final

* Use embedded device UDN and type for unique ID when connected via URL

* More informative connection error messages

* Also match SSDP messages on NT headers

The NT header is to ssdp:alive messages what ST is to M-SEARCH responses.

* Bump async-upnp-client==0.22.2

* fix merge

* Bump async-upnp-client==0.22.3

Co-authored-by: Steven Looman <steven.looman@gmail.com>
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-09-27 15:47:01 -05:00
Teemu R b40d229369
Rework TPLink integration to use python-kasa (#56701)
Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: Teemu R. <tpr@iki.fi>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-09-27 14:11:55 -05:00
Andre Richter a5c6a65161
Activate mypy for Vallox (#55874) 2021-09-23 10:59:28 -07:00
Joakim Sørensen 98d0c84468
Enable strict typing for the tautulli integration (#55448) 2021-09-23 16:56:21 +02:00
jan iversen 34de74d869
Strictly type tradfri config_flow.py (#56391)
* Strictly type config_flow.py.

* Review comments.
2021-09-21 16:23:10 +02:00
Daniel Hjelseth Høyer 00f7548fa0
Surepetcare, strict typing (#56425)
* Surepetcare, strict typing

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* Surepetcare, strict typing

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2021-09-19 20:57:28 +02:00
Simone Chemelli 4160a5ee3b
Strict typing for SamsungTV (#53585)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-09-17 18:51:07 -10:00
Ricardo Steijn 2a51bb5bba
Add Crownstone integration (#50677) 2021-09-14 09:46:52 -10:00
Aaron Bach ed9b271fd0
Enforce strict typing for IQVIA (#53408)
* Enforce strict typing for IQVIA

* Cleanup

* Code review

* Ignore untyped numpy function
2021-09-11 12:27:13 -06:00
Sean Vig 6b4e3bca6f
Add type annotations to amcrest integration (#54761)
Co-authored-by: Milan Meulemans <milan.meulemans@live.be>
2021-08-25 13:24:29 +02:00
Simone Chemelli 18a0fcf931
Strict typing for Neato (#53633)
* Strict typing

* Rebase

* Tweak import

* Cleanup

* Rebase + typing hub

* Flake8

* Update homeassistant/components/neato/config_flow.py

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

* Update homeassistant/components/neato/vacuum.py

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

* Update homeassistant/components/neato/camera.py

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

* Address review comments

* Black

* Update homeassistant/components/neato/config_flow.py

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

* Specific dict definition

* Annotations

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-08-08 15:02:37 +02:00
Joakim Sørensen caf0bdd5b9
Add config flow to uptimerobot (#53938) 2021-08-04 22:20:03 +02:00
epenet 8d84edd3b7
Add renault integration (#39605) 2021-07-28 12:41:11 -07:00
Allen Porter 68945e8814
Enable strict static type checking for nest integration (#53535) 2021-07-28 09:12:32 +02:00
Aaron Bach 514d97f144
Enforce strict typing for ReCollect Waste (#53356) 2021-07-28 08:51:40 +02:00
Aaron Bach f92ba75791
Enforce strict typing for SimpliSafe (#53417) 2021-07-27 22:11:54 +02:00
Aaron Bach f4a7292f08
Enforce strict typing for Tile (#53410) 2021-07-27 11:51:57 +02:00
Milan Meulemans 7103835d15
Enable strict typing for Rituals Perfume Genie (#53543)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-07-27 11:50:47 +02:00
Aaron Bach a6b34924be
Enforce strict typing for RainMachine (#53414) 2021-07-27 10:45:44 +02:00
Aaron Bach 5483ab0cda
Enforce strict typing for Flu Near You (#53407) 2021-07-27 10:42:51 +02:00
Bram Kragten fcc6ea7497
Add energy integration (#52001)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
Co-authored-by: Erik <erik@montnemery.com>
2021-07-26 09:37:37 -07:00
Aaron Bach 54ace4cdd4
Enforce strict typing for OpenUV (#53409)
* Enforce strict typing for OpenUV

* Linting

* Fix tests
2021-07-24 14:50:01 +02:00
Aaron Bach 4b353917f5
Enforce strict typing for Notion (#53355)
* Enforce strict typing for Notion

* Code review
2021-07-23 13:00:02 -06:00
Aaron Bach 1bde914075
Ensure Guardian is strictly typed (#53253) 2021-07-21 23:01:05 -07:00
Tobias Sauerwein 583deada83
Add type annotations for Netatmo (#52811) 2021-07-21 14:36:57 -07:00
Aaron Bach 8d9345c407
Add missing type annotations to Airvisual (#52615) 2021-07-21 22:18:08 +02:00
Maciej Bieniek 772cbd59d7
Improve typing in Shelly integration (#52544) 2021-07-21 10:11:44 -07:00
Aaron Bach 56efee4603
Ensure Ambient PWS is strictly typed (#53251)
* Ensure Ambient PWS is strictly typed

* Fix typing
2021-07-20 21:52:05 -05:00
Shay Levy ea6e325762
Add Switcher config flow discovery support (#52316) 2021-07-19 06:28:40 -07:00
Otto Winter 4d16cda957
ESPHome enable static type checking (#52348) 2021-07-12 22:56:10 +02:00
Simone Chemelli a70dae0843
Enable strict typing for Fritz (#50668)
Co-authored-by: Ruslan Sayfutdinov <ruslan@sayfutdinov.com>
2021-07-06 15:06:32 +02:00
Andre Lengwenus e16ef10af5
Add type hints to LCN (#52509)
* Add type hints to LCN

* Fix requested review changes
2021-07-06 09:54:35 +02:00
Yuval Aboulafia 323088ff63
Fully type Tag component (#52540) 2021-07-05 11:54:00 +02:00
Yuval Aboulafia 0e7cd02d17
Add type checking and entity attributes for Fast.com (#52524)
* Cleanup fast.com (typing, attrs)

* Adress review

* fixes
2021-07-05 10:19:37 +02:00
Maciej Bieniek 0cb61b628d
Improve typing in Sony Bravia TV integration (#52438)
* Strict typing

* Variables typing

* Suggested change

* Fix pylint

* Use suppress instead of try..except

* Remove unused variables

* Suggested change

* Fix pylint

* Fix typing for unique_id
2021-07-03 14:37:54 +01:00
Guido Schmitz 8c7ef5b1b9
Add static typing to devolo_home_control (#52396) 2021-07-02 18:37:18 +02:00
Klaas Schoute 6b08aebe5f
Add Forecast Solar integration (#52158)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-06-27 14:05:04 +02:00
Franck Nijhof a2be9a487f
DSMR: Complete full strictly typed (#52162) 2021-06-24 11:27:25 -07:00
Yuval Aboulafia 39bf304031
Static typing for PiHole (#51681)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-06-22 11:50:50 +02:00
Martin Hjelmare 2628ce54d9
Type homeassistant triggers event (#51979) 2021-06-18 09:46:20 -07:00
Franck Nijhof 054ca1d7ec
Add Select entity component platform (#51849)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-06-18 11:51:55 +02:00
uvjustin 97e77ab229
Improve type hints in stream (#51837)
* Improve type hints in stream

* Fix import locations

* Add stream to .strict-typing

Co-authored-by: Ruslan Sayfutdinov <ruslan@sayfutdinov.com>
2021-06-14 23:59:25 +08:00
Yuval Aboulafia ed9df83932
Static typing for no_ip integration (#51694)
* no_ip type hints

* type import change

* change Any to datetime
2021-06-11 10:06:15 +03:00
Yuval Aboulafia e78c656bfe
Static typing for Uptime (#51638)
* uptime typing

* Clean up name type

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-06-09 14:30:33 +02:00
Franck Nijhof d021e593d3
Add Ambee integration (#51645) 2021-06-09 13:22:37 +02:00
Yuval Aboulafia 7790e8f90c
Static typing for Zodiac (#51622) 2021-06-08 16:03:28 +02:00
Martin Hjelmare 7560a77e0e
Type mysensors strictly (#51535) 2021-06-07 16:04:04 +02:00
J. Nick Koston fb50cf9840
Add network and callback support to SSDP (#51019)
Co-authored-by: Ruslan Sayfutdinov <ruslan@sayfutdinov.com>
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-05-28 21:18:59 -05:00
Franck Nijhof d9eb1d85a2
Clean up DNS IP integration (#51143)
* Clean up DNS IP integration

* Commit missing change oops
2021-05-27 15:10:28 +03:00
Franck Nijhof eb2b60434c
Clean up Local IP integration (#51126) 2021-05-27 15:04:40 +03:00
J. Nick Koston 64661ee2b7
Add network configuration integration (#50874)
Co-authored-by: Ruslan Sayfutdinov <ruslan@sayfutdinov.com>
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-05-26 09:06:30 -07:00
Michael be0a54edb1
Add strict type annotations to bluetooth_tracker (#50999) 2021-05-25 12:29:35 +01:00
Maciej Bieniek 12e2c59a4c
Improve typing in DuneHD integration (#51025)
* Improve typing

* One more typing fix

* Run hassfest

* Fix test

* Fix return from constructor

* Add missing Final

* Improve long string format

* Use bool for mute

* Remove unnecessary str type

* Fix host type

* Add missing Final

* Increase test coverage

* Suggested change

Co-authored-by: Ruslan Sayfutdinov <ruslan@sayfutdinov.com>

Co-authored-by: Ruslan Sayfutdinov <ruslan@sayfutdinov.com>
2021-05-24 20:09:57 +01:00
Michael dbefa8fac0
Add strict type annotations to alarm_control_panel (#50945)
* Add strict type annotations

* Apply suggestions

* Type code as optional string
2021-05-23 16:51:40 +01:00
Michael 4a64f7a696
Add strict type annotations to tcp (#50877)
* add strict type annotations

* apply suggestions

* rename to TCP_PLATFORM_SCHEMA

* Replace DiscoveryInfoType
2021-05-22 15:45:18 +01:00
Ruslan Sayfutdinov b704f0e729
Add strict typing to device_tracker (#50930)
* Add strict typing to device_tracker

* Update homeassistant/components/device_tracker/legacy.py

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

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-05-22 09:15:15 +01:00
Michael 2e316f6fd5
Add strict type annotations to canary (#50943)
* Add strict type annotations

* Add missing futur import

* Apply suggestions

* Apply suggestions
2021-05-22 09:14:59 +01:00
Michael 8c5c8ed153
Add strict type annotations to fitbit (#50740)
* add strict type annotations

* cast json_load()

* apply suggestions

* move SCAN_INTERVAL back to platform file

* apply suggestion

* apply suggestion

* apply suggestions

* rename to PARENT_PLATFORM_SCHEMA
2021-05-21 13:33:54 +01:00
Maciej Bieniek bce5f8ee05
Improve AccuWeather type annotations (#50616)
* Improve type annotations

* Remove unused argument

* Simplify state logic

* Fix uvindex state

* Fix type for logger

* Increase tests coverage

* Fix pylint arguments-differ error

* Suggested change

* Suggested change

* Remove unnecessary variable

* Remove unnecessary conditions

* Use int instead of list for forecast days

* Add enabled to sensor types dicts

* Fix request_remaining conversion and tests

* Run hassfest

* Suggested change

* Suggested change

* Do not use StateType
2021-05-19 09:37:16 +01:00
Ruslan Sayfutdinov 72dfa8606e
Enable strict typing for air_quality component (#50722) 2021-05-17 08:20:05 -07:00
Michael df6862a519
Add strict type annotations to amazon_polly (#50697)
* add strict type annotations

* apply suggestions

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-05-17 14:09:52 +02:00
Michael f9c7474a78
Add strict type annotations to ampio (#50699) 2021-05-17 11:14:47 +02:00
Kevin Eifinger 663c0374ab
Add full typing to kraken (#50718)
* Add full typing to kraken

* Let device_info return DeviceInfo

* Replace unsub_listeners with entry.async_on_unload

* Raise TypeError on end of _try_get_state

* Assert Coordinator is not none

* Add class SensorType

* Add strict typing to kraken

* Add changes from code review

* Revert typed dict creation
2021-05-17 10:12:04 +03:00
Erik Montnemery 89dd3292ba
Initial draft of statistics (#49852) 2021-05-16 10:23:37 -07:00
Michael edccb7eb58
Add strict type annotations to actiontect (#50672)
* add strict type annotations

* fix pylint, add coverage omit

* apply suggestions

* fix rebase conflict

* import PLATFORM_SCHEMA as BASE_PLATFORM_SCHEMA

* correct get_device_name() return annotation
2021-05-16 00:59:57 +03:00
Michael 7f6b8bbd1e
Add strict type annotations to aladdin_connect (#50693)
* add strict type annotations

* add missing return type annotation
2021-05-15 23:53:42 +03:00
Michael bc006c9ecc
Add strict type annotations to aftership (#50692)
* add strict type annotations

* import PLATFORM_SCHEMA as BASE_PLATFORM_SCHEMA

* bring needed return back
2021-05-15 23:53:10 +03:00
Michael 562e0d785d
Add strict type annotations to acer_projector (#50657) 2021-05-15 19:55:28 +02:00
Michael 25b2fd0cee
Add strict typing to fritzbox (#50486)
* enable strict typing

* apply suggestions

* set defaults for FritzboxConfigFlow

* improvements and suggestions

* another suggestion

* tweaks

* tweaks
2021-05-15 07:54:11 +02:00
Ville Skyttä ed10856cc4
UpCloud API and typing update (#50624) 2021-05-14 21:49:41 -07:00
epenet d6c99a3db9
Enable strict type checks for onewire (#50422) 2021-05-11 17:28:17 +02:00
Maciej Bieniek f5541a468e
Improve type annotations for GIOS integration (#50454) 2021-05-11 07:57:24 -07:00
Ruslan Sayfutdinov 8e2b3aab44
Enable strict type checks for camera platform (#50395) 2021-05-10 15:12:15 +02:00
Michael 042822e35e
Improve typing for synology_dsm (#49656) 2021-05-09 22:44:55 +02:00
Maciej Bieniek 6df0190aeb
Improve type annotations for Airly integration (#49898) 2021-05-07 09:47:52 -05:00
Maciej Bieniek 0587f834df
Add Nettigo Air Monitor integration (#49099) 2021-05-07 08:59:29 -05:00
Franck Nijhof dc46a213a7
Enable strict typing for the Elgato integration (#49920) 2021-04-30 13:21:30 -07:00
Maciej Bieniek 3210c086ef
Improve type annotations for the Brother integration (#49771) 2021-04-29 16:59:31 +02:00
Ruslan Sayfutdinov 2adc6d62e5
Replace .no-strict-typing with .strict-typing (#49762) 2021-04-27 09:13:11 -07:00