Commit Graph

1009 Commits (df357962b3f25004eb73cbda38e372ad9bd10a8d)

Author SHA1 Message Date
Milan Meulemans 3f6282eb7a
Activate mypy for LG webOS Smart TV (#53958) 2021-08-04 19:31:24 +03:00
jan iversen 083868ac01
Enable mypy for Yamaha (#53920) 2021-08-04 08:47:28 +02:00
jan iversen 857031df14
Activate mypy for Norway_air (#53787) 2021-08-02 15:07:27 +02:00
Milan Meulemans 8500afa5d9
Activate mypy for Sony Songpal (#53655) 2021-08-02 12:16:41 +02:00
jan iversen 38832618bf
Please mypy. (#53786) 2021-08-02 09:18:59 +02:00
jan iversen e41bc1a0da
Activate mypy for hdmi_cec (#53763)
* Please mypy.
* Remove CEC_DEVICES.
2021-07-31 23:18:37 +02:00
jan iversen b0c650e088
Update integration Fints with activate mypy, use attr_variables (#53706)
* Please mypy.

* Convert property to _attr_variables.
2021-07-30 19:23:16 +02:00
Milan Meulemans d40012f110
Correct typing in Zerproc and activate mypy (#53642) 2021-07-28 16:36:13 -05:00
Pascal Vizeli f3e7fb5798
Pin pandas to 1.3.0 (#53607)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-07-28 10:30:05 +02:00
Aaron Bach 514d97f144
Enforce strict typing for ReCollect Waste (#53356) 2021-07-28 08:51:40 +02:00
Kuzj d0b9d82287
Refactor bme280, add SPI support (#48775)
* bme280 refactoring, add SPI support

* isort, requirements

* __init_.py add to .coveragerc

* Re-run CI jobs

* const.py to .coveragerc

* Add support for IoT class in manifest

* Keepalive

* review suggestions

* scan_interval with coordinator

* black, isort

* coordinator review suggestions

* Set device_class

* review suggestions

* review suggestions

* review suggestions

* review suggestions

* review suggestions

* review suggestions

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

* add bme280spi to commented requirements

* run script.gen_requirements_all

* black

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-07-27 16:29:43 -04:00
Ron Klinkien 3488053648
Remove garmin_connect integration (#52808)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-07-27 21:49:49 +02:00
Aaron Bach a6b34924be
Enforce strict typing for RainMachine (#53414) 2021-07-27 10:45:44 +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
Paulus Schoutsen 0b71055989
Do not automatically add title to strings.json (#53350) 2021-07-22 21:11:10 +02:00
Paulus Schoutsen ce382a39d0
Block title in strings.json unless internal or allowed (#53304) 2021-07-22 08:37:33 +02: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
J. Nick Koston 0ce071e0a4
Bump httpx to 0.18.2 (#53257) 2021-07-20 21:47:13 -07:00
jan iversen 8f61efe714
Correct typing in edl21 and activate mypy. (#53188) 2021-07-20 21:53:56 -05:00
jan iversen 193d1b945b
Add typing in dynalite and activate mypy (#53238)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-07-20 18:28:31 +02:00
jan iversen f819be7acc
Correct typing in Insteon and activate mypy (#53222) 2021-07-20 17:26:00 +02:00
jan iversen e7ccd1a549
Correct typing and activate mypy. (#53217) 2021-07-20 10:53:24 +03:00
Allen Porter c2a2f50316
mypy cleanup for homeassistant.components.nest (#53214) 2021-07-20 07:59:31 +02:00
jan iversen d4589894fe
Correct typing in bsblan and activate mypy (#53153) 2021-07-19 19:30:52 +02:00
jan iversen 0865917eeb
Activate mypy in aurora (#53150) 2021-07-19 17:59:41 +02:00
jan iversen 0b60b86917
Correct typing in azure_devops and activate mypy (#53152)
Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>
2021-07-19 17:45:03 +02:00
Shay Levy ea6e325762
Add Switcher config flow discovery support (#52316) 2021-07-19 06:28:40 -07:00
jan iversen 51d16202ab
Correct typing in control4 and activate mypy (#53156)
* Correct typing and activate mypy.

* Review comments.:wq
2021-07-19 14:14:09 +02:00
jan iversen 0802dd4293
Activate mypy for eafm (#53184) 2021-07-19 13:05:13 +02:00
jan iversen 235f4476e8
Please mypy. (#53142) 2021-07-19 08:29:26 +02:00
Robert Hillis 6b97a5ba8e
Fix hisense_aehw4a1 test exclusion (#53084)
* Fix hisense_aehw4a1 test coverage

* add back __init__

* remove from hassfest

Co-authored-by: Chris Talkington <chris@talkingtontech.com>
2021-07-18 19:17:36 -05:00
Robert Hillis fe22d5a675
Fix home_connect test coverage (#53086)
* Fix home_connect test coverage

* remove from hassfest exclusions
2021-07-18 14:54:43 -05:00
Paulus Schoutsen 989839a1a9
Generate const files for config flow scaffolds (#53064) 2021-07-15 19:57:06 +02:00
Franck Nijhof 2c3f3d7bda
Remove defunct Weather Underground integration (#52999) 2021-07-14 10:55:06 +02:00
Franck Nijhof 03dd2e326c
Remove flume for allowed ignore coverage violations (#53001) 2021-07-14 10:54:52 +02:00
Erik Montnemery 19d3aa71ad
Enable basic type checking for recorder (#52440)
* Enable basic type checking for recorder

* Tweak
2021-07-13 21:21:45 +02:00
Otto Winter 4d16cda957
ESPHome enable static type checking (#52348) 2021-07-12 22:56:10 +02:00
Raman Gupta 0f076610fd
Add siren platform (#48309)
* Add siren platform

* add more supported flags and an ability to set siren duration

* tone can be int or string

* fix typing

* fix typehinting

* fix typehints

* implement a proposed approach based on discussion

* Address comments

* fix tests

* Small fix

* Update homeassistant/components/demo/siren.py

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

* Update homeassistant/components/demo/siren.py

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

* Update homeassistant/components/demo/siren.py

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

* Update homeassistant/components/demo/siren.py

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

* Update homeassistant/components/demo/siren.py

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

* typing

* use class attributes

* fix naming

* remove device from service description

* Filter out params from turn on service

* fix tests

* fix bugs and tests

* add test

* Combine is_on test with turn on/off/toggle service tests

* Update homeassistant/components/siren/__init__.py

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

* fix filtering of turn_on attributes

* none check

* remove services and attributes for volume level, default duration, and default tone

* Update homeassistant/components/siren/__init__.py

Co-authored-by: Franck Nijhof <frenck@frenck.nl>

* Update homeassistant/components/siren/__init__.py

Co-authored-by: Franck Nijhof <frenck@frenck.nl>

* Update homeassistant/components/siren/__init__.py

Co-authored-by: Franck Nijhof <frenck@frenck.nl>

* import final

* Update homeassistant/components/siren/__init__.py

Co-authored-by: Franck Nijhof <frenck@frenck.nl>

* Fix typing and used TypedDict for service parameters

* remove is_on function

* remove class name redundancy

* remove extra service descriptions

* switch to positive_int

* fix schema for tone

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-07-11 16:51:11 -04:00
Erik Montnemery 6c8de16fbc
Enable basic type checking for fan (#52471) 2021-07-06 18:21:00 +02:00
Erik Montnemery 1cc8280959
Enable basic type checking for the homeassistant component (#52464)
* Enable basic type checking for the homeassistant component

* Tweak
2021-07-05 11:26:31 +02:00
Erik Montnemery 600bea2459
Enable basic type checking for Google cast (#52434)
* Enable basic type checking for Google cast

* tweak
2021-07-05 11:14:41 +02:00
Erik Montnemery 79ee112490
Enable basic type checking for mqtt (#52463)
* Enable basic type checking for mqtt

* Tweak
2021-07-05 10:33:12 +02:00
Chris Talkington cacd803a93
Enable basic typing for roku (#52478)
* enable basic typing for roku

* Update mypy.ini

* Update media_player.py

* Create coordinator.py

* Update __init__.py

* Update media_player.py

* Update remote.py

* Update media_player.py

* Update coordinator.py

* Update coordinator.py

* Update remote.py

* Update entity.py

* Update coordinator.py

* Update config_flow.py

* Update entity.py

* Update const.py

* Update const.py

* Update const.py

* Update entity.py

* Update entity.py

* Update entity.py

* Update test_media_player.py

* Update test_remote.py
2021-07-05 10:27:52 +02:00
Erik Montnemery 628eafaf68
Enable basic type checking for script (#52476) 2021-07-03 19:35:36 +03:00
Erik Montnemery 14dd6478d1
Enable basic type checking for trace (#52468) 2021-07-03 17:52:31 +02:00
Erik Montnemery b3b377ac8b
Enable basic type checking for gogogate2 (#52467)
* Enable basic type checking for gogogate2

* Tweak

* Update homeassistant/components/gogogate2/common.py

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

* Tweak

Co-authored-by: Ruslan Sayfutdinov <ruslan@sayfutdinov.com>
2021-07-03 16:06:42 +01:00
Erik Montnemery 44b44b5bd6
Enable basic type checking for climate (#52470)
* Enable basic type checking for climate

* Tweak
2021-07-03 16:06:12 +01:00
Guido Schmitz 8c7ef5b1b9
Add static typing to devolo_home_control (#52396) 2021-07-02 18:37:18 +02:00
Erik Montnemery 98fdb00bc7
Enable basic type checking for Tasmota (#52435) 2021-07-02 16:45:38 +02:00
Franck Nijhof 958016c44f
Clean up input_boolean, removing typing exceptions (#52181)
* Clean up input_boolean, removing typing exceptions

* Now pushing all local changes...
2021-06-25 11:57:52 +02:00
Franck Nijhof fbdd6a9d95
DSMR: Typing cleanup in init & config flow (#52145) 2021-06-24 12:53:16 +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
Milan Meulemans 63e20f2ced
Mark config flow fields as required (#51898)
* flo

* goalzero

* mutesync

* ring

* roon

* risco

* Ruckus Unleashed

* Scaffold template
2021-06-15 19:21:30 +02:00
Joakim Sørensen 33ac4dba5a
Add httpcore with version 0.13.3 (#51799) 2021-06-13 10:21:26 +02:00
Erik Montnemery bf6a412be0
Tweak device action scaffold, fix typo (#51751) 2021-06-11 23:22:18 +02:00
jan iversen 453da10b62
Secure not to activate multiple venv in pre_commit hook (#51715) 2021-06-10 19:27:24 +02:00
Erik Montnemery 76c3058d15
Rename device trigger base schema to DEVICE_TRIGGER_BASE_SCHEMA (#51719) 2021-06-10 19:11:38 +02:00
Martin Hjelmare e73cdfab2f
Fix mysensors typing (#51518)
* Fix device

* Fix init

* Fix gateway

* Fix config flow

* Fix helpers

* Remove mysensors from typing ignore list
2021-06-05 13:43:39 +02:00
Pascal Vizeli 3d119fd4ab
Revert "GRPC is fixed, don't need a workaround" (#51289)
This reverts commit 9d174e8a05.
2021-05-31 14:03:26 +02:00
Erik Montnemery 04e9acc20a
Simplify device condition code (#51266) 2021-05-31 09:47:30 +02:00
Erik Montnemery 489c73b4da
Simplify device action code (#51263) 2021-05-31 09:47:15 +02:00
Ville Skyttä c2f5dcefa5
Use flow result type constants more (#51122) 2021-05-29 14:09:13 +02: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
Franck Nijhof 0cbcb9e0d6
Fix Hue overriding property methods, remove ignored typing (#50976) 2021-05-22 20:32:41 -07:00
Franck Nijhof e64b5afa58
Typing improvements for Sentry (#50787)
* Typing improvements for Sentry

* Fix event tags access

* Fix tests
2021-05-22 19:09:19 +02: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
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
Milan Meulemans 5491040693
Fix missing link in scaffold comment (#50936) 2021-05-21 21:21:26 +02:00
Bram Kragten 752a4b9d2c
Fix version bump script (#50932) 2021-05-21 19:31:04 +02: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
Ruslan Sayfutdinov 62386c8676
Enable type checks for device_tracker (#50805)
* Enable type checks for device_tracker

* Fix MQTT test
2021-05-19 09:36:26 +01:00
Joakim Sørensen 2f10f59717
Block custom integrations with missing or invalid version (#49916) 2021-05-17 15:48:41 +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
Paulus Schoutsen 1b74359ddb
Disable free-mobile because requirement breaks setuptools (#50749) 2021-05-17 08:12:23 +02:00
Ruslan Sayfutdinov 703456abea
Better errors handling in mypy hassfest plugin (#50689) 2021-05-16 07:04:09 -07:00
Martin Hjelmare 5da64d01e2
Fix smhi typing (#50690) 2021-05-15 21:38:12 +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
Kevin Eifinger c220e70008
Add integration kraken (#31114)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-05-14 08:02:11 -07:00
Pascal Vizeli 9d174e8a05
GRPC is fixed, don't need a workaround (#50605)
* GRPC is fixed, don't need a workaround

* Update gen_requirements_all.py
2021-05-14 14:30:48 +02:00
Ruslan Sayfutdinov 35f304450c
Enable type checks for stream component (#50527)
* Enable type checks for stream component

* Fix pylint
2021-05-13 23:26:11 +02:00
Paulus Schoutsen 2cdf075f95
Only return empty string if non-fixable errors (#50508) 2021-05-12 08:54:04 +02:00
karliemeads e9f8b3e7ef
Remove unused py_noaa dependency (#50494) 2021-05-12 00:44:17 +02:00
Simone Chemelli e616583bad
Improve types for Fritz (#50327)
Co-authored-by: Ruslan Sayfutdinov <ruslan@sayfutdinov.com>
Co-authored-by: Maciej Bieniek <bieniu@users.noreply.github.com>
2021-05-11 10:41:27 -05: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
Martin Hjelmare f71eb4d34d
Clean somfy config flow tests (#50461) 2021-05-11 16:19:07 +02:00
Ruslan Sayfutdinov 1538271555
Don't generate mypy.ini if errors are found (#50456) 2021-05-11 14:29:14 +02:00
Ruslan Sayfutdinov 3a192896df
Enable some strict mypy checks globally (#50398)
* Enable some strict mypy checks globally

* Update mypy.ini
2021-05-10 14:20:25 +02:00
Michael 042822e35e
Improve typing for synology_dsm (#49656) 2021-05-09 22:44:55 +02:00
Shay Levy be73067f9c
Fix Shelly type hints (#50322) 2021-05-09 19:46:53 +02:00
Dermot Duffy 4e4042a869
Fix types for WLED (#50001) 2021-05-09 19:34:21 +02:00
Ruslan Sayfutdinov 9b058551f7
Enable type checks for camera platform (#50179) 2021-05-09 18:04:57 +02:00
Gleb Sinyavskiy 52b1a416d9
Remove the N26 integration (#50292) 2021-05-09 00:58:23 +02:00
Maciej Bieniek 6df0190aeb
Improve type annotations for Airly integration (#49898) 2021-05-07 09:47:52 -05:00
Franck Nijhof e3e9239798
Strictly type Twente Milieu integration (#50062) 2021-05-05 22:04:09 -07:00
Franck Nijhof 96f69fb9fb
Finalize clean up connection classes (#49895) 2021-05-04 20:08:51 +02:00
Milan Meulemans a0feee083c
Fix and enable type checks in Rituals Perfume Genie (#49947) 2021-05-04 14:47:17 +02:00
Dermot Duffy 809c1394d4
Enable mypy for motionEye (aye aye!) (#49738) 2021-05-04 08:19:41 +02:00
jan iversen f0ec9c38b0
Fix modbus typing (#49938)
Add changes needed to please mypy and follow the coding rules
of the project.
2021-05-03 22:45:21 +02:00
Ruslan Sayfutdinov 5fd8e7008e
Create separate entries for each component in mypy.ini (#50030) 2021-05-03 18:45:38 +02:00
Dermot Duffy e8446cb4d9
Fix types for shell command (#50004) 2021-05-03 10:43:23 +02:00
Paulus Schoutsen 8e0e1405e8
Make hassfest service validation faster (#50003) 2021-05-02 21:49:51 -07:00
Bram Kragten 8ca6b8394c
Correct the selector for frontend.set_theme service (#49952) 2021-05-02 21:07:26 -07:00
jan iversen ebee5f7808
Fix ihc typing (#49946) 2021-05-01 21:01:56 +02:00
jan iversen 60ae230499
Please mypy (axis). (#49949)
* Please mypy (axis).

* Update homeassistant/components/axis/config_flow.py

Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>

Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>
2021-05-01 16:13:43 +02:00
Franck Nijhof dc46a213a7
Enable strict typing for the Elgato integration (#49920) 2021-04-30 13:21:30 -07:00
David F. Mulcahey 4ed74cd2f5
Move ZHA config panel section translations to the backend (#49816) 2021-04-30 09:29:34 -07:00
Franck Nijhof c68b259bd3
Cleanup of unused connection_class logic (#49865)
Co-authored-by: Joakim Sørensen <joasoe@gmail.com>
2021-04-29 23:12:58 +02:00
Ruslan Sayfutdinov a4db35a16e
Rename FlowResultDict in scaffold template (#49858) 2021-04-29 17:10:31 +02:00
Ruslan Sayfutdinov 02764c2f46
Disable strict type checks for tests (#49851) 2021-04-29 15:57:02 +02:00
Franck Nijhof 52f3a7249f
hassfest detect built-in domain override for custom integrations (#49845) 2021-04-29 11:43:23 +02:00
Ruslan Sayfutdinov a0bf95d4b5
Validate if modules in mypy config exist (#49810) 2021-04-29 06:29:53 +02:00
Franck Nijhof 14af6d3884
Remove DHT from Raspberry Pi machine builds (#49829) 2021-04-28 22:43:40 +02:00
J. Nick Koston dcb5b9f8b5
Bump httpx to 0.18.0 and respx to 0.17.0 (#49805) 2021-04-28 11:22:09 +02:00
Ruslan Sayfutdinov 2adc6d62e5
Replace .no-strict-typing with .strict-typing (#49762) 2021-04-27 09:13:11 -07:00
J. Nick Koston 51be2f860a
Reduce boilerplate to setup config entry platforms A-C (#49681)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-04-26 07:46:55 -10:00
Ruslan Sayfutdinov 37466ae423
Don't ignore mypy errors by default (#49270) 2021-04-26 14:23:21 +02:00
Paulus Schoutsen 9f8e683ae3
Ask for IoT class during scaffold (#49647)
Co-authored-by: Milan Meulemans <milan.meulemans@live.be>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-04-25 12:13:22 +02:00
Milan Meulemans 48695869f9
Change dict[str, Any] to FlowResultDict (#49546) 2021-04-22 17:23:15 -10:00
Paulus Schoutsen 984962d985
Improve DHCP + Zeroconf manifest validation (#49321) 2021-04-16 13:32:12 -10:00
Franck Nijhof 055cdc64c0
Add support for IoT class in manifest (#46935) 2021-04-15 10:21:38 +02:00
Simone Chemelli 157c1d0ed2
Fix Zeroconf manifest schema in hassfest script (#49006) 2021-04-10 16:45:53 +02:00
Marc Mueller 8e2b5b36b5
Bump pyupgrade to 2.12.0 (#48943) 2021-04-09 09:58:27 -07:00
Martin Hjelmare c9cd6b0fbb
Clean lazytox script (#48583) 2021-04-01 11:34:01 -07:00
Erik Montnemery b26779a27a
Add id to automation triggers (#48464) 2021-03-31 14:56:04 +02:00
Marc Mueller 2956eb0902
Update pylint to 2.7.3 (#48488)
* Update pylint to 2.7.3

* Add class-const-naming-style

* Remove unused-import message

* Additional cleanup
2021-03-29 18:02:56 -10:00
Franck Nijhof 52475c108f
Make integration setup optional (#48381) 2021-03-29 13:53:47 -07:00
J. Nick Koston 1fb9008488
Include platform only integrations in the manifest list api (#48269) 2021-03-29 12:51:48 +02:00
Franck Nijhof d2d78d6205
Extend typing on scaffold templates (#48232) 2021-03-26 15:19:44 +01:00
Marc Mueller 6fc3406c93
Ignore python-typing-update for pre-commit requirements (#48292) 2021-03-24 20:05:53 +01:00
J. Nick Koston fd310e1f41
Update homekit to improve representation of activity based remotes (#47261) 2021-03-21 21:55:20 -07:00
Franck Nijhof fb849b81b5
Rewrite of not a == b occurances (#48132) 2021-03-20 01:27:04 +01:00
Martin Hjelmare 3742f175ad
Add missing oauth2 error abort reason (#48112) 2021-03-19 14:27:26 +01:00
Marc Mueller 4cb7718192
Update typing 16 (#48087) 2021-03-18 22:58:19 +01:00
Nathan Tilley 6f7f4955a3
Add Logger Check Before Adding Another (#47954) 2021-03-17 11:11:39 +01:00
Tony Roman f9e33a4a0d
Allow running and restarting with both ozw and zwave active (#47566)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-03-08 10:26:08 -08:00
Quentame 198ecb0945
Uniformize platform setup (#47101)
* A platform is not a component

* Fix dynalite

* SUPPORTED_PLATFORMS --> PLATFORMS

* In tests

* In tests 2

* Fix SmartThings

* Fix ZHA test

* Fix Z-Wave

* Revert Z-Wave

* Use PLATFORMS const in ambient_station

* Fix ihc comment
2021-03-02 21:43:59 +01:00
Paulus Schoutsen 633a7aeb22
Remove deprecated credstash + keyring (#47033) 2021-02-25 09:48:19 +01:00
Franck Nijhof c8ffac20b9
Add name to services (#46905) 2021-02-22 16:26:46 +01:00
Franck Nijhof 62cfe24ed4
Add advanced service parameter flag (#46727) 2021-02-18 12:59:46 +01:00
Franck Nijhof 0181cbb312
Upgrade and constrain httplib2>=0.19.0 (#46725) 2021-02-18 12:31:07 +01:00
Ville Skyttä b38af0821b
Fix version of pip in tox (#46656) 2021-02-16 12:26:41 -10:00
Bram Kragten 6986fa4eb6
Add target to services.yaml (#46410)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-02-16 09:35:27 +01:00
Franck Nijhof 9b7c39d20b
Postponed evaluation of annotations in core (#46434)
* Postponed evaluation of annotations in core

* Remove unneeded future
2021-02-12 10:58:20 +01:00
Paulus Schoutsen e20a814926
Call setup during devcontainer create (#46224) 2021-02-08 16:16:40 +01:00
Martin Hjelmare 568180632e
Fix sync oath2 scaffold template (#46219) 2021-02-08 15:00:17 +01:00
Erik Montnemery f99c27c6d4
Remove unneeded from_state from device triggers (#45152) 2021-02-08 11:09:45 +01:00
Joakim Sørensen 1a74709757
Throw error in hassfest when integration is missing version (#45976) 2021-02-04 13:31:17 +01:00
Joakim Sørensen 7e9500e465
Use bootstrap in devcontainer (#45968) 2021-02-04 10:41:28 +01:00
Joakim Sørensen 06e6005fbb
Add warning to custom integrations without version (#45919)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-02-04 09:59:41 +01:00
Tobias Bielohlawek 6e67b943da
Remove Nuimo integration (#45600) 2021-02-01 16:58:00 +01:00
Joakim Sørensen 374817fbaa
Bump awesomeversion from 21.1.6 to 21.2.0 (#45821) 2021-02-01 16:54:25 +01:00
Paulus Schoutsen fb884e3afd
Update bootstrap script (#45692) 2021-01-29 09:19:32 +01:00
J. Nick Koston c6105900f6
Update httpcore to prevent unhandled exception on dropped connection (#45667)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-01-29 09:11:24 +01:00
Paulus Schoutsen 352d0870e3
Light significant changes + sensor tweaks (#45583) 2021-01-26 22:11:06 +01:00
Paulus Schoutsen 712a5a098d
Add significant change filtering to Google (#45566) 2021-01-26 21:45:09 +01:00
Paulus Schoutsen d082be787f
Add "significant change" base (#45555) 2021-01-26 14:13:27 +01:00
Joakim Sørensen edfb8c3423
Add version to hassfest for custom integrations (#45523)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-01-25 13:31:14 +01:00
J. Nick Koston da677f7d5a
Add support for discovery via DHCP (#45087)
* Add support for discovery via DHCP

* additional tesla ouis

* merge tests

* dhcp test

* merge requirements test

* dhcp test

* dhcp discovery

* dhcp discovery

* pylint

* pylint

* pylint

* fix

* Add matching tests

* 100% cover

* cleanup

* fix codespell

* Update exception handling

* remove unneeded comment

* fix options handling exception

* fix options handling exception
2021-01-14 09:09:08 +01:00
Paulus Schoutsen e584902b8b
Remove empty schema (#45044) 2021-01-11 14:25:09 +01:00
Ville Skyttä 3569d92385
Remove script/test (#44967)
It's still referencing tox py36, which has been obsolete for over a
year.
2021-01-08 23:58:39 +01:00
Franck Nijhof 65cf2fcb6f
Drop asynctest (#44746) 2021-01-01 22:31:56 +01:00
Robert Svensson c4fbfc25e3
Bump H11 library to support non RFC line endings (#44735) 2021-01-01 18:39:59 +01:00
Paulus Schoutsen c7bf7b32a2
Zeroconf lowercase (#44675) 2020-12-31 01:06:26 +01:00
Paulus Schoutsen 7d23ff6511
Add device action to mobile app to notify (#43814) 2020-12-01 18:14:01 +01:00
Paulus Schoutsen f9fa24950b
OAuth2 to use current request header (#43668) 2020-11-27 08:55:34 +01:00
Martin Hjelmare e73d2c65cd
Add progress translation key to hassfest (#43311) 2020-11-17 11:44:06 +01:00
michaeldavie a3e8968e8a
Remove OpenCV dependecy from Environment Canada (#43235)
* Bump env_canada to 0.2.2

* Revert PR #38731
2020-11-14 21:16:14 +01:00
Paulus Schoutsen bae026a6fe
Add support for selectors in services.yaml (#43162)
* Add support for selectors in services.yaml

* Add base schema validation
2020-11-13 22:53:55 +01:00
Martin Hjelmare 6daf40b254
Copy default vscode settings during bootstrap (#43180) 2020-11-13 16:03:40 +01:00
Paulus Schoutsen 687923690f
Chunk translation clean script to avoid too long url error (#43090) 2020-11-11 13:23:16 +01:00
Paulus Schoutsen 7745408440
System health improvement (#43066) 2020-11-10 23:56:50 +01:00
Pascal Vizeli a4947ed32d
Base image 2020.10.1 (#42666) 2020-11-02 11:54:16 +01:00
Allen Porter b228ffc761
Add missing config flow translation key to script scaffold (#42621)
Add missing config key for no_url_available when generating new oauth2
config entry based integrations.  This was found in issue #42423 where
the nest integration was missing a string when a user had a misconfiguration.
2020-10-30 09:51:22 +01:00
Paulus Schoutsen 1c36bf5e19
Fix block till done in create entry config flow tests (#42290) 2020-10-24 16:20:56 +02:00
Paulus Schoutsen e7b6903ef4
Improve the readability of the config flow code (#42169) 2020-10-22 13:00:55 +02:00
Philip Allgaier dde6305549
Cleanup unused loggers (components N-Z + tests) (#41982) 2020-10-16 21:24:08 -05:00
Paulus Schoutsen 8bc47c0cd1
Catch it when files are ignored by coverage but shouldn't (#41876) 2020-10-16 09:57:11 +02:00
Tobias Efinger f101d9cddb
Update translate develop to substitute references (#41445) 2020-10-09 11:51:05 +02:00
Erik Montnemery 343e5d64b8
Add MQTT integration discovery (#41332)
* Add MQTT integration discovery

* Add script/hassfest/mqtt.py

* Unsubscribe if config entry exists

* Add homeassistant/generated/mqtt.py

* Fix bad loop

* Improve tests

* Improve tests

* Apply suggestions from code review

Co-authored-by: Fabian Affolter <mail@fabian-affolter.ch>

* Prevent initiating multiple config flows

Co-authored-by: Fabian Affolter <mail@fabian-affolter.ch>
2020-10-07 18:30:51 +02:00
Allen Porter 42cef1773b
Update script scaffold templates for config_flow_oauth2 (#41181)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-10-07 15:23:45 +02:00
Daniel Hjelseth Høyer 9d3ddb8981
Scaffold: correct import (#40998) 2020-10-02 08:32:03 +02:00
Franck Nijhof e320c3b735
Pin gRPC to 1.31.0 to workaround amrv7 issues (#40678) 2020-09-27 21:51:37 +02:00
Martin Hjelmare 50c573eb4d
Activate hassfest requirements CI check (#39940)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2020-09-11 21:38:32 +02:00
J. Nick Koston 9389a7c9be
Limit zeroconf discovery to name/macaddress when provided (#39877)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-09-11 12:19:21 +02:00
Paulus Schoutsen c9f87afd8b
Optimize requirements check with stdlib (#39871)
* Check requirements don't conflict stdlib

* Use regex
2020-09-10 10:51:13 +02:00
Paulus Schoutsen c06b18b47b
Install stdlib-list in script/bootstrap (#39866) 2020-09-10 00:36:58 +02:00
Martin Hjelmare 8eed7110a1
Add hassfest requirements validation (#39329) 2020-09-06 23:41:41 +02:00
Aidan Timson 09efbc569f
Fix oauth2 template by updating outdated method name (#39486) 2020-08-31 10:25:25 +02:00
Ville Skyttä 6ae9399237
Upgrade isort to 5.4.2 (#37939) 2020-08-29 08:23:55 +02:00
Ville Skyttä 98993d8503
Trivial requirements cleanups (#39222) 2020-08-27 16:56:53 +02:00
Franck Nijhof 1c2ebdf307
Upgrade black to 20.8b1 (#39287) 2020-08-27 13:56:20 +02:00
Paulus Schoutsen b47992dba0
Bump CI cache (#39283) 2020-08-26 16:53:22 +02:00
Paulus Schoutsen e96d8a961c
Block typing from being installed (#37707) 2020-08-26 14:51:41 +02:00
Paulus Schoutsen df9de8eb5d
Prevent bluepy from being part of requirements_all.txt (#39275) 2020-08-26 14:50:14 +02:00
Paulus Schoutsen 2a9da208d4
Allow disabling integrations in manifest, block uuid package being installed and disable ezviz (#38444) 2020-08-26 10:20:14 +02:00
Franck Nijhof ea65eb270f
Ignore requirements for env_canada (#38731) 2020-08-10 18:00:02 +02:00
Jason Hunter 3546a82cfb
Upgrade to TensorFlow 2 (#38384)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2020-08-07 08:56:28 +02:00
Paulus Schoutsen f037feaebc
Handle non-existing translations in clean script (#38574) 2020-08-06 01:49:52 +02:00
Ville Skyttä 63403f894d
Fix run-in-env.sh sh options (#38520)
Shebang takes only one arg, regression in
f6540e3002
2020-08-03 21:20:12 +02:00
ehendrix23 b916eb6cf2
Update run-in-env.sh (#36577) 2020-07-29 19:50:09 +02:00
Paulus Schoutsen 0ffeb4dea4
Add MQTT to constraints file (#38049) 2020-07-21 19:19:32 -07:00
Martin Weinelt 1dd5a36f5c
Improve setup script portability (#37935) 2020-07-17 09:27:46 -07:00
Ville Skyttä ac0dbb17af
Attrs cleanups (#37849) 2020-07-14 10:30:30 -07:00
Paulus Schoutsen 0bcc8624b7
Reference constraint files from requirement files (#37751)
* Reference constraint files from requirement files

* Update azure-pipelines-wheels.yml

Co-authored-by: Pascal Vizeli <pvizeli@syshack.ch>
2020-07-11 06:20:14 -07:00
Joakim Sørensen 0fb73a6332
Add missing manifest object to the check (#37535) 2020-07-06 11:21:40 +02:00
Franck Nijhof 1aafa459e5
Fix building of Python Wheels (#37433) 2020-07-03 21:33:35 +02:00
Franck Nijhof 573134fcb4
Add GitHub Actions for CI (#37419)
* Add GitHub Actions for CI

* Add base/full to step descriptions
2020-07-03 19:18:01 +02:00
Shulyaka 06e977b444
Add humidifier support to google_assistant (#37157) 2020-06-30 14:32:23 -07:00
Paulus Schoutsen 4aedafc73a
Improve setup (#37075) 2020-06-25 11:34:47 -07:00
Joakim Sørensen 835f433cf7
Remove loading of legacy translations (#37021) 2020-06-23 10:58:11 +02:00
Paulus Schoutsen 5642027ffb
Improve after_dependencies handling (#36898) 2020-06-19 17:24:33 -07:00
Franck Nijhof 3cc94f7d6a
ConfigFlow default discovery without unique ID (#36754) 2020-06-15 13:38:38 +02:00
Paulus Schoutsen 02bcdf5162
Fix translations download (#36770) 2020-06-14 11:38:05 -07:00
Paulus Schoutsen e8b16f0dfd
Enforce unique ID for Hassio discovery (#36671) 2020-06-12 17:38:38 +02:00
Tim van Cann d73a4e1ed5
Add Avri config flow (#34288)
* Add config flow to Avri integration

* Add config flow validation

* Update .coveragerc

* Start adding config flow tests

* Fix failing test

* Fix pylint

* Update homeassistant/components/avri/config_flow.py

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

* Update homeassistant/components/avri/config_flow.py

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

* Fix import order

* Code review comments

* Update homeassistant/components/avri/sensor.py

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

* Remove device information

Co-authored-by: J. Nick Koston <nick@koston.org>
2020-06-06 09:37:31 -05:00
Paulus Schoutsen c316735996
Bump lokalise2 2.5.1 (#36430) 2020-06-04 10:17:25 +02:00
Paulus Schoutsen 691ec21ba4
Mark min version of httplib2 (#36330) 2020-06-01 09:44:18 +02:00
Paulus Schoutsen 35c00fed6d
Migrate translations upload to use Lokalise CLI 2 (#36247) 2020-05-29 11:43:48 -07:00
Paulus Schoutsen 9c45115468
Upgrade translations download to use Lokalise CLI v2 (#36240) 2020-05-28 21:06:09 -07:00
Bram Kragten cb7b8d94c0
Add check for HTML in translations (#35615)
* Add check for HTML in translations

and remove existing html

* Add test
2020-05-14 19:33:14 +02:00
Paulus Schoutsen dd32324e01
Use config flow references for data (#35529) 2020-05-12 10:50:44 -07:00
Paulus Schoutsen befda9a78b
Add email as common data string (#35546) 2020-05-12 09:08:07 -07:00
Franck Nijhof 4395fe9298
Remove logo & icon from manifest (#35410) 2020-05-10 11:10:44 -04:00
Martin Hjelmare b4142fc7ee
Add const module to oauth2 scaffold template (#35438)
* Add const module to oauth2 template

* Remove const append

* Add domain to const
2020-05-10 12:10:09 +02:00
Paulus Schoutsen 42fc332123
Fix scaffold and hassfest references (#35431) 2020-05-09 15:50:44 -07:00
Paulus Schoutsen 0b8f8db67b
Clean up script for WLED translations (#35260) 2020-05-06 09:28:46 -07:00
Franck Nijhof 9983c43697
Add issue_tracker property to manifest (#35153) 2020-05-05 11:00:00 -07:00
Paulus Schoutsen 34e35f6aa3
Add config flow base strings (#34523) 2020-05-04 20:10:39 -07:00
Paulus Schoutsen ec47216388
Use built-in test helpers on 3.8 (#34901) 2020-04-30 13:29:50 -07:00
Ville Skyttä 435a88636a
Address new issues flagged by flake8 3.8.0a2 (#34964) 2020-04-30 21:37:58 +02:00
Paulus Schoutsen c97ce05b09
Add script to copy backend translations to frontend (#34706) 2020-04-28 10:35:38 -07:00
Paulus Schoutsen d74ece92f9
Validate that discovered config flows set a unique ID (#34751)
Co-Authored-By: Franck Nijhof <git@frenck.dev>
2020-04-27 10:36:56 -07:00
Paulus Schoutsen 4a08c65205
Validate translations for custom components (#34519) 2020-04-22 06:24:45 -07:00
Paulus Schoutsen e002c84eba
Don't set step title if it's integration title (#34524) 2020-04-22 15:05:39 +02:00
Paulus Schoutsen e9ff1940d6
Translation fixes and tweaks (#34489)
Co-Authored-By: Martin Hjelmare <marhje52@gmail.com>
2020-04-21 17:57:21 -07:00
Joakim Sørensen 730a257f3c
Rename translations dir for integrations (#34494) 2020-04-21 16:11:05 -07:00
Franck Nijhof ca08b70984
Revert removal of JSON validator in hassfest (#34504)
Co-Authored-By: Paulus Schoutsen <balloob@gmail.com>
2020-04-21 14:42:04 -07:00
Franck Nijhof bc5a2da7b7
Add transition support to scenes, cleanup blocking parameter (#34434) 2020-04-20 18:07:50 -07:00
Paulus Schoutsen d560e8245a
Import state strings (#34451) 2020-04-20 16:25:35 -07:00
Paulus Schoutsen b4282fca84 Fix return in translation script 2020-04-19 20:37:49 -07:00
Paulus Schoutsen 4720a7a891
Add foundation for state translations (#34443) 2020-04-19 20:35:49 -07:00
Paulus Schoutsen 55af2ab4dc
Add a script to clean the frontend translations (#34309) 2020-04-17 09:47:49 -07:00
Paulus Schoutsen 2326a2941e
Improve error message when people have not moved config flow title yet (#34321) 2020-04-16 18:00:30 -07:00
Paulus Schoutsen 0d60d40512 Update translations 2020-04-16 13:00:10 -07:00
Paulus Schoutsen 55dfca7467
Drop title from translations if brand name (#34306) 2020-04-16 12:52:53 -07:00
Paulus Schoutsen 6119e79023
Migrate frontend translations of domains to backend (#34294) 2020-04-16 11:52:27 -07:00
Paulus Schoutsen 371bea03d6
Allow hassfest to validate specific integrations (#34277) 2020-04-16 09:00:04 -07:00
Paulus Schoutsen 1ffc3a00e7
Add translations check script (#34272) 2020-04-15 16:58:20 -07:00
Paulus Schoutsen 72cc656b7e
Add Translations 2.0 migrate script (#34261) 2020-04-15 13:53:52 -07:00
Paulus Schoutsen d36204a968
Move title translation to root (#33850) 2020-04-15 09:41:18 -07:00
Paulus Schoutsen 8e6e8dfbe0
Migrate translations_develop script (#33933)
* Migrate translations_develop script

* Fix lint
2020-04-10 14:17:09 -07:00
Paulus Schoutsen e9e1ec5312
Migrate translations clean script (#33930) 2020-04-09 17:54:56 -07:00
Paulus Schoutsen e9c412bac6
Migrate translations upload (#33926)
* Migrate translations upload

* Fix token in download command

* Minor cleanup
2020-04-09 17:52:33 -07:00
Paulus Schoutsen 425c97626a
Consolidate translation script (#33911)
* Consolidate translation script

* Remove commented code
2020-04-09 14:13:20 -07:00
Paulus Schoutsen 10d25c798e
Add script to clean up translations (#33802) 2020-04-08 10:48:36 -07:00
Franck Nijhof d33cf28936
Add check executables have shebangs (in pre-commit and CI) (#33703)
* Add check executables have shebangs (in pre-commit and CI)

* Fix file permissions

* Adjust Azure Pipelines
2020-04-05 18:45:43 +02:00
springstan fca90a8ddc
Improve string formatting v5 (#33697)
* Improve string formatting v5

* Address review comments
2020-04-05 17:48:55 +02:00
Franck Nijhof 39336d3ea3
Add prettier (in pre-commit and CI) (#33693)
* Add prettier (in pre-commit and CI)

* Make all file prettier

* Change order

* Add to Azure Pipelines

* Fix a YAML file prettier caught as invalid

* Remove flow mapping using curly braces from all YAML service files
2020-04-05 17:27:16 +02:00
springstan e3bcfb88e7
Improve string formatting v4 (#33668)
* Improve string formatting v4

* Use normal strings instead of f-strings

* Fix zeroconf test by adding back part of a condition
2020-04-05 16:01:41 +02:00
Franck Nijhof f38011560f
Add pyupgrade (in pre-commit and CI) (#33688)
* Add pyupgrade (in pre-commit and CI)

* Fix leftover results of pyupgrade

* Ensure we run for Python 3.7 on pyupgrade
2020-04-05 12:49:57 +02:00
Franck Nijhof 24840b54ac
Add yamllint (in pre-commit and CI) (#33676)
* Add yamllint (in pre-commit and CI)

* Fix linting for all YAML files

* Bump and add it to requirements

* Fix gen_requirements for pre-commit, remove 'v' from version
2020-04-05 10:33:45 +02:00
springstan dde93304d3
Improve string formatting v2 (#33645)
* Improve string formatting v2

* Improve string formatting v3

* Address review comments
2020-04-04 23:09:34 +02:00
springstan ed71683488
Improve string formatting (#33643) 2020-04-04 20:17:11 +02:00
Paulus Schoutsen f1d3c0d19b
Remove unused manifest fields (#33595) 2020-04-03 12:58:19 -07:00
Paulus Schoutsen 397238372e
Remove group as a dependency from entity integrations (#32870)
* remove group dependency

* Update device sun light trigger

* Add zone dep back to device tracker
2020-03-16 14:47:44 -07:00
Paulus Schoutsen 1d3647e6a1
Make gen_requirements_all.py case insensitive for ignored pack… (#30885) 2020-03-04 17:39:59 -08:00
Paulus Schoutsen db7d0eb9b9
Remove hassfest blacklisted rest (#32441)
* Remove blacklisted deps from hassfest deps

* Whitelist all internal integrations
2020-03-03 13:57:09 -08:00
Paulus Schoutsen 270758417b
Properly define depenency for Scrape integration on Rest integ… (#32136) 2020-02-24 00:03:33 -08:00
Paulus Schoutsen f975654ae7
Mock setup_entry in oauth2 tests (#32102)
* Mock setup_entry in oauth2 tests

* Fix scaffold constant
2020-02-23 12:23:21 +01:00
Franck Nijhof bf1092ec80
Add minimal version contrain to urllib3 (#32031) 2020-02-20 19:19:09 +01:00
Franck Nijhof b2f2afaf0c
Prevent committing to dev/master/rc directly (#32029)
* Prevent committing to dev/master/rc directly

* Skip pre-commit on version bump
2020-02-20 09:34:30 -08:00
Tom Harris f6540e3002
Fix pre-commit hook issue on Windows (#31648)
* Make shebang compatable with Windows

* Prehook test

* Undo prehook test
2020-02-18 13:33:52 -08:00
Paulus Schoutsen b73531b2fc
Untag discovery as an allowed dependency (#31934) 2020-02-18 08:32:56 -08:00
Austin Mroczek 1fa16eefc9
Fix translations_develop (#31942) 2020-02-18 08:58:49 +01:00
Paulus Schoutsen 71a81c443f
Limit translations_develop to an integration (#31804)
* limit translations_develop to english

* Convert to Python

* Limit to integration

* Add to hassfest

* Remove old bash comment
2020-02-14 09:26:50 -08:00
Paulus Schoutsen 3b3e062a35
Whitelist shopping list updated event (#31742)
* Whitelist shopping list updated event

* Add ignore to hassfest
2020-02-12 10:13:07 -08:00
Paulus Schoutsen cde414e1df
Use set for dependency lookup in hassfest (#31746) 2020-02-12 12:59:59 +01:00
Ville Skyttä dc5ca461a9
Run mypy through a pyenv/virtualenv enabler wrapper script (#30922) 2020-02-01 07:12:46 -08:00
Christian Clauss df7d2b3aeb
Fix typos found by codespell (#31243)
* Fix typos found by codespell

* Fix typos found by codespell

* codespell: Furture  ==> Future

* Update test_config_flow.py

* Update __init__.py

* Spellcheck: successfull  ==> successful

* Codespell: unsuccesful  ==> unsuccessful

* Codespell: cant  ==> can't

* Codespell: firware ==> firmware

* Codespell: mimick  ==> mimic
2020-01-31 08:33:00 -08:00
Paulus Schoutsen e9e44dbd97
Fix callback and async (#31281)
* Fix callback and async

* Fix a return

* Fix test

* Fix mqtt tests

* Fix some more callbacks
2020-01-29 13:59:45 -08:00
Oscar Calvo d813618d0d Add Gammu based local SMS notifications (#31233)
* Add sms integration

Committer: ocalvo <oscar@calvonet.com>

* Fix PyLint

* Update requirements
2020-01-28 09:35:41 +01:00
Christian Clauss 1d537ad416 Fix typo: serivce --> service (#31217) 2020-01-27 19:56:26 +01:00
Rohan Kapoor 52c1bc9c26 Check that documentation urls are valid (#31188)
* Check that documentation urls are valid

* Validate documentation url in pieces
2020-01-27 10:42:26 +01:00
Franck Nijhof aa390efd69
Add hassfest URL validation to documentation link (#31143) 2020-01-26 21:32:20 +01:00
Franck Nijhof c0bc4bb550 Add logo & icon support to Manifest (#31131)
* Add logo & icon support to Manifest

* Add URL validation
2020-01-24 14:36:22 -08:00
Paulus Schoutsen 98bac43228
Validate coveragerc with hassfest (#31112)
* Validate coveragerc

* Test if files exists

* Print progress

* Flush
2020-01-24 10:25:46 -08:00
Ville Skyttä 5e2ba2eb77
Enable some more bandit checks (#30857)
* Enable B108 (hardcoded tmp dir), address findings

* Enable B602 (subprocess popen with shell), address findings

* Enable B604 (start process with shell), address findings

* Enable B306 (mktemp), B307 (eval), and B325 (tempnam), no issues to address
2020-01-20 18:44:55 +02:00
Bas Delfos 0d688faa56 Fix 'NewIPAddress' error in component fritz (#30210)
* Fix 'NewIPAddress' error in component fritzbox

* Upgrade to fritzconnection 1.2.0
2020-01-14 09:46:16 +01:00
Paulus Schoutsen f50714d7e9 Update config flow test scaffolding (#30694)
* Update config flow test scaffolding

* asyncpatch -> patch

* Update classname
2020-01-13 15:20:25 +01:00
Franck Nijhof 040b283a14 Fix hassfest allowing omitting discovery methods when using OAuth2Flow (#30732) 2020-01-13 05:36:47 -08:00
Franck Nijhof e18426051b Add Integration Quality Scale to manifest (#30547) 2020-01-07 17:21:56 +01:00
Ville Skyttä 5216477353
Be consistent with Home Assistant and Hass.io spelling (#30500)
* Be consistent with Home Assistant spelling

* Be consistent with Hass.io spelling
2020-01-05 14:09:17 +02:00
Ville Skyttä fa4fa30461 Various string cleanups (#30435)
* Remove some unnecessary string concatenations

* Replace some simple str.formats with f-strings

* Replace some string concatenations with f-strings
2020-01-03 14:47:06 +01:00
Ville Skyttä e6388e186c
Remove unnecessary string literal concatenations (#30360) 2020-01-02 21:17:10 +02:00
cgtobi d4ff214fce Clean up scaffold (#30135) 2019-12-22 19:53:03 +01:00
Paulus Schoutsen 834929a14e
Clean up mobile app webhooks (#30123) 2019-12-21 22:45:06 +01:00
Paulus Schoutsen 52818bdb89
Make Hassfest stricter pt 2 (#30068)
* Make Hassfest stricter

* Fix if-condition

* Small cleanup
2019-12-19 14:00:22 +01:00
Paulus Schoutsen e0d6810134
Remove stream from camera after deps (#30057) 2019-12-19 11:23:19 +01:00
Franck Nijhof 87ca61ddd7 Add check-json to CI and Pre-commit (#29912)
* Add check-json to CI and Pre-commit

* Add ignore pre-commit hooks to gen_requirements_all
2019-12-16 11:06:16 +01:00
Paulus Schoutsen b058742404
Fix condition typo (#29989) 2019-12-16 09:33:11 +01:00
Paulus Schoutsen 9e51a18845
Make hassfest import detection better (#29932)
* Make hassfest import detection better

* Fix tests
2019-12-16 08:22:20 +01:00
Ville Skyttä 445fd15f76 Drop Python 3.6 support (#29978) 2019-12-16 07:29:19 +01:00
Paulus Schoutsen 27244e29c4 Install discovery requirements if used (#29795)
* Install discovery requirements if used

* Update loader.py

* Fix types
2019-12-10 09:24:49 +01:00
Franck Nijhof 38a6fffecb
Add JSON files validation to hassfest (#29799) 2019-12-09 22:43:38 +01:00
Bas Nijholt 5cb6d1b21f Sort imports according to PEP8 for 'script' folder (#29790) 2019-12-09 16:24:03 +01:00
Paulus Schoutsen a050d54847 Make hassfest stricter (#29494)
* Make hassfest stricter

* Update manifest.json
2019-12-05 10:15:28 +01:00
Paulus Schoutsen e99184bf68 Install requirements of after_dependencies when loading integrations (#29491)
* Install requirements of after_dependencies when loading integrations

* Fix smartthings test
2019-12-05 09:28:56 +01:00
Paulus Schoutsen 004476a1f8 Add intent integration to expose intent handle API (#29124)
* Add intent integration to expose intent handle API.

* Run hassfest + fix scaffolding

* Update __init__.py
2019-11-27 11:25:43 +01:00
cgtobi 6da01904c4 Fix typo in scaffold generator script (#29058) 2019-11-25 14:42:40 +01:00
Pascal Vizeli a4ed1d69b8 Add init for run inside devcontainer 2019-11-19 13:53:12 +00:00
Ville Skyttä bb37bc32e3
Always run flake8 through pre-commit, and with doctests (#28490)
* Enable flake8 doctests everywhere

* Always run flake8 through pre-commit
2019-11-06 21:38:00 +02:00
Ville Skyttä 804b6bbc0e Reduce test requirements duplication, sync flake8 and related (#28538)
* Generate pre-commit test dependencies instead of duplicating

* Upgrade/sync to flake8 3.7.9, flake8-docstrings 1.5.0, and pydocstyle 4.0.1

https://flake8.readthedocs.io/en/latest/release-notes/3.7.9.html
https://gitlab.com/pycqa/flake8-docstrings/blob/1.4.0/HISTORY.rst
https://gitlab.com/pycqa/flake8-docstrings/blob/1.5.0/HISTORY.rst
http://www.pydocstyle.org/en/4.0.1/release_notes.html

* Include requirements_test.txt from *_all.txt instead of copying
2019-11-04 21:21:52 -08:00
Paulus Schoutsen 16a80beb43 Fix scaffold 2019-11-04 14:14:57 -08:00
Fabian Affolter 314c3d0965 Use integration name in docstring (#28445) 2019-11-02 21:28:07 -07:00
Ville Skyttä 1679ec3245 SSDP matching improvements (#28285)
* SSDP matching improvements

- support multiple match groups per domain
- require matches on all, not any item in a group
- support matching on all UPnP device description data

* Manifest structure fixes
2019-11-02 12:30:09 -07:00
Paulus Schoutsen 24c29f9227
Add OAuth2 config flow scaffold (#28220)
* Add OAuth2 scaffold

* Generate integration if non-existing domain specified

* Update URL
2019-10-29 20:34:03 -07:00
Ville Skyttä c8b2860167 Fix bootstrap dev dependencies message (#28114)
https://github.com/home-assistant/home-assistant/pull/28060#discussion_r337701541
2019-10-22 23:12:57 -07:00
Otto Winter ef194d1b82 Fix mypy missing from dev install script (#28060)
* Fix mypy missing

* Update bootstrap

* Update script/bootstrap

Co-Authored-By: cgtobi <cgtobi@users.noreply.github.com>
2019-10-21 13:56:02 -07:00
Ville Skyttä 759ad08930 Typing misc fixes (#27543)
* Make async_get_conditions return type hint more specific

* Exclude script/scaffold/templates/ from pre-commit mypy
2019-10-14 13:03:37 -07:00
Paulus Schoutsen a82ff4f7a9
Add strings for device automations to scaffold (#27556) 2019-10-12 14:09:06 -07:00
Erik Montnemery dbe366933f Fix typing for device condition scaffold (#27487) 2019-10-12 16:37:32 +03:00
Paulus Schoutsen 54c24de158
Install requirements for all deps with tests (#27362)
* Install requirements for all deps with tests

* Remove unused REQUIREMENTS var

* Print diff if not the same

* Simplify

* Update command line

* Fix detecting empty dirs

* Install non-integration

* Fix upnp tests

* Lint

* Fix ZHA test
2019-10-09 16:16:29 -07:00
Robert Van Gorkom 071476343c Fix connection issues with withings API by switching to a maintained codebase (#27310)
* Fixing connection issues with withings API by switching to a maintained client codebase.

* Updating requirements files.

* Adding withings api to requirements script.
2019-10-08 20:14:52 +02:00
Erik Montnemery 0ba4ee1398 Validate generated device actions (#27262)
* Validate generated actions

* Use hass.services.async_call instead of service.async_call_from_config
2019-10-08 10:06:17 -07:00
Erik Montnemery c72ac87c73 Fix device condition scaffold (#27300) 2019-10-07 20:10:21 -07:00
Erik Montnemery dabdf8b577 Validate generated device triggers (#27264)
* Validate generated trigger

* Update scaffold
2019-10-07 13:09:48 -07:00
ktnrg45 1ecc883ef4 PS4 bump to renamed dependency (#27144)
* Change to renamed dependency pyps4-2ndscreen 0.9.0

* Rename / bump to ps4 dependency to 1.0.0

* update requirements

* Rename test req

* Fix import

* Bump 1.0.1

* Fix flaky test leaving files behind
2019-10-06 14:43:34 +02:00
Santobert bd6bbcd5af Neato config flow (#26579)
* initial commit

* Minor changes

* add async setup entry

* Add translations and some other stuff

* add and remove entry

* use async_setup_entry

* Update config_flows.py

* dshokouhi's changes

* Improve workflow

* Add valid_vendors

* Add entity registry

* Add device registry

* Update entry from configuration.yaml

* Revert unneccesary changes

* Update .coveragerc

* Prepared tests

* Add dshokouhi and Santobert as codeowners

* Fix unload entry and abort when already_configured

* First tests

* Add test for abort cases

* Add test for invalid credentials on import

* Add one last test

* Add test_init.py with some tests

* Address reviews, part 1

* Update outdated entry

* await instead of add_job

* run IO inside an executor

* remove faulty test

* Fix pylint issues

* Move IO out of constructur

* Edit error translations

* Edit imports

* Minor changes

* Remove test for invalid vendor

* Async setup platform

* Edit login function

* Moved IO out if init

* Update switches after added to hass

* Revert update outdated entry

* try and update new entrys from config.yaml

* Add test invalid vendor

* Default to neato
2019-10-06 13:05:51 +02:00
mvn23 6ae908b883 Add opentherm_gw config flow (#27148)
* Add config flow support to opentherm_gw.
Bump pyotgw to 0.5b0 (required for connection testing)
Existing entries in configuration.yaml will be converted to config entries and ignored in future runs.

* Fix not connecting to Gateway on startup.
Pylint fixes.

* Add tests for config flow.
Remove non-essential options from config flow.
Restructure config entry data.

* Make sure gw_id is slugified
2019-10-04 17:38:26 -07:00
Maciej Bieniek 8ba4ee1012 Add Airly integration (#26375)
* Add Airly integration

* Update .coveragerc file

* Remove AVAILABLE_CONDITIONS and fix device_class

* Don't create client on every update

* Rename client to session

* Rename state_attributes to device_state_attributes

* Remove log latitude and longitude

* Fix try...except

* Change latitude and longitude to HA defaults

* _show_config_form doesn't need coroutine

* Simplify config_flow errors handlig

* Preetier

* Remove unnecessary condition

* Change sensor platform to air_quality

* Remove PM1

* Make unique_id more unique

* Remove ,

* Add tests for config_flow

* Move conf to CONFIG

* Remove domain from unique_id

* Change the way update of attrs

* Language and attrs

* Fix attrs

* Add aiohttp error handling

* Throttle as decorator

* Suggested change

* Suggested change

* Invert condition

* Cleaning

* Add tests

* Polish no sesnor error handling

* Better strings

* Fix test_invalid_api_key

* Fix documentation url

* Remove unnecessary test

* Remove language option

* Fix test_invalid_api_key once again

* Sort imports

* Remove splits in strings
2019-10-04 13:58:29 +02:00
Felix Eckhofer 9c49b8dfc1 Fix generated comment in CODEOWNERS (#27115)
codeowners.py was moved from `/script/manifest/` to `/script/hassfest/`
in e8343452cd.
2019-10-02 09:34:27 -07:00
Franck Nijhof d4a67e3a30 Update documentation link URL for integrations (part2) (#27117) 2019-10-02 09:34:07 -07:00
jjlawren 571ab5a978 Plex external config flow (#26936)
* Plex external auth config flow

* Update requirements_all

* Test dependency

* Bad await, delay variable

* Use hass aiohttp session, bump plexauth

* Bump requirements

* Bump library version again

* Use callback view instead of polling

* Update tests for callback view

* Reduce timeout with callback

* Review feedback

* F-string

* Wrap sync call

* Unused

* Revert unnecessary async wrap
2019-10-01 17:20:30 +02:00
Tiit Rätsep 48d07467d9 Add support for SOMA Smartshades devices (#26226)
* Add Soma integration

* Fixed cover position get/set

* Try to list devices before creating config entries to see if Soma Connect can be polled

* Style fixes

* Updated requirements

* Updated .coveragerc to ignore Soma component

* Fixed linter errors

* Implemented stop command

* Test coverage fixes according to feedback

* Fixes to code according to feedback

* Added error logging and tested config from yaml

* Indentation fix

* Removed unnecessary method

* Wrong indentation

* Added some tests

* Added test for import step leading to entry creation

* Added feedback to user form in case of connection error

* Minor fixes according to feedback

* Changed exception type in error handling for connection to Connect

* To keep API consistent for Google Home and Alexa we swapped the open/closed position values back and I reversed them in this integration as well

* regenerated requirements, ran black, addde __init__.py to ignore file

* Added pysoma library to gen_requirements_all.py

* Added missing test case

* removed useless return value
2019-09-30 14:23:08 +02:00
Paulus Schoutsen 58446c79fc Update scaffold text 2019-09-27 13:08:38 -07:00
Paulus Schoutsen 77654da341
Add templates to scaffold device_trigger, device_condition, (#26871)
device_action
2019-09-27 12:54:17 -07:00
Rami Mosleh 82b77c2d29 Add config flow to transmission (#26434)
* Add config flow to transmission

* Reworked code to add all sensors and switches

* applied fixes

* final touches

* Add tests

* fixed tests

* fix get_api errors and entities availabilty update

* update config_flows.py

* fix pylint error

* update .coveragerc

* add codeowner

* add test_options

* fixed test_options
2019-09-26 11:14:57 +02:00
Mark Coombes f6995b8d17 Add config flow to ecobee (#26634)
* Add basic config flow

* Fix json files

* Update __init__.py

* Fix json errors

* Move constants to const.py

* Add ecobee to generated config flows

* Update config_flow for updated API

* Update manifest to include new dependencies

Bump pyecobee, add aiofiles.

* Update constants for ecobee

* Modify ecobee setup to use config flow

* Bump dependency

* Update binary_sensor to use config_entry

* Update sensor to use config_entry

* Update __init__.py

* Update weather to use config_entry

* Update notify.py

* Update ecobee constants

* Update climate to use config_entry

* Avoid a breaking change on ecobee services

* Store api key from old config entry

* Allow unloading of config entry

* Show user a form before import

* Refine import flow

* Update strings.json to remove import step

Not needed.

* Move third party imports to top of module

* Remove periods from end of log messages

* Make configuration.yaml config optional

* Remove unused strings

* Reorganize config flow

* Remove unneeded requirement

* No need to store API key

* Update async_unload_entry

* Clean up if/else statements

* Update requirements_all.txt

* Fix config schema

* Update __init__.py

* Remove check for DATA_ECOBEE_CONFIG

* Remove redundant check

* Add check for DATA_ECOBEE_CONFIG

* Change setup_platform to async

* Fix state unknown and imports

* Change init step to user

* Have import step raise specific exceptions

* Rearrange try/except block in import flow

* Convert update() and refresh() to coroutines

...and update platforms to use async_update coroutine.

* Finish converting init to async

* Preliminary tests

* Test full implementation

* Update test_config_flow.py

* Update test_config_flow.py

* Add self to codeowners

* Update test_config_flow.py

* Use MockConfigEntry

* Update test_config_flow.py

* Update CODEOWNERS

* pylint fixes

* Register services under ecobee domain

Breaking change!

* Pylint fixes

* Pylint fixes

* Pylint fixes

* Move service strings to ecobee domain

* Fix log message capitalization

* Fix import formatting

* Update .coveragerc

* Add __init__ to coveragerc

* Add option flow test

* Update .coveragerc

* Act on updated options

* Revert "Act on updated options"

This reverts commit 56b0a859f2e3e80b6f4c77a8f784a2b29ee2cce9.

* Remove hold_temp from climate

* Remove hold_temp and options from init

* Remove options handler from config flow

* Remove options strings

* Remove options flow test

* Remove hold_temp constants

* Fix climate tests

* Pass api key to user step in import flow

* Update test_config_flow.py

Ensure that the import step calls the user step with the user's api key as user input if importing from ecobee.conf/validating imported keys fails.
2019-09-25 22:38:21 +02:00
Robin 1d60cccc21 Put draw_box in image_processing (#26712)
* Put draw_box in image_processing

* Update draw_box

* Update __init__.py

* run isort

* Fix lints

* Update __init__.py

* Update requirements_all.txt

* Adds type hints

* Update gen_requirements_all.py

* Update requirements_test_all.txt

* rerun script/gen_requirements_all.py

* Change Pillow to pillow

* Update manifest.json

* Run script/gen_requirements_all.py
2019-09-24 12:09:16 +02:00
Paulus Schoutsen 53e6b8ade6
Add reproduce state template (#26866)
* Add reproduce state template

* Handle invalid state
2019-09-23 23:23:53 -07:00
Kevin Eifinger 5c0fa35d4a Add here_travel_time (#24603)
* Add here_travel_time

* Bump herepy version to 0.6.2

* Update requirements_all.txt

* Disable pylint and catch errors

* Add herepy to requirements_test_all

* Correctly place test req for herepy

* use homeassistant.const.LENGTH_METERS

* Implemented Requested Changes

* Better error message for cryptic error code

* add requested changes

* add_entities instead of async

* Add route attr and distance in km instead of m

* fix linting errors

* attribute duration in minutes instead of seconds

* Correct pattern for longitude

* dont split attribute but rather local var

* move strings to const and use travelTime

* Add tests

* Add route for pedestrian and public

* fix public transport route generation

* remove print statement

* Standalone pytest

* Use hass fixture and increase test cov
_resolve_zone is redundant

* Clean up redundant code

* Add type annotations

* Readd _resolve_zone and add a test for it

* Full test cov

* use caplog

* Add origin/destination attributes
According to https://github.com/home-assistant/home-assistant/pull/24956

* Add mode: bicycle

* black

* Add mode: publicTransportTimeTable

* Fix error for publicTransportTimeTable
Switch route_mode and travel_mode in api request.

* split up config options

* More type hints

* implement *_entity_id

* align attributes with google_travel_time

* route in lib
apply requested changes

* Update requirements_all.txt

* remove DATA_KEY

* Use ATTR_MODE

* add attribution

* Only add attribution if not none

* Add debug log for raw response

* Add _build_hass_attribution

* clearer var names in credentials check

* async _are_valid_client_credentials
2019-09-23 11:50:18 +02:00
Paulus Schoutsen 5a4a3e17cc Split scaffolding script (#26832)
* Add scaffolding split

* Add second config flow method
2019-09-22 21:46:50 -06:00
Paulus Schoutsen 8502f7c7d4
Add integration scaffolding script (#26777)
* Add integration scaffolding script

* Make easier to develop

* Update py.test -> pytest
2019-09-20 17:02:18 -07:00
Penny Wood b68b8430a4 Izone component (#24550)
* iZone component

* Rename constants to const.

* Changes as per code review.

* Stop listening if discovery times out.

* Unload properly

* Changes as per code review

* Climate 1.0

* Use dispatcher instead of listener

* Free air settings

* Test case for config flow.

* Changes as per code review

* Fix error on shutdown

* Changes as per code review

* Lint fix

* Black formatting

* Black on test

* Fix test

* Lint fix

* Formatting

* Updated requirements

* Remaining patches

* Per code r/v
2019-09-19 23:31:54 +02:00
jjlawren 2d12bac0e2 Add Plex config flow support (#26548)
* Add config flow support

* Log error on failed connection

* Review comments

* Unused errors

* Move form to step

* Use instance var instead of passing argument

* Only share servers created by component

* Return errors early to avoid try:else

* Separate debug for validation vs setup

* Unnecessary

* Unnecessary checks

* Combine import flows, move logic to component

* Use config entry discovery handler

* Temporary lint fix

* Filter out servers already configured

* Remove manual config flow

* Skip discovery if a config exists

* Swap conditional to reduce indenting

* Only discover when no configs created or creating

* Un-nest function

* Proper async use

* Move legacy file import to discovery

* Fix, bad else

* Separate validate step

* Unused without manual setup step

* Async oops

* First attempt at tests

* Test cleanup

* Full test coverage for config_flow, enable tests

* Lint

* Fix lint vs black

* Add test init

* Add test package requirement

* Actually run script

* Use 'not None' convention

* Group exceptions by result

* Improve logic, add new error and test

* Test cleanup

* Add more asserts
2019-09-19 23:29:26 +02:00