Commit Graph

492 Commits (13cfd60019e897266cf2c3aa7a69be62f1020439)

Author SHA1 Message Date
J. Nick Koston 65ca62c991
Ensure remote bluetooth adapters are loaded before integrations that need them (#85723) 2023-01-15 13:17:17 -10:00
Franck Nijhof 3cb56211f8
Make translations keys check hassfest more strict (#85221) 2023-01-15 17:43:34 +01:00
epenet 8fbcb93ab4
Use IntEnum for hassfest quality scale (#85817) 2023-01-14 10:19:18 +01:00
epenet e75c85f679
Downgrade integrations without code owner (#85752) 2023-01-13 10:08:15 +01:00
Franck Nijhof 139dd22ce6
Replace attrs with dataclasses in hassfest (#84475) 2022-12-23 15:46:00 +01:00
Erik Montnemery 255f35b979
Add support for translating custom attribute state (#83386)
* Add support for translating custom attribute state

* Address review comment

* Rename attribute to state_attributes, allow naming attributes
2022-12-21 10:43:49 +01:00
Franck Nijhof 80b3572627
Rename image integration to image_upload (#84063)
* Rename image integration to image_upload

* fix test
2022-12-16 08:16:38 -05:00
Erik Montnemery 8f761f44bd
Add support for translating state attributes (#77028)
* Allow defining state attributes in strings.json

* Add all climate attributes

* Remove support for custom device classes

* Address review comments
2022-12-09 08:22:29 +01:00
Joakim Sørensen 1d1b59b800
Fix hassfest serializer injecting commas in empty lists (#83052)
* No trailing comma for empty lists

* Update script/hassfest/serializer.py

Co-authored-by: Aarni Koskela <akx@iki.fi>

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
Co-authored-by: Aarni Koskela <akx@iki.fi>
2022-12-01 20:26:30 +02:00
Erik Montnemery 8e617bbc1d
Add `translation_key` property to entites (#82701)
* Add translation_key attribute to entity state

* Update accuweather test

* Index entity translation keys by platform

* Store translation key in entity registry
2022-12-01 09:34:09 +01:00
Erik Montnemery b7652c78ee
Add options flow to enable multiprotocol support on sky connect (#82525) 2022-11-29 16:34:55 -05:00
Aarni Koskela 16fc2972d3
Remove more useless manifest truthiness checks in hassfest (#82914) 2022-11-29 21:57:58 +01:00
Marc Mueller 63d519c1a8
Spelling updates (#82867) 2022-11-28 16:51:43 +01:00
Aarni Koskela 69d519418e
Remove unnecessary truthiness checks for integration.manifest (#82319) 2022-11-28 15:33:14 +01:00
Aarni Koskela 97b40b5f49
Make hassfest strictly typed (#82091) 2022-11-23 19:05:31 +01:00
epenet 89c7568515
Remove duplicate code in hassfest model (#82203) 2022-11-17 09:10:37 +01:00
Erik Montnemery aaec464627
Add support for managing the silabs multiprotocol add-on (#82170)
* Add support for managing the silabs multiprotocol add-on

* Fix passing context when starting option flow

* Allow unloading a ha yellow config entry

* Fix tests

* Log data passed to ZHA option flow

* Improve ZHA migration logic

* Move tests

* Improve test coverage

* Remove dead code

* Drop automatic ZHA migration
2022-11-16 17:38:07 +01:00
Franck Nijhof 6a1bb8c421
Deprecate Python 3.9 (#82193) 2022-11-16 15:38:10 +01:00
Aarni Koskela 322cb352ac
Use functools.cache instead of global in hassfest requirements (#82124) 2022-11-16 13:13:45 +01:00
Aarni Koskela 35c1604ea7
Remove unused hassfest helper (#82123) 2022-11-15 21:26:34 +01:00
J. Nick Koston f035223599
Make sure the config_flow key is set for brands (#82038)
Fixes https://github.com/home-assistant/frontend/issues/14376
2022-11-15 18:27:59 +01:00
epenet 7d5794cfb1
Remove unused function from hassfest model (#82073)
* Remove unused function from hassfest model

* Update model.py

Co-authored-by: J. Nick Koston <nick@koston.org>
2022-11-14 16:18:11 +01:00
epenet 55444b15a9
Add type hints to hassfest models (#82074)
* Add type hints to hassfest models

* Implement review
2022-11-14 12:41:49 +01:00
Aarni Koskela 727dcd6df6
Keep mypy.ini and strict-typing files sorted with hassfest (#81331)
hassfest: keep mypy.ini and .strict-typing sorted
2022-11-14 06:37:47 +01:00
Aarni Koskela f3e85b6492
Deduplicate blackening (#81802) 2022-11-09 16:58:20 +01:00
Marc Mueller 0c8eeaa643
Update mypy to 0.990 (#81783)
* Update mypy to 0.990

* Remove type ignore - overriding attr with property (13475)

* Remove type ignores - hasattr (13544)

* Adjust type ignore - assignment (13549)

* New error code - type-abstract (13785)

* Disable annotation-unchecked (13851)
2022-11-08 14:41:39 +01:00
Franck Nijhof 98591cd4b6
Remove hardware and fix raspberry pi brands in integrations.json (#80970) 2022-10-25 21:05:04 +02:00
Bram Kragten 36bb0bbc1a
Fix `integrations.json` creation, make `iot_standards` a list (#80945) 2022-10-25 13:43:40 +02:00
epenet 10dbef80ae
Add myself as code owner to util and const (#80664) 2022-10-22 15:07:43 +02:00
Paulus Schoutsen 76dbd017a7
Conditionally include config flow and iot_class when relevant (#80756) 2022-10-21 20:27:59 -04:00
Franck Nijhof bb287dd0ed
Integrations v2.1: Virtual integrations (#80613) 2022-10-20 23:09:06 -04:00
Franck Nijhof c4bbc439a5
Integrations v2.1: Differentiating hubs, devices and services (#80524)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2022-10-19 12:41:43 +02:00
Paulus Schoutsen e3ed4eeb76
Add Denon brand (#79230) 2022-09-28 23:09:53 +02:00
Paulus Schoutsen 62c114e849
Add Apple brand (#79227) 2022-09-28 16:21:09 -04:00
Erik Montnemery b173ae7f44
Add support for integrations v2 (#78801)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-09-28 11:31:48 -04:00
Erik Montnemery cce23683f1
Add additional integration_type options for integration manifests (#79193)
* Add additional integration_type options for integration manifests

* Rename integration_type internal to system
2022-09-28 14:17:39 +02:00
Erik Montnemery 27599ea0ee
Minor tweaks of hassfest and loader.py (#78929) 2022-09-22 21:54:22 -04:00
Erik Montnemery 1021c90bb8
Use black to format hassfest generated files (#78794) 2022-09-19 17:37:22 -04:00
Robert Hillis 73ba7a989b
Make Sonos typing more complete (#68072) 2022-09-05 13:12:37 -05:00
Joakim Sørensen 0caf998547
Bump awesomeversion from 22.6.0 to 22.8.0 (#77436) 2022-08-28 14:52:23 -04:00
J. Nick Koston 3938015c93
Add support for scanners that do not provide connectable devices (#77132) 2022-08-22 14:02:26 -04:00
Erik Montnemery bb74730e96
Add support for USB dongles to the hardware integration (#76795)
* Add support for USB dongles to the hardware integration

* Update hardware integrations

* Adjust tests

* Add USB discovery for SkyConnect 1.0

* Improve test coverage

* Apply suggestions from code review

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>

* Fix frozen dataclass shizzle

* Adjust test

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2022-08-18 21:52:12 +02:00
Paulus Schoutsen 6e92931087
Add file selector and file upload integration (#76672) 2022-08-18 12:02:12 -04:00
Marc Mueller bac44cf473
Enable no_implicit_optional globally [mypy] (#76723) 2022-08-13 19:33:57 +02:00
Franck Nijhof f0827a20c3
Add schedule helper (#76566)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2022-08-11 16:14:01 +02:00
Erik Montnemery 51c3836ec2
Create Repairs based on Alerts (#75397)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-07-27 10:13:16 +02:00
J. Nick Koston bbb9443b00
Fix bluetooth integration matching with service_data_uuids and service_uuids (#75687)
* 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
Erik Montnemery fb4aff25a2
Create issues in demo integration (#75081)
* Create issues in demo integration

* Add unfixable non-expiring issue

* Update test

* Adjust tests

* update translations

* add hassfest translation schema

* Update homeassistant/components/demo/translations/en.json

Co-authored-by: Zack Barett <zackbarett@hey.com>

* Rename Resolution Center -> Repairs

* Update homeassistant/components/demo/strings.json

Co-authored-by: Zack Barett <zackbarett@hey.com>

* Adjust hassfest to require description or fix_flow

* Update homeassistant/components/demo/repairs.py

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

* Update tests/components/demo/test_init.py

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

* Add missing translation strings

* black

* Adjust repairs imports

Co-authored-by: Bram Kragten <mail@bramkragten.nl>
Co-authored-by: Franck Nijhof <git@frenck.dev>
Co-authored-by: Zack Barett <zackbarett@hey.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-07-20 14:46:06 +02:00
Franck Nijhof 39dc9aa179
Rename Resolution Center -> Repairs (#75486) 2022-07-20 12:06:52 +02:00
J. Nick Koston 91f2550bc3
Change manufacturer_data_first_byte to manufacturer_data_start (#75379) 2022-07-17 17:25:45 -05:00