Commit graph

158 commits

Author SHA1 Message Date
J. Nick Koston
c76dec138a
Discover new bluetooth adapters when they are plugged in () 2022-08-22 15:45:08 -10:00
J. Nick Koston
3938015c93
Add support for scanners that do not provide connectable devices () 2022-08-22 14:02:26 -04:00
J. Nick Koston
bbb9443b00
Fix bluetooth integration matching with service_data_uuids and service_uuids ()
* Fix bluetooth integration with service_data and service_uuids

We would only dispatch a new flow when the address was seen for
the first time or the manufacturer_data appeared in a followup
advertisement. Its also possible for the service_data and
service_uuids to appear in a followup advertisement so we
need to track these as well

* improve logging to avoid overly large messages

* improve logging to avoid overly large messages

* adjust

* adjsut

* split

* coverage

* coverage

* coverage

* coverage

* fix matcher

* more coverage

* more coverage

* more coverage

* revert switchbot changes and move to seperate PR
2022-07-24 16:39:53 -05:00
J. Nick Koston
91f2550bc3
Change manufacturer_data_first_byte to manufacturer_data_start () 2022-07-17 17:25:45 -05:00
J. Nick Koston
61cc9f5288
Consolidate executor jobs when loading integration manifests () 2022-07-14 13:06:08 -07:00
J. Nick Koston
a697672944
Add bluetooth integration ()
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2022-07-08 18:55:31 -05:00
J. Nick Koston
cb46bb5bfa
Revert "Partially revert "Switch loader to use json helper ()" ()" () 2022-06-28 09:34:56 +02:00
Franck Nijhof
21b842cf9c
Partially revert "Switch loader to use json helper ()" () 2022-06-28 00:48:18 +02:00
J. Nick Koston
164eba7e5d
Switch loader to use json helper () 2022-06-22 21:57:38 -05:00
Raman Gupta
ae01ec02e2
Allow custom integrations to support application_credentials platform () 2022-05-01 16:26:22 -07:00
Paulus Schoutsen
3213091b8d
Add integration type () 2022-03-20 20:38:13 -07:00
Marc Mueller
be7ef6115c
Make TypeVars private (1) () 2022-03-17 18:52:38 +01:00
J. Nick Koston
076fe97110
Strict typing for dhcp () 2022-02-28 18:49:44 -10:00
Marc Mueller
8d2fb72cc3
Add type ignore error codes [core] () 2022-02-17 23:09:22 -08:00
J. Nick Koston
f069a37f7d
Allow integrations to request dhcp discovery flows for registered devices () 2022-02-15 11:02:52 -06:00
J. Nick Koston
5b755b74fb
Add loggers to integration manifest.json () 2022-01-28 13:37:53 -08:00
Paulus Schoutsen
24546dfdf9
Catch all exceptions on import component/platform () 2022-01-25 20:39:32 -08:00
Marc Mueller
12757a8cd2
Update typing - collections.abc (1) ()
* Update typing - collections.abc (1)

* Additional typing updates
2022-01-12 07:56:35 +01:00
Marc Mueller
240c9979c7
Move disallow-any-generics to mypy.ini () 2022-01-11 13:33:25 -08:00
Marc Mueller
d3b7bd25ef
Update typing (1) () 2022-01-11 21:26:03 +01:00
Tobias Sauerwein
2c904c0974
Bump mypy to 0.930 ()
Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>
2021-12-27 17:55:17 +01:00
Ruslan Sayfutdinov
55f4962c06
Fix pylint plugin which checks relative imports () 2021-12-23 11:14:47 -08:00
J. Nick Koston
615872a5d1
Align zeroconf matching with ZeroconfServiceInfo () 2021-12-19 02:09:21 -06:00
Paulus Schoutsen
cd3e51b3e7
Ensure domain is correct format () 2021-10-25 15:56:07 -07:00
Marc Mueller
238b488642
Use assignment expressions 03 () 2021-10-17 20:08:11 +02:00
Ruslan Sayfutdinov
a9ed4fa405
Bump awesomeversion to 21.8.1 () 2021-09-11 11:40:46 -07:00
J. Nick Koston
0403ea715e
Add known devices to USB Vendor / Product IDs ()
Co-authored-by: kpine <keith.pine@gmail.com>
2021-08-21 21:56:49 +02:00
J. Nick Koston
dc74a52f58
Add support for USB discovery ()
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-08-20 14:04:18 -05:00
Daniel Hjelseth Høyer
fbad453c89
Pylint 2.9.3 ()
Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>
2021-07-14 21:44:57 -07:00
Joakim Sørensen
5d6b6deed4
Move version validation to resolver () 2021-05-31 15:32:03 -07:00
Ruslan Sayfutdinov
391b2f8ccd
Add missing return type in Core constructors () 2021-05-20 18:53:29 +03:00
J. Nick Koston
a43561e3e6
Ensure startup can proceed if async_get_integration raises ()
* Ensure startup can proceed if async_get_integration raises

There were cases where the event would never get set and
startup would deadlock because the second attempt to load
the integration would block forever

* pylint

* reorder
2021-05-17 17:32:05 -05:00
Joakim Sørensen
2f10f59717
Block custom integrations with missing or invalid version () 2021-05-17 15:48:41 +02:00
Joakim Sørensen
9d3b5cd0de
Change log severity from warn to error for custom integration version () 2021-04-26 15:04:39 -07:00
J. Nick Koston
3164eef059
Limit executor jobs during custom_components load to match non-custom behavior () 2021-04-20 09:16:17 -07:00
Franck Nijhof
055cdc64c0
Add support for IoT class in manifest () 2021-04-15 10:21:38 +02:00
Joakim Sørensen
52974e1f64
Add target version to log about missing version ()
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-03-31 01:08:59 +02:00
Franck Nijhof
6932cf9534
Use contextlib.suppress where possible () 2021-03-23 14:36:43 +01:00
Marc Mueller
4cb7718192
Update typing 16 () 2021-03-18 22:58:19 +01:00
Marc Mueller
e55702d635
Update typing 01 () 2021-03-17 17:34:55 +01:00
shbatm
5df46b60e8
Fix flip-flopped substitutions in Custom Version Type Warning message. () 2021-02-19 03:00:14 +01:00
Franck Nijhof
9b7c39d20b
Postponed evaluation of annotations in core ()
* Postponed evaluation of annotations in core

* Remove unneeded future
2021-02-12 10:58:20 +01:00
Joakim Sørensen
56b8e82a69
Bump awesomeversion from 21.2.0 to 21.2.2 () 2021-02-04 16:45:59 +01:00
Joakim Sørensen
06e6005fbb
Add warning to custom integrations without version ()
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-02-04 09:59:41 +01:00
Ville Skyttä
2ffdc4694a
Remove misleading "for" from custom integration warning message () 2021-02-01 08:36:06 +01:00
Ville Skyttä
94dbcc9d2b
Generics and other type hint improvements () 2021-01-18 22:23:25 +01:00
J. Nick Koston
da677f7d5a
Add support for discovery via DHCP ()
* 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
Ville Skyttä
317ed418dd
Use singleton enum for "not set" sentinels ()
* Use singleton enum for "not set" sentinel

https://www.python.org/dev/peps/pep-0484/#support-for-singleton-types-in-unions

* Remove unused variable
2020-12-19 12:46:27 +01:00
J. Nick Koston
94bf55e29b
Limit concurrency of async_get_integration to avoid creating extra threads ()
* Limit concurrency of async_get_integration to avoid creating extra threads

Since async_get_integration is waiting on the disk most of the time
it would end up creating many new threads because the disk could
not deliver the data in time.

* pylint
2020-11-10 21:34:54 -10:00
Paulus Schoutsen
440570244d
Don't swallow all errors when checking for config validator platform () 2020-10-19 17:09:57 +02:00