Commit graph

1332 commits

Author SHA1 Message Date
J. Nick Koston 0d1bcd8a8f
Bump httpcore to 0.17.2 (#94515) 2023-06-13 10:38:51 +02:00
J. Nick Koston e8c87874b3
Bump anyio to 3.7.0 (#94516) 2023-06-13 10:36:25 +02:00
Erik Montnemery f17773233b
Add check for integration config schema to hassfest (#93587)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-06-12 10:26:02 +02:00
Franck Nijhof c3936e6f14
Replace isort with ruff (#94302) 2023-06-08 23:43:56 +02:00
Allen Porter 52ba58c782
Require pydantic 1.10.8 or higher (#94208)
* Requied pydantic 1.10.9 or higher

* Simplify constraint to 2.0

* Drop constraint by one patch release to 1.10.8 or higher

* Add package constraints to gen requirements script
2023-06-08 09:41:45 +02:00
J. Nick Koston 5078bb3bef
Remove miniaudio pin now that upstream package has been fixed (#94034)
see https://github.com/irmen/pyminiaudio/issues/67#issuecomment-1575602707
2023-06-04 20:27:42 -04:00
J. Nick Koston 7995d3777a
Fix package names to match pypi index metadata (#93883)
* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* uses _

* uses -

* fix metadata
2023-05-31 21:12:53 -04:00
c0ffeeca7 c3a3ddcfa4
Standardize spelling of TTS and STT (#93857)
* Standardize spelling of TTS and STT

* Apply suggestions from code review

* Update homeassistant/components/tts/media_source.py

---------

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2023-05-31 11:00:19 -04:00
Mark Kennedy b03dbeaed5
Block legacy get-mac in preference of getmac (#87712)
Co-authored-by: GnatorX <garvinpang@protonmail.com>
2023-05-31 16:57:45 +02:00
Dara Adib 663f66a2b2
Scrape Microsoft TTS supported languages (#91988)
* Update Microsoft TTS supported languages

`script.microsoft_tts` scrapes Microsoft Azure documentation for
the list of supported languages and saves them to
`homeassistant.generated.microsoft_tts` for use in the component.

This adds support for more TTS languages, like fa-ir (Persian).

* Improve xpath query for Microsoft TTS languages

* Remove asserts for Microsoft TTS languages

* Add more tests for Microsoft TTS languages
2023-05-25 10:46:34 +02:00
J. Nick Koston ee62584570
Add constraint for pyminiaudio to 1.57 (#93501) 2023-05-24 17:03:37 -05:00
Ludy a310b5c1c3
remove template deprecated function device_trigger.py (#93419)
remove template deprecated fun `device_trigger.py`
2023-05-24 09:42:44 +02:00
J. Nick Koston bb8dfc9470
Bump protobuf to 4.23.1 (#93338) 2023-05-23 13:16:20 +02:00
Kashif Khan 7439ca5b1a
Bump azure-servicebus to 7.10.0 (#92866) 2023-05-10 12:36:44 +02:00
J. Nick Koston f95f2d1cfc
Prevent pysnmp from being installed as it does not work with newer python (#92292) 2023-04-30 20:13:47 +02:00
J. Nick Koston f38d45151a
Pin pyasn1 and pysnmplib since pyasn1 0.5.0 has breaking changes and pysnmp-pyasn1 and pyasn1 are both using the pyasn1 namespace (#92254) 2023-04-29 21:32:57 +02:00
Franck Nijhof cdbffee781
Remove legacy pip resolver (#92124)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-04-27 22:39:29 +02:00
Franck Nijhof 0f80d0625a
Wheels: Don't build azure-servicebus on cp311 (#91862) 2023-04-22 19:29:42 +02:00
epenet d1b8f2987c
Fix incorrect regex in translation script (#91536) 2023-04-17 12:18:34 +02:00
J. Nick Koston 9985516f80
Build protobuf upb wheels (#90812) 2023-04-17 10:30:22 +02:00
epenet d26160a509
Prevent combined translations in strings.json (#91334) 2023-04-17 09:36:25 +02:00
J. Nick Koston 6dbe67e909
Bump httpx to 0.24.0 and httpcore to 0.17.0 (#91308) 2023-04-12 20:11:59 -10:00
Aaron Bach 175f38b68a
Bump aioambient to 2023.04.0 (#90991) 2023-04-06 19:22:27 -10:00
J. Nick Koston 0fb210b886
Bump websockets constraint to 11.0.1+ (#90901) 2023-04-06 18:03:33 -10:00
J. Nick Koston ef5d8d83cb
Add constraint for websockets to <11.0 (#90868) 2023-04-05 08:03:47 -10:00
Erik Montnemery 59511cc3f7
Make service field filter parameters exclusive (#90728) 2023-04-03 21:46:23 +02:00
Erik Montnemery b316ffff9b
Rename hassfest _validate_dependencies_exist (#90503) 2023-03-30 12:05:11 +02:00
Aarni Koskela 196f5702b8
Make hassfest.dependencies faster with multiprocessing (#81486)
* hassfest.dependencies: split to two loops

* hassfest.dependencies: use multiprocessing for import scan
2023-03-30 11:25:14 +02:00
J. Nick Koston ce9099a386
Bump cryptography to 40.0.1 (#90326) 2023-03-26 12:30:17 -10:00
epenet 92bcb04e4f
Adjust scaffold docstring (#90157)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-03-23 10:13:53 +01:00
Franck Nijhof b1a3bfb298
Drop flake8 in favor of Ruff (#89863) 2023-03-17 13:30:06 +01:00
Franck Nijhof f9919bb7cf
Add pre-defined entity name translations (#89792) 2023-03-16 21:10:20 +01:00
Erik Montnemery 9384ec18f8
Add filters to climate and light service descriptions (#86162)
* Add filters to climate and light service descriptions

* Allow specifying enums directly

* Update service descriptions

* Adjust test

* Cache entity features

* Lint

* Improve error handling, add list of known base components

* Don't allow specifying an entity feature as int
2023-03-16 15:59:51 +01:00
Franck Nijhof f32b7859b8
Restructure translations for entity components (#89702) 2023-03-16 12:16:08 +01:00
Erik Montnemery cf7e500a8e
Support translating entity names (#88242) 2023-03-12 15:55:04 +01:00
epenet bf5f7c53d8
Move mock_setup_entry to conftest (#88484) 2023-03-06 11:31:50 +01:00
Marc Mueller cf369ff1a5
Unpin pandas for Python 3.11 (#89033) 2023-03-05 13:40:10 +01:00
epenet 699cc6c092
Adjust docstring on hassfest generated files (#89080) 2023-03-03 11:34:20 +01:00
epenet bdbec491eb
Enable RUFF ICN001 for registries (#88875)
* Add issue_registry to RUFF extend aliases

* Add area_registry to RUFF extend aliases

* Add device_registry to RUFF extend aliases

* Add entity_registry to RUFF extend aliases

* Adjust scaffold
2023-03-01 12:40:26 -05:00
Erik Montnemery 29b049fc57
Don't create new venv if script/setup is run from within a venv (#88906) 2023-03-01 11:11:29 +01:00
avee87 ac70612ec5
Improve helper integration scaffold (#88713) 2023-02-27 16:25:27 +01:00
Paulus Schoutsen 9be3f86a4c
Check circular dependencies (#88778) 2023-02-26 20:25:29 -05:00
Joakim Sørensen 0f204d6502
Remove homeassistant_hardware after dependency from zha (#88751) 2023-02-25 12:01:01 +01:00
J. Nick Koston ec53c26f90
Constrain faust-cchardet to first version that builds wheels successfully (#88563) 2023-02-21 16:32:15 -06:00
Bram Kragten bee79e351e
Allow translation for data entry submit button (#88499) 2023-02-20 19:52:39 +01:00
Ruslan Sayfutdinov 0d832c0a5a
Cleanup mypy ignore list feature (#88451) 2023-02-19 19:29:06 +01:00
epenet 5dda1de5bd
Adjust async_setup_entry in config_flow scaffold (#88319) 2023-02-17 13:43:56 +01:00
J. Nick Koston c79157208b
Add python 3.11 to the CI (#88038)
* Remove profiler.memory service

guppy3 is not python3.11 compat
https://github.com/zhuyifei1999/guppy3/issues/41

This service will return if and when guppy3 becomes
python3.11 compat

* squash

* temp remove

* temp dump tests

* temp dump tests

* drop a few more to get a run

* drop a few more to get a run

* Account for changed python3.11 enum.IntFlag behavior in zha

There may be additional changes needed, but I could only
see what needed to be updated based on the tests

* merge

* restore

* restore

* legacy value

* tweak a bit for the python 3.11 timings

* block cchardet

* conditional

* adjust est

* test

* not yet

* tweak

* give a little leeway for timing

* Fix otbr tests

* Increase database test timeout

It looks like we need a little more time to run
with the addiitonal tests in #87019

* Increase database test timeout

It looks like we need a little more time to run
with the addiitonal tests in #87019

* Fix aprs tests with python 3.11

* merge fix

* hints

* Update homeassistant/package_constraints.txt

* Update script/gen_requirements_all.py

* Constrain uamqp for Python 3.10 only

* Bump vulcan-api to 2.3.0

see https://github.com/kapi2289/vulcan-api/pull/126
see https://github.com/home-assistant/core/pull/88038
see https://github.com/home-assistant/docker/pull/260

* add ban

* Bump python-matter-server to 2.1.1

* revert

* Update tests/asyncio_legacy.py

---------

Co-authored-by: Erik <erik@montnemery.com>
Co-authored-by: Franck Nijhof <git@frenck.dev>
Co-authored-by: Marcel van der Veldt <m.vanderveldt@outlook.com>
2023-02-16 12:38:32 -05:00
J. Nick Koston c83ea297b5
Refactor zeroconf task handling (#88204)
* Refactor zeroconf task handling

- Avoid the need to create tasks for most callbacks
- Fixes the untracked task that could get unexpectedly GCed

* be consistant

* be consistant

* fix zeroconf tests

* runtime

* Revert "runtime"

This reverts commit 19e6b61837.

* precalc

* refactor

* tweak

* update tests
2023-02-15 21:44:11 -05:00
Franck Nijhof a1efd59760
Constrain uamqp for Python 3.10 only (#88198) 2023-02-15 14:24:31 -06:00
J. Nick Koston 61539686a4
Disable profiler.memory service with python 3.11 (#88136) 2023-02-15 16:20:47 +01:00
Franck Nijhof c3a70a7ec5
Remove uamqp version constrain (#88176) 2023-02-15 15:24:58 +01:00
Franck Nijhof 9030ca05b1
Enable Ruff SIM118 (#87772) 2023-02-15 12:39:12 +01:00
Luke bb4d6c0d2c
Rework user_input check in config flow scaffold (#87820)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-02-12 22:02:14 +01:00
Dustin Rodrigues c7e9afcef8
Fix typo in requires-python hassfest error message (#87896) 2023-02-12 09:11:56 -06:00
Luke 8de321253b
Reorganize manifest scaffold (#87819)
* reorganize manifest.json

* add iot_class to manifest
2023-02-10 07:52:00 +01:00
Erik Montnemery cc564026fa
Move EntityCategory to homeassistant.const (#87792)
* Move EntityCategory to homeassistant.const

* Fix more imports
2023-02-09 20:15:37 +01:00
Marc Mueller 67499e0204
Enable pydantic mypy plugin (#87415) 2023-02-09 13:33:10 +01:00
Franck Nijhof 769e0356ad
Clean up unnecessary registry mocks from scaffolding templates (#87732) 2023-02-09 08:22:41 +01:00
Marc Mueller 18a3fe1237
Remove platformdirs constraint (#87735) 2023-02-08 15:32:03 -06:00
Erik Montnemery 0cfb937d07
Enforce sorting of manifests (#87020) 2023-02-08 21:48:58 +01:00
Marc Mueller fb4c0b4b7a
Enable error-code redundant-self [mypy 1.0] (#87602) 2023-02-07 14:02:38 +01:00
Marc Mueller 42008c50f3
Enable error-code truthy-iterable [mypy 1.0] (#87596) 2023-02-07 11:16:22 +01:00
epenet aa00114c2f
Add return type to async tests without arguments (#87612) 2023-02-07 10:26:56 +01:00
Marc Mueller af59623601
Enable local_partial_types for strict typing [mypy] (#86409) 2023-02-06 20:41:39 -06:00
Paulus Schoutsen ff6e597a63
Add Matter to supported standards for brands (#87564)
* Add Matter standard to TP-Link

* --amend
2023-02-06 20:09:01 -05:00
Marc Mueller e348c25e18
Pin platformdirs to resolve dependency conflict (#87589) 2023-02-06 18:58:00 -06:00
Franck Nijhof 939eef3b28
Remove translations from Core (#87543)
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-02-06 15:06:43 +01:00
Franck Nijhof ca1a12898c
Enable Ruff D212 (#87347) 2023-02-03 23:08:48 +01:00
Franck Nijhof 9f9873b39a
Add ability to generate development translations for all integrations (#87197) 2023-02-02 16:27:51 -05:00
Franck Nijhof 5e81d28116
Update black to 23.1.0 (#87188) 2023-02-02 18:35:24 +01:00
Joakim Sørensen 80ffac48a3
Revert "Mark repo as safe directory to git config (#83755)" (#86888)
This reverts commit dc000d2289.
2023-01-29 13:07:50 -05:00
Franck Nijhof e738924780
Enable Ruff SIM105 (#86759)
* Enable Ruff SIM105

* Adjust existing cases
2023-01-26 21:06:22 -05:00
Franck Nijhof 021ac84405
Add recorder platform to required test category (#86704) 2023-01-26 11:03:56 +01:00
J. Nick Koston 1d1d69ca02
Update scaffold scripts to use async_forward_entry_setups (#86647) 2023-01-25 21:26:31 +01:00
epenet b2004e62b1
Remove ability to ignore coverage violations (#86597)
* Remove ability to ignore coverage violations

* Adjust codecov for required platforms

* Update codecov.yml
2023-01-25 14:27:16 +01:00
Aarni Koskela bf41a971a2
Introduce ruff (eventually replacing autoflake, pyupgrade, flake8) (#86224) 2023-01-24 12:15:16 +01:00
epenet 15ab04f97d
Prevent wilcard coverage ignore if tests exist (#86455) 2023-01-23 16:33:57 +01:00
epenet 74a76c6fe7
Don't ignore diagnostics coverage (#86440) 2023-01-23 14:55:02 +01:00
epenet ea43effcc9
Fix hassfest coverage check (#86443)
* Fix hassfest coverage check

* A-Z
2023-01-23 12:23:38 +01:00
Franck Nijhof 5102d1a5f3
Drop Python 3.9 support (#85456) 2023-01-22 20:40:33 +01:00
Willem-Jan van Rootselaar 711c92a87f
Bump version python-bsblan to 0.5.9 (#86373)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-01-22 17:57:17 +01:00
Franck Nijhof 79b52a2b41
Stricter pylint message control (#86154) 2023-01-20 13:47:55 +01:00
Jan Bouwhuis 25392655e7
Allow translating select selector options (#85531)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-01-17 16:22:19 +01:00
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
J. Nick Koston 8b893b7062
Bump cryptography to 39.0.0 (#85846)
* Bump cryptography to 39.0.0

changelog: https://github.com/pyca/cryptography/compare/38.0.3...39.0.0

The change that is significant is https://github.com/pyca/cryptography/pull/7601 which
should help with esphome noise encryption performance

* constraints

* fix botocore not loading
2023-01-13 19:58:01 -05:00
epenet e75c85f679
Downgrade integrations without code owner (#85752) 2023-01-13 10:08:15 +01:00
Martin Hjelmare 4895f2e7c2
Fix gen_requirements_all script permissions (#85745) 2023-01-12 15:46:36 +01:00
Franck Nijhof 3bb435c292
Pin matplotlib to 3.6.1 (#85540) 2023-01-09 18:34:10 +01:00
RoboMagus dc000d2289
Mark repo as safe directory to git config (#83755)
Fixes https://github.com/home-assistant/core/issues/83753
fixes undefined
2023-01-08 00:11:12 +01:00
Jack Boswell 3ad4caa3d7
Add Starlink Integration (#77091)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-01-07 10:13:37 -10:00
J. Nick Koston b470c3484b
Bump httpx to 0.23.2 (#85023)
changelogs:
https://github.com/encode/httpcore/compare/0.16.2...0.16.3
https://github.com/encode/httpx/compare/0.23.1...0.23.2
2023-01-02 20:45:52 -05:00
Franck Nijhof 139dd22ce6
Replace attrs with dataclasses in hassfest (#84475) 2022-12-23 15:46:00 +01:00
Jesse Hills 1b803454ce
Install all test requirements in bootstrap (#84469)
Co-authored-by: Franck Nijhof <git@frenck.dev>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2022-12-22 22:21:49 +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
Franck Nijhof 5e81f853e6
Bump pip_check conflicts +1 (#83536)
* Bump pip_check conflicts +1

* Update script/pip_check

Co-authored-by: Philip Allgaier <mail@spacegaier.de>

Co-authored-by: Philip Allgaier <mail@spacegaier.de>
2022-12-08 12:44:33 +01:00
Franck Nijhof 552a87dfcc
Upgrade grpcio(-status) to 1.51.1 (#83420) 2022-12-06 21:57:06 +01:00
Michaël Arnauts 5a8cf38552
Update pycomfoconnect to 0.5.1 (#83124) 2022-12-02 10:38:29 -10:00
J. Nick Koston 8eeba490d1
Update aiobafi6 to 0.7.3 (#83073) 2022-12-02 14:56:02 +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
Joakim Plate c576a68d33
Upgrade pytest-aiohttp (#82475)
* Upgrade pytest-aiohttp

* Make sure executors, tasks and timers are closed

Some test will trigger warnings on garbage collect, these warnings
spills over into next test.

Some test trigger tasks that raise errors on shutdown, these spill
over into next test.

This is to mimic older pytest-aiohttp and it's behaviour on test
cleanup.

Discussions on similar changes for pytest-aiohttp are here:
https://github.com/pytest-dev/pytest-asyncio/pull/309

* Replace loop with event_loop

* Make sure time is frozen for tests

* Make sure the ConditionType is not async

  /home-assistant/homeassistant/helpers/template.py:2082: RuntimeWarning: coroutine 'AsyncMockMixin._execute_mock_call' was never awaited
    def wrapper(*args, **kwargs):
  Enable tracemalloc to get traceback where the object was allocated.
  See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info.

* Increase litejet press tests with a factor 10

The times are simulated anyway, and we can't stop the normal
event from occuring.

* Use async handlers for aiohttp

tests/components/motioneye/test_camera.py::test_get_still_image_from_camera
tests/components/motioneye/test_camera.py::test_get_still_image_from_camera
tests/components/motioneye/test_camera.py::test_get_stream_from_camera
tests/components/motioneye/test_camera.py::test_get_stream_from_camera
tests/components/motioneye/test_camera.py::test_camera_option_stream_url_template
tests/components/motioneye/test_camera.py::test_camera_option_stream_url_template
  /Users/joakim/src/hass/home-assistant/venv/lib/python3.9/site-packages/aiohttp/web_urldispatcher.py:189: DeprecationWarning: Bare functions are deprecated, use async ones
    warnings.warn(

* Switch to freezegun in modbus tests

The tests allowed clock to tick in between steps

* Make sure skybell object are fully mocked

Old tests would trigger attempts to post to could services:

```
DEBUG:aioskybell:HTTP post https://cloud.myskybell.com/api/v3/login/ Request with headers: {'content-type': 'application/json', 'accept': '*/*', 'x-skybell-app-id': 'd2b542c7-a7e4-4e1e-b77d-2b76911c7c46', 'x-skybell-client-id': '1f36a3c0-6dee-4997-a6db-4e1c67338e57'}
```

* Fix sorting that broke after rebase
2022-11-29 22:36:36 +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
Allen Porter 682486c864
Bump pyrainbird to 0.6.3 and drop dependency conflict count (#82800) 2022-11-27 14:49:47 -05:00
J. Nick Koston 8345176ccc
Adjust pip check for four conflicts (#82777) 2022-11-27 10:31:32 +01:00
uvjustin 9390359fe3
Bump httpx to 0.23.1 (#82725) 2022-11-26 10:04:22 -10:00
Erik Montnemery 7b5c80720a
Tweak scaffold script (#82705) 2022-11-25 20:12:27 +01:00
Erik Montnemery e1338adf1a
Allow configuring country and language in core config (#81734)
* Allow configuring country and language in core config

* Add script for updating list of countries

* Use black for formatting

* Fix quoting

* Move country codes to a separate file

* Address review comments

* Add generated/countries.py

* Get default language from owner account

* Remove unused variable

* Add script to generate list of supported languages

* Add tests

* Fix stale docsring

* Use format_python_namespace

* Correct async_user_store

* Improve typing

* Fix with_store decorator

* Initialize language in core store migration

* Fix startup

* Tweak

* Apply suggestions from code review

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

* Update storage.py

Co-authored-by: Franck Nijhof <git@frenck.dev>
2022-11-24 23:25:50 +01:00
Aarni Koskela 97b40b5f49
Make hassfest strictly typed (#82091) 2022-11-23 19:05:31 +01:00
Franck Nijhof 4ea9926497
Not to Tox (#76582) 2022-11-23 14:40:37 +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
epenet 0538154767
Add type hints to requirements script (#82075) 2022-11-16 13:00:35 +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
Erik Montnemery c3d4a9cd99
Create repairs issue if an outdated currency code is configured (#81717)
* Create repairs issue if an outdated currency code is configured

* Add script for updating list of currencies

* Use black for formatting

* Move currency codes to a separate file

* Address review comments
2022-11-08 07:21:09 +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 e510dd64f1
Pin uamqp==1.6.0 (#80678) 2022-10-20 18:30:00 +02: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
Quentame 3379e14417
Bump Météo-France to 1.1.0 (#80255) 2022-10-13 19:31:59 +02:00
Marc Mueller 4e5b5dfb93
Update pyupgrade to 3.1.0 (#80058)
* Update pyupgrade to 3.1.0

* Remove redundant open modes - text is the default
2022-10-11 09:04:52 +02:00
Marc Mueller 33c94b0052
Add strict typing for WLED (#79822)
* Add strict typing for WLED

* Update backoff constraint
2022-10-07 21:56:29 +03: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
Paulus Schoutsen f41b69e19e
Bump cryptography to 38 (#79067) 2022-09-25 17:39:42 -04:00
Paulus Schoutsen 0cc03c37bb
Pin pyOpenSSL to 22.0.0 (#79066) 2022-09-25 15:19:06 -04: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
Marc Mueller 99ebac13ed
Bump openevsewifi to 1.1.2 (#78460)
Update openevsewifi to 1.1.2
2022-09-14 15:19:43 +02:00
Marc Mueller 01f1629ac0
Update surepy to 0.8.0 (#77948) 2022-09-07 15:13:51 +02:00