Compare commits

...

2107 Commits

Author SHA1 Message Date
Erik
2f608d8650 Use numerical_value when compiling statistics 2023-02-01 14:03:33 +01:00
Erik
65324431a4 Add numerical_value state attribute to sensor 2023-02-01 13:58:43 +01:00
Franck Nijhof
4dba9c09fc Only report invalid numeric value for sensors once (#87010) 2023-01-31 12:44:18 +01:00
On Freund
35b82db8b0 Rympro integration code fixes (#86734)
* Address review comments

* Add coordinator.py to coveragerc

* Apply suggestions from code review

Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>

* Update homeassistant/components/rympro/coordinator.py

Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>

* Move SCAN_INTERVAL to coordinator.py

---------

Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>
2023-01-31 10:40:43 +01:00
Martin Mauch
a28e7e1541 Fix typo in EnOcean (#86868) 2023-01-31 09:49:37 +01:00
Bouwe Westerdijk
7f01d57965 Bump plugwise to v0.27.5 (#87001)
fixes undefined
2023-01-31 09:32:39 +01:00
epenet
0d018d53f1 Don't run tests if ruff fails (#87003) 2023-01-31 09:31:49 +01:00
Michael Davie
be25d17e02 Bump env_canada to 0.5.27 (#86996)
fixes undefined
2023-01-31 08:56:27 +01:00
epenet
7db166b515 Fix tests typing helper (#86956) 2023-01-31 08:48:35 +01:00
Jan Bouwhuis
33ede351f0 Cleanup code for parsing yaml MQTT config (#86944)
* Cleanup code for parsing yaml configs

* Add abstractmethod decorator to async_update

* Replace get() with default-list ensured by schema
2023-01-31 08:24:33 +01:00
Paulus Schoutsen
1c4ba61725 Bump ESPHome Dashboard API 1.2.3 (#86997) 2023-01-31 00:05:59 -05:00
Michael Hansen
f4654128db Add synesthesiam as a codeowner on intent (#86998) 2023-01-30 23:46:42 -05:00
Michael Hansen
be69c81db5 Prioritize entity names over area names in Assist matching (#86982)
* Refactor async_match_states

* Check entity name after state, before aliases

* Give entity name matches priority over area names

* Don't force result to have area

* Add area alias in tests

* Move name/area list creation back

* Clean up PR

* More clean up
2023-01-30 23:46:25 -05:00
Marcel van der Veldt
f8c6e4c20a Add support for Hue Smart Scenes (Natural Lights) (#85517)
* Bump aiohue to 4.6.0

* fix device name for lights

* fix name for groups too

* ignore smart scenes

* bump to 4.6.1 instead

* Add support for Smart Scenes (Natural lights) in Hue

* update base entity class

* fix test fixture

* update tests

* fix scene test

* fix typo

* use underlying scene controller

* use enum value

* update tests

* add current scene name within smart scene

* extra attributes are only valid if the scene is active

* Update v2_resources.json

* typo

* fix after merge
2023-01-30 23:32:37 -05:00
Paulus Schoutsen
d88849fb04 ESPHome handle remove password and no encryption (#86995)
* ESPHome handle remove password and no encryption

* Start reauth for invalid api password

---------

Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2023-01-30 23:05:48 -05:00
PeteRager
e706696271 Nest - Climate shorten line to be less than 88 chars (#86989)
Lines to be less than 88
2023-01-30 19:14:24 -08:00
shbatm
53638ba138 Bump pyisy to 3.1.11 (#86981)
* Bump pyisy to 3.1.10

* Bump pyisy to 3.1.11
2023-01-30 21:36:51 -05:00
puddly
47453420c1 Bump ZHA dependencies (#86979)
Bump ZHA dependency bellows from 0.34.6 to 0.34.7
2023-01-30 21:35:27 -05:00
Bram Kragten
0c383e28c4 Update frontend to 20230130.0 (#86978) 2023-01-30 21:34:26 -05:00
Paulus Schoutsen
98b4a412f7 ESPHome discovered dashboard checks reauth flows (#86993) 2023-01-30 21:32:52 -05:00
GitHub Action
da35ac1942 [ci skip] Translation update 2023-01-31 00:25:29 +00:00
mkmer
365ce55d77 Honeywell auto mode invalid attribute (#86728)
fixes undefined
2023-01-31 00:04:00 +01:00
Michael Hansen
28affe91be Set synesthesiam as codeowner of conversation (#86958) 2023-01-30 23:02:25 +01:00
Paulus Schoutsen
2cdeb6f1cd Check dashboard when showing reauth form (#86980) 2023-01-30 22:46:42 +01:00
Steven Looman
7e206b5854 Fix error on empty location in ssdp messages (#86970) 2023-01-30 22:43:58 +01:00
Franck Nijhof
1edd00c51f Allow any state class when using the precipitation device class (#86977) 2023-01-30 22:43:23 +01:00
ollo69
772df02cce Catch AndroidTV exception on setup (#86819)
fixes undefined
2023-01-30 22:42:32 +01:00
puddly
8337d4613e ZHA config flow cleanup (#86742)
fixes undefined
2023-01-30 22:21:34 +01:00
Steven Looman
50373500c3 Ensure a proper scope_id is given for IPv6 addresses when initializing the SSDP component (#86975)
fixes undefined
2023-01-30 22:14:48 +01:00
Paul Bottein
a8b23d7139 Uses PolledSmartEnergySummation for ZLinky (#86960) 2023-01-30 22:10:55 +01:00
Raman Gupta
c715534821 Bump zwave-js-server-python to 0.45.0 (#86771) 2023-01-30 14:27:37 -05:00
Paulus Schoutsen
e0f8b5bbd1 Fix some mobile app sensor registration/update issues (#86965)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-01-30 20:08:19 +01:00
Michael Hansen
f7fdaadde0 Performance improvements for Assist (#86966)
* Move hassil recognize into executor

* Bump hassil to 0.2.6

* Disable template parsing in name/area lists

* Don't iterate over hass.config.components directly
2023-01-30 12:25:22 -06:00
Jan Bouwhuis
e57dad79fc Fix MQTT discovery failing after bad config update (#86935)
* Fix MQTT discovery failing after bad config update

* Update last discovery payload after update success

* Improve test, correct update assignment

* send_discovery_done to finally-catch vol.Error

* Just use try..finally

* Remove extra line

* use elif to avoid log confusion
2023-01-30 19:15:11 +01:00
J. Nick Koston
00118a6f96 Speed up live history setup if there is no pending data to commit (#86942) 2023-01-30 19:00:34 +01:00
J. Nick Koston
f874258e7e Silence spurious warnings about removing ix_states_entity_id with newer installs (#86961)
* Silence spurious warnings about removing ix_states_entity_id with newer installs

https://ptb.discord.com/channels/330944238910963714/427516175237382144/1069648035459641465

* Silence spurious warnings about removing ix_states_entity_id with newer installs

https://ptb.discord.com/channels/330944238910963714/427516175237382144/1069648035459641465
2023-01-30 12:38:33 -05:00
Erik Montnemery
53c5f02ca2 Remove some dead code from recorder (#86697) 2023-01-30 18:37:48 +01:00
Shay Levy
857df05308 Add Shelly Gen2 update entity for sleeping devices (#86837) 2023-01-30 19:05:13 +02:00
PeteRager
d22e670334 Avoid Nest climate set_temperature eating error (#86920)
* Update climate_sdm.py

* Update test case to detect KeyError

* Throw a defined exception if the condition in encoutered

Include keys from device_traits in error message

* Less diagnostic information in error message
2023-01-30 08:01:41 -08:00
Marc Mueller
2c12171e25 Update actions/cache to v3.2.4 (#86943) 2023-01-30 16:42:01 +01:00
Mick Vleeshouwer
98a79dd5a2 Fix ThreeWayHandle sensor in Overkiz integration (#86953)
Fix typo in sensor.py

Fixes https://github.com/home-assistant/core/issues/85913
2023-01-30 17:15:53 +02:00
Tom Puttemans
73cd03255f Ignore empty payloads from DSMR Reader (#86841)
* Ignore empty payloads from DSMR Reader

* Simplify empty payload handling

If the native value hasn't changed, requesting to store it won't have a performance impact.

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

---------

Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-01-30 08:56:57 -05:00
Erik Montnemery
d4489faa68 Drop minus sign on negative zero (#86939)
* Drop minus sign on negative zero

* Add tests
2023-01-30 08:31:27 -05:00
Maciej Bieniek
5f57648578 Use more human-readable sensor names in Airly (#86893)
* Use more human-readable sensor names

* Use abbreviations for long names
2023-01-30 08:29:06 -05:00
Ben Dews
21d1c647c5 Add configuration options to OpenAI integration (#86768)
* Added multiple features to OpenAI integration

* Fixed failed test

* Removed features and improved tests

* initiated component before starting options flow
2023-01-30 08:24:11 -05:00
Robert Hillis
032a37b121 Address Google mail late review (#86847) 2023-01-30 14:18:56 +01:00
Franck Nijhof
3b5fd4bd06 Enable Ruff TRY004 (#86811) 2023-01-30 14:06:52 +01:00
mkmer
7368c86ecb Add Reauth config flow to honeywell (#86170) 2023-01-30 13:57:14 +01:00
epenet
7e7a27f8b9 Add type hints to http client fixtures (#86795) 2023-01-30 13:40:07 +01:00
Maciej Bieniek
cc36848a6d Use native_precision instead of round in Accuweather (#86869) 2023-01-30 12:36:24 +01:00
Nick Touran
d2e75e4f7a Add Autofocus, IR lamp, and Wiper switches in ONVIF (#84317)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-01-30 12:08:07 +01:00
Maciej Bieniek
d485630ce9 Use device class ENUM for Accuweather pressure tendency sensor (#86887)
* Use device class ENUM for pressure tendency sensor

* Format
2023-01-30 12:03:23 +01:00
Franck Nijhof
a4fa0925b7 Small improvement to Withings tests (#86937) 2023-01-30 11:03:42 +01:00
Franck Nijhof
c56832bb2c Enable Ruff SIM300 (#86793) 2023-01-30 11:03:23 +01:00
Franck Nijhof
9ac8f9aa37 Revert "Adjust D-Link entity naming" (#86936) 2023-01-30 10:56:56 +01:00
Robert Hillis
709d1cb8af Adjust D-Link entity naming (#86906) 2023-01-30 10:29:12 +01:00
Franck Nijhof
1958dd5550 Update ruff to v0.0.237 (#86932) 2023-01-30 10:15:24 +01:00
Malte Franken
92a833b192 Bump aio_geojson_generic_client to 0.3 (#86918) 2023-01-30 10:11:41 +01:00
J. Nick Koston
4e9bd09d39 Fix old indices not being removed in schema migration leading to slow MySQL queries (#86917)
fixes #83787
2023-01-29 21:33:23 -05:00
GitHub Action
b82ecfdd28 [ci skip] Translation update 2023-01-30 00:21:11 +00:00
J. Nick Koston
0f4b17755e Improve logging and handling when websocket gets behind (#86854)
fixes undefined
2023-01-29 10:49:27 -10:00
J. Nick Koston
c612a92cfb Use python defaults for comparing State, LazyState, and Event objects (#86856)
* Speed up comparing State and Event objects

Use default python implementation for State and Event __hash__ and __eq__

The default implementation compared based on the id() of the object
which is effectively what we want here anyways. These overrides are
left over from the days when these used to be attrs objects

By avoiding implementing these ourselves all of the equality checks
can happen in native code

* tweak

* adjust tests

* write out some more

* fix test to not compare objects

* more test fixes

* more test fixes

* correct stats tests

* fix more tests

* fix more tests

* update sensor recorder tests
2023-01-29 13:31:43 -05: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
Allen Porter
4f965f0eca Bump pyrainbird to 2.0.0 (#86851) 2023-01-29 15:11:56 +01:00
Joakim Sørensen
569bf3bb76 Bump pytautulli from 21.11.0 to 23.1.1 (#86891) 2023-01-29 15:07:05 +01:00
Joakim Sørensen
f9e8247401 Bump isort from 5.11.4 to 5.12.0 (#86890) 2023-01-29 15:04:17 +01:00
Malte Franken
344a0c55a5 Add integration_type to geo_json_events (#86878)
define integration type
2023-01-29 15:02:13 +01:00
Thomas Schamm
11e125f2e8 Add Bosch SHC description and host form strings (#86897)
* Add description to setup SHC II. Add missing host info in reauth_confirm

* Remove template value in en.json
2023-01-29 15:00:36 +01:00
J. Nick Koston
691a234090 Cache the names and area lists in the default agent (#86874)
* Cache the names and area lists in the default agent

fixes #86803

* add coverage to make sure the entity cache busts

* add areas test

* cover the last line
2023-01-29 07:16:29 -05:00
Maciej Bieniek
eebc338c3b Support native_precision in Airly integration (#86843)
* Use native_precision

* Refactor extra_state_attributes
2023-01-29 11:44:23 +01:00
J. Nick Koston
58de7b8df0 Fix v32 schema migration when MySQL global.time_zone is configured with non-UTC timezone (#86867)
* Fix v32 schema migration when MySQL timezone is not UTC

* tweak
2023-01-28 22:06:07 -05:00
Martin Hjelmare
b1e939d1f1 Fix tradfri air quality device class (#86861) 2023-01-28 22:05:31 -05:00
J. Nick Koston
ec3475910f Improve websocket throughput of state changes (#86855)
After the start event we tend to get an event storm of state
changes which can get the websocket behind. #86854 will
help with that a bit, but we can reduce the overhead
to build a state diff when the attributes have not
changed
2023-01-28 22:05:06 -05:00
Robert Hillis
799edd90aa Fix D-Link attributes (#86842)
* Fix D-Link attributes

* fix blocking call
2023-01-28 22:03:58 -05:00
GitHub Action
0f6f63da64 [ci skip] Translation update 2023-01-29 00:26:29 +00:00
Paul Bottein
e93bfa6556 Update frontend to 20230128.0 (#86838) 2023-01-28 18:49:29 -05:00
Jan Bouwhuis
6a94a58325 Correct stale doc string for MQTT tag platform (#86862) 2023-01-29 00:23:22 +02:00
PeteRager
a7ddd592fb Nest improve error message on climate actions (#86853)
* Nest - Climate - Error Messages

1. Error messages were incorrect for some methods, for example async_set_temperature was reporting failure to set hvac_mode. This is corrected.
2. Error messages were incomplete and were not including the entity_id,and the operation being performed that failed.
3. Add unit tests to test the exception handling

* Move tests into exiisting error test

* Improve readability of error message
2023-01-28 12:58:28 -08:00
Allen Porter
733798f483 Fix nest climate set temperature error message string (#86852) 2023-01-28 11:02:46 -08:00
J. Nick Koston
af5fd74d6f Bump ismartgate to 5.0.0 (#86830)
python 3.11 support

changelog: https://github.com/bdraco/ismartgate/compare/v4.0.4...v5.0.0
2023-01-28 07:14:36 +01:00
Luca Angemi
efd2817221 Add state class to nest legacy sensors (#86810)
* Add state class to nest legacy sensors

Add state class (measurement) to humidity and temperature for the nest legacy sensors.

* Update

Update
2023-01-27 21:20:51 -08:00
J. Nick Koston
d97a061285 Chunk MariaDB and Postgresql data migration to avoid running out of buffer space (#86680)
* Chunk MariaDB data migration to avoid running out of buffer space

This will make the migration slower but since the innodb_buffer_pool_size
is using the defaul to 128M and not tuned to the db size there is a
risk of running out of buffer space for large databases

* Update homeassistant/components/recorder/migration.py

* hard code since bandit thinks its an injection

* Update homeassistant/components/recorder/migration.py

* guard against manually modified data/corrupt db

* adjust to 10k per chunk

* adjust to 50k per chunk

* memory still just fine at 250k

* but slower

* commit after each chunk to reduce lock pressure

* adjust

* set to 0 if null so we do not loop forever (this should only happen if the data is missing)

* set to 0 if null so we do not loop forever (this should only happen if the data is missing)

* tweak

* tweak

* limit cleanup

* lower limit to give some more buffer

* lower limit to give some more buffer

* where required for sqlite

* sqlite can wipe as many as needed with no limit

* limit on mysql only

* chunk postgres

* fix limit

* tweak

* fix reference

* fix

* tweak for ram

* postgres memory reduction

* defer cleanup

* fix

* same order
2023-01-27 22:39:45 -05:00
shbatm
e2edbc4259 Check for missing ISY994 Z-Wave Properties (#86829)
* Check for missing Z-Wave Properties

* Fix black from mobile
2023-01-27 22:16:28 -05:00
J. Nick Koston
d0c7f42559 Fix Bluetooth discoveries missing between restarts (#86808)
* Fix Bluetooth discoveries missing between restarts

* do not load other integrations

* coverage
2023-01-27 22:16:16 -05:00
Robert Hillis
b69576d6de Add D-link tests (#86825)
* Fix D-Link config flow auth

* Add tests to D-Link

* pyupgrade
2023-01-27 22:15:27 -05:00
Robert Hillis
adb0d85511 Fix D-Link config flow auth (#86824) 2023-01-27 21:38:25 -05:00
GitHub Action
072f228e4d [ci skip] Translation update 2023-01-28 00:23:36 +00:00
Shay Levy
803cd8d9a3 Handle state unknown if last state is missing in Shelly (#86813)
Shelly - handle state unknown if last state is missing
2023-01-27 23:34:56 +01:00
Ville Skyttä
50c2992f36 Drop py39 from black target-version (#86814) 2023-01-27 22:39:52 +02:00
dependabot[bot]
15492aead0 Bump tibdex/github-app-token from 1.7.0 to 1.8.0 (#86767)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-27 20:35:56 +01:00
Bouwe Westerdijk
661f7e1522 Bump plugwise to v0.27.4 (#86812)
fixes undefined
2023-01-27 20:00:44 +01:00
Franck Nijhof
e9543a7254 Enable Ruff PT021 (#86801) 2023-01-27 17:14:04 +01:00
Franck Nijhof
8f74bff354 Enable Ruff PLC0414 (#86799) 2023-01-27 16:32:04 +01:00
Shay Levy
f9f9741d2a Separate Shelly tests parameters in parametrize (#86778)
Shelly tests - separate parameters in parametrize
2023-01-27 14:28:35 +01:00
Franck Nijhof
ef800335fb Enable Ruff PT022 (#86792)
* Enable Ruff PT022

* Adjust found cases
2023-01-27 13:57:06 +01:00
Franck Nijhof
8c993116e1 Enable Ruff SIM401 (#86790)
* Enable Ruff SIM401

* Adjust found cases
2023-01-27 13:08:44 +01:00
Franck Nijhof
bfbf9b9751 Adjusts imports in tests to match our relative import rules (#86788) 2023-01-27 12:51:58 +01:00
Franck Nijhof
89c0b27b42 Migrates tests to use UnitOfPressure enum (#86785) 2023-01-27 12:13:27 +01:00
epenet
561fc2d771 Remove deprecated unit system properties (#86643)
* Remove deprecated unit system properties

* Fix tests
2023-01-27 12:09:26 +01:00
Franck Nijhof
3ff3834cae Re-enable Ruff UP024 (#86784) 2023-01-27 12:03:27 +01:00
Franck Nijhof
a79885ceaf Enable Ruff SIM117 (#86783) 2023-01-27 11:52:49 +01:00
Franck Nijhof
57cf11f067 Enable Ruff PT015 (#86775) 2023-01-27 11:10:29 +01:00
Franck Nijhof
49148421cb Migrates tests to use UnitOfSpeed enum (#86777) 2023-01-27 10:58:55 +01:00
Franck Nijhof
fca3382d37 Migrates tests to use MediaPlayerEntityFeature enum (#86779) 2023-01-27 10:56:40 +01:00
Franck Nijhof
42c4f2f7fa Add ability for pytest to run only on changed tests in codebase (#86776) 2023-01-27 10:35:18 +01:00
Shay Levy
ae6bc96002 Shelly code quality (#86733) 2023-01-27 10:47:05 +02:00
Franck Nijhof
e4a78420b8 Enable Ruff PT013 (#86757)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-01-27 09:09:46 +01:00
Malte Franken
bd9a8ba6f1 Bump aio_georss_gdacs to 0.8 (#86761)
bump aio_georss_gdacs to 0.8
2023-01-27 08:44:30 +01:00
Jesse Hills
78207121c0 Remove esphome password from config flow data if not needed (#86763)
* Remove esphome password if not needed

* Add test

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-01-26 21:45:51 -05:00
Paulus Schoutsen
687184138c ESPHome update: Store reference to runtime data, not one of its values (#86762)
Store reference to runtime data, not one of its values
2023-01-26 21:45:42 -05:00
Franck Nijhof
e738924780 Enable Ruff SIM105 (#86759)
* Enable Ruff SIM105

* Adjust existing cases
2023-01-26 21:06:22 -05:00
GitHub Action
71d7098530 [ci skip] Translation update 2023-01-27 00:25:12 +00:00
Aaron Bach
020d52c3e2 Fix state class issues in Ambient PWS (#86758)
fixes undefined
2023-01-27 00:14:46 +01:00
Marc Mueller
b84cf3a3d9 Improve bosch_shc config_flow typing (#86739) 2023-01-26 23:39:12 +01:00
Shay Levy
2c8cb13034 Bump aioshelly to 5.3.1 (#86751) 2023-01-27 00:34:31 +02:00
Paulus Schoutsen
9cd48b4999 OpenAI: Fix device without model (#86754) 2023-01-26 23:25:02 +01:00
tronikos
04bc522fa5 Google Assistant SDK: Test unload when enable_conversation_agent (#86707)
Test unload when enable_conversation_agent
2023-01-26 16:17:23 -05:00
Marc Mueller
caa1ba7e13 Improve nuki typing (#86736)
* Use NukiCoordinator

* Make NukiEntity generic

* Remove unnecessary ABC
2023-01-26 23:03:36 +02:00
mkmer
138a522d2e Bump AIOAladdinConnect to 0.1.54 (#86749) 2023-01-26 23:00:54 +02:00
Franck Nijhof
62dcbe5258 Enable Ruff PT001 (#86730) 2023-01-26 18:05:05 +01:00
Franck Nijhof
7ed9967245 Fix state classes for duration device class (#86727) 2023-01-26 17:26:52 +01:00
epenet
b3380261d7 Add hints to get_service in azure service bus (#86694) 2023-01-26 17:20:52 +01:00
Franck Nijhof
eb5d63237c Update ruff to v0.0.235 (#86719) 2023-01-26 17:17:13 +01:00
epenet
2bef69c6a7 Add hints to get_service in integrations (1/2) (#86692) 2023-01-26 16:56:57 +01:00
epenet
0d579f6ac3 Add hints to get_service in integrations (2/2) (#86693) 2023-01-26 16:55:57 +01:00
epenet
8a5a1b810a Add hints to get_service in netgear-lte (#86700) 2023-01-26 16:54:57 +01:00
epenet
95d0329d6c Add hints to get_service in tplink-lte (#86702) 2023-01-26 16:53:24 +01:00
Franck Nijhof
d4955a3d87 Replace assert False by raising an error (#86686) 2023-01-26 16:51:43 +01:00
Michael Hansen
adeaf746ec Use device area id in intent matching (#86678)
* Use device area id when matching

* Normalize whitespace in response

* Add extra test entity
2023-01-26 09:48:49 -06:00
Franck Nijhof
38203003d2 Remove gas device class from current sensor in dsmr_reader (#86725) 2023-01-26 16:44:52 +01:00
epenet
25c451832b Remove pragma: no cover when not raising (#86706) 2023-01-26 16:34:05 +01:00
StefanIacobLivisi
468457eff4 Bump aiolivisi to 0.0.15 (#86721) 2023-01-26 16:28:16 +01:00
epenet
7af86fe130 Improve notify type hints (#86685) 2023-01-26 16:23:03 +01:00
Marc Mueller
54fcf58449 Use mypy caching [ci] (#86715) 2023-01-26 15:59:37 +01:00
Martin Hjelmare
c727f403ff Bump python-matter-server to 2.0.2 (#86712) 2023-01-26 15:43:12 +01:00
Robert Svensson
4181a9baf0 Improve Axis config flow tests (#86644)
* Improve Axis config flow tests

* Don't use prepare_config_entry
2023-01-26 14:29:06 +01:00
David F. Mulcahey
6e285c87c3 Update Inovelli Blue Series switch support in ZHA (#86711) 2023-01-26 08:27:44 -05:00
Patrick ZAJDA
2e70de9dd9 Migrate Nuki to new entity naming style (#80021)
Co-authored-by: Pascal Vizeli <pvizeli@syshack.ch>
2023-01-26 13:50:19 +01:00
mkmer
6ea234ed57 Add DeviceInfo to Honeywell (#86179)
* Add DeviceInfo
Add has_entity_name

* has_entity_name to class attribute

* Update homeassistant/components/honeywell/sensor.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/honeywell/sensor.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-01-26 13:28:36 +01:00
MHFDoge
282d6af2a2 Add known webostv button to list (#86674)
Add known button to list.
2023-01-26 13:55:07 +02:00
Pascal Reeb
484e73beaa Add device registration to the Nuki component (#79806)
* Add device registration to the Nuki component

* Name is always given by the API

* implement pvizeli's suggestions

* switch device_registry to snake_case

* fix entity naming

* unify manufacturer names
2023-01-26 12:38:10 +01:00
Robert Svensson
9a6e620810 Fix missing interface key in deCONZ logbook (#86684)
fixes undefined
2023-01-26 11:44:01 +01:00
epenet
1139555448 Add hints to get_service in kodi (#86698) 2023-01-26 11:40:48 +01:00
epenet
cbcff6435f Add hints to get_service in joaoapps join (#86699) 2023-01-26 11:15:00 +01:00
Erik Montnemery
fea30c1ce9 Terminate strings at NUL when recording states and events (#86687) 2023-01-26 11:11:03 +01:00
epenet
b9ffc67a44 Add hints to get_service in syslog (#86701) 2023-01-26 11:10:50 +01:00
epenet
ca8cc284ed Add hints to get_service in rest (#86703) 2023-01-26 11:08:06 +01:00
Paulus Schoutsen
ff91fb7d74 Make openai conversation prompt template more readable + test case (#86676) 2023-01-26 11:04:15 +01:00
Franck Nijhof
021ac84405 Add recorder platform to required test category (#86704) 2023-01-26 11:03:56 +01:00
Franck Nijhof
17d3159e77 Remove unneeded use of keys() in ZHA (#86668)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-01-26 11:02:46 +01:00
Andrey Kupreychik
fa7ad20372 Update ndms2_client to 0.1.2 (#86624)
fix https://github.com/home-assistant/core/issues/86379
fixes undefined
2023-01-26 08:53:20 +01:00
Paulus Schoutsen
28a3b4a32c Add error handling for OpenAI (#86671)
* Add error handling for OpenAI

* Simplify area filtering

* better prompt
2023-01-25 22:17:19 -05:00
David F. Mulcahey
c395698ea2 Bump ZHA quirks lib (#86669) 2023-01-25 22:15:09 -05:00
Paulus Schoutsen
e06603bbbd Google Assistant: unset agent on unload (#86635) 2023-01-25 21:33:30 -05:00
J. Nick Koston
4cafd393c6 Correct units on mopeka battery voltage sensor (#86663) 2023-01-26 02:14:59 +01:00
Franck Nijhof
e50a531cd9 Code styling tweaks to the tests - Part 2 (#86662)
Co-authored-by: jjlawren <jjlawren@users.noreply.github.com>
2023-01-26 01:23:53 +01:00
GitHub Action
7ab88fa713 [ci skip] Translation update 2023-01-26 00:23:39 +00:00
Franck Nijhof
4955dd3e1b Code styling tweaks to Nexia tests (#86660) 2023-01-25 23:36:17 +01:00
J. Nick Koston
1d1d69ca02 Update scaffold scripts to use async_forward_entry_setups (#86647) 2023-01-25 21:26:31 +01:00
Robert Svensson
a56f6cb863 Assert Axis config entry state not hass.data (#86648) 2023-01-25 21:15:03 +01:00
Franck Nijhof
7d672b4a4d Bump version to 2023.3.0dev0 (#86632) 2023-01-25 20:50:44 +01:00
Paulus Schoutsen
df0fc30695 Fix oauth2 error (#86634) 2023-01-25 20:50:16 +01:00
Joakim Plate
1b97a51b5e Print expected device class units in error log (#86125) 2023-01-25 20:45:50 +01:00
Bram Kragten
74ae351ac0 Update frontend to 20230125.0 (#86628)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-01-25 18:37:23 +01:00
J. Nick Koston
03a8dcfdc1 Add Mopeka integration (#86500)
* Add Mopeka integration

Mopeka makes BLE propane tank monitors

* cover

* wip

* wip

* bump lib

* strip binary sensor

* all sensors

* all sensors

* update tests

* change quality

* change quality

* adjust

* integration_type, strict-typing
2023-01-25 12:28:13 -05:00
Duco Sebel
c5c7bb36cc Upgrade python-homewizard-energy to 1.8.0 (#86627) 2023-01-25 17:52:31 +01:00
Michael Hansen
c5c68cd429 Bump home-assistant-intents 2023.1.25 (#86626)
* Bump home-assistant-intents 2022.1.25

* Use correct year in home-assistant-intents package
2023-01-25 10:50:15 -06:00
Paulus Schoutsen
7d641e4d3e Add OpenAI integration (#86621)
* Add OpenAI integration

* Remove empty manifest fields

* More prompt tweaks

* Update manifest

* Update homeassistant/components/openai_conversation/config_flow.py

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

* Address comments

* Add full integration tests

* Cripple the integration

* Test single instance

Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-01-25 11:30:13 -05:00
tronikos
a85c4a1ddf Bump gassist-text to 0.0.10 (#85782)
* Bump gassist-text to 0.0.9

* Bump gassist-text to 0.0.10

* Clarify when it's empty response

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-01-25 11:01:33 -05:00
Martin Hjelmare
17f85165c8 Bump python-matter-server 2.0.1 (#86625) 2023-01-25 16:49:50 +01:00
Jon Caruana
bbed1099d5 Add diagnostics to LiteJet (#86600) 2023-01-25 16:41:59 +01:00
J. Nick Koston
7ddb467ba6 Increase async_setup_platforms deprecation logging to warning (#86582) 2023-01-25 14:38:26 +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
SgtBatten
0ccab19d2c Add Mega Joule as valid unit of energy (#86055)
* Add Mega joule

* Reorder valid energy types

Alphabetical

* Add Mega Joule

* Add Mega Joule as valid energy unit

* Add Mega Joule

* Add Mega Joule as a Unit of Measurement to Energy

* Update tests

* Update tests

* Update number docstring

Co-authored-by: Roving Ronin <108674933+Roving-Ronin@users.noreply.github.com>
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-01-25 14:13:42 +01:00
Jan Bouwhuis
f182e314e5 Add number platform support to Alexa (#86553)
Co-authored-by: Mike Degatano <michael.degatano@gmail.com>
2023-01-25 13:34:53 +01:00
Petter Ljungqvist
23c9580a4a Change pressure unit of measurement from mbar to hPa in Netatmo integration (#86210)
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-01-25 13:18:47 +01:00
J. Nick Koston
a1ed2a57eb Migrate islamic_prayer_times to use async_forward_entry_setups (#86564)
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-01-25 12:45:09 +01:00
Allen Porter
7ff1265b10 Add service to create calendar events (#85805) 2023-01-25 12:43:50 +01:00
Franck Nijhof
5f1edbccd1 Remove Almond integration (#86616) 2023-01-25 12:21:26 +01:00
TheJulianJES
665a2889ec Add group support for ZHA ExecuteIfOff lights (#86465)
Add group support for ZHA "execute if off" lights
2023-01-25 06:18:23 -05:00
TheJulianJES
0cf676d501 Remove unnecessary ZHA AnalogInput sensors for Xiaomi plugs (#86261)
* Remove unnecessary ZHA AnalogInput sensors for Xiaomi plugs

* Remove AnalogInput entities from test
2023-01-25 06:17:33 -05:00
David F. Mulcahey
65a44cad8f Bump zha-quirks to 0.0.91 (#86590)
Bump ZHA quirks lib
2023-01-25 11:58:31 +01:00
Vaarlion
3007e0259d Add a contains jinja filter and test (#86390) 2023-01-25 11:51:47 +01:00
Erik Montnemery
f327a247a0 Allow a temperature sensor to be in K (#86073) 2023-01-25 11:47:52 +01:00
Malte Franken
a2fb6fbaa8 Bump httpx to 0.23.3 (#86614)
fixes undefined
2023-01-25 11:40:46 +01:00
Kevin Worrel
0eabc27982 Include all light circuit functions (#86608)
fixes undefined
2023-01-25 00:36:15 -10:00
Kevin Worrel
82f006bc5c Bump screenlogicpy to v0.6.4 (#86603)
fixes undefined
2023-01-25 00:31:31 -10:00
Martin Hjelmare
890c2277ca Fix matter clusters BasicInformation (#86615) 2023-01-25 11:19:52 +01:00
J. Nick Koston
6270f33bee Migrate samsungtv to use async_forward_entry_setups (#86575)
Replaces deprecated async_setup_platforms with async_forward_entry_setups
2023-01-25 11:17:24 +01:00
Stefan Agner
f3cf760772 Drop IoTaWatt Accumulated sensors (#86611) 2023-01-25 11:08:43 +01:00
Jesse Hills
d0b67689e0 Add issue to ESPHome deprecating api password (#86606)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-01-25 11:07:57 +01:00
Marc Mueller
60b799aac9 Misc typing improvements (#86550) 2023-01-25 11:05:36 +01:00
Malte Franken
0e9b74986f Bump aio_geojson_usgs_earthquakes to 0.2 (#86598)
bump aio_geojson_usgs_earthquakes to 0.2
2023-01-25 10:53:57 +01:00
epenet
a8c952f82f Mock async_setup_entry in SamsungTV tests (#86601)
* Mock async_setup_entry in samsungtv tests

* Adjust test_import_legacy_without_name

* Adjust test_form_reauth_encrypted

* Add specific test

* 100% coverage
2023-01-25 10:48:15 +01:00
epenet
5a77a2801b Address late review in SFRBox (#86604) 2023-01-25 10:46:45 +01:00
Kevin Stillhammer
781a4267cf Calculate data using all sections for here_travel_time (#86576)
Calculate data using all sections
2023-01-25 10:33:43 +01:00
J. Nick Koston
7bd56ad7d6 Migrate totalconnect to use async_forward_entry_setups (#86580)
* Migrate totalconnect to use async_forward_entry_setups

Replaces deprecated async_setup_platforms with async_forward_entry_setups

* fix double update and tests
2023-01-25 10:26:49 +01:00
J. Nick Koston
540eb8de16 Migrate tomorrowio to use async_forward_entry_setups (#86579)
Replaces deprecated async_setup_platforms with async_forward_entry_setups
2023-01-25 10:21:06 +01:00
J. Nick Koston
33c777529e Migrate melnor to use async_forward_entry_setups (#86572)
Replaces deprecated async_setup_platforms with async_forward_entry_setups
2023-01-25 10:20:34 +01:00
J. Nick Koston
b253bb841e Migrate lg_soundbar to use async_forward_entry_setups (#86570)
Replaces deprecated async_setup_platforms with async_forward_entry_setups
2023-01-25 10:20:09 +01:00
J. Nick Koston
f548ccfb92 Migrate Landis+Gyr to use async_forward_entry_setups (#86569)
Replaces deprecated async_setup_platforms with async_forward_entry_setups
2023-01-25 10:19:51 +01:00
J. Nick Koston
1a2652e1bb Migrate konnected to use async_forward_entry_setups (#86565)
* Migrate konnected to use async_forward_entry_setups

Replaces deprecated async_setup_platforms with async_forward_entry_setups

* update tests
2023-01-25 10:19:23 +01:00
J. Nick Koston
5285d057d2 Migrate cast to use async_forward_entry_setups (#86558)
Replaces deprecated async_setup_platforms with async_forward_entry_setups
2023-01-25 10:12:58 +01:00
J. Nick Koston
3bfdba50d9 Migrate homematicip_cloud to use async_forward_entry_setups (#86563)
* Migrate homematicip_cloud to use async_forward_entry_setups

Replaces deprecated async_setup_platforms with async_forward_entry_setups

* adapt test, this test should be rewritten
2023-01-25 10:01:51 +01:00
J. Nick Koston
e427a70dc7 Migrate heos to use async_forward_entry_setups (#86562)
* Migrate heos to use async_forward_entry_setups

Replaces deprecated async_setup_platforms with async_forward_entry_setups

* fix order
2023-01-25 10:00:55 +01:00
J. Nick Koston
c1e3c1a27c Migrate escea to use async_forward_entry_setups (#86559)
Replaces deprecated async_setup_platforms with async_forward_entry_setups
2023-01-25 10:00:12 +01:00
Maciej Bieniek
dae7bcf387 Migrate Shelly to the new entity naming style (#86574)
* Use new entity naming style in Shelly

* Suggested change

* Use lower case for gen2 description
2023-01-25 09:55:52 +01:00
Ernst Klamer
b76c0c6f08 Bump bthome-ble to 2.5.1 (#86584)
Bump bthome
2023-01-25 09:25:09 +01:00
Erik Montnemery
086a6460ef Allow customizing sensor state precision (#86074)
* Allow customizing sensor precision

* Don't convert integer strings to floats

* Tweak converting sensor state to number

* Drop default rounding to 2 decimals

* Adjust test

* Tweak rounding, improve test coverage

* Don't convert to a number if not necessary

* Raise if native_precision is set and state is not numeric

* Address review comments

* Address comments, simplify

* Don't call  property twice

* Make exception more helpful
2023-01-25 08:55:46 +01:00
Allen Porter
ba63a9600e Bump google-nest-sdm to 2.2.4 (#86595) 2023-01-25 08:29:07 +01:00
Malte Franken
e832ef78f8 Bump aio_geojson_nsw_rfs_incidents to 0.6 (#86583)
bump aio_geojson_nsw_rfs_incidents to 0.6
2023-01-25 08:27:34 +01:00
Paulus Schoutsen
6c8efe3a3b Conversation cleanup (#86592)
* Require config entry when setting Conversation agent, add new unset agent method

* Remove onboarding from conversation agent

* Type attribution

* Wrap async_process params in ConversationInput object
2023-01-24 21:47:49 -06:00
J. Nick Koston
5c6656dcac Migrate legacy nest to use async_forward_entry_setups (#86573)
Replaces deprecated async_setup_platforms with async_forward_entry_setups
2023-01-24 18:32:55 -08:00
GitHub Action
9636fe4602 [ci skip] Translation update 2023-01-25 00:24:21 +00:00
J. Nick Koston
a851b20c97 Ensure platform setup is awaited in zwave_me (#86581)
* Ensure platform setup is awaited in zwave_me

There was a race during setup since platform setup
was not being awaited and was being done in a task

Also migrates to using async_forward_entry_setups
instead of manually writing out async_forward_entry_setup

* Ensure platform setup is awaited in zwave_me

There was a race during setup since platform setup
was not being awaited and was being done in a task

Also migrates to using async_forward_entry_setups
instead of manually writing out async_forward_entry_setup
2023-01-24 23:49:02 +02:00
J. Nick Koston
4b427ec02c Migrate soundtouch to use async_forward_entry_setups (#86577)
Replaces deprecated async_setup_platforms with async_forward_entry_setups
2023-01-24 23:30:56 +02:00
J. Nick Koston
b507fb1e06 Migrate steam_online to use async_forward_entry_setups (#86578)
* Migrate steam_online to use async_forward_entry_setups

Replaces deprecated async_setup_platforms with async_forward_entry_setups

* fix steam_online tests
2023-01-24 23:30:28 +02:00
J. Nick Koston
a4c52567a7 Migrate life360 to use async_forward_entry_setups (#86571) 2023-01-24 10:42:24 -10:00
On Freund
2c9e8ad475 ReadYourMeter Pro integration (#85986)
* ReadYourMeter Pro integration

* Add __init__.py to .coveragerc

* Address code review comments

* More code review comments
2023-01-24 22:41:33 +02:00
Maciej Bieniek
52afdb4a8b Migrate NextDNS to use async_forward_entry_setups (#86567) 2023-01-24 10:26:03 -10:00
J. Nick Koston
099b844dce Migrate shelly to use async_forward_entry_setups (#86554)
Replaces deprecated async_setup_platforms with async_forward_entry_setups
2023-01-24 22:23:34 +02:00
Allen Porter
09891ead8d Add rainbird rain delay number entity, deprecating the sensor and service (#86208)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-01-24 21:16:52 +01:00
J. Nick Koston
da390dbd9a Migrate google_assistant to use async_forward_entry_setups (#86561)
Replaces deprecated async_setup_platforms with async_forward_entry_setups
2023-01-24 21:16:22 +01:00
J. Nick Koston
dbab57ba87 Migrate fjaraskupan to use async_forward_entry_setups (#86560)
Replaces deprecated async_setup_platforms with async_forward_entry_setups
2023-01-24 21:15:30 +01:00
J. Nick Koston
b91a0d21d2 Migrate anthemav to async_forward_entry_setups (#86557) 2023-01-24 20:33:45 +01:00
J. Nick Koston
c599d1e1f8 Migrate ambient_station to use async_forward_entry_setups (#86555) 2023-01-24 20:33:17 +01:00
G Johansson
b3c5c6ae9c Add sensor to group (#83186) 2023-01-24 20:12:27 +01:00
Ernst Klamer
886d2fc3a1 Add events for xiaomi-ble (#85139)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-01-24 08:48:30 -10:00
Marc Mueller
90fc8dd860 Add rss_feed_template to strict-typing (#86528)
Add rss_feed_template to strict-typing
2023-01-24 19:06:24 +01:00
puddly
4b88a71d60 Re-enable multi-PAN (#86533)
Revert "Disable multi-pan (#83603)"

This reverts commit 9c7b80090a.
2023-01-24 19:05:17 +01:00
Martin Hjelmare
ff5c1ce2d3 Bump python-matter-server to 2.0.0 (#86470) 2023-01-24 19:00:04 +01:00
Maciej Bieniek
9a68f0abe8 Store Shelly climate last_target_temp value in restore extra data (#86482)
fixes undefined
2023-01-24 07:28:34 -10:00
Marc Mueller
b89a51c63d Improve google_assistant typing (#86537) 2023-01-24 18:18:05 +01:00
tronikos
949c88930f Google Assistant SDK: Allow multiple commands in the same conversation context (#85423)
* Allow multiple commands in the same conversation

* fix test

* Apply suggestions from code review

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>

* Add missing cv import

* Update service description

* Fix test after merging dev

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2023-01-24 11:54:23 -05:00
Shay Levy
0d3bf0e911 Fix Shelly sleeping Gen2 - update data upon initialize (#86544) 2023-01-24 18:38:27 +02:00
epenet
c3c290b576 Remove files with coverage > 97% from ignore list (#86466)
* Test coverage - no-ignore

* Remove helpers/typing and scripts/auth

* Remove files with coverage > 99%

* Remove files with coverage > 98%

* Remove files with coverage > 97%

* Remove duplicates
2023-01-24 17:31:23 +01:00
tronikos
0daaa37e09 Google Assistant SDK: support audio response playback (#85989)
* Google Assistant SDK: support response playback

* Update PATHS_WITHOUT_AUTH

* gassist-text==0.0.8

* address review comments
2023-01-24 08:19:23 -08:00
Niklas Dörfler
80a8da26bc Add additional property media_channel to media_player in squeezebox component (#86402)
Add additional property media_channel to media_player
2023-01-24 17:16:51 +01:00
Marc Mueller
310d7718a0 Improve bosch_shc typing (#86535) 2023-01-24 17:06:00 +01:00
Pascal Vizeli
6cad0c7984 Bump aioecowitt 2023.01.0 (#86531) 2023-01-24 18:01:32 +02:00
Marc Mueller
b4ddff751a Improve cast typing (#86536) 2023-01-24 16:48:01 +01:00
Marc Mueller
d684aa4225 Improve rflink typing (#86538) 2023-01-24 16:47:34 +01:00
Marc Mueller
43f3b0f933 Remove unused integration constants (#86542) 2023-01-24 16:36:29 +01:00
Marc Mueller
58e8f53117 Improve ring typing (#86539) 2023-01-24 16:35:11 +01:00
Marc Mueller
d36d98937d Replace None constants [minecraft_server] (#86540) 2023-01-24 16:34:04 +01:00
Marc Mueller
f8c0e80ef7 Replace None constant [ps4] (#86541) 2023-01-24 16:33:15 +01:00
eineinhornmiau
0530f61373 Fix wrong notification sound name in LaMetric (#86483)
Fix wrong notification sound name

The wrongly named sound "static" is actually called "statistic"
https://lametric-documentation.readthedocs.io/en/latest/reference-docs/device-notifications.html
2023-01-24 14:44:53 +01:00
Artem Draft
02e973026d Add browse media and play media support in Bravia TV (#85288)
* Add media browsing and play media support in Bravia TV

* Add fix invalid Bravia Content-Type header for icons

* Avoid duplicates in source_list

* Small cleanup

* Edit comment

* Revert en.json
2023-01-24 14:31:09 +01:00
Marc Mueller
e717f56113 Add lacrosse to strict-typing (#86527)
Add lacrosse to strict-typing
2023-01-24 14:27:01 +01:00
Franck Nijhof
73c4ac53d2 Enable T20 (flake8-print) to ban use of print statements (#86525)
* Enable T20 (flake8-print) to ban use of print statements

* Make compatible with flake8 config
2023-01-24 14:24:21 +01:00
Jon Caruana
c9499f6574 Add available to LiteJet (#86506)
* Set available attribute as needed.

* Log disconnect reason.

* Change the exception that is raised.

* Bump version.
2023-01-24 14:22:16 +01:00
jan iversen
d703a83412 Bump pymodbus to v3.1.1 (#86513) 2023-01-24 14:14:49 +01:00
epenet
e96cea997e Add reboot button to SFRBox (#86514) 2023-01-24 14:13:49 +01:00
epenet
44beb350cd Add scrape to strict-typing (#86515) 2023-01-24 14:11:56 +01:00
Guido Schmitz
a9533c72fc Bump devolo_plc_api to 1.1.0 (#86516) 2023-01-24 14:11:17 +01:00
Aarni Koskela
65ad953497 Update Ruff to 0.0.231, enable D401 (#86520) 2023-01-24 13:57:08 +01:00
Jan Bouwhuis
8d678209db Add translation support for select selectors of derivative config and option flow (#86190)
* Add translation support for derivative config flow

* Revert translation support for SI units

* Undo test changes

* Remove redundant labels
2023-01-24 13:49:07 +01:00
Jan Bouwhuis
1b1f8a1d61 Add translation support for select selectors of integration integration config flow (#86212)
* Translation support method

* Translation support time unit

* Remove redundant labels
2023-01-24 13:22:33 +01:00
Jan Bouwhuis
1b4fda2321 Add translations for type select selector min_max config and option flow (#86213)
* Add translations for type select selector min_max

* Remove redundant labels
2023-01-24 13:11:11 +01:00
Franck Nijhof
14d3911bfd Update pre-commit to 3.0.0 (#86518) 2023-01-24 13:09:01 +01:00
Jan Bouwhuis
09ca8465a6 Add translation support for trafikverket_ferry weekday setting in option flow (#86219)
Add translation trafikverket_ferry weekday setting
2023-01-24 12:53:55 +01:00
Jan Bouwhuis
c97cf62b47 Add translation support for utility_meter type in config flow (#86220)
* Add translation support for utility_meter type

* Remove redundant labels
2023-01-24 12:52:26 +01:00
Todd Radel
63bddae01d Replace abodepy library with jaraco.abode to enable new Abode devices (#85474)
* replaced abodepy library with jaraco.abode

* updated jaraco.abode to version 3.2.1

* send capture event as dict
2023-01-24 12:44:38 +01:00
Jan Bouwhuis
66f12d7dab Add translations for shelly ble scanner options in option flow (#86218)
* Add translations for shelly ble scanner options

* Remove redundant labels

* isort
2023-01-24 12:25:35 +01:00
Aarni Koskela
bf41a971a2 Introduce ruff (eventually replacing autoflake, pyupgrade, flake8) (#86224) 2023-01-24 12:15:16 +01:00
epenet
df0c0297c8 Bump sfrbox-api to 0.0.5 (#86512) 2023-01-24 13:12:21 +02:00
Joakim Plate
9f5b1e58cb Support playback of channel preset in philips_js (#86491)
* Correct invalid browse check

* Support play_media of channel number

* Use ChannelStep instead of Next/Previous
2023-01-24 11:53:17 +01:00
Franck Nijhof
b7de185924 Fix CI, missing import in MQTT (#86517) 2023-01-24 11:40:40 +01:00
epenet
22dee1f92b Add reauth to SFR Box (#86511) 2023-01-24 11:00:22 +01:00
Franck Nijhof
e084fe4903 Update spotipy to 2.22.1 (#86510) 2023-01-24 10:11:14 +01:00
Franck Nijhof
b29425a9eb Update debugpy to 1.6.6 (#86509) 2023-01-24 10:10:42 +01:00
Jan Bouwhuis
42ca46d7b2 Remove redundant label for MQTT CA verification selector (#86236)
Remove redundant label for MQTT CA verification
2023-01-24 09:38:00 +01:00
wibbit
3f4c8a28ec Update geniushub-client to 0.7.0 (#85058)
* Bump geniushub-client version

Hit an issue with the latest versions of software running on GeniusHub,
that requires a bump in the geniushub-client version to resolve.

This addresses GH 78799

* Update dependancy in additional location

As per PR guid (glad I read that), I've also updated the global
requirements_all.txt file
2023-01-24 09:15:08 +01:00
Malte Franken
9fb4f6b643 Bump aio_geojson_geonetnz_volcano to 0.8 (#86507) 2023-01-24 08:39:39 +01:00
Malte Franken
8981e4820a Bump aio_geojson_geonetnz_quakes to 0.15 (#86505) 2023-01-24 08:35:28 +01:00
Ville Skyttä
5f0adfe6e4 Add missing config flow abort strings (#86180)
* Add missing `already_configured` and `already_in_progress` abort strings

* Note required strings.json entries in config_entries aborting functions
2023-01-24 08:59:32 +02:00
epenet
3ec7f0280e Add authentication to SFR Box (#85757)
* Add credentials to SFR Box

* Make username/password inclusive

* Add handler for ConnectTimeout

* Use menu

* Drop get
2023-01-24 07:22:14 +01:00
Erik Montnemery
2ab3d3ebf5 Enable strict typing for the otbr integration (#86473)
* Enable strict typing for the otbr integration

* Bump python-otbr-api to 1.0.2
2023-01-24 06:55:12 +01:00
Michael Hansen
ea95abcb30 Use intent responses from home-assistant-intents (#86484)
* Use intent responses from home_assistant_intents

* Use error responses from home_assistant_intents

* Remove speech checks for intent tests (set by conversation now)

* Bump hassil and home-assistant-intents versions

* Use Home Assistant JSON reader when loading intents

* Remove speech checks for light tests (done in agent)

* Add more tests for code coverage

* Add test for reloading on new component

* Add test for non-default response
2023-01-23 22:38:41 -05:00
Shay Levy
6d811d3fdb Bump aioshelly to 5.3.0 (#86493) 2023-01-23 15:35:05 -10:00
Dan Simpson
66e21d7701 Add Powerwall off grid switch (#86357)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-01-23 15:03:15 -10:00
Joakim Plate
60894c33a7 Set correct step on nibe number entity (#86492) 2023-01-24 01:33:27 +01:00
GitHub Action
613aa6f43a [ci skip] Translation update 2023-01-24 00:24:57 +00:00
IceBotYT
94c7f7bbb7 Add 3 new fields to LaCrosse View (#86356)
* Add BarometricPressure, FeelsLike, and WindChill

* Improve test coverage
2023-01-24 01:11:07 +01:00
J. Nick Koston
7d1dec8d31 Bump yalexs_ble to 1.12.8 (#86481) 2023-01-23 12:01:12 -10:00
J. Nick Koston
978aafdd09 Update esphome bluetooth client for python 3.11 (#86480) 2023-01-23 21:36:19 +01:00
Shay Levy
e15aaf2853 Fix Shelly RPC key instances handling (#86479)
Fix Shelly key instances handling
2023-01-23 22:12:29 +02:00
Franck Nijhof
c1332f68b3 Small adjustments to API docs config (#86474) 2023-01-23 19:58:39 +01:00
Shay Levy
e3b81ad170 Add Shelly Pro 3EM sensors (#86403)
* Add Shelly Pro 3EM sensors

* Fix Apparent Power sensor device class

Co-authored-by: Maciej Bieniek <bieniu@users.noreply.github.com>

* Adapt entity naming to new style

Co-authored-by: Maciej Bieniek <bieniu@users.noreply.github.com>
2023-01-23 18:59:55 +02:00
Martin Hjelmare
51001ad1e1 Add matter diagnostics (#86091)
* Add matter diagnostics

* Complete test typing

* Rename redact attributes helper

* Adjust device lookup after identifier addition
2023-01-23 11:05:09 -05:00
930913
295308c39c Add gates to LD2410BLE (#86412)
* Add gates to LD2410BLE

Add max motion/static gates sensors, and all the motion/static energy
gate sensors.
Also a minor fix of a description.

* Make added LD2410 BLE entities diagnostic

* Apply suggestions from code review

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2023-01-23 11:01:44 -05:00
epenet
b4dd1b8cb2 Rename logbook constant (#86464) 2023-01-23 18:00:25 +02:00
epenet
15ab04f97d Prevent wilcard coverage ignore if tests exist (#86455) 2023-01-23 16:33:57 +01:00
Jan Bouwhuis
33fb27eb1a Rename fake kitchen_sink demo locks to more common name (#86452) 2023-01-23 16:31:02 +01:00
Erik Montnemery
9ef86b7b66 Add Thread integration (#86283)
* Add Thread integration

* Address review comments

* Address review comments
2023-01-23 10:27:24 -05:00
uvjustin
c15f4ad648 Update stream timestamp discontinuity check with audio (#86446) 2023-01-23 16:27:09 +01:00
Marc Mueller
7c8f6e9fad Drop unused dtype (#86459) 2023-01-23 16:24:02 +01:00
Jan Bouwhuis
8672be3829 Always add code to template vars MQTT lock command template (#86460)
Always add `code` to template vars lock cmd tpl
2023-01-23 16:08:25 +01:00
Erik Montnemery
052145fabd Fix grammar in some hassio docstrings (#86458) 2023-01-23 15:45:08 +01:00
Marc Mueller
6f94e47270 Update Union typing (6) [Py310] (#86454) 2023-01-23 15:01:07 +01:00
G Johansson
68dd2802a1 Add remove entity in group.set service (#79401)
* Group set remove entities

* simplify

* Add test

* Fix test
2023-01-23 15:00:40 +01:00
epenet
74a76c6fe7 Don't ignore diagnostics coverage (#86440) 2023-01-23 14:55:02 +01:00
Jan Bouwhuis
f719ecf086 Add command template and code_format support for MQTT lock (#85830)
* Add command template for MQTT lock

* Fix tests
2023-01-23 14:48:07 +01:00
Marc Mueller
00e5f23249 Update Union typing (zha) [Py310] (#86453) 2023-01-23 14:46:40 +01:00
TheJulianJES
6582ee3591 Use ExecuteIfOff on color cluster for supported bulbs with ZHA (#84874)
* Add options and execute_if_off_supported properties to Color channel

* Initialize "options" attribute on Color channel (allowing cache)

* Implement execute_if_off_supported for ZHA lights

* Make sure that color_channel exists, before checking execute_if_off_supported

* Replace "color_channel is not None" check with simplified "if color_channel"

* Make "test_number" test expect "options" for init attribute

* Add test_on_with_off_color test to test old and new behavior

* Experimental code to also support "execute_if_off" for groups if all members support it

* Remove support for groups for now

Group support will likely be added in a separate PR. For now, the old/standard behavior is used for groups.
2023-01-23 07:58:18 -05:00
mbo18
29e3d06a42 Add unit and device class to ZHA RSSI sensor (#85390)
* Add unit device class to ZHA RSSI sensor

* Remove unit and device class for LQI

* mypy

* isort

* mypy2

* Update sensor.py
2023-01-23 07:36:21 -05:00
Jan Bouwhuis
b03677db1c Add validation for lock component (#85842)
* Add validation for lock integration

* Add LockEntityFeature.OPEN for lock group

* Correct tests google_assistant for extra entity

* Validate feature when registering service

* Update tests

* Add LockFeature.OPEN with group
2023-01-23 13:08:00 +01:00
epenet
ea43effcc9 Fix hassfest coverage check (#86443)
* Fix hassfest coverage check

* A-Z
2023-01-23 12:23:38 +01:00
Yuval Aboulafia
a1a324a02e Adjust icons for iperf3 (#85809) 2023-01-23 10:52:02 +01:00
majuss
fb81b1791f Bump lupupy to 0.2.5 (#86439)
fix https://github.com/home-assistant/core/issues/86299
2023-01-23 10:47:56 +01:00
Franck Nijhof
2c9d0b7f18 Merge branch 'master' into dev 2023-01-23 10:33:16 +01:00
Marc Mueller
077ca97ef8 Fix local_partial_types errors (#86410)
Fix local_partial_types errors
2023-01-23 10:29:11 +01:00
J. Nick Koston
bfc19c8cc3 Give august its own aiohttp session (#86404)
fixes undefined
2023-01-23 10:14:29 +01:00
epenet
64535175b1 Add missing conversion tests in unit conversion (#86434) 2023-01-23 10:11:11 +01:00
uvjustin
d0153f5031 Detect timestamp discontinuity in stream (#86430)
fixes undefined
2023-01-23 10:09:46 +01:00
Marc Mueller
ab76b3ffb3 Update Union typing (3) [Py310] (#86426) 2023-01-23 10:05:56 +01:00
Marc Mueller
4f87c1f30f Update pre-commit-config [Py310] (#86415) 2023-01-23 09:59:44 +01:00
Marc Mueller
6397138589 Update Optional typing (1) [Py310] (#86417)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-01-23 09:56:10 +01:00
Marc Mueller
da35097803 Update Optional typing (2) [Py310] (#86419) 2023-01-23 09:10:05 +01:00
Marc Mueller
40be2324cc Update Union typing (5) [Py310] (#86428) 2023-01-23 09:06:26 +01:00
Marc Mueller
8abce25948 Update Union typing (4) [Py310] (#86427) 2023-01-23 09:04:40 +01:00
Aarni Koskela
b0ed0d5d41 Bump pre-commit-hooks to 4.4.0 (#82984) 2023-01-23 08:43:51 +01:00
Marc Mueller
f57c0ea725 Update Union typing (2) [Py310] (#86425) 2023-01-23 08:40:09 +01:00
Marc Mueller
1eec87214f Update Union typing (1) [Py310] (#86424) 2023-01-23 08:38:45 +01:00
Marc Mueller
d7dda6bee5 Update python version used for pylint [Py310] (#86414)
* Update python version used for pylint linting [Py310]

* Import Callable from collections.abc [Py310]

* Use builtin anext [Py310]
2023-01-23 07:56:15 +01:00
Marc Mueller
45b4b0e990 Import ParamSpec from typing [Py310] (#86413)
* Import ParamSpec from typing [Py310]

* Update additional imports
2023-01-23 07:28:43 +01:00
zebardy
af107d7853 Add support for additional fields to nut (#83265)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-01-22 19:24:30 -10:00
Dan Simpson
0c1abd5f10 Bump tesla_powerwall lib version to 0.3.19 (#86421) 2023-01-22 18:59:33 -10:00
Luke
8bc303a562 Change @conway20 to @Lash-L in OralB codeowners after github rename (#86416) 2023-01-22 16:04:52 -10:00
GitHub Action
4d215e573c [ci skip] Translation update 2023-01-23 00:23:13 +00:00
Daniele Ricci
70a9c8f8aa Upgrade caldav to 1.0.1 (#85536)
Upgrade caldav (fix #40127)

date_search was deprecated in favour of search which also implements client-side recurring events expansion
2023-01-22 16:00:19 -08:00
Jan Bouwhuis
66c3115b26 Improve MQTT transport select label (#86216) 2023-01-22 22:12:06 +01:00
Shay Levy
b1ae7d409b Cleanup Climacell translations (#86325) 2023-01-22 22:40:25 +02:00
Shay Levy
9e4be56939 Shelly - handle None in RPC power sensors (#86399)
Handle None in RPC power sensors
2023-01-22 22:18:47 +02:00
starkillerOG
32c1a01159 Add Reolink dhcp discovery (#85880)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-01-22 21:09:18 +01:00
Martin Hjelmare
9c76cd1b6a Add mysensors remote platform (#86376) 2023-01-22 21:04:42 +01:00
Franck Nijhof
5102d1a5f3 Drop Python 3.9 support (#85456) 2023-01-22 20:40:33 +01:00
J. Nick Koston
7661b222b4 Bump yalexs-ble to 1.12.7 (#86396)
fixes https://github.com/home-assistant/core/issues/86182
2023-01-22 19:51:10 +01:00
Robert Svensson
7729a5cf8a Bump aiounifi to v44 (#86381)
fixes undefined
2023-01-22 19:34:48 +01:00
Franck Nijhof
a22041c9be 2023.1.7 (#86389) 2023-01-22 19:16:56 +01:00
J. Nick Koston
52ea64d1d0 Fix repr for States and Events without a timestamp (#86391) 2023-01-22 08:11:42 -10: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
71c4588747 Bumped version to 2023.1.7 2023-01-22 17:48:00 +01:00
uvjustin
79a3d2e6f6 Pass frag_duration as integer (#86375)
fixes undefined
2023-01-22 17:47:21 +01:00
Daniel Hjelseth Høyer
974601cc2e Update pyTibber to 0.26.11 (#86316) 2023-01-22 17:47:17 +01:00
J. Nick Koston
71d54da673 Bump recommended esphome version for bluetooth proxies to 2022.12.4 (#86308)
This will fix an MTU issue reported with airthings and
other devices.

needs https://github.com/esphome/esphome/pull/4323
2023-01-22 17:47:14 +01:00
Shay Levy
9669b286c4 Fix Shelly sleeping Gen2 - do not refresh from zeroconf discovery (#86296) 2023-01-22 17:47:11 +01:00
Klaas Schoute
72dae914fc Bump odp-amsterdam to v5.0.1 (#86252)
Bump package version to v5.0.1
2023-01-22 17:47:07 +01:00
J. Nick Koston
0b0e977ce9 Remove history use_include_order configuration option (#86365) 2023-01-22 17:43:05 +01:00
Robert Svensson
332d3e0f19 Use fixtures to setup Axis integration in tests (#86034)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-01-22 17:33:40 +01:00
uvjustin
8e117ee499 Pass frag_duration as integer (#86375)
fixes undefined
2023-01-22 17:28:17 +01:00
epenet
30bf0634fe Add per-file-ignore to pylint (#86289) 2023-01-22 17:26:24 +01:00
mkmer
a0810053f1 Bump AIOSomecomfort to 0.0.3 (#86371)
fixes undefined
2023-01-22 17:25:27 +01:00
Michael
504a3d3028 Bump py-synologydsm-api to 2.0.2 (#86374) 2023-01-22 17:24:31 +01:00
Michael
e0d0dc05e4 Support password less PI-Hole installations (#86183) 2023-01-22 17:20:12 +01:00
Duco Sebel
bcec69fec1 Upgrade python-homewizard-energy to 1.7.0 (#86383) 2023-01-22 17:11:27 +01:00
epenet
e1fc494b54 Add missing ratio test cases in unit conversion (#86340)
* Add missing ratio test cases in unit conversion

* Improve ratio test to check inverse
2023-01-22 16:39:45 +01:00
G Johansson
b9a7b908f3 Bump pytrafikverket to 0.2.3 (#86341)
pytrafikverket 0.2.3

Co-authored-by: Shay Levy <levyshay1@gmail.com>
2023-01-22 13:02:49 +02:00
J. Nick Koston
5ff0479c16 Split history websocket API into its own file (#86364) 2023-01-21 18:45:00 -10:00
J. Nick Koston
4c84824ac8 Increase default recorder commit interval to 5 seconds (#86115) 2023-01-21 18:09:00 -10:00
Tom Harris
8cf6ebd363 Allow changing the Insteon USB device (#86290)
* Reconfig PLM device

* Test config change
2023-01-21 23:04:25 -05:00
J. Nick Koston
c842666bea Avoid creating logbook stream task if unsubscribed while waiting for executor (#86363) 2023-01-21 17:20:33 -10:00
J. Nick Koston
8227c84e05 Add support for streaming (push) history (#85892)
* Add support for streaming (push) history

Currently we poll for history data, like logbook we can stream
this data to avoid database overhead

* Update homeassistant/components/history/__init__.py

* merge filter

* expose new api

* expose new api

* expose new api

* expose new api

* coverage

* tests

* fixes

* tweak

* tweak

* tweak

* DRY

* leaky

* test for specific entities

* test for specific entities

* test for specific entities

* test for specific entities

* test for specific entities

* cover

* cover

* more cover

* tweak

* make sure it works before history starts

* fix test

* cover

* tweak

* make sure we unsub on overflow

* Update homeassistant/components/history/__init__.py

* Update homeassistant/components/history/__init__.py

* fix race in test

* fix db executor access

* relo above task creation
2023-01-21 22:03:41 -05:00
Shay Levy
0657c99efd Revert "Add SSHd and GH CLI to devcontainer to support gh net" (#86360)
Revert "Add SSHd and GH CLI to devcontainer to support `gh net` (#81623)"

This reverts commit 15db63bb3b.
2023-01-21 21:18:22 -05:00
GitHub Action
771e07c68b [ci skip] Translation update 2023-01-22 00:25:52 +00:00
Shay Levy
d5797d9f7d Cleanup Shelly imports (#86359)
* Cleanup Shelly imports

* Cleanup tests
2023-01-22 01:26:54 +02:00
Guido Schmitz
164fad112c React on IP changes in devolo Home Network (#86195) 2023-01-21 12:22:13 -10:00
J. Nick Koston
aac89a3493 Bump recommended esphome version for bluetooth proxies to 2022.12.4 (#86308)
This will fix an MTU issue reported with airthings and
other devices.

needs https://github.com/esphome/esphome/pull/4323
2023-01-22 00:05:06 +02:00
Joakim Plate
53b931e21a Don't interpret negative verbosity as debug (#86318)
* Don't interpret negative verbosity as debug

CI run with -qq which is a negative verbosity

* Make sure all caplog tests get debug level

* Update tests/conftest.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-01-22 00:03:57 +02:00
J. Nick Koston
ca4d7634a8 Switch an asyncio.wait_for in the template helper to async_timeout (#86349)
Switch an asyncio.wait_for in the template helper to async_timeout

Eliminates the extra task when calling async_render_will_timeout
2023-01-22 00:02:03 +02:00
J. Nick Koston
2dca826fa9 Bump flux_led to 0.28.35 (#86352)
changelog: https://github.com/Danielhiversen/flux_led/compare/0.28.34...0.28.35
2023-01-22 00:01:08 +02:00
J. Nick Koston
a49461a040 Restore flume scan interval to match app (#86354)
To stay under the API limit the device connection is now
only checked hourly and notifications are only checked every
5 minutes

fixes #82336
2023-01-22 00:00:12 +02:00
J. Nick Koston
a62b8a4f5b Add zeroconf discovery to Synology DSM (#86062) 2023-01-21 11:12:18 -10:00
Christopher Bailey
772a432c4d Fix edge cases for adding/enabling sensors for UniFi Protect (#86329)
Co-authored-by: J. Nick Koston <nick@koston.org>
fixes undefined
2023-01-21 09:38:59 -10:00
mkmer
5306883288 Fix Honeywell unavailable state on connection lost (#86312)
* Fix for Issue 62957

* Cleanup exception test

* rework connection error retry logic

* Refactor HoneywellData class

* move _atr_available to correct location

* await create_task
2023-01-21 20:28:05 +01:00
mkmer
402be4ebde Fix preset modes in Honeywell (#86293)
* Fix for issue #83841

* in instead of =

* Address None for entity maps

* Rework retry logic

* Committed to the wrong branch....
This reverts commit 40e19407a3 (Rework retry logic, 2023-01-21).

* Remove none, change log wording
2023-01-21 20:21:03 +01:00
Luke
f608e150fd Fix incorrect mock in whirlpool (#86331)
* Added async according to error logs

* changed Asyncmock to magicmock get_aircon_mock

* changed attr_callback to MagicMock for sensor_mock
2023-01-21 20:18:43 +01:00
epenet
91c502ae55 Bump bcrypt to 4.0.1 (#86338) 2023-01-21 11:16:28 -05:00
epenet
e8d19e7c62 Ensure all unit converters are tested (#86271)
* Ensure all unit converters are tested

* Adjust

* Simplify

* Simplify

* docstring
2023-01-21 13:11:13 +01:00
Michael Hansen
255611238b Conversation config (#86326)
* Restore conversation config

* Fall back to en for en_US, etc.

* Simplify config passing around

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-01-20 21:39:49 -05:00
GitHub Action
e1483ff746 [ci skip] Translation update 2023-01-21 00:24:12 +00:00
Erik Montnemery
1e2f00e186 Improve device automation validation (#86143) 2023-01-21 00:44:17 +01:00
shbatm
0c8b6c13fc Bump PyISY to 3.1.9 for performance improvements (#86297) 2023-01-20 13:09:00 -10:00
Daniel Hjelseth Høyer
50800d2590 Update pyTibber to 0.26.11 (#86316) 2023-01-21 00:01:17 +01:00
Nathan Spencer
be5fe29dc9 Correct pet_weight sensor state class in litterrobot (#86320) 2023-01-21 00:00:05 +01:00
Maciej Bieniek
58bfeb3110 Fix state_class for Accuweather precipitation sensor (#86088) 2023-01-20 23:36:25 +01:00
Jan Bouwhuis
80929c5f8c Update stale docstring on demo lock platform (#86306)
Update stale docstring
2023-01-20 23:01:32 +01:00
starkillerOG
7e51aeb916 Reolink add binary sensors (#85654)
Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-01-20 22:27:59 +01:00
mkmer
7f4a727e10 Address Honeywell late review (#86202) 2023-01-20 20:30:48 +01:00
Shay Levy
df77646c8a Fix Shelly sleeping Gen2 - do not refresh from zeroconf discovery (#86296) 2023-01-20 21:27:31 +02:00
Franck Nijhof
914704e459 Remove deprecated Uptime YAML configuration (#86292) 2023-01-20 18:50:32 +02:00
Franck Nijhof
7e8c081065 Refactor HomeWizard switch platform to use entity descriptions (#86011) 2023-01-20 08:49:04 -05:00
Franck Nijhof
a9728bd3a5 Update python-homewizard-energy to 1.6.1 (#86274)
* Update python-homewizard-energy to 1.6.1

* Adjust tests
2023-01-20 08:48:48 -05:00
Franck Nijhof
c14aa7bee4 Automatically set up HomeWizard during onboarding (#86024)
* Automatically set up HomeWizard during onboarding

* Add disabled API during onboarding test

* Mark onboarding complete half way in the test
2023-01-20 08:48:36 -05:00
Franck Nijhof
db6cacafcb Add battery device class to Glances battery sensor (#86278) 2023-01-20 08:47:38 -05:00
Erik Montnemery
ae39b95bb1 Rename otbr integration (#86284)
Rename otbr integration
2023-01-20 08:32:41 -05:00
Erik Montnemery
d94f007dbf Import recorder locally in test fixtures (#86286) 2023-01-20 14:22:48 +01:00
Franck Nijhof
24fdd588fd Code styling tweaks to the tests - Part 1 (#86192) 2023-01-20 13:52:46 +01:00
Franck Nijhof
79b52a2b41 Stricter pylint message control (#86154) 2023-01-20 13:47:55 +01:00
fwestenberg
29b2b6727e Add Stookwijzer (#84435)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-01-20 13:42:47 +01:00
Duco Sebel
658db7ff05 Add sensors for smart and gas meter identifiers (serial numbers) in HomeWizard (#86282) 2023-01-20 13:42:01 +01:00
Michael
e1512fd3e1 Support password less PI-Hole installations (#86184)
fixes undefined
2023-01-20 13:02:44 +01:00
Jan Bouwhuis
92742ae423 Add jammed state support for MQTT lock (#86010)
* Add jammed state support for MQTT lock

* Correct payload jammed key

* Add tests - rename solved to ok

* Rename jammed state and template topics to motor

* Use state topic for handling motor state

* Follow up comments

* Change default behaviour `state_unjammed`

* Skip `state_unjammed`
2023-01-20 12:19:26 +01:00
Marc Mueller
c8b9260f92 Add option to run only pylint or mypy tests [ci] (#86260) 2023-01-20 11:43:52 +01:00
Shay Levy
585c4acfee Shelly - use common coordinator base class (#86262)
* Shelly - use common coordinator base class

* rename entry to device_entry

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

Co-authored-by: J. Nick Koston <nick@koston.org>
2023-01-20 09:43:01 +02:00
starkillerOG
3c4455c696 Bump reolink-aio to 0.3.0 (#86259)
* Bump reolink-aio to 0.3.0

* fix typo

* ReolinkException
2023-01-20 08:05:43 +01:00
Duco Sebel
4be7b62607 Bumb python-homewizard-energy to 1.6.0 (#86255) 2023-01-19 21:33:58 -05:00
Klaas Schoute
afb704f607 Bump odp-amsterdam to v5.0.1 (#86252)
Bump package version to v5.0.1
2023-01-19 21:26:51 -05:00
Aarni Koskela
656632f504 Fix docstring in helpers.template_entity (#86227) 2023-01-19 21:24:44 -05:00
Paulus Schoutsen
9a4329aa1d 2023.1.6 (#86251) 2023-01-19 20:06:01 -05:00
Marc Mueller
f00aadfc25 Improve ld2410_ble generic typing (#86258) 2023-01-20 01:50:58 +01:00
GitHub Action
59ad232ce5 [ci skip] Translation update 2023-01-20 00:25:31 +00:00
Michael Hansen
5aca996f22 HassTurnOn/Off intents to also handle cover entities (#86206)
* Move entity/area resolution to async_match_states

* Special case for covers in HassTurnOn/Off

* Enable light color/brightness on areas

* Remove async_register from default agent

* Remove CONFIG_SCHEMA from conversation component

* Fix intent tests

* Fix light test

* Move entity/area resolution to async_match_states

* Special case for covers in HassTurnOn/Off

* Enable light color/brightness on areas

* Remove async_register from default agent

* Remove CONFIG_SCHEMA from conversation component

* Fix intent tests

* Fix light test

* Fix humidifier intent handlers

* Remove DATA_CONFIG for conversation

* Copy ServiceIntentHandler code to light

* Add proper errors to humidifier intent handlers
2023-01-19 17:15:01 -06:00
Paulus Schoutsen
8f10c22a23 Update ESPHome devices from HA (#86249)
* Update ESPHome devices from HA

* esphome-dashboard-api==1.2.2

* Limit to 1 parallel ESPHome update
2023-01-19 16:28:46 -05:00
Paulus Schoutsen
aa7e051538 Bumped version to 2023.1.6 2023-01-19 16:09:03 -05:00
Joris Pelgröm
82a13740b3 Update allowlisted OAuth redirect URIs for Wear OS in China (#86247) 2023-01-19 16:08:59 -05:00
Shay Levy
8dd0752bd0 Fix Shelly sleeping Gen2 device updates (#86198) 2023-01-19 16:08:58 -05:00
J. Nick Koston
58beab1b59 Fix live logbook stalling when there are no historical events with a high commit interval (#86110)
* Force live logbook to send an empty message to indicate no results

Since the sync task can take a while if the recorder is
busy, the logbook will appear to hang if we do not send
the first partial message even if its empty.

This work is in preparation for a higher database
commit interval where this issue is most obvious.

The historical only path did not have this issue because
it never had to wait for the db sync.

* update tests
2023-01-19 16:08:57 -05:00
Marcel van der Veldt
2c127c00d4 Adjust device registry for Matter devices (#86108)
* adjust device registry

* ignore test unique id

* update test

* ditch uniqueid + prefix serial

* adjust test

* add tests

* fix switch test

* prefix all identifiers

* Update homeassistant/components/matter/adapter.py

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

* no underscore in id

* fix test

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-01-19 16:08:56 -05:00
J. Nick Koston
67f7a9ea78 Bump govee-ble to 0.21.1 (#86103)
fixes https://github.com/home-assistant/core/issues/85580
2023-01-19 16:08:34 -05:00
Franck Nijhof
15a35004dd Code styling tweaks to the Matter integration (#86096) 2023-01-19 16:07:48 -05:00
Marcel van der Veldt
d935f9400d Fix Matter unique_id generation (#86046)
* bae entity unique id on Operational Instance Name standard

* Update homeassistant/components/matter/entity.py

Co-authored-by: Stefan Agner <stefan@agner.ch>

* also adjust unique id for devices

* final adjustment

* remove assert on server_info

* move device info to init

* fabric_id_hex

* use DeviceInfo instead of dict

* fix test

Co-authored-by: Stefan Agner <stefan@agner.ch>
2023-01-19 16:07:47 -05:00
Joris Pelgröm
8aeb20db00 Update allowlisted OAuth redirect URIs for Wear OS in China (#86247) 2023-01-19 16:07:08 -05:00
Paulus Schoutsen
9631146745 Add conversation mobile app webhook (#86239)
* Add conversation mobile app webhook

* Re-instate removed unused import which was used as fixture
2023-01-19 13:59:02 -05:00
Aarni Koskela
c0d9dcdb3f Fix docstring in esphome.bluetooth.client (#86226) 2023-01-19 15:21:32 +01:00
Aarni Koskela
40d39a15c9 Fix stray string literal in bluetooth test wrapper (#86228) 2023-01-19 14:53:43 +01:00
GrahamJB1
200d3ae845 modbus slave unique ids (#86126)
modbus slave unique ids
2023-01-19 11:08:11 +01:00
epenet
6802f3db30 Add filter to strict-typing (#86215)
* Add filter to strict-typing

* Adjust comment
2023-01-19 11:07:42 +01:00
Patrick
3f348714e2 75142 Added QEMU_CPU ARG to the dockerfile (#86178)
at the moment when building for armhf its downloading the wrong packages since version 2022.7.6
Trying to start newer version with an armv6 raspberry leads to an infinite loop of exit code 256
2023-01-19 10:22:23 +01:00
GrahamJB1
bcd4c031c6 Support float in modbus register sensor (#86128)
register sensor should support float
2023-01-19 09:41:49 +01:00
Franck Nijhof
6f44bd43b0 Clean up HomeWizard diagnostic tests (#86211) 2023-01-19 09:35:12 +01:00
epenet
74096b87eb Add type hints to Filter (#86165) 2023-01-19 08:09:18 +01:00
epenet
4b6157cd9b Add type hints to Filter integration tests (#86169)
* Add type hints to filter tests

* Adjust

* Ensure strings are passed to State constructor

* Simplify Recorder import
2023-01-19 08:09:04 +01:00
Michael Hansen
2f98485ae7 Add conversation reload service (#86175)
* Add preload and reload service calls to conversation

* Add conversation preload/reload to websocket API

* Merge prepare into reload

* reload service and prepare websocket API

* Add preload and reload service calls to conversation

* Add conversation preload/reload to websocket API

* Merge prepare into reload

* reload service and prepare websocket API

* Add language lock for loading intents

* Add more tests for code coverage
2023-01-18 19:36:51 -06:00
Jack Boswell
ca885f3fab Add a switch to Starlink for stow/unstow (#85730)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-01-18 14:57:48 -10:00
GitHub Action
d1ecc418bb [ci skip] Translation update 2023-01-19 00:25:04 +00:00
Tom Harris
353638426e Cleanup Insteon code issues (#86173)
Clean up code issues
2023-01-19 01:27:59 +02:00
Shay Levy
0dabbcfca1 Fix Shelly sleeping Gen2 device updates (#86198) 2023-01-19 01:11:40 +02:00
Brandon Rothweiler
37c1052cce Rename Eufy integration to EufyHome (#86065) 2023-01-18 21:47:57 +01:00
Paulus Schoutsen
a83318f373 ESPHome dashboard tweaks (#86176) 2023-01-18 21:15:37 +01:00
930913
4f63398941 Add sensor platform to LD2410BLE (#85276)
* Add sensor platform to LD2410BLE

- Add platform
- Add moving target distance entity
- Add static target distance entity
- Add moving target energy entity
- Add static target energy entity

* Add detection distance entity

* Align bluetooth-data-tools version

* Generate sensors from description

Also add state_class and unfactor description lambdas.

* Optimise LD2410BLE collections

Co-authored-by: J. Nick Koston <nick@koston.org>
2023-01-18 14:56:06 -05:00
Paulus Schoutsen
29337bc6eb Reload ESPHome config entries when dashboard info received (#86174) 2023-01-18 17:59:55 +01:00
Shay Levy
c40c37e9ee Add reauth flow to webOS TV integration (#86168)
* Add reauth flow to webOS TV integration

* Remove unnecessary else
2023-01-18 18:48:38 +02:00
Paulus Schoutsen
f2b348dbdf Add OTBR WebSocket API (#86107)
* Add OTBR WebSocket API

* Not always active dataset

* Move logic to data class

* Remove retry until we need it

* Test all the things
2023-01-18 11:33:15 -05:00
Robert Svensson
e43802eb07 Use more _attrs_* in Axis entities (#85555)
* Use _attr_available

* Use _attr_is_on

* Use _attr_name

* Make some values private

* Update names of axis entity base classes

* Fix review comments
2023-01-18 17:27:13 +01:00
Marcel van der Veldt
4bebf00598 Adjust device registry for Matter devices (#86108)
* adjust device registry

* ignore test unique id

* update test

* ditch uniqueid + prefix serial

* adjust test

* add tests

* fix switch test

* prefix all identifiers

* Update homeassistant/components/matter/adapter.py

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

* no underscore in id

* fix test

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-01-18 17:17:33 +01:00
mkmer
5e6ba594aa Change Honeywell somecomfort API to AIOSomecomfort API (#86102)
* Move to AIOSomecomfort

* Remove unused constant

* Improve test coverage to 100

* Update homeassistant/components/honeywell/__init__.py

remove "todo" from code

Co-authored-by: Erik Montnemery <erik@montnemery.com>

* Missing cannot_connect translation

* add asyncio errors
update devices per entity
rework retry login

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-01-18 16:03:13 +01:00
Marc Mueller
f0ba7a3795 Update pylint to 2.15.10 (#86167) 2023-01-18 15:01:24 +01:00
Erik Montnemery
fea5330cee Change 'Sky Connect' to 'SkyConnect' (#86166) 2023-01-18 08:43:38 -05:00
Marc Mueller
141acba40d Remove unnecessary try-else (3) (#86160) 2023-01-18 14:25:28 +01:00
Marc Mueller
bc115634d1 Remove unnecessary try-else (2) (#86159) 2023-01-18 14:25:09 +01:00
Marc Mueller
1cc8feabb7 Remove unnecessary try-else (1) (#86158) 2023-01-18 14:24:52 +01:00
Marc Mueller
6d336ec136 Remove unnecessary try-else (5) (#86164) 2023-01-18 14:10:13 +01:00
Marc Mueller
d26484d482 Remove unnecessary try-else (4) (#86161) 2023-01-18 13:17:08 +01:00
Marc Mueller
a44e44b7d0 Add missing raise for exceptions (#86155) 2023-01-18 12:48:30 +01:00
epenet
9cdf7a09ed Rename precision variable in Filter (#86090) 2023-01-18 12:40:04 +01:00
epenet
1cfcc9313b Fix incorrect type hint in Filter (#86141) 2023-01-18 12:39:00 +01:00
Artem Draft
a87a9790e9 Bump pybravia to 0.3.1 (#86153)
fixes undefined
2023-01-18 12:24:04 +01:00
Franck Nijhof
382e1ac679 Code styling tweaks to the ESPHome integration (#86146) 2023-01-18 11:10:16 +01:00
Erik Montnemery
f17a829bd8 Only wait for import flows to initialize at setup (#86106)
* Only wait for import flows to initialize at setup

* Update hassio tests

* Update hassio tests

* Apply suggestions from code review

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

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-01-18 10:44:18 +01:00
Shay Levy
767b43bb0e Remove WebOS TV script translation leftover (#86109)
Keep only english changes
2023-01-18 10:11:08 +01:00
GrahamJB1
9d9817328b Reset Modbus value on down (#86127)
* modbus: slave should reset value on sensor down as parent does that

* modbus: slave should reset value on sensor down as parent does that
2023-01-18 08:49:38 +01:00
mkmer
0b45fb6dc3 Bump AIOAladdinConnect to 0.1.53 (#86129) 2023-01-18 08:37:15 +01:00
Matthew Donoughe
33d0dec648 Update to pylutron_caseta to 0.18.0 (#86133) 2023-01-17 17:56:15 -10:00
J. Nick Koston
5279535046 Fix live logbook stalling when there are no historical events with a high commit interval (#86110)
* Force live logbook to send an empty message to indicate no results

Since the sync task can take a while if the recorder is
busy, the logbook will appear to hang if we do not send
the first partial message even if its empty.

This work is in preparation for a higher database
commit interval where this issue is most obvious.

The historical only path did not have this issue because
it never had to wait for the db sync.

* update tests
2023-01-17 21:06:37 -05:00
GitHub Action
87b2a73460 [ci skip] Translation update 2023-01-18 00:24:40 +00:00
Franck Nijhof
91aaca6471 Code styling tweaks to the Alexa integration (#86121) 2023-01-18 01:01:30 +02:00
J. Nick Koston
b722a7e05b Ensure flux_led does not try to reload while setup is in progress (#86122)
There was a discovery race in flux_led that could trigger
it to try to reload while in progress if the device data
changed
2023-01-17 22:51:04 +01:00
Daniel Gangl
cc74fcbda7 Remove deprecated zamg YAML config (#86113) 2023-01-17 21:58:20 +01:00
J. Nick Koston
1c2510bfb3 Bump govee-ble to 0.21.1 (#86103)
fixes https://github.com/home-assistant/core/issues/85580
2023-01-17 09:48:21 -10:00
Joakim Plate
829df7ddfd Adjust translations for zha buttons (#86095) 2023-01-17 21:36:11 +02:00
Erik Montnemery
f93bbd55ba Improve logging shutdown (#85812)
* Improve logging shutdown

* Update test
2023-01-17 20:06:25 +01:00
Erik Montnemery
f6cd399b9e Adjust kitchen_sink test (#86099) 2023-01-17 19:31:10 +01:00
Aaron Bach
27359dfc89 Subclass a DataUpdateCoordinator for Ridwell (#85644) 2023-01-17 19:31:00 +01:00
Erik Montnemery
b4abfb1697 Adjust Thread config flow (#86097)
* Adjust Thread config flow

* Improve tests

* Update homeassistant/components/otbr/config_flow.py

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

Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-01-17 13:27:33 -05:00
Franck Nijhof
bd1c476edf Code styling tweaks to the Matter integration (#86096) 2023-01-17 19:09:12 +01:00
Erik Montnemery
cf68d081ca Allow manually setting up the Thread integration (#86087) 2023-01-17 12:50:29 -05:00
Jon Caruana
65c4e63e30 Bump pylitejet to 0.4.6 (now with async!) (#85493) 2023-01-17 16:53:16 +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
Erik Montnemery
096ef5da47 Use Home Assistant swing modes in tado climate (#84278) 2023-01-17 16:13:49 +01:00
Marcel van der Veldt
072517f17e Fix Matter unique_id generation (#86046)
* bae entity unique id on Operational Instance Name standard

* Update homeassistant/components/matter/entity.py

Co-authored-by: Stefan Agner <stefan@agner.ch>

* also adjust unique id for devices

* final adjustment

* remove assert on server_info

* move device info to init

* fabric_id_hex

* use DeviceInfo instead of dict

* fix test

Co-authored-by: Stefan Agner <stefan@agner.ch>
2023-01-17 15:39:42 +01:00
Erik Montnemery
3cd6bd87a7 Remove config entry specifics from FlowManager (#85565) 2023-01-17 15:26:17 +01:00
Duco Sebel
0f3221eac7 Add Enum device class for HomeWizard active tariff (#86078)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-01-17 14:46:08 +01:00
lunmay
8485588aca Fix typo in energy: misplaced closing brace (#86027) 2023-01-17 14:34:27 +01:00
Erik Montnemery
11b9a0b383 Add Thread integration (#85002)
* Add Thread integration

* Add get/set operational dataset as TLVS

* Add create operational dataset

* Add set thread state

* Adjust after rebase

* Improve HTTP status handling

* Improve test coverage

* Change domains from thread to otbr

* Setup otbr from a config entry

* Add files

* Store URL in config entry data

* Make sure manifest is not sorted

* Remove useless async

* Call the JSON parser more

* Don't raise exceptions without messages

* Remove stuff which will be needed in the future

* Remove more future stuff

* Use API library

* Bump library to 1.0.1
2023-01-17 14:01:36 +01:00
Tiit Rätsep
9b835f88c7 Soma connect update (#85682)
* Add support for Connect U1

* update pysoma to latest version

* Changes requested by epenet

* Extend exeption handling to pass all tests
2023-01-17 13:17:59 +01:00
Guido Schmitz
cb36905ce5 Add diagnostics to devolo Home Network (#86022) 2023-01-17 12:59:02 +01:00
epenet
8e7e210693 Fix invalid constant in vicare (#86079) 2023-01-17 12:29:32 +01:00
epenet
b7f484a84f Set renault quality scale to platinum (#85753)
* Set renault quality scale to platinum

* Ensure coordinators do not run at the same time

* Add comment
2023-01-17 11:50:17 +01:00
epenet
1918f21fb1 Raise HomeAssistantError in Renault (#86071) 2023-01-17 11:44:18 +01:00
hpirila
6c5f9c6fcb Add sous vide start functionality (#84447) 2023-01-17 11:42:04 +01:00
Hans Oischinger
1e9de194d3 Add vicare buffer top/main temperature sensors (#79466)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
fixes undefined
2023-01-17 11:34:38 +01:00
Franck Nijhof
566c0f63bd Removes OpenALPR Local integration (#85544) 2023-01-17 10:43:14 +01:00
epenet
f7d69ee325 Remove deprecated Renault service (#86070) 2023-01-17 10:28:33 +01:00
J. Nick Koston
551e098177 Make event.time_tracker_utcnow patchable with freezegun (#86051) 2023-01-17 09:47:31 +01:00
Franck Nijhof
c5fb3e7fab 2023.1.5 (#86058) 2023-01-17 09:40:32 +01:00
Erik Montnemery
14a32cd63b Allow converting units of additional sensor device classes (#86072) 2023-01-17 09:35:53 +01:00
Jack Boswell
ec1b4d5651 Address Starlink code quality and add update sensor (#86066)
* Use dt.now

* Bring back update binary sensor

* Don't patch coordinator

* Add silver quality scale
2023-01-17 09:10:40 +01:00
starkillerOG
669e6202ad bump reolink-aio to 0.2.1 (#85571) 2023-01-17 08:36:24 +01:00
Franck Nijhof
4aba3fdad6 Code styling tweaks to the zeroconf integration (#86048) 2023-01-16 18:35:23 -10:00
Brandon Rothweiler
2ed6df9003 Add EufyLife Bluetooth integration (#85907)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-01-16 18:29:50 -10:00
Paulus Schoutsen
6a7e6ad0fd Bumped version to 2023.1.5 2023-01-16 21:47:10 -05:00
Daniel Hjelseth Høyer
5656129b60 Update pyTibber to 0.26.8 (#86044) 2023-01-16 21:47:01 -05:00
J. Nick Koston
96578f3f89 Handle ignored shelly entries when discovering via zeroconf (#86039)
fixes https://github.com/home-assistant/core/issues/85879
2023-01-16 21:47:00 -05:00
Shay Levy
4138e518ef Bump aiowebostv to 0.3.2 (#86031)
fixes undefined
2023-01-16 21:46:59 -05:00
Shay Levy
aa43acb443 Update webOS TV codeowners (#85959) 2023-01-16 21:46:58 -05:00
Shay Levy
b459261ef2 Fix webOS TV SSDP discovery missing friendly name (#85917) 2023-01-16 21:44:02 -05:00
Shay Levy
a318576c4f Bump aiowebostv to 0.3.1 to fix support for older devices (#85916)
Bump aiowebostv to 0.3.1
2023-01-16 21:44:01 -05:00
Allen Porter
9a6aaea9db Add a timeout during OAuth token exchange and additional debug logging (#85911) 2023-01-16 21:44:00 -05:00
Allen Porter
627ded42f5 Bump google-nest-sdm to 2.2.2 (#85899)
* Bump google-nest-sdm to 2.2.0

* Bump nest to 2.2.1

* Bump google-nest-sdm to 2.2.2
2023-01-16 21:43:59 -05:00
Allen Porter
fa09eba165 Bump google-nest-sdm to 2.1.2 (#84926) 2023-01-16 21:43:59 -05:00
Jan Stienstra
fcf53668c5 Skip over files without mime type in Jellyfin (#85874)
* Skip over files without mime type

* Skip over tracks without mime type
2023-01-16 21:40:30 -05:00
J. Nick Koston
d61b915286 Bump aiohomekit to 2.4.4 (#85853)
fixes https://github.com/home-assistant/core/issues/85400
fixes https://github.com/home-assistant/core/issues/84023
2023-01-16 21:40:29 -05:00
Shay Levy
b0153c7deb Fix WebOS TV image fetch SSL verify failure (#85841) 2023-01-16 21:40:28 -05:00
tronikos
2447e24677 Remove oauth2client dependency in Google Assistant SDK (#85785)
Remove import oauth2client, inline 2 constants
2023-01-16 21:40:27 -05:00
J. Nick Koston
502fea5f95 Bump pySwitchbot to 0.36.4 (#85777) 2023-01-16 21:40:26 -05:00
Yuval Aboulafia
caa8f9e49b Remove WAQI unsupported UOM (#85768)
fixes undefined
2023-01-16 21:40:25 -05:00
Erik Montnemery
8beb043d62 Remove sky connect config entry if USB stick is not plugged in (#85765)
* Remove sky connect config entry if USB stick is not plugged in

* Tweak cleanup

* Give some stuff more cromulent names

* Do the needful

* Add tests

* Tweak
2023-01-16 21:40:25 -05:00
starkillerOG
cb27cfe7dd Reolink check for admin (#85570)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
fixes undefined
2023-01-16 21:40:24 -05:00
Michael
1d5ecdd4ea Make API key mandatory for PI-Hole (#85885)
add reauth, so make api-key mandatory
2023-01-16 21:34:42 -05:00
Luke
8b3a6514a3 oralb async_poll doc comment typo (#86049) 2023-01-16 14:26:54 -10:00
GitHub Action
d2e11797f8 [ci skip] Translation update 2023-01-17 00:24:30 +00:00
Aidan Timson
26c419705e Add typings to OVO Energy integration (#75944)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-01-16 23:26:40 +01:00
Ville Skyttä
f0e6f45e43 Remove signal strength state class from Huawei LTE transmit power sensor (#85973)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-01-16 23:24:50 +01:00
Andre Basche
abc8b891be Add some sensors and controls to tuya dehumidifier (#85380)
fixes undefined
2023-01-16 22:58:01 +01:00
Franck Nijhof
851eef1144 Update whois to 0.9.23 (#86042) 2023-01-16 22:31:43 +01:00
Mick Vleeshouwer
15db63bb3b Add SSHd and GH CLI to devcontainer to support gh net (#81623) 2023-01-16 22:28:18 +01:00
J. Nick Koston
d949f51f10 Handle ignored shelly entries when discovering via zeroconf (#86039)
fixes https://github.com/home-assistant/core/issues/85879
2023-01-16 11:21:49 -10:00
Franck Nijhof
b85d6e6ede Update orjson to 3.8.5 (#86043) 2023-01-16 22:20:12 +01:00
Sean Chen
c3c9ed6835 Improve type hints in nws (#83173) 2023-01-16 22:19:11 +01:00
Daniel Hjelseth Høyer
a818ef6411 Update pyTibber to 0.26.8 (#86044) 2023-01-16 22:16:34 +01:00
Erik Montnemery
788edc21fb Deduplicate some entity registry code (#85541) 2023-01-16 22:06:52 +01:00
Rodrigo Matias
612f93d636 Add switch to Tuya product category wsdcg (#85762) 2023-01-16 22:05:53 +01:00
Thierry Ygé
b5956eb8dd Add Tuya sensor for Smart IR remote device (#85955) 2023-01-16 22:04:26 +01:00
epenet
2087c53fa5 Set onewire quality scale to gold (#85748) 2023-01-16 22:00:58 +01:00
Matteo Corti
c1f08256e2 Bump openerz-api to 0.2.0 (#86013)
Co-authored-by: Franck Nijhof <git@frenck.dev>
fixes undefined
2023-01-16 21:52:39 +01:00
Karlie Meads
156307f3f2 Fix logic of disabled condition for "OR" (#79718) 2023-01-16 21:08:09 +01:00
Nathan Spencer
c6f60bf45d Code cleanup in litterrobot (#86037) 2023-01-16 20:58:30 +01:00
Michael
5fbc005224 Make central AvmWrapper class fully async in Fritz!Tools (#83768) 2023-01-16 20:54:32 +01:00
Max R
156c815499 Run flake8 on more files (#85333)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
Co-authored-by: Dave T <17680170+davet2001@users.noreply.github.com>
2023-01-16 20:53:14 +01:00
shbatm
3aad153913 Add enable/disable config switch for ISY994 devices (#85975)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-01-16 09:33:55 -10:00
Michel van de Wetering
b087c1e734 Set deviceclass to speaker for Sonos media_player (#80694) 2023-01-16 20:20:37 +01:00
shbatm
7636477760 Add Insteon backlight control support to ISY994, bump PyISY to 3.1.8 (#85981)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-01-16 09:15:41 -10:00
Jan Rieger
89d085a69c Add Fire TV virtual integration (#85741) 2023-01-16 20:12:31 +01:00
Michael
d8c3b87d44 Replace deprecated constants and utils by their successors in NWS tests (#85926) 2023-01-16 20:02:26 +01:00
shbatm
1945ba06ba Deprecate ISY994 custom reload service (#86019) 2023-01-16 09:01:59 -10:00
Michael
3d4b1fb689 Remove the usage of HA core unit constant in withings own unit definitions (#85942) 2023-01-16 20:00:58 +01:00
Jan Stienstra
a35a4efaaa Add Jellyfin media source support for tvshows (#85953) 2023-01-16 19:59:51 +01:00
Marcel van der Veldt
fe583b7c4a Remove SSDP discovery from Hue (#85506)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-01-16 19:56:46 +01:00
Allen Porter
1afb4897a8 Add a timeout during OAuth token exchange and additional debug logging (#85911) 2023-01-16 19:52:43 +01:00
Franck Nijhof
c5dedb7a79 Code styling tweaks to the recorder integration (#86030) 2023-01-16 19:51:11 +01:00
Shay Levy
5b2c1d701a Bump aiowebostv to 0.3.2 (#86031)
fixes undefined
2023-01-16 19:51:00 +01:00
shbatm
b229347625 Fix entity cleanup and naming bugs in ISY994 (#86023) 2023-01-16 19:43:42 +01:00
Franck Nijhof
6a89b3a135 Small refactor to HomeWizard config flow (#86020)
* Small refactor to HomeWizard config flow

* Update homeassistant/components/homewizard/config_flow.py

Co-authored-by: Duco Sebel <74970928+DCSBL@users.noreply.github.com>

* Process review comments

Co-authored-by: Duco Sebel <74970928+DCSBL@users.noreply.github.com>
2023-01-16 17:03:00 +01:00
epenet
9205020fa4 Avoid import homeassistant.const as a module (#85991) 2023-01-16 16:49:49 +01:00
TheJulianJES
9f0bed0f0c Implement "group members assume state" option for ZHA (#84938)
* Initial "group members assume state" implementation for ZHA

* Remove left-over debug flag (where polling was disabled)

* Implement _send_member_assume_state_event() method and also use after turn_off

* Only assume updated arguments from service call to group

* Make code more readable and change checks slightly

* Move "send member assume state" events to LightGroup on/off calls

* Include new config option in tests

* Check that member is available before updating to assumed state

* Lower "update group from child delay" for debouncer to basically 0 when using assumed member state

* Allow "child to group" updates regardless of config option

This is not needed, as group members will not update their state, as long as they're transitioning. (If a group transitions, it also sets its members to transitioning mode)

This fixes multiple issues. Previously, the state of a group was completely wrong when:
- turn on group with 10 second transition
- turn on members individually
- turn off members individually
- group state would not update correctly

* Move "default update group from child delay" constant

* Change to new constant name in test

* Also update fan test to new constant name

* Decrease "update group from child delay" to 10ms

In my testing, 0.0 also works without any issues and correctly de-bounces child updates when using the "assume state option".
This is just for avoiding multiple state changes when changing the group -> children issue individual updates.
With 2 children in a group and delay 0, both child updates only cause one group re-calculation and state change.

0.01 (10ms) should be plenty for very slow systems to de-bounce the update (and in the worst case, it'll cause just another state change but nothing breaks)

* Also implement "assuming state" for effect

Not sure if anybody even uses this, but this one is a bit special because the effect is always deactivated if it's not provided in the light.turn_on call.

* Move shortened delay for "assuming members" to a constant

* Add basic test to verify that group members assume on/off state

* Move _assume_group_state function declaration out of async_added_to_hass

* Fix rare edge-case when rapidly toggling lights and light groups at the same time

This prevents an issue where either the group transition would unset the transition flag or the single light would unset the group transition status midst-transition.

Note: When a new individual transition is started, we want to unset the group flag, as we actually cancel that transition.

* Check that effect list exists, add return type

* Re-trigger CI due to timeout

* Increase ASSUME_UPDATE_GROUP_FROM_CHILD_DELAY slightly

The debouncer is used when updating group member states either by assuming them (in which case we want to barely have any delay), or between the time we get the results back from polling (where we want a slightly longer time).
As it's not easily possible to distinguish if a group member was updated via assuming the state of the group or by the polling that follows, 50 ms seems to be a good middle point.

* Add debug print for when updating group state

* Fix issues with "off brightness" when switching between group/members

This fixes a bunch of issues with "off brightness" and passes it down to the members correctly.
For example, if a light group is turned off with a transition (so bulbs get their level set to 1), this will also set the "off brightness" of all individual bulbs to the last level that they were at.

(It really fixes a lot of issues when using the "member assume group state" option. It's not really possible to fix them without that.)

Furthermore, issues where polling was previously needed to get the correct state after "playing with transitions", should now get be resolved and get correct state when using the "members assume group state" option.

Note: The only case which still can't be fixed is the following:
If individual lights have off_with_transition set, but not the group, and the group is then turned on without a level, individual lights might fall back to brightness level 1 (<- at least now shows correctly in UI even before polling).
Since all lights might need different brightness levels to be turned on, we can't use one group call. But making individual calls when turning on a ZHA group would cause a lot of traffic and thereby be counter-productive.
In this case, light.turn_on should just be called with a level (or individual calls to the lights should be made).

Another thing that was changed is to reset off_with_transition/off_brightness for a LightGroup when a member is turned on (even if the LightGroup wasn't turned on using its turn_on method).
off_with_transition/off_brightness for individual bulbs is now also turned off when a light is detected to be on during polling.

Lastly, the waiting for polled attributes could previously cause "invalid state" to be set (so mid-transition levels).
This could happen when group and members are repeatedly toggled at similar times. These "invalid states" could cause wrong "off brightness" levels if transitions are also used.
To fix this, we check after waiting for the polled attributes in async_get_state to see if a transition has started in the meanwhile. If so, the values can be discarded. A new poll will happen later and if using the "members assume group state" config option, the values should already be correct before the polling.

* Enable "group members assume state" config option by default

The config tests are also updated to expect the config option be enabled by default.

For all tests, the config option is generally disabled though:
There are only two group related tests. The one that tests this new feature overrides the config option to be enabled anyway.
The other tests works in a similar way but also "sends" attribute reports, so we want to disable the feature for that test.
(It would also run with it enabled (if the correct CHILD_UPDATE value is patched), but then it would test the same stuff as the other test, hence we're disabling the config option for that test.)
2023-01-16 10:48:18 -05:00
Paul Bottein
c3e27f6812 Add tier summation delivered for Lixee Zlinky TIC (#82602)
* Add tier summation delivered for zlinky

* Improve name case

* Add other tiers and register tier

* Fix smartenergy sensor update

* Account for new reporting configuration in unit tests

* Use cluster ID attributes instead of hardcoding the values

* Use tier names instead of the numeric constants for formatter

* Revert active register tier delivered

* Fix tests

Co-authored-by: puddly <32534428+puddly@users.noreply.github.com>
2023-01-16 10:33:18 -05:00
epenet
83591704b5 Adjust sensor validation warning (#86017) 2023-01-16 15:48:00 +01:00
jan iversen
ee85a23d19 Bring modbus back to 100% test coverage (#85972)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-01-16 15:44:11 +01:00
epenet
bcef0d66ac Remove invalid uom from mqtt tests (#86004) 2023-01-16 14:51:35 +01:00
epenet
1a8933d59d Adjust invalid test values in template (#86008) 2023-01-16 14:42:47 +01:00
epenet
0328e8954d Adjust invalid test values in tcp (#86007) 2023-01-16 14:32:01 +01:00
Franck Nijhof
0a367359f4 Add sensor state class validation for device classes (#84402)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-01-16 14:31:24 +01:00
epenet
8165f487c7 Adjust invalid test values in snmp (#86006) 2023-01-16 14:00:37 +01:00
epenet
c1589d3c89 Adjust invalid test values in rest (#86009) 2023-01-16 13:37:38 +01:00
epenet
6859a9ebdd Add missing mock in fritzbox (#86005) 2023-01-16 13:05:22 +01:00
Jussi Rosenberg
54d570a9cf Bump pykoplenti to 1.0.0 (#83251)
* Update Kostal integration to use maintained lib

* Update Kostal integration to use pykoplenti

* Update kostal_plenticore tests for new lib

* Fix tests config_flow & diagnostics after changes
2023-01-16 12:54:29 +01:00
Franck Nijhof
c26d620ab1 Clean up unused import steps from HomeWizard config flow (#86002) 2023-01-16 12:24:23 +01:00
Shay Levy
dd18708b63 Remove WebOS TV client wrapper (#86001) 2023-01-16 12:03:57 +01:00
Franck Nijhof
2b037efee2 Cleanup of HomeWizard button platform (#85999) 2023-01-16 11:57:08 +01:00
epenet
13cfd60019 Allow None in add_suggested_values_to_schema (#85763) 2023-01-16 11:36:21 +01:00
Franck Nijhof
11a81dc485 Improve typing of HomeWizard sensors (#85997)
* Improve typing of HomeWizard sensors

* Fix typo when tried to fix a typo :)
2023-01-16 11:22:46 +01:00
Erik Montnemery
f9662e0af0 Make the kitchen_sink integration set up a config entry (#85680)
* Make the kitchen_sink integration set up a config entry

* Update homeassistant/components/kitchen_sink/config_flow.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Add singleton check in import step + add test

* Fix tests

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-01-16 11:03:44 +01:00
epenet
3179101fbc Warn if numeric sensors have an invalid value (#85863)
Co-authored-by: mib1185 <mail@mib85.de>
2023-01-16 11:00:07 +01:00
Duco Sebel
ccd8bc14e0 Add sensors for new P1 datapoints in HomeWizard (#85198)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Franck Nijhof <git@frenck.dev>
fixes undefined
2023-01-16 09:59:07 +01:00
Franck Nijhof
ce43a53585 Update pytest to 7.2.1 (#85990) 2023-01-16 09:48:39 +01:00
Erik Montnemery
affea9a305 Remove sky connect config entry if USB stick is not plugged in (#85765)
* Remove sky connect config entry if USB stick is not plugged in

* Tweak cleanup

* Give some stuff more cromulent names

* Do the needful

* Add tests

* Tweak
2023-01-16 09:25:06 +01:00
Franck Nijhof
fa0d653216 Update python-homewizard-energy to 1.5.0 (#85966)
* Update python-homewizard-energy to 1.5.0

* Remove strict typing for now

* Revert "Remove strict typing for now"

This reverts commit ebcd327fdf.

* Adjust typing to resolve upstream changes
2023-01-16 09:23:03 +01:00
Jorie Teunissen
719f2e650c Add state_class to mill Estimated CO2 sensor (#85894) 2023-01-16 09:02:15 +01:00
J. Nick Koston
233332c3a0 Fix fetching history include_start_time_state when timezone is not UTC (#85983) 2023-01-16 09:01:32 +01:00
Michael
9709391b52 Replace the usage of unit constants by enumerations in Tests [s-u] (#85937) 2023-01-16 09:00:27 +01:00
Patrick ZAJDA
0b02abf708 Add locking and unlocking to MQTT lock (#85779)
* Implement locking, unlocking and jammed on MQTT lock

Signed-off-by: Patrick ZAJDA <patrick@zajda.fr>

* Add tests

Signed-off-by: Patrick ZAJDA <patrick@zajda.fr>

* Refactor condition

Signed-off-by: Patrick ZAJDA <patrick@zajda.fr>

* Parametrize tests

Signed-off-by: Patrick ZAJDA <patrick@zajda.fr>

* Manage only locking and unlocking

Signed-off-by: Patrick ZAJDA <patrick@zajda.fr>

* Remove jammed from abbreviations

Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>

* set valid states in self._valid_states

Signed-off-by: Patrick ZAJDA <patrick@zajda.fr>

Signed-off-by: Patrick ZAJDA <patrick@zajda.fr>
Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>
2023-01-16 08:42:43 +01:00
Jesse Hills
d3c41bc31c Add friendly name support for ESPHome (#85976)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-01-15 21:33:44 -10:00
Jack Boswell
8c235357a4 Add Starlink reboot button (#85729) 2023-01-15 21:22:19 -10:00
shbatm
176eb01016 Deprecate ISY994 custom cleanup entities service (#85931) 2023-01-15 21:14:41 -10:00
shbatm
dfc33f858a Support availability for ISY994 devices (#85928) 2023-01-15 19:18:51 -10:00
GitHub Action
b81453cb6b [ci skip] Translation update 2023-01-16 00:24:22 +00:00
Michael
a7ebec4d02 Make Synology DSM integration fully async (#85904) 2023-01-15 13:19:08 -10: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
shbatm
cd31624768 Bump PyISY to 3.1.6 (#85974)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-01-15 13:02:30 -10:00
jan iversen
05c1aff0f6 Bump pymodbus library to V3.1.0 (#85961)
fixes undefined
2023-01-15 23:30:26 +01:00
Franck Nijhof
64c2340fab Core code styling improvements (#85963) 2023-01-15 23:00:51 +01:00
Duco Sebel
8e5236528f Upgrade HomeWizard to platinum quality (#82580) 2023-01-15 23:00:20 +01:00
Jan Bouwhuis
01e1e254e2 Use value of enum (#85944) 2023-01-15 19:30:29 +01:00
Shay Levy
28804b7ecc Update webOS TV codeowners (#85959) 2023-01-15 20:14:36 +02:00
Franck Nijhof
91ac6400b9 Clean up legacy import from HomeWizard (#85960) 2023-01-15 20:14:19 +02:00
Michael
9828b2d13f Replace the usage of unit constants by enumerations in Tests [v-z] (#85938)
replace unit conts by enums v-z
2023-01-15 20:14:02 +02:00
Shay Levy
03d9d30eca Cleanup webOS TV YAML import leftovers (#85957) 2023-01-15 20:07:15 +02:00
Franck Nijhof
3cb56211f8 Make translations keys check hassfest more strict (#85221) 2023-01-15 17:43:34 +01:00
Duco Sebel
209c47383d Implement state error handling in HomeWizard (#84991)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-01-15 17:30:27 +01:00
mkmer
1a0bce715a Address invalid keys in translation for whirlpool (#85849) 2023-01-15 17:09:14 +01:00
Michael
104f74054b Replace the usage of unit constants by enumerations in Tests [m-n] (#85935)
* replace unit conts by enums m-n

* fix mqtt
2023-01-15 15:45:00 +01:00
Michael
e35ab75c0b Replace the usage of unit constants by enumerations in Tests [h-l] (#85934) 2023-01-15 14:52:55 +01:00
Michael
72d3fa6d89 Replace the usage of unit constants by enumerations in Tests [o-r] (#85936) 2023-01-15 14:50:24 +01:00
Michael
e5f67c9119 Replace the usage of unit constants by enumerations in Tests [f-g] (#85933) 2023-01-15 14:46:45 +01:00
ondras12345
cef1809536 Fix apcupsd spamming logs when host is unavailable (#85920)
fixes undefined
2023-01-15 14:45:05 +01:00
Michael
2850583085 Replace the usage of unit constants by enumerations in Tests [a-e] (#85932) 2023-01-15 14:44:01 +01:00
Michael
b20eb54800 Replace deprecated unit converter utils (#85927) 2023-01-15 14:41:59 +01:00
Paulus Schoutsen
d92b423127 Add conversation to default config (#85877)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-01-15 13:21:16 +01:00
Dermot Duffy
10829fdadb Allow empty motionEye passwords (#85407) 2023-01-15 13:20:25 +01:00
starkillerOG
476de319ea Bump reolink-aio to 0.2.3 (#85871) 2023-01-15 13:07:15 +01:00
Franck Nijhof
314576048d Fix conflict between stale bot rules (#85923) 2023-01-15 13:01:20 +01:00
Shay Levy
508b93c17f Fix webOS TV SSDP discovery missing friendly name (#85917) 2023-01-15 12:29:11 +01:00
Shay Levy
64ee0cf627 Bump aiowebostv to 0.3.1 to fix support for older devices (#85916)
Bump aiowebostv to 0.3.1
2023-01-15 12:26:28 +01:00
Jan Stienstra
ef4b7c8a22 Skip over files without mime type in Jellyfin (#85874)
* Skip over files without mime type

* Skip over tracks without mime type
2023-01-15 12:12:27 +01:00
Ville Skyttä
19426ec18a Startup error message improvements (#85860)
* Output config and lib dir create failure reasons

* Output to stderr

* Fix error message when specified config directory is not a directory
2023-01-15 05:19:01 +01:00
Matthias Lohr
3ae4e98204 Bump tololib to v0.1.0b4 (#85866)
updated tololib to v0.1.0b4
2023-01-15 04:38:51 +01:00
shbatm
a81045653d Add Insteon ramp rate select entities to ISY994 (#85895)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-01-14 17:37:07 -10:00
Allen Porter
a653ea30bd Bump google-nest-sdm to 2.2.2 (#85899)
* Bump google-nest-sdm to 2.2.0

* Bump nest to 2.2.1

* Bump google-nest-sdm to 2.2.2
2023-01-15 04:30:21 +01:00
Robert Svensson
8117f4af3a Use parametrize to modify Axis test fixtures (#85884) 2023-01-15 04:12:03 +01:00
Robert Hillis
3627a98602 Add dhcp discovery to D-Link (#85661)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-01-14 15:58:04 -10:00
GitHub Action
77f9548e51 [ci skip] Translation update 2023-01-15 00:25:52 +00:00
shbatm
913bc827ba Bump PyISY to 3.1.5 and fix bad Z-Wave properties from eisy (#85900) 2023-01-14 12:28:57 -10:00
Austin Mroczek
c478e503e5 Bump total_connect_client to 2023.1 (#85882)
bump total_connect_client to 2023.1
2023-01-14 20:15:13 +02:00
Shay Levy
6938f791f9 Downgrade MQTT logging (#85867) 2023-01-14 13:28:41 +01:00
J. Nick Koston
43fb68ed79 Avoid linear searches for excluded events (#85851)
If the there are a lot of excluded events for the recorder, it
can have a performance impact as the list has to be searched
every time an event fires in HA
2023-01-14 14:25:03 +02:00
Robert Svensson
768c3e163d Create and use config_entry fixture for Axis integration tests (#85865) 2023-01-14 14:18:18 +02:00
epenet
8fbcb93ab4 Use IntEnum for hassfest quality scale (#85817) 2023-01-14 10:19:18 +01:00
shbatm
1fcd25130f Add On Level number entities to ISY994 Insteon Devices (#85798)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-01-13 16:01:41 -10:00
starkillerOG
5f67e79ad9 Bump reolink-aio to 0.2.2 (#85848) 2023-01-14 02:25:22 +01:00
Martin Hjelmare
bca462401c Bump python-matter-server to 1.1.0 (#85840) 2023-01-14 02:20:10 +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
GitHub Action
dffc913f9e [ci skip] Translation update 2023-01-14 00:22:57 +00:00
J. Nick Koston
ec61f5f998 Bump aiohomekit to 2.4.4 (#85853)
fixes https://github.com/home-assistant/core/issues/85400
fixes https://github.com/home-assistant/core/issues/84023
2023-01-13 14:03:16 -10:00
Shay Levy
9b5ac5b173 Fix WebOS TV image fetch SSL verify failure (#85841) 2023-01-13 23:50:02 +02:00
Robert Svensson
be899b6ab6 Store Axis device with entry_id key rather than unique_id (#85673)
* Store Axis device with entry_id key rather than unique_id

* Fix review comments
2023-01-13 22:21:40 +01:00
Guido Schmitz
c191daedc3 Remove dead code path in devolo Home Network (#85790)
Remove dead code path
2023-01-13 21:15:50 +01:00
Luke
67716edb0c Update oralb to show battery percentage (#85800)
Co-authored-by: J. Nick Koston <nick@koston.org>
fixes undefined
2023-01-13 10:11:01 -10:00
Kevin Worrel
21cdb6ece3 Bump screenlogicpy to 0.6.3 (#85799)
Co-authored-by: J. Nick Koston <nick@koston.org>
fixes undefined
2023-01-13 09:58:23 -10:00
dependabot[bot]
bce7bd771e Bump actions/setup-python from 4.4.0 to 4.5.0 (#85801)
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 4.4.0 to 4.5.0.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v4.4.0...v4.5.0)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-13 21:07:52 +02:00
starkillerOG
b2b6ae417d Reolink check for admin (#85570)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
fixes undefined
2023-01-13 20:07:09 +01:00
shbatm
d35c4f8d82 Deprecate YAML configuration for ISY994 (#85797) 2023-01-13 08:48:44 -10:00
shbatm
8dadbe45fa Bump PyISY to 3.1.4 to fix dependency issues (#85825) 2023-01-13 18:33:21 +01:00
Ville Skyttä
a5a079fb06 Huawei LTE sensor improvements (#84019)
* Use `None` for unknown states consistently

* Use huawei_lte_api NetworkModeEnum instead of magic strings

* Recognize some new sensor items

* Exclude current day duration sensor

* Fix current month upload/download types

* Add current day transfer

* Extract lambdas used in multiple spots to named functions

* Formatter naming consistency improvements
2023-01-13 18:27:57 +01:00
Robert Svensson
7953c4a6d5 Clean up old config migration of Axis config (#85671)
* Revert Axis config flow version to 1

* Set up using hass.config_entries.async_setup

* Fix review comment

* Update homeassistant/components/axis/__init__.py

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

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-01-13 17:12:51 +01:00
Franck Nijhof
4c2b20db68 Collection of typing improvements in common test helpers (#85509)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-01-13 15:12:11 +01:00
Maciej Bieniek
6baa905448 Abort config flow if Airly measuring station does not exist (#85652)
* Abort if there is no sensor in the area

* Add test

* Increase test coverage
2023-01-13 14:35:52 +01:00
Mike Degatano
87aacf9fbe Increase max line size for ingress addons (#85775) 2023-01-13 13:30:28 +01:00
Eugenio Panadero
d748894b88 Remove 'tariff' edition from options-flow (#85703)
* 🎨 Add missing typing for config-flow

* 🐛 Remove 'tariff' edition from options-flow

The `entry.data["tariff"]` is what makes the `entry.unique_id`,
so it's an incoherence to be able to change it in the Options flow

* 🌐 Update generated EN translation

* 🎨 Link translations of option-flow to those of config-flow
2023-01-13 13:27:11 +01:00
Ville Skyttä
ae302bbec0 Make use of str.removeprefix and .removesuffix (#85584) 2023-01-13 12:19:38 +01:00
Franck Nijhof
d44210e573 Fix nightly intents in nightly builds (part2) (#85818) 2023-01-13 12:14:25 +01:00
epenet
e75c85f679 Downgrade integrations without code owner (#85752) 2023-01-13 10:08:15 +01:00
Franck Nijhof
80714c544a Fix nightly intents in nightly builds (#85806) 2023-01-13 09:56:29 +01:00
Ville Skyttä
4c31317c06 Key Huawei LTE routers in hass.data by config entry rather than unique id (#85788)
Key routers in hass.data by config entry rather than unique id

There's no particular reason to key them by the unique id; the config
entry id is a stronger, always available guarantee, and a much more
common convention across the HA codebase.

At some point, we might conceivably support devices we can't find a
proper unique id for; this would work for that purpose as well.
2023-01-13 09:20:24 +01:00
epenet
1deb4c68f3 Adjust diagnostics return types (#85525)
* Adjust diagnostics return types

* Replace dict with Mapping
2023-01-13 09:17:54 +01:00
Malte Franken
9927bb3330 Bump georss_ign_sismologia_client to 0.6 (#85784)
bump georss_ign_sismologia_client to 0.6
2023-01-13 08:58:28 +01:00
tronikos
8e26c048a7 Remove oauth2client dependency in Google Assistant SDK (#85785)
Remove import oauth2client, inline 2 constants
2023-01-13 00:20:16 +01:00
shbatm
28bea53afe Move ISY994 data to dataclass and remove bad entities (#85744) 2023-01-12 13:09:04 -10:00
J. Nick Koston
f941864308 Bump pySwitchbot to 0.36.4 (#85777) 2023-01-12 23:17:00 +01:00
Franck Nijhof
2ca73be9d0 Update sentry-sdk to 1.13.0 (#85772) 2023-01-12 23:04:49 +01:00
Franck Nijhof
9415e7e51b Address small review comments in ESPHome (#85770) 2023-01-12 22:55:18 +01:00
Franck Nijhof
686258acd5 Add nightly intents to nightly build (#85760)
* Add nightly intents to nightly build

* Use main branch
2023-01-12 16:31:14 -05:00
Jovan Gerodetti
49031b8fa7 Implement sync time button for moehlenhoff_alpha2 (#85676)
* Implement sync time button for moehlenhoff_alpha2

* fix outdated doc comment

Co-authored-by: j-a-n <oss@janschneider.net>

* address review comments

Co-authored-by: j-a-n <oss@janschneider.net>
2023-01-12 22:09:14 +01:00
Teju Nareddy
cb04a52220 Fix IoT Class for Torque integration (#85667)
* Fix IoT Class for Torque plugin

This is currently misclassified:
- There is no "Torque" server, the Torque plugin is the server that receives data directly from the client. It should be `local` instead of `cloud`.
- The client sends data to the server as needed. This plugin will NOT poll for data. It should be `push` instead of `poll`.

* Run hassfest

Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-01-12 21:52:39 +01:00
Franck Nijhof
db5edfcf64 Update coverage to 7.0.5 (#85774) 2023-01-12 21:40:59 +01:00
Yuval Aboulafia
578a1cdc02 Add statistics support to iperf3 (#85771) 2023-01-12 12:02:56 -08:00
Paulus Schoutsen
3bb9be2382 2023.1.4 (#85764) 2023-01-12 15:00:21 -05:00
Yuval Aboulafia
1f6efe8c3e Remove WAQI unsupported UOM (#85768)
fixes undefined
2023-01-12 20:10:45 +01:00
Aaron Bach
107461df0d Follow-up on ReCollect Waste calendar entity (#85766) 2023-01-12 11:56:06 -07:00
Kevin Worrel
4f20b15742 Bump screenlogicpy to 0.6.2 (#85725)
fixes undefined
2023-01-12 19:41:07 +01:00
Paulus Schoutsen
6581bad7ce Bumped version to 2023.1.4 2023-01-12 13:20:23 -05:00
Shay Levy
197634503f Bump aiowebostv to 0.3.0 (#85756) 2023-01-12 13:20:17 -05:00
Franck Nijhof
32fc0e03a5 Use jemalloc in Docker builds (#85738) 2023-01-12 13:20:16 -05:00
Nathan Spencer
2e9ea0c934 Fix Litter-Robot 4 firmware versions reported while updating (#85710) 2023-01-12 13:20:15 -05:00
Nathan Spencer
856f68252b Use built in polling for litterrobot update entity (#84678)
* Use built in polling

* Define scan interval
2023-01-12 13:19:55 -05:00
Nathan Spencer
2789747b0f Bump pylitterbot to 2023.1.0 (#85484) 2023-01-12 13:18:37 -05:00
Daniel Hjelseth Høyer
45d14739c5 Update pyTibber to 0.26.8 (#85702)
* Tibber, update pyTibber

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

* Tibber, update pyTibber

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

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2023-01-12 13:17:40 -05:00
Ville Skyttä
d0f95d84b4 Upgrade huawei-lte-api to 1.6.11 (#85669) 2023-01-12 13:17:38 -05:00
Robert Hillis
1e852e761c Remove oauth2client dependency in Google Sheets (#85637)
Remove oauth2client dependency
2023-01-12 13:17:37 -05:00
Ville Skyttä
c3859f9170 Improve Huawei LTE SSDP inclusion (#85572)
* Probe Huawei LTE API for device support on SSDP match

More or less as expected, the loosening of SSDP/UPnP data matches done
in #81643 started to yield false positives, as in #85402.

Coming up with robust matches solely based on the SSDP/UPnP data still
does not seem possible, so keep the matches as loose as they were made,
but additionally invoke a probe request on the API to determine if the
device looks like a supported one.

* Probe only after unique id checks

Prevents throwaway probes for discoveries already in progress.

* Fix SSDP result URL test, add missing assert on it
2023-01-12 13:17:36 -05:00
Milan Meulemans
6df4fc6708 Upgrade aionanoleaf to 0.2.1 (#83669) 2023-01-12 13:17:34 -05:00
Shay Levy
596f779254 Bump aiowebostv to 0.3.0 (#85756) 2023-01-12 19:11:27 +01:00
epenet
e18117fd63 Bump sfrbox-api to 0.0.4 (#85742)
* Bump sfrbox-api to 0.0.3

* Bump sfrbox-api to 0.0.4
2023-01-12 18:17:31 +02:00
epenet
b5a9e682be Add missing enum item in SFR Box (#85746)
* Add missing enum item in SFR Box

* Adjust tests
2023-01-12 18:15:09 +02:00
Maciej Bieniek
cc016c9bba Pass language to the Airly API (#85655)
* Pass language to the API

* Pass only pl or en

* Add comment
2023-01-12 16:15:00 +01:00
Martin Hjelmare
4895f2e7c2 Fix gen_requirements_all script permissions (#85745) 2023-01-12 15:46:36 +01:00
Erik Montnemery
8418a30cc0 Refactor energy validation issue reporting (#85523)
* Refactor energy validation issue reporting

* Update English translations

* Adjust translations
2023-01-12 12:50:43 +01:00
Erik Montnemery
e4e96d3394 Fix sensor test (#85740) 2023-01-12 12:21:19 +01:00
Franck Nijhof
e18a6e376c Use jemalloc in Docker builds (#85738) 2023-01-12 11:59:44 +01:00
Osma Ahvenlampi
45a41421b6 Change Ruuvi movement counter to correct state class (#85677)
change Ruuvi movement counter to correct class

The counter's values are 0 to 255 increasing value, so the correct state class as per https://developers.home-assistant.io/docs/core/entity/sensor/#entities-representing-a-total-amount is TOTAL_INCREASING.
2023-01-12 10:29:54 +01:00
epenet
5a4df9d870 Add binary sensor platform to SFR Box (#85508)
* Add binary sensor platform to SFR Box

* Simplify
2023-01-12 10:06:09 +01:00
Jan Bouwhuis
64e235285d Deprecate power_command_topic for MQTT climate (#85229)
* Deprecate mode_command_topic for MQTT climate

* Correct deprecation and remove support release inf

* Do not use future tense for comment

* Extend deprecation period to 6 months
2023-01-12 09:49:14 +01:00
Erik Montnemery
a7fb3c82fb Add WS command number/device_class_convertible_units (#85598)
* Add WS command number/device_class_convertible_units

* Add websocket_api

* Update tests
2023-01-12 09:34:10 +01:00
Erik Montnemery
305fb86d50 Add WS command sensor/device_class_convertible_units (#85213)
* Add WS command sensor/device_class_units

* Rename new command to device_class_convertible_units
2023-01-12 09:31:06 +01:00
epenet
679e971131 Add system diagnostic sensors to SFR Box (#85184)
* Add system diagnostic sensor

* Add tests
2023-01-12 09:29:12 +01:00
Erik Montnemery
b0d4b73874 Add unitless unit converter (#85694)
* Add unitless unit converter

* Adjust type hints

* Adjust tests

* Rename to UnitlessRatioConverter
2023-01-12 09:20:00 +01:00
Maciej Bieniek
a176de6d4b Add RPC smoke binary sensor to Shelly integration (#85697)
* Add RPS smoke binary sensor

* Remove index

* Remove the unnecessary attribute
2023-01-12 08:42:40 +01:00
Shay Levy
b71d332a10 Cleanup Shelly sensor description (#85732) 2023-01-11 21:39:49 -10:00
Ville Skyttä
c625051665 Improve Huawei LTE SSDP inclusion (#85572)
* Probe Huawei LTE API for device support on SSDP match

More or less as expected, the loosening of SSDP/UPnP data matches done
in #81643 started to yield false positives, as in #85402.

Coming up with robust matches solely based on the SSDP/UPnP data still
does not seem possible, so keep the matches as loose as they were made,
but additionally invoke a probe request on the API to determine if the
device looks like a supported one.

* Probe only after unique id checks

Prevents throwaway probes for discoveries already in progress.

* Fix SSDP result URL test, add missing assert on it
2023-01-12 06:47:38 +01:00
shbatm
255a8362a1 Consolidate device info and clean-up ISY994 code base (#85657)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-01-11 18:07:44 -10:00
Jack Boswell
43cc8a1ebf Add binary_sensor to Starlink (#85409)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-01-11 17:18:54 -10:00
Robert Hillis
ae9a57b2a8 Remove oauth2client dependency in Google Sheets (#85637)
Remove oauth2client dependency
2023-01-12 04:02:02 +01:00
Nathan Spencer
0ae855d345 Fix Litter-Robot 4 firmware versions reported while updating (#85710) 2023-01-12 03:53:06 +01:00
Robert Hillis
b14c141fe3 Address review comments for D-Link config flow (#85712)
* Address review comments for D-Link config flow

* uno mas

* uno mas

* uno mas
2023-01-12 03:46:51 +01:00
Eugenio Panadero
05590f63c9 Clean attributes in pvpc hourly pricing ElecPriceSensor (#85688)
♻️ Remove unnecessary private attrs and fix typing for sensor entity
2023-01-12 03:21:16 +01:00
Daniel Hjelseth Høyer
2757f97114 Update pyTibber to 0.26.8 (#85702)
* Tibber, update pyTibber

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

* Tibber, update pyTibber

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

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2023-01-12 03:15:28 +01:00
Klaas Schoute
6f92c5381d Add Energie VanOns virtual integration (#85704) 2023-01-12 01:14:36 +01:00
Eugenio Panadero
77feaecbfa Remove unreachable config entry migration in pvpc hourly pricing (#85700)
* 🔥 Remove old config entry migration logic

introduced for a breaking change in 2021-06, now unreachable after
completely disabling the YAML config for the integration

*  Remove test for old config entry migration logic

and adjust existent one for config-flow to do not lose coverage
2023-01-12 01:07:11 +01:00
Jovan Gerodetti
3ee73f0fea Bump moehlenhoff-alpha2 to 1.3.0 (#85720)
bump moehlenhoff_alpha2 to v1.3.0
2023-01-12 00:52:32 +01:00
Milan Meulemans
e603645b90 Upgrade aionanoleaf to 0.2.1 (#83669) 2023-01-12 00:43:04 +01:00
Felix T
42a4dd98f1 Use fallback advertising interval for non-connectable Bluetooth devices (#85701)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-01-11 12:11:25 -10:00
Paulus Schoutsen
c8cd41b5d4 Add ESPHome update entities (#85717) 2023-01-11 16:26:13 -05:00
Paulus Schoutsen
06bc9c7b22 Automatically fetch the encryption key from the ESPHome dashboard (#85709)
* Automatically fetch the encryption key from the ESPHome dashboard

* Also use encryption key during reauth

* Typo

* Clean up tests
2023-01-11 15:28:31 -05:00
epenet
a2f6299fc1 Remove invalid device class in energyzero (#85690)
* Remove invalid device class in energyzero

* Adjust tests
2023-01-11 20:49:14 +01:00
Ernst Klamer
a575dfb5c3 Bump bthome-ble to 2.5.0 (#85670)
Bump bthome-ble
2023-01-11 19:30:39 +02:00
Ville Skyttä
ccd7f09de6 Upgrade huawei-lte-api to 1.6.11 (#85669) 2023-01-11 17:44:55 +01:00
mkmer
f9dcb2ea84 Bump whirlpool-sixth-sense to 0.18.2 (#85679) 2023-01-11 14:54:41 +01:00
Eugenio Panadero
2286029b5d Bump aiopvpc to 4.0.1 (#85612)
* 📦️ Bump aiopvpc version

* ♻️ Evolve DataUpdateCoordinator and PVPC sensor for new aiopvpc

setting `SensorDeviceClass.MONETARY` for the price sensor

* 🍱 tests: Update tests fixtures with new sensor data

for aiopvpc v4 with 'esios_public' as data-source

*  tests: Adapt test suite for new default data-source

* 📦️ Bump aiopvpc version for latest patch 4.0.1

* ️ Revert changes unrelated to library bump

* ️ Revert tests changes unrelated to library bump
2023-01-11 14:49:42 +01:00
Paulus Schoutsen
82ec769ec5 Handle ESPHome dashboard discovery (#85662) 2023-01-11 08:30:52 -05:00
Jan Bouwhuis
1a4cac95a1 Revert "Bump steamodd to 4.23" (#85651) 2023-01-11 13:13:19 +01:00
Erik Montnemery
0200327fa8 Make the kitchen_sink integration trigger statistics issues (#79742)
* Make the kitchen_sink integration trigger statistics issues

* Remove dead code
2023-01-11 08:14:11 +01:00
GitHub Action
941f82b60c [ci skip] Translation update 2023-01-11 00:23:37 +00:00
Robert Hillis
3d7c61bbed Add D-Link config flow (#84927) 2023-01-10 14:10:56 -10:00
rikroe
1afb30344a Add diagnostics to bmw_connected_drive (#74871)
* Add diagnostics to bmw_connected_drive

* Add tests for diagnostics

* Move get_fingerprints to library, bump bimmer_connected to 0.10.4

* Update bimmer_connected to 0.11.0

* Fix pytest

* Mock actual diagnostics HTTP calls

* Update tests for bimmer_connected 0.12.0

* Don't raise errors if vehicle is not found

Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2023-01-11 01:09:45 +01:00
Matthias Alphart
db428f2141 Update xknx to 2.3.0 - add some DPTs, Routing security (#85658)
Update xknx to 2.3.0
2023-01-11 00:24:56 +01:00
shbatm
856895ddf5 Remove old migrate unique ID code from ISY994 (#85641)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-01-10 12:42:31 -10:00
shbatm
d3249432c9 Add ISY994 variables as number entities (#85511)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-01-10 12:29:11 -10:00
Ernst Klamer
7af23698bc Bump bluemaestro-ble to 0.2.1 (#85648) 2023-01-10 11:40:18 -10:00
epenet
6e3cf896f7 Remove invalid device class in gios (#85611) 2023-01-10 22:08:13 +01:00
Paulus Schoutsen
b297b78086 2023.1.3 (#85645) 2023-01-10 15:58:26 -05:00
Paulus Schoutsen
4bdf87d383 Bumped version to 2023.1.3 2023-01-10 14:52:06 -05:00
Paul Bottein
e47364f34d Update frontend to 20230110.0 (#85640) 2023-01-10 14:52:01 -05:00
Erik Montnemery
fe7d32dc5d Bump hatasmota to 0.6.3 (#85633) 2023-01-10 14:52:00 -05:00
Allen Porter
62a003a053 Bump gcal-sync to 4.1.2 (#85631) 2023-01-10 14:51:59 -05:00
Shay Levy
b5d1421dfd Bump aioshelly to 5.2.1 to fix Task exception was never retrieved (#85575)
Bump aioshelly to 5.2.1
2023-01-10 14:51:58 -05:00
Aaron Bach
ebab2bd0f9 Remove no-longer-needed invalid API key monitor for OpenUV (#85573)
* Remove no-longer-needed invalid API key monitor for OpenUV

* Handle re-auth cancellation

* Use automatic API status check
2023-01-10 14:51:57 -05:00
J. Nick Koston
e7babb4266 Do not check ble scanner state for sleepy shelly devices (#85566)
fixes #85563
2023-01-10 14:51:56 -05:00
Christopher Bailey
1a042c2dad Bump pyunifiprotect to 4.6.1 (#85547) 2023-01-10 14:51:55 -05:00
Keilin Bickar
731ca046f6 Bump sense_energy to 0.11.1 (#85533)
fixes undefined
2023-01-10 14:51:54 -05:00
epenet
c844276e95 Remove invalid state class in Subaru sensor (#85520) 2023-01-10 14:51:53 -05:00
starkillerOG
9f9cdb62eb Restore Netgear signal strength icon (#85512) 2023-01-10 14:51:52 -05:00
Franck Nijhof
c73830439f Remove invalid Signal Strength device class from NETGEAR (#85510) 2023-01-10 14:51:51 -05:00
Christopher Bailey
940b5d62b4 Bump pyunifiprotect to 4.6.0 (#85483) 2023-01-10 14:51:50 -05:00
Eugenio Panadero
caa8fc4d10 Remove deprecated YAML manual config for PVPC Hourly Pricing (#85614) 2023-01-10 20:49:54 +01:00
Paul Bottein
67b238c8d1 Update frontend to 20230110.0 (#85640) 2023-01-10 14:28:12 -05:00
Erik Montnemery
85ba8a6cde Bump hatasmota to 0.6.3 (#85633) 2023-01-10 20:48:06 +02:00
tronikos
667fde997d Google Assistant SDK: Fix broadcast command in Japanese (#85636)
Fix broadcast command in Japanese
2023-01-10 20:20:28 +02:00
epenet
de2588f6e0 Add diagnostics platform to SFR Box (#85500) 2023-01-10 20:17:14 +02:00
Allen Porter
02357193ad Bump gcal-sync to 4.1.2 (#85631) 2023-01-10 20:15:55 +02:00
Bouwe Westerdijk
4889373819 Bump plugwise to v0.27.1 (#85630) 2023-01-10 19:47:48 +02:00
mkmer
d01a62fec5 Bump AIOAladdinConnect to 0.1.52 (#85632) 2023-01-10 19:44:57 +02:00
epenet
a7647fee28 Fix unknown data in homematicip_cloud (#85618) 2023-01-10 12:26:49 -05:00
Erik Montnemery
7621c450c7 Add kitchen_sink integration (#85592) 2023-01-10 17:31:47 +01:00
epenet
3d02b5af21 Fix unknown data in vultr (#85627) 2023-01-10 17:29:17 +01:00
epenet
67f8d82818 Remove invalid state class in deconz (#85615) 2023-01-10 17:28:35 +01:00
epenet
2ae986d45b Remove invalid state class in tado (#85624) 2023-01-10 16:55:34 +01:00
epenet
4eddd8b75a Remove invalid unit of measurement in mfi (#85620) 2023-01-10 16:45:59 +01:00
epenet
298d7504fd Fix unknown data in qwikswitch (#85621) 2023-01-10 16:42:28 +01:00
epenet
d313d82eb7 Fix unknown data in influxdb (#85619) 2023-01-10 16:41:16 +01:00
epenet
65750fec9b Remove invalid state class in hue (#85617) 2023-01-10 16:37:35 +01:00
epenet
4d660f926d Fix unknown data in google wifi (#85616) 2023-01-10 16:37:04 +01:00
starkillerOG
105b34bd77 Reolink add support for flv protocol (#85576) 2023-01-10 12:16:48 +01:00
Aaron Bach
5d7f33ad76 Further generalize base Ridwell entity (#85486) 2023-01-10 12:15:28 +01:00
Erik Montnemery
5fdf78ed30 Drop title from repairs flows (2) (#85597) 2023-01-10 12:11:30 +01:00
epenet
fa7d7415d7 Adjust diagnostic return type in Sonos (#85585) 2023-01-10 12:07:14 +01:00
Dermot Duffy
b64d14004a Bump motionEye client version to v0.3.14 (#85408) 2023-01-10 12:01:42 +01:00
Franck Nijhof
0a8380cbe1 Deprecate Magicseaweed (#85527) 2023-01-10 11:54:49 +01:00
epenet
9eb06fd59d Simplify sensor state validation (#85513) 2023-01-10 11:52:29 +01:00
mkmer
b86c58b0ea Bump whirlpool-sixth-sense to 0.18.1 (#85521)
* Bump whirlpool to 0.18.1
Add HASS AIOsession
Add unregister to remove_from_hass

* remove session from WhirlpoolData class
2023-01-10 10:41:35 +01:00
Franck Nijhof
bba9ad3243 Revert "Adapt tplink to use has_entity_name" (#85595)
Revert "Adapt tplink to use has_entity_name (#85577)"

This reverts commit ca0fe488ba.
2023-01-10 10:06:58 +01:00
Guido Schmitz
d40a4aa970 Add switch platform to devolo_home_network (#72494) 2023-01-10 10:05:59 +01:00
Franck Nijhof
05c32c51fd Code styling tweaks to the Cast integration (#85560) 2023-01-10 09:57:13 +01:00
J. Nick Koston
6aa44d5b82 Bump bleak to 0.19.5 (#85567)
changelog: https://github.com/hbldh/bleak/compare/v0.19.2...v0.19.5
2023-01-10 09:56:24 +01:00
J. Nick Koston
f9dbce8bf4 Bump dbus-fast to 1.84.0 (#85568)
changelog: https://github.com/Bluetooth-Devices/dbus-fast/compare/v1.82.0...v1.84.0
2023-01-10 09:55:37 +01:00
Aaron Bach
6a801fc058 Remove no-longer-needed invalid API key monitor for OpenUV (#85573)
* Remove no-longer-needed invalid API key monitor for OpenUV

* Handle re-auth cancellation

* Use automatic API status check
2023-01-10 09:48:39 +01:00
Shay Levy
bf67458d83 Bump aioshelly to 5.2.1 to fix Task exception was never retrieved (#85575)
Bump aioshelly to 5.2.1
2023-01-10 09:46:36 +01:00
starkillerOG
db8a94d5e2 bump reolink-aio to 0.2.1 (#85571) 2023-01-10 09:44:53 +01:00
Teemu R
ca0fe488ba Adapt tplink to use has_entity_name (#85577)
* Adapt tplink to use has_entity_name

* Set the name for individual smartstrip sockets

* Fix tests
2023-01-10 09:40:29 +01:00
Bouwe Westerdijk
4a22b463d1 Plugwise: add missing P1v2 sensors (#85589)
Add missing P1v2 sensors
2023-01-10 09:36:18 +01:00
tronikos
e24989b446 Google Assistant SDK conversation agent (#85499)
* Google Assistant SDK conversation agent

* refresh token

* fix session

* Add tests

* Add option to enable conversation agent
2023-01-09 20:53:41 -05:00
GitHub Action
f2df72e014 [ci skip] Translation update 2023-01-10 00:25:07 +00:00
starkillerOG
77542fc842 Netgear fix missing await (#85574)
fix missing await
2023-01-10 01:02:31 +02:00
epenet
069d8024a4 Remove invalid state class in Subaru sensor (#85520) 2023-01-09 15:59:17 -07:00
Michael Hansen
07bd208c7d Load custom sentences from config directory (#85558)
* Load custom sentences from config directory

* Load custom sentences from config directory

* Custom sentences in custom_sentences/<language>/

* Load custom sentences from config directory

* Custom sentences in custom_sentences/<language>/

* Add custom_sentences test
2023-01-09 16:48:59 -06:00
Jeef
6970a8a87a Add IntelliFire lights (#79816) 2023-01-09 12:16:39 -10:00
J. Nick Koston
2c95c0b3a1 Do not check ble scanner state for sleepy shelly devices (#85566)
fixes #85563
2023-01-10 00:16:14 +02:00
Christopher Bailey
02897fb9a3 Add UniFi Protect Chime Duration entity (#85538) 2023-01-09 12:09:41 -10:00
J. Nick Koston
57239769ba Only build compressed states once (#85561) 2023-01-09 12:07:32 -10:00
Christopher Bailey
818253ced4 Bump pyunifiprotect to 4.6.1 (#85547) 2023-01-09 12:00:21 -10:00
Franck Nijhof
b6316b4904 Split wheels building of all requirements (#85564) 2023-01-09 22:16:59 +01:00
Erik Montnemery
8983f665cf Refactor device registry JSON cache (#85539) 2023-01-09 09:50:27 -10:00
Jafar Atili
a8f95c36a6 Bump pySwitchbee to 1.7.19 (#84442)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-01-09 09:23:49 -10:00
Franck Nijhof
3bb435c292 Pin matplotlib to 3.6.1 (#85540) 2023-01-09 18:34:10 +01:00
Aaron Bach
e35b21823e Add a calendar entity to ReCollect Waste (#85347)
* Add a calendar entity to ReCollect Waste

* Simplify and ensure return None

* Ensure end date is after start date
2023-01-09 09:50:42 -07:00
Keilin Bickar
9491de2bd1 Bump sense_energy to 0.11.1 (#85533)
fixes undefined
2023-01-09 17:35:15 +01:00
Erik Montnemery
b933a53aa3 Refactor entity registry JSON cache (#85085)
* Refactor entity registry JSON cache

* Fix generator

* Tweak

* Improve string building

* Improve test coverage

* Override EntityRegistryItems.values to avoid __iter__ overhead
2023-01-09 16:52:52 +01:00
Scott Colby
174cc23309 Add "Schedule Part" enum sensor to Venstar thermostat (#84332) 2023-01-09 16:41:17 +01:00
Marcel van der Veldt
c181fb6de0 Bump aiohue library to 4.6.1 (#85504)
* Bump aiohue to 4.6.0

* fix device name for lights

* fix name for groups too

* ignore smart scenes

* bump to 4.6.1 instead

* fix test fixture

* update tests

* fix scene test
2023-01-09 10:37:03 -05:00
mkmer
86ab5f76e0 Whirlpool general code cleanup (#85387) 2023-01-09 16:16:05 +01:00
Franck Nijhof
8747d01e7b Fix translation keys for Yamaha MusicCast selectors (#85292)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-01-09 16:03:29 +01:00
epenet
1766df3faa Improve integration type hints for diagnostics (#85526) 2023-01-09 15:17:48 +01:00
epenet
aa5b29c560 Adjust zwave_js diagnostics (#85524) 2023-01-09 14:33:09 +01:00
Erik Montnemery
72c9ca2567 Update sensor test (#85522) 2023-01-09 14:26:52 +01:00
Robert Svensson
1cdd535f21 Bump axis to v46 (#85431) 2023-01-09 12:43:40 +01:00
Erik Montnemery
54168c9bdb Allow converting units of energy sensors (#85497) 2023-01-09 12:26:35 +01:00
starkillerOG
a332cd8aba Restore Netgear signal strength icon (#85512) 2023-01-09 12:15:36 +01:00
Tom
60604f7905 Default disable voltage sensors in Plugwise (#85451) 2023-01-09 12:09:32 +01:00
Nathan Spencer
02f1dce137 Bump pylitterbot to 2023.1.0 (#85484) 2023-01-09 11:58:06 +01:00
Rami Mosleh
a0e18051c7 Add config flow to imap (#74623)
* Add config flow to imap

fix coverage

fix config_flows.py

* move coordinator to seperate file, remove name key

* update intrgations.json

* update requirements_all.txt

* fix importing issue_registry

* Address comments

* Improve handling exceptions on intial connection

* exit loop tasks properly

* fix timeout

* revert async_timeout

* Improve entity update handling

* ensure we wait for idle to finish

* fix typing

* Update deprecation period

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-01-09 11:41:47 +01:00
Franck Nijhof
c225ed0a1a Remove invalid Signal Strength device class from NETGEAR (#85510) 2023-01-09 11:39:20 +01:00
dependabot[bot]
f1895fa826 Bump actions/cache from 3.2.2 to 3.2.3 (#85488)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-09 11:28:36 +01:00
Matthias Alphart
88356a95e6 Use power factor device class in Fronius integration again (#85495) 2023-01-09 10:42:49 +01:00
dependabot[bot]
186151008f Bump actions/upload-artifact from 3.1.1 to 3.1.2 (#85489)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-09 10:30:14 +01:00
Franck Nijhof
7adb8d5ddc Code styling tweaks to core utils & YAML loader (#85433)
Code styling tweaks to core utils
2023-01-08 22:01:55 -08:00
Christopher Bailey
aa1c539683 Bump pyunifiprotect to 4.6.0 (#85483) 2023-01-08 16:59:21 -10:00
shbatm
a8cdb86b23 Add network resource button entities to ISY994 and bump PyISY to 3.0.12 (#85429)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-01-08 16:45:54 -10:00
Paulus Schoutsen
b3454bfd9c 2023.1.2 (#85481) 2023-01-08 21:44:13 -05:00
Paulus Schoutsen
834847988d Bumped version to 2023.1.2 2023-01-08 20:24:25 -05:00
Allen Porter
caf15534bb Bump gcal_sync to 4.1.1 (#85453) 2023-01-08 20:24:19 -05:00
Allen Porter
10cb2e31c4 Bump ical to 4.2.9 (#85401) 2023-01-08 20:24:18 -05:00
Lutz Lengemann
85c9f9facf Increase Hydrawise default scan interval (#85398)
Increasing default scan interval

Fixes #83540
2023-01-08 20:24:17 -05:00
J. Nick Koston
5ff7b3bb1a Bump pySwitchbot to 0.36.3 (#85360) 2023-01-08 20:24:16 -05:00
J. Nick Koston
e5ba423d6d Add note to SwitchBot locks that usernames are case sensitive (#85359) 2023-01-08 20:24:15 -05:00
puddly
b30d4ef7cf Bump ZHA dependencies (#85355)
* Bump ZHA dependencies

* Deprecated `foundation.Command` -> `foundation.GeneralCommand`
2023-01-08 20:24:15 -05:00
Joakim Plate
00e563f1b8 Switch play pause method in philips js (#85343)
fixes undefined
2023-01-08 20:24:14 -05:00
Phil Bruckner
cf06f3b81d Bump life360 package to 5.5.0 (#85322)
Improve debug output & redact sensitive info from log.
Fix bug that was masking some HTTP errors.
Retry HTTP errors 502, 503 & 504, which have been observed to happen every once
in a while, resulting in fewer unnecessary unavailable states.
2023-01-08 20:24:13 -05:00
starkillerOG
a781fcca86 Bump reolink-aio to 0.1.3 (#85309)
bump reolink-aio to 0.1.3
2023-01-08 20:24:12 -05:00
Tom Puttemans
764550f2e1 Fix dsmr_reader peak hour consumption unit of measurement (#85301) 2023-01-08 20:24:11 -05:00
puddly
7396bcc585 Retry ZHA config entry setup when ENETUNREACH is caught (#84615)
* The config entry is not ready on `ENETUNREACH`

* Use new `TransientConnectionError` from zigpy
2023-01-08 20:20:26 -05:00
Poltorak Serguei
cdafd94550 Z-Wave.Me integration: Add code owners to receive notifications on github (#85476)
* Add code owners to receive notifications on github

* fixup! Add code owners to receive notifications on github
2023-01-08 20:19:04 -05:00
Poltorak Serguei
1f86a0a76f Z-Wave.Me: Cover: Fixed calibration errors and add missing is_closed (#85452)
* Cover: Fixed calibration errors and add missing is_closed

* Style

* Style

* whitespace
2023-01-08 20:18:36 -05:00
Ville Skyttä
dfa9f0e11d Upgrade RestrictedPython to 6.0 (#85426)
Required for Python 3.11.

https://github.com/zopefoundation/RestrictedPython/blob/6.0/CHANGES.rst#60-2022-11-03
2023-01-08 20:17:39 -05:00
tronikos
05187d7bf4 Google Assistant SDK: support Korean and Japanese (#85419)
* Google Assistant SDK: support Korean and Japanese

* Fix Korean and Japanese broadcast commands
2023-01-08 20:16:00 -05:00
J. Nick Koston
7bdfa7b9ec Bump aioesphomeapi to 13.0.4 (#85406)
bugfix for protobuf not accepting bytearray

changelog: https://github.com/esphome/aioesphomeapi/compare/v13.0.3...v13.0.4
2023-01-08 20:09:49 -05:00
eMerzh
c4c64a8bed Add missing context in homewizard assistant error (#85397) 2023-01-08 20:09:37 -05:00
GitHub Action
6ce88cd5af [ci skip] Translation update 2023-01-09 00:23:57 +00:00
David Buezas
112b2c22f7 Expose async_scanner_devices_by_address from the bluetooth api (#83733)
Co-authored-by: J. Nick Koston <nick@koston.org>
fixes undefined
2023-01-08 14:06:32 -10:00
Franck Nijhof
06a35fb7db Code styling tweaks to core helpers (#85441) 2023-01-08 13:44:09 -10:00
Franck Nijhof
cf5fca0464 Code styling tweaks to core entity components (#85460) 2023-01-08 13:40:08 -10:00
jjlawren
9d7e99eeb7 Handle timeouts in Sonos, reduce logging noise (#85461) 2023-01-08 13:39:26 -10:00
Franck Nijhof
318871f8a9 Code styling tweaks to the LaMetric integration (#85469) 2023-01-09 01:36:54 +02:00
Allen Porter
4162dfdc4e Bump gcal_sync to 4.1.1 (#85453) 2023-01-09 01:35:23 +02:00
Franck Nijhof
36f16b0ff2 Code styling tweaks to the WLED integration (#85466) 2023-01-09 01:03:05 +02:00
Marc Mueller
8f7aca7b69 Update pydocstyle to 6.2.3 (#85449) 2023-01-09 00:59:07 +02:00
starkillerOG
b0270f1ab7 Fix fetching of initial data of Netgear sensors (#85450)
fix fetching of initial data
2023-01-09 00:57:44 +02:00
Franck Nijhof
2511402400 Code styling tweaks to the AdGuard Home integration (#85468) 2023-01-09 00:53:17 +02:00
jjlawren
90e55cd711 Bump soco to 0.29.0 (#85473) 2023-01-09 00:52:22 +02:00
Ville Skyttä
7eb1b8c2fe Address a few deprecation warnings in tests (#85472) 2023-01-09 00:52:05 +02:00
Franck Nijhof
487782a6d1 Code styling tweaks to Bluetooth (#85448)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-01-08 11:20:02 -10:00
Franck Nijhof
800b8abe39 Code styling tweaks to the MQTT integration (#85463) 2023-01-08 22:07:10 +01:00
jjlawren
1b592e6885 Use subscription callbacks to discover Sonos speakers (#85411)
fixes undefined
2023-01-08 09:50:18 -10:00
J. Nick Koston
d81febd3f4 Small speed up to frequently called datetime functions (#85399) 2023-01-08 09:42:29 -10:00
mkmer
45eb1efc6f Limit Whirlpool timestamp changes to +/- 60 seconds (#85368)
* Limit timestamp changes to +/- 60 seconds

* Add timestamp callback tests
2023-01-08 18:57:46 +01:00
Xavier Decuyper
fc00c6d885 Add Nuki battery percentage sensor (#84968)
* Nuki: add battery percentage + add to device registry

* Remove unused import

* Fixing linting and sorting issues

* Update homeassistant/components/nuki/sensor.py

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

* Shorthand for adding entities

* Use _attr_has_entity_name for battery sensor

* Fix linting issue

* Remove device registry changes

* Exclude from coverage

* Use _attr_ instead of properties

* Clean up

Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-01-08 14:24:20 +01:00
Michael
30c9f4f926 Remove obsolete "Domains blocked" extra attribute from PI-Hole sensors (#85424)
remove obsolete "domains blocked" extra attribute
2023-01-08 13:25:37 +01:00
Lutz Lengemann
5d6634906d Increase Hydrawise default scan interval (#85398)
Increasing default scan interval

Fixes #83540
2023-01-08 13:23:33 +01:00
Bouwe Westerdijk
5eb7aed0ca Plugwise: add support for 3-phase DSMR's (#85421)
* Bump plugwise to v0.27.0

* Add p1-3phase test-fixture

* Add the new 3ph P1 DSMR sensors

* Add p1 3ph test-case
2023-01-08 13:11:29 +01:00
G Johansson
2a965a6e44 SQL reintroduce yaml support (#75205)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-01-07 18:14:36 -10:00
Dave T
d2c733628f Update copyright year to 2023 (#85396)
* Update copyright year

* Remove year from copyright string
2023-01-07 20:05:27 -05:00
J. Nick Koston
a18a629c19 Avoid pattern search entry when there are no patterns in the entity filter (#85404) 2023-01-07 14:40:58 -10:00
GitHub Action
0b163aac7d [ci skip] Translation update 2023-01-08 00:26:22 +00:00
Allen Porter
07fa7504fb Bump ical to 4.2.9 (#85401) 2023-01-07 15:28:37 -08:00
Joakim Plate
8b6e54a01b Switch play pause method in philips js (#85343)
fixes undefined
2023-01-08 00:14:25 +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
Bouwe Westerdijk
da51765f5c Fix unit of illuminance in Plugwise illuminance sensor (#85392) 2023-01-08 00:01:53 +01:00
Michael Hansen
ecaec0332d Hassil intents (#85156)
* Add hassil to requirements

* Add intent sentences

* Update sentences

* Use hassil to recognize intents in conversation

* Fix tests

* Bump hassil due to dependency conflict

* Add dataclasses-json package contraints

* Bump hassil (removes dataclasses-json dependency)

* Remove climate sentences until intents are supported

* Move I/O outside event loop

* Bump hassil to 0.2.3

* Fix light tests

* Handle areas in intents

* Clean up code according to suggestions

* Remove sentences from repo

* Use home-assistant-intents package

* Apply suggestions from code review

* Flake8

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-01-07 16:20:21 -05:00
Álvaro Fernández Rojas
3a905f80df Add QNAP QSW sensors for each port (#76811)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-01-07 10:25:38 -10: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
Robert Hillis
ad65fc27bc Add Google Mail integration (#82637)
* Add Google Mail integration

* oops

* prettier

* Add email service

* adjustments

* update

* move email to notify

* break out services

* tweaks

* Add CC and BCC support

* drop scope check, breakout tests

* use abstract auth

* tweak

* bump dependency

* dependency bump

* remove oauth2client
2023-01-07 11:59:14 -08:00
shbatm
d2537dacc6 Add beep button entity to ISY994 Insteon devices (#85367)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-01-07 09:40:34 -10:00
RenierM26
1804006da0 EZVIZ: Add mac to device info (#85378)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-01-07 20:39:15 +01:00
Allen Porter
5000c426c6 Add config flow for Rain Bird (#85271)
* Rainbird config flow

Convert rainbird to a config flow. Still need to handle irrigation numbers.

* Add options for irrigation time and deprecate yaml

* Combine exception handling paths to get 100% test coverage

* Bump the rainird config deprecation release

* Apply suggestions from code review

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

* Remove unnecessary sensor/binary sensor and address some PR feedback

* Simplify configuration flow and options based on PR feedback

* Consolidate data update coordinators to simplify overall integration

* Fix type error on python3.9

* Handle yaml name import

* Fix naming import post serialization

* Parallelize requests to the device

* Complete conversion to entity service

* Update homeassistant/components/rainbird/switch.py

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

* Update homeassistant/components/rainbird/config_flow.py

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

* Remove unused import

* Set default duration in options used in tests

* Add separate devices for each sprinkler zone and update service to use config entry

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-01-07 09:34:01 -08:00
Joakim Plate
e3e64c103d Switch to attr use in philips js (#85345) 2023-01-07 15:00:32 +01:00
Marc Mueller
c3991b591a Improve DataUpdateCoordinator typing in integrations (8) (#85331) 2023-01-07 14:55:19 +01:00
Marc Mueller
2e989b16ad Improve DataUpdateCoordinator typing in integrations (9) (#85332) 2023-01-07 14:52:06 +01:00
Marc Mueller
a2ef0caa07 Improve sleepiq generic typing (#85330) 2023-01-07 14:13:16 +01:00
Marc Mueller
e99840f82c Improve devolo_home_network generic typing (#85328) 2023-01-07 14:12:03 +01:00
Marc Mueller
b27e89b40e Improve flume generic typing (#85329) 2023-01-07 14:10:44 +01:00
Michael
dddba4ba45 Remove own sensor description in PI-Hole (#85371)
own sensor description is not needed anymor
2023-01-07 14:06:33 +01:00
Maciej Bieniek
0fbb334ad9 Bump accuweather package to 0.5.0 (#85326)
Bump accuweather
2023-01-07 13:37:29 +01:00
Phil Bruckner
b257de57d9 Bump life360 package to 5.5.0 (#85322)
Improve debug output & redact sensitive info from log.
Fix bug that was masking some HTTP errors.
Retry HTTP errors 502, 503 & 504, which have been observed to happen every once
in a while, resulting in fewer unnecessary unavailable states.
2023-01-07 12:53:04 +01:00
Benjamin
f215ae9dd9 Bump volkszahler to 0.4.0 (#85335)
bump volkszahler to 0.4.0

bump volkszahler to 0.4.0
2023-01-07 12:45:09 +01:00
Michael
c3716015c4 Move platform related stuff out of const.py in PI-Hole integration (#85237)
move platform related stuff out of const.py
2023-01-07 12:40:21 +01:00
Michael
ee3ab45012 Make API key mandatory for PI-Hole (#85264)
* add reauth flow

* adjust tests

* use constant for platforms

* remove not needed async_get_entry()

* fix typo

* user _async_abort_entries_match()

* don't use CONF_ prefix for config dicts

* sort PLATFORMS

* use entry_data in reauth flow
2023-01-07 12:22:36 +01:00
Joakim Plate
7f2b7340b9 Validate length of rfxtrx identifier (#85352) 2023-01-07 10:52:46 +01:00
Joakim Plate
dfca3c2448 Correct memory leak for rfxtrx lighting4 devices (#85354) 2023-01-07 10:52:05 +01:00
puddly
757e4cf9e1 Retry ZHA config entry setup when ENETUNREACH is caught (#84615)
* The config entry is not ready on `ENETUNREACH`

* Use new `TransientConnectionError` from zigpy
2023-01-07 10:46:33 +01:00
Allen Porter
d3c7cbbfb0 Bump pyrainbird to 1.1.0 (#85358) 2023-01-06 22:16:14 -08:00
J. Nick Koston
4025ac712f Add note to SwitchBot locks that usernames are case sensitive (#85359) 2023-01-06 19:51:20 -10:00
J. Nick Koston
21c0e93ee9 Bump pySwitchbot to 0.36.3 (#85360) 2023-01-06 19:50:50 -10:00
puddly
015281078a Bump ZHA dependencies (#85355)
* Bump ZHA dependencies

* Deprecated `foundation.Command` -> `foundation.GeneralCommand`
2023-01-06 23:01:36 -05:00
J. Nick Koston
6d012ea7c0 Bump aioesphomeapi to 13.0.3 (#85356)
Performance improvements

changelog: https://github.com/esphome/aioesphomeapi/compare/v13.0.2...v13.0.3
2023-01-06 23:00:38 -05:00
shbatm
cf3ca816a8 Add query button entities to ISY994 devices and hub (#85337) 2023-01-06 15:15:02 -10:00
GitHub Action
2976f843b5 [ci skip] Translation update 2023-01-07 00:22:33 +00:00
shbatm
9ad05b55d9 Use Platform enum and remove DOMAIN as X imports in ISY994 (#85341) 2023-01-06 13:16:14 -10:00
J. Nick Koston
194adcde9c Drop ChainMap in translation cache (#85260) 2023-01-06 11:52:18 -10:00
mkmer
d75087ede5 Add Whirlpool washer and dryer to Whirlpool integration (#85066)
* redo Add sensor

* move back to ClientError
simplify washer_state

* Cleanup Sensor definitions

* Seperated EndTimeSensor

* Clean up WasherDryerTimeClass

* Start with Timestamp = None

* Clean up class description

* One more ClientError

* change to restore sensor

* Don't update when no state change

* Seperate washer tests
Add restore_state test

* Remove unused loop in washer sensor test

* No loops in sensor tests

* Remove unnecessary SensorTestInstance
2023-01-06 12:41:46 -08:00
starkillerOG
968cf641b8 Bump reolink-aio to 0.1.3 (#85309)
bump reolink-aio to 0.1.3
2023-01-06 20:52:24 +01:00
shbatm
f12ffe1e49 Add addtional device classes to ISY994 sensors and bump PyISY to 3.0.11 (#85315) 2023-01-06 07:41:39 -10:00
Franck Nijhof
9d45071e3f Add EasyBaby support to Tuya (#85298) 2023-01-06 14:42:09 +01:00
Carlos Cristobal
8bb5763ea0 Fix Fitbit state for values over 999 (#85251)
* Remove comma thousands formatting

* Add calorie and bpm to units

* Updating device and state classes

* Revert "Updating device and state classes"

This reverts commit ae77cf3cd7.

* Revert "Add calorie and bpm to units"

This reverts commit 7d82bb1c12.

* Removing unnecessary formatting
2023-01-06 14:12:41 +01:00
Franck Nijhof
bd8cb4f166 Update debugpy to 1.6.5 (#85297) 2023-01-06 13:28:15 +01:00
Aaron Bach
31bf0a0105 Renovate Tile config flow tests (#85154) 2023-01-06 13:08:52 +01:00
Anders
4b178e88a4 Mark Yamaha media player as unavailable when unresponsive (#85018) 2023-01-06 13:03:02 +01:00
starkillerOG
d9be9fe6d5 Increase Netgear speedtest period to 2 hours (#85299) 2023-01-06 12:56:27 +01:00
Tom Puttemans
b9339a290a Fix dsmr_reader peak hour consumption unit of measurement (#85301) 2023-01-06 12:55:32 +01:00
Robert Svensson
220ec1906c Make sensor platform use common UniFi entity class (#84818)
fixes undefined
2023-01-06 12:50:32 +01:00
epenet
52032c6c7f Complete test coverage for SFR Box (#85068)
* Complete test coverage for SFR Box

* Add missing hint

* renault -> sfr_box

* Fixes following rebase
2023-01-06 12:30:07 +01:00
epenet
0d5bdaf037 Bump sfrbox-api to 0.0.2 (#85302) 2023-01-06 12:13:49 +01:00
Michal Čihař
aace1da358 lacrosse_view: Set entity availablity depending on the data (#85303) 2023-01-06 12:13:06 +01:00
epenet
3ecbb235cc Address late feedback in SFR Box enum sensors (#84977)
* Address late feedback to SFR Box

* Hassfest

* missed a capital G

* Apply suggestion
2023-01-06 11:13:33 +01:00
Aaron Bach
39b110b9b0 Renovate OpenUV config flow tests (#85150) 2023-01-06 10:51:46 +01:00
epenet
7e6b087773 Allow SensorDeviceClass.POWER_FACTOR unit None (#85287)
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-01-06 09:27:02 +01:00
Paulus Schoutsen
9ed629d838 Fix some pytest warning for helpers (#85283) 2023-01-06 09:21:46 +01:00
Klaas Schoute
f620d2bb2f Add diagnostics to EnergyZero integration (#85164) 2023-01-06 09:13:11 +01:00
dependabot[bot]
5cc3636be7 Bump actions/checkout from 3.2.0 to 3.3.0 (#85285)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-06 08:35:47 +01:00
Paulus Schoutsen
1e78314638 Use async with timeout (#85281) 2023-01-05 20:43:56 -10:00
Paulus Schoutsen
71ce7373a3 2023.1.1 (#85277) 2023-01-05 23:18:21 -05:00
Charles Garwood
9e68117a33 Bump bluetooth-data-tools to 0.3.1 for ld2410-ble (#85278) 2023-01-05 22:33:37 -05:00
Paulus Schoutsen
33bb9c230b Bumped version to 2023.1.1 2023-01-05 22:24:17 -05:00
Charles Garwood
f0f2c12d91 Fix Fully Kiosk service call config entry handling (#85275)
* Make sure we're getting the fully_kiosk config entry

* Make sure we're getting the fully_kiosk config entry
2023-01-05 22:23:52 -05:00
J. Nick Koston
2840821594 Reject the WiFI AP when considering to update a shelly config entry from zeroconf (#85265)
Reject the WiFI AP IP when considering to update a shelly config entry from zeroconf

fixes #85180
2023-01-05 22:23:51 -05:00
rikroe
edfd83c3a7 Bump bimmer_connected to 0.12.0 (#85255)
* Bump bimmer_connected to 0.12.0

* Fix mypy

* Remove not needed code

Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2023-01-05 22:23:51 -05:00
starkillerOG
ee88f34a91 bump reolink-aio to 0.1.2 (#85247) 2023-01-05 22:22:35 -05:00
J. Nick Koston
fa4c250001 Improve error reporting when switchbot auth fails (#85244)
* Improve error reporting when switchbot auth fails

related issue #85243

* bump

* coverage
2023-01-05 22:21:55 -05:00
Franck Nijhof
59d6f827c3 Fix device class for DSMR gas sensors providing energy readings (#85202) 2023-01-05 22:18:30 -05:00
epenet
26ea02aa8f Remove invalid device class for RSSI sensors (#85191)
* Remove invalid device class for RRSI sensors

* Restore state class
2023-01-05 22:18:29 -05:00
epenet
d73b86132b Adjust valid energy units (#85190) 2023-01-05 22:18:28 -05:00
Franck Nijhof
8034faadca Remove invalid AQI unit from Environment Canada (#85183) 2023-01-05 22:18:27 -05:00
Erik Montnemery
3c2b7c0d69 Bump hatasmota to 0.6.2 (#85182) 2023-01-05 22:18:26 -05:00
Ernst Klamer
563ad02c65 Bump bthome-ble to 2.4.1 (#85153)
fix https://github.com/home-assistant/core/issues/85142
fixes undefined
2023-01-05 22:15:13 -05:00
Michal Čihař
fe89b663e7 Fix lacrosse_view fetching of latest data (#85117)
lacrosse_view: fixed fetching of latest data

When using datetime.utcnow(), it only replaces timezone information with
UTC making the actual time offset by the timezone. When you are in UTC-
timezones, it makes no issue as the offset is in the future, but when in
UTC+, the last hour(s) of data are missing.

This commits swtiches to time.time() as UTC timestamp is actually what
the API expects.

It also reduces the window to one hour what noticeably improves the API
performance.
2023-01-05 22:15:12 -05:00
William Scanlon
dcd07d3135 Bump pyeconet to 0.1.18 to fix energy usage (#85094) 2023-01-05 22:15:11 -05:00
Charles Garwood
cf92142b64 Fix Fully Kiosk service call config entry handling (#85275)
* Make sure we're getting the fully_kiosk config entry

* Make sure we're getting the fully_kiosk config entry
2023-01-05 22:10:41 -05:00
Robert Svensson
8bf2299407 Only subscribe to relevant IDs for state updates (#85252)
Make sure to only subscribe to the relevant ID
2023-01-05 21:49:22 -05:00
Franck Nijhof
bdcccd9d83 Improve weather Forecast typing (#85019) 2023-01-06 03:39:37 +01:00
930913
2507ec1f4b Add LD2410 BLE integration (#83883) 2023-01-05 16:15:03 -10:00
rikroe
5b8b6167ac Bump bimmer_connected to 0.12.0 (#85255)
* Bump bimmer_connected to 0.12.0

* Fix mypy

* Remove not needed code

Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2023-01-06 03:05:37 +01:00
shbatm
b5d5a720dc Add additional device classes and units to ISY994 aux sensors (#85274)
fixes undefined
2023-01-05 15:31:45 -10:00
J. Nick Koston
1fbdb80430 Avoid some data merges in the bluetooth remote scanners when nothing has changed (#85270) 2023-01-05 15:22:14 -10:00
shbatm
c4d03088c0 Restore low battery state on ISY994 Insteon heartbeat nodes (#85209)
fixes undefined
2023-01-05 14:30:08 -10:00
GitHub Action
bdd87bcc87 [ci skip] Translation update 2023-01-06 00:23:50 +00:00
Robert Hillis
77dd0b2fd3 Bump steamodd to 4.23 (#85071) 2023-01-06 01:56:42 +02:00
Shai Ungar
f61d605d6d Remove redundant CONF_PATH from sabnzbd config flow (#85214)
remove redundant CONF_PATH from sabnzbd config flow
2023-01-06 01:53:30 +02:00
Guido Schmitz
21fbe07218 Bump devolo_plc_api to 1.0.0 (#85235)
* Bump devolo_plc_api to 1.0.0

* Fix pylint
2023-01-06 01:49:59 +02:00
IceBotYT
57f792d88f Add support for WetDry, WindHeading, and Flex fields in LaCrosse View (#79062)
* Add support for WetDry and WindHeading fields in LaCrosse View

* Improve test coverage

* Verify data type before conversion

* Improve test coverage

* Convert to more concise type conversion

* Add Flex field as per #79529

* Improve code quality

* Add check if expected field is missing
2023-01-06 00:45:06 +01:00
J. Nick Koston
3ac5b780ff Reject the WiFI AP when considering to update a shelly config entry from zeroconf (#85265)
Reject the WiFI AP IP when considering to update a shelly config entry from zeroconf

fixes #85180
2023-01-06 01:44:10 +02:00
Franck Nijhof
a36709cc8d Update coverage to 7.0.3 (#85197) 2023-01-05 23:54:31 +01:00
Michal Čihař
18a18aa6c4 Fix lacrosse_view fetching of latest data (#85117)
lacrosse_view: fixed fetching of latest data

When using datetime.utcnow(), it only replaces timezone information with
UTC making the actual time offset by the timezone. When you are in UTC-
timezones, it makes no issue as the offset is in the future, but when in
UTC+, the last hour(s) of data are missing.

This commits swtiches to time.time() as UTC timestamp is actually what
the API expects.

It also reduces the window to one hour what noticeably improves the API
performance.
2023-01-05 23:45:29 +01:00
Franck Nijhof
f4a71ea83f Fix translation keys for NAM sensors (#85245)
Co-authored-by: Maciej Bieniek <bieniu@users.noreply.github.com>
2023-01-05 23:17:29 +01:00
shbatm
ef759e9c63 Assign ISY994 program entities to hub device, simplify device info (#85224) 2023-01-05 11:16:17 -10:00
starkillerOG
11df364b10 bump reolink-aio to 0.1.2 (#85247) 2023-01-05 22:06:40 +01:00
Álvaro Fernández Rojas
146b43f8c5 Add Airzone Select platform support (#76415)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-01-05 11:03:36 -10:00
Robert Svensson
9c689d757c Limit calls in UniFi to write state (#85248)
Limit calls to write state to when relevant
2023-01-05 15:38:24 -05:00
epenet
829c8e611e Remove invalid device class for RSSI sensors (#85191)
* Remove invalid device class for RRSI sensors

* Restore state class
2023-01-05 15:30:52 -05:00
J. Nick Koston
28ad27a3b3 Improve error reporting when switchbot auth fails (#85244)
* Improve error reporting when switchbot auth fails

related issue #85243

* bump

* coverage
2023-01-05 15:29:13 -05:00
Franck Nijhof
4a48f0d659 Fix device class for DSMR gas sensors providing energy readings (#85202) 2023-01-05 20:28:13 +01:00
G Johansson
26a964b90a Remove unneeded type checking from Sensibo (#85231) 2023-01-05 18:50:05 +01:00
Franck Nijhof
4335a7c653 Remove invalid AQI unit from Environment Canada (#85183) 2023-01-05 09:02:17 -07:00
Erik Montnemery
377396ba16 Add WS endpoint config/entity_registry/get_entries (#85063) 2023-01-05 09:39:10 -05:00
David McKenna
8ffeffd9d2 Add econet device and state classes (#84201)
* Updated econet sensors to have device and state classes

* Updated econet sensors to have device and state classes

* EcoNet sensor updates

* Updated EcoNet sensors to convert kBtu to kWh

* Updating EcoNet sensor with suggestions

* Updating EcoNet sensor with suggestions

* Updating EcoNet sensor with suggestions

* Updating EcoNet sensor with suggestions

* Updating EcoNet sensors name and unique id

* Updating EcoNet sensor with suggestions

* Updating EcoNet sensor with suggestions
2023-01-05 14:25:33 +01:00
epenet
b578d08e8a Adjust valid energy units (#85190) 2023-01-05 13:00:46 +01:00
Franck Nijhof
83f6e168e5 Update orjson to 3.8.4 (#85195) 2023-01-05 12:34:23 +01:00
Duco Sebel
ab6535382d Bumb python-homewizard-energy to 1.4.0 (#85114) 2023-01-05 11:35:59 +01:00
Artem Draft
49885757db Bump pybravia to 0.3.0 (#85127) 2023-01-05 11:34:07 +01:00
Aaron Bach
6b68d3d365 Generalize a base ReCollect Waste entity (#85166) 2023-01-05 11:26:59 +01:00
Erik Montnemery
280f6e4752 Bump hatasmota to 0.6.2 (#85182) 2023-01-05 12:24:38 +02:00
Klaas Schoute
e8b68e67a7 Add Mijndomein Energie virtual integration (#85165) 2023-01-05 11:22:27 +01:00
Erik Montnemery
c1075ebb8c Allow SensorDeviceClass.POWER_FACTOR unit None (#85181) 2023-01-05 11:03:37 +01:00
epenet
3a02c627fa Adjust set_humidity type hints (#85176) 2023-01-05 10:26:49 +01:00
o951753o
240b4078cd Fix typo in Tuya climate (#85185) 2023-01-05 10:22:22 +01:00
Martin Hjelmare
433c0defbe Clean up pylint warning in zwave_js light (#85149) 2023-01-04 21:13:59 -05:00
William Scanlon
8bb964e1bd Bump pyeconet to 0.1.18 to fix energy usage (#85094) 2023-01-04 21:09:54 -05:00
Ernst Klamer
e33c743f4a Bump bthome-ble to 2.4.1 (#85153)
fix https://github.com/home-assistant/core/issues/85142
fixes undefined
2023-01-05 03:05:46 +01:00
GitHub Action
01e99c0229 [ci skip] Translation update 2023-01-05 00:23:39 +00:00
Martin Hjelmare
8805a7e555 Fix humidifier enforce type hints (#85148) 2023-01-05 00:58:08 +01:00
Aaron Bach
80c357c00f Renovate Ridwell config flow tests (#85135)
* Renovate Ridwell config flow tests

* Better fixture name

* Inconsistent typing
2023-01-04 14:00:59 -07:00
Aaron Bach
6e9d3bf8e9 Renovate Airvisual tests (#84892)
* Renovate AirVisual tests

* Cleanup

* Package scope

* Update tests/components/airvisual/test_config_flow.py

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

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-01-04 13:05:37 -07:00
JC Connell
9c88dea584 Add last timestamp to Tile attributes (#85095)
* Add last timestamp to Tile attributes

* sort lines ascending
2023-01-04 12:58:53 -07:00
Franck Nijhof
4e4fc1767f 2023.1.0 (#85120) 2023-01-04 20:47:22 +01:00
Aaron Bach
b80997cc43 Remove unnecessary title kwarg in options flows (#85131) 2023-01-04 12:17:58 -07:00
Martin Hjelmare
cc3c5772c5 Fix Z-Wave JS sensor units and device classes (#85129)
fixes undefined
2023-01-04 19:47:59 +01:00
Martin Hjelmare
439b35c310 Fix Z-Wave JS sensor units and device classes (#85129)
fixes undefined
2023-01-04 19:47:10 +01:00
J. Nick Koston
6ba6991ecd Bump home-assistant-bluetooth to 1.9.2 (#85123) 2023-01-04 18:36:15 +01:00
J. Nick Koston
a9640d9c94 Bump home-assistant-bluetooth to 1.9.2 (#85123) 2023-01-04 18:29:26 +01:00
G Johansson
a5225a3606 Sensibo select platform translations (#82743) 2023-01-04 07:17:57 -10:00
Franck Nijhof
d52d068469 Merge branch 'master' into rc 2023-01-04 17:09:15 +01:00
Franck Nijhof
09b3611a63 Bumped version to 2023.1.0 2023-01-04 17:05:21 +01:00
Joakim Sørensen
ab2f05d3e9 Handle zone exception when setting up Cloudflare (#85110) 2023-01-04 17:04:43 +01:00
Guido Schmitz
90ac0c870f Remove illuminance device class for sensors in devolo Home Control (#85108) 2023-01-04 17:04:40 +01:00
Bram Kragten
0fd113db59 Update frontend to 20230104.0 (#85107) 2023-01-04 17:04:35 +01:00
Jan Bouwhuis
1b43323f5e Allow MQTT device_class or state_class to be set as None (#85106)
* Allow MQTT device_class to be set as `None`

* Add test

* Also allow sensor state_class to be `None`
2023-01-04 17:04:30 +01:00
Jan Bouwhuis
ee21bc5d7f Allow MQTT device_class or state_class to be set as None (#85106)
* Allow MQTT device_class to be set as `None`

* Add test

* Also allow sensor state_class to be `None`
2023-01-04 15:21:07 +01:00
Guido Schmitz
a981117f2d Remove illuminance device class for sensors in devolo Home Control (#85108) 2023-01-04 14:38:42 +01:00
Bram Kragten
d3b1a2c95e Update frontend to 20230104.0 (#85107) 2023-01-04 14:38:17 +01:00
Joakim Sørensen
f5c35ac0c1 Handle zone exception when setting up Cloudflare (#85110) 2023-01-04 14:36:41 +01:00
Jan Bouwhuis
6108e581b1 Do not reset current selection on reconfig or MQTT select (#85099)
* Do not reset current selection on reconfig

* Add a test
2023-01-04 11:54:27 +01:00
Aaron Bach
c8c68f05ec Remove workaround for reloading PurpleAir upon device removal (#85086) 2023-01-04 11:53:06 +01:00
Franck Nijhof
b80467dc58 Update adguard to 0.6.1 (#85052)
* Update adguard to 0.6.0

* Update adguard to 0.6.1
2023-01-04 11:49:16 +01:00
Andre Lengwenus
6e9f0eca03 Fix integer only LCN variable values (#85035) 2023-01-04 11:49:10 +01:00
Erik Montnemery
22dbbd4b71 Revert "Disable sky connect config entry if USB stick is not plugged in" (#85103) 2023-01-04 11:33:16 +01:00
Klaas Schoute
0239938d99 Add ANWB Energie (virtual) integration (#85077) 2023-01-04 10:42:55 +01:00
Jan Bouwhuis
9f24897814 Do not reset current selection on reconfig or MQTT select (#85099)
* Do not reset current selection on reconfig

* Add a test
2023-01-04 10:29:53 +01:00
Jan Bouwhuis
b29c96639b Correct initial config of MQTT climate (#85097)
* Do not reset MQTT climate state on re-config

* More corrections

* Correct startup behavior in optimistic mode
2023-01-04 10:29:02 +01:00
Aaron Bach
49b1d6e7fe Remove workaround for reloading PurpleAir upon device removal (#85086) 2023-01-03 21:24:24 -05:00
shbatm
e150b0cf0f ISY994: Add dhcp support for eisy (#85083) 2023-01-03 15:14:36 -10:00
GitHub Action
5169721916 [ci skip] Translation update 2023-01-04 00:22:58 +00:00
Paul Bottein
dd0f11a062 Add translation key for IPP printer integration (#84441)
* Add translation key for IPP printer integration

* Add tests
2023-01-03 17:56:46 -06:00
Marc Mueller
516cb31635 Fix multi inheritance with CoordinatorEntity (#85053) 2023-01-03 23:07:59 +01:00
Robert Svensson
6718b40181 Make switch platform use common UniFi entity class (#84458)
* Make switch platform use common UniFi entity class

* Consolidate common functions between update and switch platforms

* Use controller.register_platform_add_entities

* Rename UnfiEntityLoader to UnifiUpdateEntityDescriptionMixin
2023-01-03 22:57:44 +01:00
Mike K
799d527fb5 Add MQTT climate setting for current humidity (#84592)
* MQTT Climate: Add support for setting the current humidity via MQTT

* MQTT Climate: Add configuration constants related to setting the target humidity

* MQTT Climate: Add support for setting the humidity's state topic & template

* MQTT Climate: Add support for setting the initial humidity

* MQTT Climate: Add support for setting the humidity's command topic & template

* MQTT Climate: Add support for setting the min/max humidity

* MQTT Climate: Fix style & tests

* MQTT Climate: Set the initial humidity to None

* MQTT Climate: Rename _set_mqtt_attribute to _set_climate_attribute and handle_temperature_received to handle_climate_attribute_received

* MQTT Climate: Copy humidity range validation from MQTT Humidifier

* MQTT Climate: Remove CONF_HUMIDITY_INITIAL

* MQTT Climate: Only enable support for TARGET_HUMIDITY when the command topic is set

* MQTT Climate: Check if setting the target humidity is supported before actually setting it

* MQTT Climate: Make sure that CONF_HUMIDITY_COMMAND_TOPIC has been configured when setting CONF_HUMIDITY_STATE_TOPIC

* MQTT Climate: Fix broken tests

* MQTT Climate: Add test for optimistically setting the target humidity

* MQTT Climate: Remove references to "temperature" in handle_climate_attribute_received

* MQTT Climate: Add additional humidity-related tests

* MQTT Climate: Remove supported feature check in handle_target_humidity_received

It's not needed because this is covered by the `valid_humidity_state_configuration` validation.

Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>

* MQTT Climate: Remove supported feature check in async_set_humidity

It is covered by the base Climate entity.

Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>

Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>
2023-01-03 22:57:20 +01:00
J. Nick Koston
7fdf00a9fb Bump scapy to 2.5.0 (#85074)
changelog: https://github.com/secdev/scapy/compare/v2.4.5...v2.5.0

Reduces memory overhead via https://github.com/secdev/scapy/pull/3579
2023-01-03 16:48:47 -05:00
Klaas Schoute
7d54620f34 Add EnergyZero integration (#83886) 2023-01-03 22:28:16 +01:00
Aarni Koskela
38f183a683 Ruuvi Gateway integration (#84853)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-01-03 10:19:43 -10:00
Robert Svensson
a75bad3a83 Move add Device tracker entities to UniFi controller (#84883) 2023-01-03 20:59:28 +01:00
Andre Lengwenus
45fbbbaea1 Fix integer only LCN variable values (#85035) 2023-01-03 20:23:52 +01:00
J. Nick Koston
d89c259d7e Fix double time conversion in async_track_point_in_utc_time (#85036) 2023-01-03 20:21:54 +01:00
Erik Montnemery
6490dcf099 Import mqtt and recorder locally in test fixtures (#85067) 2023-01-03 20:18:36 +01:00
Koen van Zuijlen
6349760a2c Zeversolar integration (#84887)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-01-03 20:14:08 +01:00
Franck Nijhof
c1a6f83f12 Fix incorrectly return type on bad_identifier in UniFi Protect (#85050) 2023-01-03 20:10:27 +01:00
Ernst Klamer
171e114ec1 Add door, opening and motion sensors to Xiaomi-ble (#84990) 2023-01-03 08:21:28 -10:00
amitfin
b5664f9eaf Bump pycoolmasternet-async and add coolmaster swing mode (#82809)
* Add filter and error code support to CoolMastetNet

* Create separate entities

* coolmaster swing_mode support

* Changed default to False

* Raise HomeAssistantError

* Add tests for init and climate

* Fixed bad merge

* Catch only ValueError
2023-01-03 10:21:11 -08:00
Austin Brunkhorst
ca7384f96e Add services for transitioning snooz volume on or off (#83515)
* Add services for fading snooz on/off

* Rename fade to transition
2023-01-03 18:08:54 +01:00
amitfin
11b03b5669 Bump pycoolmasternet-async and add filter and error code support to CoolMastetNet (#84548)
* Add filter and error code support to CoolMastetNet

* Create separate entities

* Remove async_add_entities_for_platform

* Fixed call to async_add_entities

* Avoid using test global
2023-01-03 09:00:45 -08:00
epenet
34798189ca Improve SFR Box test coverage (#85054)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-01-03 17:56:30 +01:00
epenet
3737170d37 Improve onewire tests (#85064) 2023-01-03 17:32:39 +01:00
epenet
6af07aa348 Improve renault tests (#85065) 2023-01-03 17:32:10 +01:00
Franck Nijhof
5caef34209 Update adguard to 0.6.1 (#85052)
* Update adguard to 0.6.0

* Update adguard to 0.6.1
2023-01-03 15:28:39 +01:00
Michał Huryn
d1935603a9 Bump blebox_uniapi to 2.1.4 (#85059) 2023-01-03 15:22:00 +01:00
epenet
58b36514ad Address late feedback in SFR Box coordinator (#85039)
* Address late feedback in SFR Box coordinator

* One more
2023-01-03 13:54:15 +01:00
epenet
4cea5420b3 Add bitcoin to strict typing (#85049) 2023-01-03 13:44:06 +01:00
Sándor Oroszi
a0d41e1d97 Add hs_command_template and xy_command_template to mqtt light default schema (#84988)
* Add mqtt light hs_command_template

* Add mqtt light xy_command_template
2023-01-03 12:58:00 +01:00
epenet
e7e1a7d46e Clarify NumberDeviceClass.PRECIPITATION docstring (#85051) 2023-01-03 12:31:01 +01:00
epenet
2a9526de17 Address late feedback in SFR Box config flow (#85037)
* Address late feedback in SFR Box config flow

* Adjust tests
2023-01-03 12:18:05 +01:00
Franck Nijhof
fed8f905c8 Correct return type of two raise-only methods in recorder (#85048) 2023-01-03 12:15:45 +01:00
epenet
0d290ac21e Address late feedback in SFR Box sensors (#85038) 2023-01-03 12:15:03 +01:00
Erik Montnemery
8a0fb21988 Clarify SensorDeviceClass.PRECIPITATION docstring (#85045) 2023-01-03 11:30:03 +01:00
Erik Montnemery
605619a5ee Update stale strings in repairs tests (#85046) 2023-01-03 11:11:20 +01:00
Marc Mueller
972eb34ed9 Improve bluetooth generic typing (#84891)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-01-02 21:19:53 -10:00
Paulus Schoutsen
cc6a2f0338 2022.12.9 (#85030) 2023-01-02 22:06:36 -05:00
J. Nick Koston
6ebf2ec9ec Fix failing HomeKit Controller diagnostics tests (#84936) 2023-01-02 22:05:25 -05:00
Paulus Schoutsen
9ecee11af6 Bumped version to 2023.1.0b5 2023-01-02 21:30:16 -05:00
J. Nick Koston
9a1669103b Fix bluetooth not being loaded with esphome proxies when removed from default_config (#85032)
* Fix bluetooth not being loaded with esphome proxies when removed from default_config

fixes #84960

* actually commit the conftest change
2023-01-02 21:30:02 -05:00
Paulus Schoutsen
368ea0586d Bump slixmpp to 1.8.3 (#85031) 2023-01-02 21:30:01 -05:00
J. Nick Koston
4a7db6ee71 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 21:30:00 -05:00
Tobias Sauerwein
a10b9572c7 Bump pyatmo to v7.5.0 (#85016) 2023-01-02 21:29:59 -05:00
starkillerOG
0b47bf1f0b Switch to reolink-aio (#85014)
* switch to reolink-aio

* fix imports
2023-01-02 21:29:58 -05:00
Bram Kragten
5f4d286556 Update frontend to 20230102.0 (#85010)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-01-02 21:29:57 -05:00
Daniel Hjelseth Høyer
b23ab3c65a Update Tibber lib to 0.26.7. Improve error handling of realtime data (#85008) 2023-01-02 21:29:56 -05:00
J. Nick Koston
7c199b36f8 Bump home-assistant-bluetooth to 1.9.1 (#85005)
fixes #83722
2023-01-02 21:29:55 -05:00
David F. Mulcahey
d4e55ee030 Bump ZHA quirks (#85004) 2023-01-02 21:29:55 -05:00
starkillerOG
f3ec82543e Bump motionblinds to 0.6.15 (#84994) 2023-01-02 21:29:54 -05:00
Erik Montnemery
4013d4c48d Revert "Add aliases to device registry items" (#84976) 2023-01-02 21:29:53 -05:00
Martin Hjelmare
93ac908776 Handle not available add-on in hassio add-on manager (#84943)
* Handle not available add-on in hassio add-on manager

* Fix zwave_js tests

* Fix sky connect tests

* Fix matter tests

* Fix yellow tests

* Update hardware tests
2023-01-02 21:29:52 -05:00
starkillerOG
2ad1a53038 Consider 95% as closed for Motion blinds venetian blinds (#84872) 2023-01-02 21:29:51 -05:00
J. Nick Koston
6b95fa5942 Fix bluetooth not being loaded with esphome proxies when removed from default_config (#85032)
* Fix bluetooth not being loaded with esphome proxies when removed from default_config

fixes #84960

* actually commit the conftest change
2023-01-02 21:10:39 -05:00
Paulus Schoutsen
94e6743a7b Bump slixmpp to 1.8.3 (#85031) 2023-01-02 21:10:23 -05:00
starkillerOG
c4a5d12df4 Switch to reolink-aio (#85014)
* switch to reolink-aio

* fix imports
2023-01-02 20:49:55 -05:00
J. Nick Koston
8db086f65b Bump sqlalchemy to 1.4.45 (#85021)
changelog: https://docs.sqlalchemy.org/en/20/changelog/changelog_14.html#change-1.4.45
2023-01-02 20:46:56 -05: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
Paulus Schoutsen
3ba59fbebe Bumped version to 2022.12.9 2023-01-02 20:30:09 -05:00
Martin Hjelmare
f3fab5c1f5 Handle not available add-on in hassio add-on manager (#84943)
* Handle not available add-on in hassio add-on manager

* Fix zwave_js tests

* Fix sky connect tests

* Fix matter tests

* Fix yellow tests

* Update hardware tests
2023-01-02 20:30:03 -05:00
Martin Hjelmare
94b80db968 Handle not available add-on in hassio add-on manager (#84943)
* Handle not available add-on in hassio add-on manager

* Fix zwave_js tests

* Fix sky connect tests

* Fix matter tests

* Fix yellow tests

* Update hardware tests
2023-01-02 20:28:21 -05:00
shbatm
240e1fd8f3 Update ISY994 integration to be model agnostic (#85017) 2023-01-02 14:22:40 -10:00
Tobias Sauerwein
5d6ca6dd44 Bump pyatmo to v7.5.0 (#85016) 2023-01-02 18:52:47 -05:00
Franck Nijhof
5cfa98e400 Improve typing of SelectorConfig (#85022) 2023-01-02 18:52:15 -05:00
Franck Nijhof
9c36f05ac4 Update coverage to 7.0.2 (#85020) 2023-01-02 13:43:20 -10:00
J. Nick Koston
b8a1537b58 Improve performance of fetching and storing history and events with the database (#84870) 2023-01-02 13:26:08 -10:00
Bram Kragten
0ad16e25ef Update frontend to 20230102.0 (#85010)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-01-02 23:31:42 +01:00
J. Nick Koston
3dd342baf3 Bump home-assistant-bluetooth to 1.9.1 (#85005)
fixes #83722
2023-01-02 16:33:01 -05:00
Erik Montnemery
472c23d35f Disable sky connect config entry if USB stick is not plugged in (#84975)
* Disable sky connect config entry if USB stick is not plugged in

* Remove debug stuff
2023-01-02 22:24:59 +01:00
starkillerOG
1724fcc150 Bump motionblinds to 0.6.15 (#84994) 2023-01-02 22:17:20 +01:00
Daniel Hjelseth Høyer
be9010f459 Update Tibber lib to 0.26.7. Improve error handling of realtime data (#85008) 2023-01-02 22:16:38 +01:00
Franck Nijhof
2176281894 Adjust stale bot action to be more performant (#84999) 2023-01-02 21:55:13 +01:00
mkmer
323810e31a Bump AIOAladdinConnect to 0.1.50 (#85006) 2023-01-02 21:47:36 +01:00
David F. Mulcahey
c9efebbf0c Bump ZHA quirks (#85004) 2023-01-02 21:46:50 +01:00
Martin Hjelmare
3b84dba72e Bump pytradfri to 9.0.1 (#85001) 2023-01-02 21:25:00 +01:00
Joakim Plate
987e77780a Only run garbage collection per module (#84681)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2023-01-02 09:31:12 -10:00
Joakim Plate
b302d1f3fc Add initial test for nibe buttons (#84950) 2023-01-02 20:24:20 +01:00
Robert Svensson
534bb74069 Bump axis to v45 (#84992) 2023-01-02 18:14:14 +01:00
Franck Nijhof
02b5da710b Remove attributes from Twinkly lights (#84986) 2023-01-02 17:58:07 +01:00
mkmer
f999258a42 Add Whirlpool device_info and has_entity_name (#84946) 2023-01-02 17:57:58 +01:00
Franck Nijhof
6ecf2e8c71 Move sensor constants and define public names from this module (#84973) 2023-01-02 16:00:50 +01:00
Franck Nijhof
aaa78259b5 Update watchdog to 2.2.1 (#84982) 2023-01-02 15:19:37 +01:00
Franck Nijhof
2371a6cc72 Update Pillow to 9.4.0 (#84974) 2023-01-02 14:43:41 +01:00
starkillerOG
46166160fe Consider 95% as closed for Motion blinds venetian blinds (#84872) 2023-01-02 14:12:36 +01:00
Marc Mueller
7da434f455 Improve DataUpdateCoordinator typing in integrations (7) (#84890) 2023-01-02 12:57:15 +01:00
Aaron Bach
0a77232444 Renovate PurpleAir tests (#84894) 2023-01-02 12:55:19 +01:00
Erik Montnemery
9af17fa5a0 Improve device automation tests (#84972) 2023-01-02 12:33:38 +01:00
Erik Montnemery
11c174aca3 Revert "Add aliases to device registry items" (#84976) 2023-01-02 12:30:25 +01:00
Jan Bouwhuis
9cf86b234b Add optimistic option for MQTT climate (#84777) 2023-01-02 11:39:42 +01:00
Michael
bcbae1388d Remove deprecated PI-Hole YAML config (#84803) 2023-01-02 10:57:16 +01:00
TheJulianJES
f740312247 Fix some typos in ZHA comments (#84881)
* Fix copy paste errors

* Fix "setup/set up" usage

* Fix typo

* Fix comment

* Fix copy paste errors

* Remove space at end of comment

* Remove double word

* Fix copy paste errors

* Fix typos

* Apply review suggestion

* Upper-case zha (to ZHA) everywhere

* Review: fix "over rules"

* Review: most/more
2023-01-02 00:20:59 -05:00
Greg Dowling
f79ffb2981 Improve roon volume translation logic (#84916)
Improve roon volume translation logic.
2023-01-02 00:16:37 -05:00
Paulus Schoutsen
2d120cb6ba Bumped version to 2023.1.0b4 2023-01-01 20:25:29 -05:00
Allen Porter
ad782166c7 Fix caldav calendars with custom timezones (#84955)
* Fix caldav calendars with custom timezones

* Revert whitespace change
2023-01-01 20:23:33 -05:00
J. Nick Koston
bc9202cf02 Bump pySwitchbot to 0.36.1 (#84937)
changelog: https://github.com/Danielhiversen/pySwitchbot/compare/0.36.0...0.36.1

small fix for the battery not updating with passive scanning
after lock operation
2023-01-01 20:23:32 -05:00
J. Nick Koston
0d385d3b67 Fix failing HomeKit Controller diagnostics tests (#84936) 2023-01-01 20:23:31 -05:00
Allen Porter
76fa24aba1 Fix Climate device HVAC mode trigger UI (#84930)
* Fix Climate device HVAC mode trigger UI

* Use updated order of test case results
2023-01-01 20:23:30 -05:00
ChopperRob
95ae37cd87 Fix haveibeenpwned user-agent string (#84919)
* Fixed user-agent string not being accepted as an valid header

* Update homeassistant/components/haveibeenpwned/sensor.py

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

* Removed the aiohttp import

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-01-01 20:22:56 -05:00
Robert Svensson
bc1d22f4ec Bump pydeconz to v106 (#84914)
fixes undefined
2023-01-01 20:20:15 -05:00
Allen Porter
67e1872ab6 Fix free/busy google calendars (#84907)
fixes undefined
2023-01-01 20:20:14 -05:00
tronikos
516c2b0cdb Google Assistant SDK: Log command and response (#84904)
Log command and response
2023-01-01 20:20:13 -05:00
Aaron Bach
60f067b68f Use serial number for AirVisal Pro config entry unique ID (#84902)
* Use serial number for AirVisal Pro config entry unique ID

* Code review
2023-01-01 20:20:13 -05:00
Aaron Bach
ff76567061 Fix issues with PurpleAir sensor device class and unit (#84896) 2023-01-01 20:20:12 -05:00
Aaron Bach
93488cfa0f Don't include distance in PurpleAir sensor selector (#84893) 2023-01-01 20:20:11 -05:00
J. Nick Koston
9655619667 Small fixes for SwitchBot Locks (#84888)
Co-authored-by: Aaron Bach <bachya1208@gmail.com>
2023-01-01 20:20:10 -05:00
starkillerOG
32736b3336 Process late feedback for Reolink (#84884)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-01-01 20:20:09 -05:00
starkillerOG
c77b78928e Bump motionblinds to 0.6.14 (#84873) 2023-01-01 20:20:08 -05:00
William Scanlon
a7ba242f1f Bump pyeconet to 0.1.17 (#84868) 2023-01-01 20:20:08 -05:00
Greg Dowling
043d58d697 Bump pyroon library to 0.1.2. (#84865) 2023-01-01 20:20:07 -05:00
Robert Svensson
6408890543 Bump aiounifi to v43 (#84864) 2023-01-01 20:20:06 -05:00
Franck Nijhof
c5f7d7ae85 Only reflect unavailable state in DSMR when disconnected (#84862)
* Only reflect unavailable state in DSMR when disonnected

* Addressreview comment
2023-01-01 20:20:05 -05:00
Franck Nijhof
7ab27cd9bf Do not validate device classes when entity state is unknown (#84860) 2023-01-01 20:20:04 -05:00
Artem Draft
9932c0cb91 Bump pybravia to 0.2.5 (#84835) 2023-01-01 20:20:03 -05:00
Aaron Bach
565d4f85c1 Ensure AirVisual Pro migration includes device and entity customizations (#84798)
* Ensure AirVisual Pro migration includes device and entity customizations

* Update homeassistant/components/airvisual/__init__.py

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

* Code review

* Fix tests

* Fix tests FOR REAL

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-01-01 20:20:02 -05:00
Allen Porter
0ae55fb58b Fix Climate device HVAC mode trigger UI (#84930)
* Fix Climate device HVAC mode trigger UI

* Use updated order of test case results
2023-01-01 20:16:18 -05:00
mkmer
812665cda4 Fix Whirlpool register_attr_callback (#84962)
relocate register_attr_callback
2023-01-01 20:12:31 -05:00
Allen Porter
a1588cd6af Fix caldav calendars with custom timezones (#84955)
* Fix caldav calendars with custom timezones

* Revert whitespace change
2023-01-01 20:11:34 -05:00
GitHub Action
6220804639 [ci skip] Translation update 2023-01-02 00:23:28 +00:00
starkillerOG
c0d5ceb18c Process late feedback for Reolink (#84884)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-01-01 23:32:17 +01:00
Aaron Bach
ec33f6fe78 Remove unused PurpleAir sensor constant (#84953) 2023-01-01 12:15:29 -07:00
mkmer
b72e0f1d87 Fix Whirlpool type error in get_brand_for_region (#84944)
Fix type error
2023-01-01 20:10:41 +01:00
mkmer
b65d4a9efd Bump whirlpool-sixth-sense to 0.18.0 (#84945)
* bump whirlpool_sixth_sense to 18.0
add callback method initiated in 18.0

* add disconnect to mock
2023-01-01 20:08:54 +01:00
Robert Svensson
f56f391f81 Remove legacy constant from UniFi (#84947) 2023-01-01 20:03:14 +01:00
Aaron Bach
2d4625ad69 Fix issues with PurpleAir sensor device class and unit (#84896) 2023-01-01 19:55:05 +01:00
Artem Draft
ed0e583556 Assumed state in Bravia TV media player (#84885) 2023-01-01 18:07:14 +01:00
Allen Porter
e5b6f05e5b Bump google-nest-sdm to 2.1.2 (#84926) 2023-01-01 15:19:31 +01:00
J. Nick Koston
45e9b8b119 Bump pySwitchbot to 0.36.1 (#84937)
changelog: https://github.com/Danielhiversen/pySwitchbot/compare/0.36.0...0.36.1

small fix for the battery not updating with passive scanning
after lock operation
2023-01-01 14:35:01 +01:00
shbatm
a9fa9a5dd3 Change ISY994 group device assignments (#84933)
Changes to ISY994 group device assignments
2023-01-01 14:29:57 +01:00
Aaron Bach
e62ee331c7 Simplify AirVisual Pro sensor implementation (#84898)
* Simplify AirVisual Pro sensor implementation

* Code review
2023-01-01 14:19:29 +01:00
Aaron Bach
34b5928707 Use serial number for AirVisal Pro config entry unique ID (#84902)
* Use serial number for AirVisal Pro config entry unique ID

* Code review
2023-01-01 14:17:34 +01:00
Maikel Punie
fdf2f8a2ea Bump velbus-aio to 2022.12.0 (#83278)
* Add support for fututre config entry migrations

* Add testcase

* dir check bug

* rework the migrate testcase

* implement comments

* Missed this part of the file

* Fix and clean tests

* add more into the testcase

* push sugestions

* Upgrade velbusaio to add version 2 support

* more comments

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-01-01 12:28:31 +01:00
J. Nick Koston
d51f483855 Fix failing HomeKit Controller diagnostics tests (#84936) 2022-12-31 21:38:34 -10:00
ChopperRob
208b281505 Fix haveibeenpwned user-agent string (#84919)
* Fixed user-agent string not being accepted as an valid header

* Update homeassistant/components/haveibeenpwned/sensor.py

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

* Removed the aiohttp import

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-01-01 02:49:13 +01:00
ChopperRob
a168df342d Fix haveibeenpwned user-agent string (#84919)
* Fixed user-agent string not being accepted as an valid header

* Update homeassistant/components/haveibeenpwned/sensor.py

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

* Removed the aiohttp import

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-01-01 02:48:55 +01:00
GitHub Action
5c7120aa36 [ci skip] Translation update 2023-01-01 00:25:49 +00:00
Paulus Schoutsen
6d4489e822 Update description to guide user to find ESPHome encryption key. (#84928) 2022-12-31 15:21:24 -05:00
tronikos
d90ec3ccca Google Assistant SDK: Log command and response (#84904)
Log command and response
2022-12-31 12:07:31 -08:00
Aaron Bach
82977a43d3 Use generator instead of single-list-unpack in PurpleAir config flow (#84922) 2022-12-31 12:07:12 -08:00
Paulus Schoutsen
c6a0c7eccc Tiny clean up of the ESPHome config flow (#84903)
Clean up the ESPHome config flow
2022-12-31 12:20:48 -05:00
Aaron Bach
ad51952802 Renovate ReCollect Waste config flow tests (#84908) 2022-12-31 07:35:33 -07:00
Aaron Bach
e7cb3f1979 Renovate Notion config flow tests (#84906) 2022-12-31 07:34:59 -07:00
Allen Porter
9c348b6330 Fix free/busy google calendars (#84907)
fixes undefined
2022-12-31 14:01:05 +01:00
Robert Svensson
f275389ffe Bump pydeconz to v106 (#84914)
fixes undefined
2022-12-31 13:59:39 +01:00
avee87
2dd9229dc4 Add device info to transmission (#84660) 2022-12-31 13:20:44 +01:00
Martin Hjelmare
fd78373b5c Use entity descriptions in mysensors binary sensor (#84897) 2022-12-31 11:52:36 +01:00
Allen Porter
6b6f115d7e Fix handling of empty google_calendars.yaml file (#84909)
fixes undefined
2022-12-31 11:50:56 +01:00
Aaron Bach
fbb406842e Remove redundant Guardian handler unsub logic (#84905) 2022-12-31 11:17:37 +01:00
Aaron Bach
e141374831 Don't include distance in PurpleAir sensor selector (#84893) 2022-12-31 11:16:09 +01:00
epenet
896526c24b Add SFR Box integration (#84780)
* Add SFR Box integration

* Adjust error handling in config flow

* Add tests

* Use value_fn

* Add translation

* Enable mypy strict typing

* Add ConfigEntryNotReady

* Rename exception

* Fix requirements
2022-12-31 10:14:13 +01:00
Marc Mueller
11b5de9463 Improve shelly generic typing (#84889)
Improve shelly generic typing
2022-12-31 08:33:41 +02:00
J. Nick Koston
f6991cd4dc Small fixes for SwitchBot Locks (#84888)
Co-authored-by: Aaron Bach <bachya1208@gmail.com>
2022-12-31 05:05:25 +01:00
GitHub Action
d12857c68c [ci skip] Translation update 2022-12-31 00:22:33 +00:00
Aaron Bach
f8467d253e Renovate Ambient PWS config flow tests (#84879)
* Renovate Ambient PWS config flow tests

* Naming

* Update tests/components/ambient_station/conftest.py

* Update tests/components/ambient_station/conftest.py

* Simplify
2022-12-30 17:09:38 -07:00
Franck Nijhof
9b3d727e8e Update orjson to 3.8.3 (#84878) 2022-12-31 00:58:02 +01:00
starkillerOG
0a8514d7cd Bump motionblinds to 0.6.14 (#84873) 2022-12-30 23:57:35 +01:00
Aaron Bach
34dc47ad10 Ensure AirVisual Pro migration includes device and entity customizations (#84798)
* Ensure AirVisual Pro migration includes device and entity customizations

* Update homeassistant/components/airvisual/__init__.py

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

* Code review

* Fix tests

* Fix tests FOR REAL

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-12-30 14:47:41 -07:00
Robert Svensson
60de2a82c7 Make device tracker use common UniFi entity class (#84786) 2022-12-30 22:27:45 +01:00
William Scanlon
8ffd540c85 Bump pyeconet to 0.1.17 (#84868) 2022-12-30 22:12:01 +01:00
Robert Svensson
28eda7d1f0 Move add Update entities to UniFi controller (#84477) 2022-12-30 21:58:23 +01:00
Yuxin Wang
06095b1fec Enable strict typing for apcupsd (#84861) 2022-12-30 21:48:29 +01:00
Robert Svensson
7abff358a5 Bump aiounifi to v43 (#84864) 2022-12-30 21:17:47 +01:00
Greg Dowling
3e18d70483 Bump pyroon library to 0.1.2. (#84865) 2022-12-30 13:31:16 -05:00
Franck Nijhof
02f64ada2d Only reflect unavailable state in DSMR when disconnected (#84862)
* Only reflect unavailable state in DSMR when disonnected

* Addressreview comment
2022-12-30 13:08:11 -05:00
Franck Nijhof
f8fa676ac8 Do not validate device classes when entity state is unknown (#84860) 2022-12-30 13:07:49 -05:00
Yuxin Wang
7a7f986444 Add state_class to the sensor entity descriptions for apcupsd integration (#84829) 2022-12-30 17:53:54 +00:00
Aaron Godfrey
8cbbdf21f3 Update todoist integration to use new official rest api library (#79481)
* Swapping out libraries.

* Adding types

* Add ability to add task.

* Removed remaining todos.

* Fix lint errors.

* Fixing tests.

* Update to v2 of the rest api.

* Swapping out libraries.

* Adding types

* Add ability to add task.

* Removed remaining todos.

* Fix lint errors.

* Fix mypy errors

* Fix custom projects.

* Bump DEPENDENCY_CONFLICTS const

* Remove conflict bump

* Addressing PR feedback.

* Removing utc offset logic and configuration.

* Addressing PR feedback.

* Revert date range logic check
2022-12-30 09:49:35 -08:00
Aarni Koskela
7440c34901 Allow None connector for BaseHaRemoteScanner (#84847) 2022-12-30 06:49:37 -10:00
Franck Nijhof
7be60d4569 Bumped version to 2023.1.0b3 2022-12-30 16:50:35 +01:00
Franck Nijhof
a50622cbfd Add availability property to DSMR sensors (#84848) 2022-12-30 16:49:35 +01:00
Bram Kragten
fb41b024c0 Update frontend to 20221230.0 (#84842) 2022-12-30 16:49:31 +01:00
Artem Draft
80ac4c0269 Redesign and refactor Bravia TV config_flow (#84832)
fixes undefined
2022-12-30 16:49:27 +01:00
Damian Sypniewski
0e0677b690 Add option to retrieve SwitchBot Lock encryption key through config flow (#84830)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-12-30 16:48:39 +01:00
SukramJ
50d9e3efe6 Add mA to SensorDeviceClass.CURRENT units (#84492)
fixes undefined
2022-12-30 16:45:39 +01:00
Jan Bouwhuis
ca28006d76 Add mV as a unit for voltage and enable conversions (#84805)
fixes undefined
2022-12-30 16:41:51 +01:00
Phil Cole
ac3711e6ab Use pycarwings2 2.14 (#84792)
fixes undefined
2022-12-30 16:40:22 +01:00
epenet
5901964bf6 Enable unit conversion for DATA_SIZE (#84699) 2022-12-30 16:40:19 +01:00
epenet
b24c40f2df Enable unit conversion for DATA_RATE (#84698) 2022-12-30 16:40:16 +01:00
Chris Straffon
2cb7a80f98 Fix growatt identification issue (#84628)
Fixes https://github.com/home-assistant/core/issues/84600
fixes undefined
2022-12-30 16:40:11 +01:00
Artem Draft
3ac7c687be Redesign and refactor Bravia TV config_flow (#84832)
fixes undefined
2022-12-30 16:35:18 +01:00
Steven Looman
f05de2b28c Actually try port when finding next available port for ssdp server (#84206)
fixes undefined
2022-12-30 16:29:17 +01:00
Franck Nijhof
1b3d3d5cc3 Add availability property to DSMR sensors (#84848) 2022-12-30 16:21:41 +01:00
Chris Straffon
eba64f84ef Fix growatt identification issue (#84628)
Fixes https://github.com/home-assistant/core/issues/84600
fixes undefined
2022-12-30 15:33:30 +01:00
Steven Looman
a9be2adf06 Actually try port when finding next available port for ssdp server (#84206)
fixes undefined
2022-12-30 15:30:29 +01:00
Bram Kragten
55885f49f2 Update frontend to 20221230.0 (#84842) 2022-12-30 14:55:50 +01:00
Phil Cole
e4f692ce6f Use pycarwings2 2.14 (#84792)
fixes undefined
2022-12-30 14:09:36 +01:00
SukramJ
005bc8994d Add mA to SensorDeviceClass.CURRENT units (#84492)
fixes undefined
2022-12-30 13:55:14 +01:00
Martin Hjelmare
df2d0cd3e3 Refactor mysensors device tracker (#84747) 2022-12-30 13:15:00 +01:00
Jan Bouwhuis
b2388b74d9 Add mV as a unit for voltage and enable conversions (#84805)
fixes undefined
2022-12-30 12:51:05 +01:00
Franck Nijhof
bcf32f8331 Mark required fields in FlowResult typedict (#84811)
* Mark required fields in FlowResult typedict

* Remove unneeded asserts from tests
2022-12-30 12:01:45 +01:00
epenet
f68a7636c5 Cleanup pytest.approx in unit conversion tests (#84810) 2022-12-30 10:16:20 +01:00
Artem Draft
0e98e0f65f Bump pybravia to 0.2.5 (#84835) 2022-12-30 09:16:49 +01:00
Abílio Costa
0e8164c07a Add support for US in the Whirlpool integration (#77237)
* Support US region in the Whirlpool integration

* Force maytag brand for US region

* Add missing util.py file

* Fix import after merge

* run black

* Missing region key in config flow test

* Fixed Generic config entry

* fixed typos in dict

* Remove redundant list const

Co-authored-by: mkmer <mike.j.kasper@gmail.com>
2022-12-30 09:13:47 +01:00
Damian Sypniewski
7aadcc1f97 Add option to retrieve SwitchBot Lock encryption key through config flow (#84830)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-12-29 21:48:39 -10:00
Paulus Schoutsen
d9aff9d7b0 Bumped version to 2023.1.0b2 2022-12-29 20:55:27 -05:00
shbatm
46e11c2fa8 ISY994: Bump PyISY to 3.0.10 (#84821) 2022-12-29 20:54:48 -05:00
J. Nick Koston
522477d5a4 Fix thermobeacon WS08 models that identify with manufacturer_id 27 (#84812)
fixes #84706
2022-12-29 20:54:47 -05:00
Joakim Plate
cc2b592221 Correct missing alarm reset button on nibe (#84809)
fixes undefined
2022-12-29 20:54:46 -05:00
Aaron Bach
bd86111dd8 Fix AirVisual Pro sensors with incorrect units for their device classes (#84800) 2022-12-29 20:54:45 -05:00
Michael
f0514008fa Deprecate YAML config in PI-Hole (#84797)
create an issue about deprecated yaml config
2022-12-29 20:54:44 -05:00
Aaron Bach
3c8a66abbe Don't attempt setup on migrated AirVisual Pro in the airvisual domain (#84796)
fixes undefined
2022-12-29 20:54:44 -05:00
Aaron Bach
f1d509be03 Remove ozone device class from OpenUV sensor (#84791)
fixes undefined
2022-12-29 20:54:43 -05:00
Robert Svensson
fbdc7d44bc Only subscribe to specific UniFi object ID (#84787) 2022-12-29 20:54:42 -05:00
Hans Oischinger
cae386465e Catch vicare errors when deactivating preset fails (#84778)
vicare: catch errors when deactivating preset fails
2022-12-29 20:54:41 -05:00
Allen Porter
31847e3a69 Check google calendar API scope to determine if write access is enabled (#84749)
* Check google calendar API scope to determine if write access is enabled

* Add API scope for calendar service for creating events
2022-12-29 20:54:40 -05:00
Jc2k
5787e1506c Fix UUID normalisation for vendor extensions in homekit_controller thread transport (#84746) 2022-12-29 20:54:39 -05:00
starkillerOG
9a29f64128 Bump pynetgear to 0.10.9 (#84733) 2022-12-29 20:54:38 -05:00
Tomas Kislan
6c0e4a9e8f Fix and upgrade minio integration (#84545)
closes https://github.com/home-assistant/core/issues/79842
2022-12-29 20:54:37 -05:00
Michael
381480813d Deprecate YAML config in PI-Hole (#84797)
create an issue about deprecated yaml config
2022-12-29 20:41:08 -05:00
shbatm
1fc9eb6629 ISY994: Bump PyISY to 3.0.10 (#84821) 2022-12-29 20:37:34 -05:00
J. Nick Koston
6374cc6480 Fix thermobeacon WS08 models that identify with manufacturer_id 27 (#84812)
fixes #84706
2022-12-29 15:09:37 -10:00
GitHub Action
dd560a517c [ci skip] Translation update 2022-12-30 00:23:31 +00:00
Martin Hjelmare
5d4216d648 Add mysensors text platform (#84667)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-12-30 00:01:03 +01:00
Aaron Bach
c0da80b567 Don't attempt setup on migrated AirVisual Pro in the airvisual domain (#84796)
fixes undefined
2022-12-29 23:57:50 +01:00
Robert Svensson
e33cea9ff7 Add PoE power sensor to UniFi integration (#84314)
* Add PoE power sensor to UniFi integration

* Add unit of power

* Only update state if value has changed

* Remove stale print

* Subscribe to specific sensor to remove unnecessary state changes

Co-authored-by: J. Nick Koston <nick@koston.org>
2022-12-29 22:55:00 +01:00
Joakim Plate
0defe97892 Correct missing alarm reset button on nibe (#84809)
fixes undefined
2022-12-29 22:34:01 +01:00
Robert Svensson
9f399a1bbe Only subscribe to specific UniFi object ID (#84787) 2022-12-29 10:51:16 -10:00
Aaron Bach
f51cf87361 Fix AirVisual Pro sensors with incorrect units for their device classes (#84800) 2022-12-29 20:42:33 +01:00
Duco Sebel
d8cbff65f1 Fix code quality issues for HomeWizard (#84134)
* Remove unused constant

* Reuse fetch check for retrieving device information

* Remove else block

* Patch integration setup in test

* use isinstance to detect return type, instead of tuple

* Raise exception when recoverable error has been triggered to make code cleaner

* Use error code to split message and localization

* Actually log things
2022-12-29 10:35:24 -08:00
Aaron Bach
570824100c Remove ozone device class from OpenUV sensor (#84791)
fixes undefined
2022-12-29 18:32:06 +01:00
Jan Bouwhuis
ee66ffc8de Do not depend MQTT CI tests on debug logs (#84783)
* Do not depend MQTT CI tests on debug logs

* Leave Clean up expire as debug message
2022-12-29 18:29:28 +01:00
Brandon Rothweiler
8678b36e71 Add distance sensor device class to Mazda integration (#84659) 2022-12-29 17:17:11 +01:00
G Johansson
187b03446e Improve code quality Time of Day (#79412) 2022-12-29 17:10:10 +01:00
Marc Mueller
3312a041fd Improve opengarage generic typing (#84640) 2022-12-29 15:59:25 +01:00
Hans Oischinger
235a34c10c Catch vicare errors when deactivating preset fails (#84778)
vicare: catch errors when deactivating preset fails
2022-12-29 15:28:33 +01:00
Franck Nijhof
f84533838a Update attrs to 22.2.0 (#84772) 2022-12-29 15:09:39 +01:00
Jan Bouwhuis
5fbe36d43e Fix MQTT test logging level after default pytest logging capture change (#84773)
Fix logging level for MQTT CI testing after #84672
2022-12-29 15:08:35 +01:00
Tomas Kislan
1dec6854e5 Fix and upgrade minio integration (#84545)
closes https://github.com/home-assistant/core/issues/79842
2022-12-29 14:16:06 +01:00
Franck Nijhof
bfdca4b274 Update pre-commit to 2.21.0 (#84768) 2022-12-29 14:09:26 +01:00
Franck Nijhof
e164fdbef8 Update holidays to 0.18.0 (#84770) 2022-12-29 13:57:35 +01:00
Marc Mueller
77e71cf18b Improve modbus generic typing (#84737) 2022-12-29 12:37:31 +01:00
Marc Mueller
d849dab7ba Improve oncue generic typing (#84761)
Improve oncue generic typing
2022-12-29 12:26:17 +01:00
Franck Nijhof
7768084655 Update coverage to 7.0.1 (#84764) 2022-12-29 12:24:32 +01:00
Marc Mueller
b90a51490f Improve here_travel_time generic typing (#84631) 2022-12-29 11:01:21 +01:00
Allen Porter
2049993941 Check google calendar API scope to determine if write access is enabled (#84749)
* Check google calendar API scope to determine if write access is enabled

* Add API scope for calendar service for creating events
2022-12-29 11:00:31 +01:00
Marc Mueller
bd9f03010f Improve upnp typing (#84652) 2022-12-29 10:59:06 +01:00
epenet
6261994fcf Enable unit conversion for DATA_SIZE (#84699) 2022-12-29 09:58:15 +01:00
Marc Mueller
e693ba17e0 Improve brunt generic typing (#84735) 2022-12-29 09:55:59 +01:00
Marc Mueller
bfb509ccb8 Improve iqvia typing (#84734) 2022-12-29 09:45:05 +01:00
Marc Mueller
c4b45fb110 Improve ondilo_ico generic typing (#84738) 2022-12-29 09:35:06 +01:00
Marc Mueller
b8a4399078 Improve freedompro generic typing (#84736) 2022-12-29 09:31:47 +01:00
Lukas Barth
50f05ac51a Remove myself as a code owner (#84701)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2022-12-29 09:14:48 +01:00
Marc Mueller
fa7018bbec Improve DataUpdateCoordinator typing in integrations (6) (#84741) 2022-12-29 09:07:23 +01:00
Jc2k
9c2c57831b Fix UUID normalisation for vendor extensions in homekit_controller thread transport (#84746) 2022-12-29 05:40:25 +00:00
starkillerOG
fb1702647d Bump pynetgear to 0.10.9 (#84733) 2022-12-29 01:26:58 +01:00
GitHub Action
b3ab0a0199 [ci skip] Translation update 2022-12-29 00:23:20 +00:00
Anders
65aaea6ec6 Set Yamaha unique_id (#84730)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-12-29 01:00:31 +01:00
Marc Mueller
72671b93d2 Improve youless generic typing (#84739) 2022-12-28 23:52:01 +01:00
Marc Mueller
2512eb1e4c Improve DataUpdateCoordinator typing in integrations (5) (#84740) 2022-12-28 23:44:41 +01:00
Joakim Plate
5c43f0861f Avoid running final writes in executor in test (#84679) 2022-12-28 23:40:11 +01:00
Marc Mueller
345081ba15 Improve syncthru generic typing (#84648) 2022-12-28 23:37:12 +01:00
Robert Svensson
de5c7b0414 Rework UniFi device tracker to utilizing entity description (#81979)
* Rework UniFi device tracker to utilizing entity description

* Use bound

* Fix review comments from other PR
2022-12-28 22:29:11 +01:00
Franck Nijhof
9ce64f8990 Bumped version to 2023.1.0b1 2022-12-28 22:18:06 +01:00
Aaron Bach
6ef4086683 Fix incorrect values for AirVisual Pro sensors (#84725) 2022-12-28 22:16:22 +01:00
Aaron Bach
b146f52317 Remove incorrect unit for AirVisual AQI sensor (#84723)
fixes undefined
2022-12-28 22:16:19 +01:00
Hans Oischinger
001bd78bcb water_heater: Add unsupported states (#84720) 2022-12-28 22:16:16 +01:00
Allen Porter
ba4ec8f8c1 Gracefully handle caldav event with missing summary (#84719)
fixes undefined
2022-12-28 22:16:12 +01:00
Michael
8aa3a6cc15 Remove deprecated tankerkoenig YAML config (#84711)
remove yaml import
2022-12-28 22:16:09 +01:00
Hmmbob
ed43e1d3a4 Update apprise to 1.2.1 (#84705) 2022-12-28 22:16:06 +01:00
Marcel van der Veldt
b7654c0fce Bump python matter server to 1.0.8 (#84692)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-12-28 22:16:02 +01:00
Hmmbob
cbcfeee322 Update apprise to 1.2.1 (#84705) 2022-12-28 22:13:20 +01:00
Joakim Plate
cb982294bd Avoid logging increase during tests (#84672) 2022-12-28 22:12:25 +01:00
Michael
551d52103d Remove deprecated tankerkoenig YAML config (#84711)
remove yaml import
2022-12-28 16:11:40 -05:00
Allen Porter
128ccbaa57 Gracefully handle caldav event with missing summary (#84719)
fixes undefined
2022-12-28 22:07:51 +01:00
Aaron Bach
580f2058a7 Fix incorrect values for AirVisual Pro sensors (#84725) 2022-12-28 22:06:44 +01:00
Aaron Bach
03ca50f292 Remove additional airvisual_pro references in airvisual (#84724) 2022-12-28 22:05:02 +01:00
Aaron Bach
5e2753d2fc Remove incorrect unit for AirVisual AQI sensor (#84723)
fixes undefined
2022-12-28 22:03:49 +01:00
epenet
46e02ebaff Enable unit conversion for DATA_RATE (#84698) 2022-12-28 21:49:00 +01:00
Hans Oischinger
c354868270 water_heater: Add unsupported states (#84720) 2022-12-28 21:45:24 +01:00
Nathan Spencer
3f3ffe3060 Use built in polling for litterrobot update entity (#84678)
* Use built in polling

* Define scan interval
2022-12-28 20:30:48 +01:00
Franck Nijhof
ba24cb6e72 Bump version to 2023.2.0dev0 (#84707) 2022-12-28 18:46:04 +01:00
Marcel van der Veldt
0e9c6b2bba Bump python matter server to 1.0.8 (#84692)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-12-28 18:29:37 +01:00
J. Nick Koston
5bdaad9c13 Reduce number of asyncio tasks created by bond (#84668) 2022-12-28 18:14:38 +01:00
Franck Nijhof
99f3cfdf8a Bumped version to 2023.1.0b0 2022-12-28 16:51:38 +01:00
Marc Mueller
cb37df6a61 Improve risco generic typing (#84644) 2022-12-28 16:49:54 +01:00
Jc2k
7feb0807e2 Fix handling of CoAP 404 in homekit_controller (#84700) 2022-12-28 16:48:47 +01:00
Álvaro Fernández Rojas
5d4591a3ec airzone: update aioairzone to v0.5.2 (#84690) 2022-12-28 16:37:50 +01:00
Bram Kragten
29797b93f7 Update frontend to 20221228.0 (#84696) 2022-12-28 16:35:50 +01:00
Joakim Plate
850c082649 Switch to pytest-freezer (#84680) 2022-12-28 15:43:03 +01:00
Joakim Plate
af875eec50 Add nibe heat pump alarm reset button (#79427)
* Add button platform

* Enable button platform

* Use parameters from library
2022-12-28 15:36:41 +01:00
MattWestb
0854f29b7c Fix zha RMS voltage (#84689)
Fix RMS Voltage.

class ElectricalMeasurementRMSVoltage(ElectricalMeasurement, id_suffix="rms_voltage"): is using CURRENT as unit but shall being VOLTAGE.

Fix: https://github.com/home-assistant/core/issues/84537
2022-12-28 09:27:17 -05:00
Matthias Alphart
0c7eb431e6 KNX ConfigFlow: add selection of secure tunnel endpoint (#84651) 2022-12-28 11:43:03 +01:00
Marc Mueller
8827d9e88f Improve meteo_france generic typing (#84685) 2022-12-28 11:12:20 +01:00
Marc Mueller
059ecd10a2 Improve omnilogic generic typing (#84686) 2022-12-28 11:10:49 +01:00
Jonno12345
5e04a87cc6 Fix Scrape integration for date and timestamp devices (#84480)
* Scrape integration fix for date and timestamp devices

* Changes advised by PR review. Merged test source and used walrus operator
2022-12-28 10:16:14 +01:00
dependabot[bot]
2bcf9717ed Bump actions/cache from 3.2.1 to 3.2.2 (#84683) 2022-12-28 08:17:12 +01:00
Damian Sypniewski
64cf4b2258 Fix SwitchBot Lock test (#84682) 2022-12-27 19:12:52 -10:00
Damian Sypniewski
599569bc53 Add support for SwitchBot Lock (#84673)
* Added support for SwitchBot Lock

* Updated PySwitchbot to 0.32.1

* Updated .coveragerc

* Removed unnecessary condition

* Using library method to verify encryption key

* Added config flow tests

* Remove link from config flow description

* Added one more test for config flow

* Updated CODEOWNERS
2022-12-27 18:16:00 -10:00
Joakim Plate
94a02e7613 Switch to orjson for tests (#84674) 2022-12-28 03:36:58 +01:00
J. Nick Koston
94d1375be3 Avoid creating a task in the bluetooth watchdog when everything is OK (#84669) 2022-12-27 16:00:24 -10:00
J. Nick Koston
4296f227cf Fix thundering heard in setup_again when there are many integrations (#84670) 2022-12-27 15:59:42 -10:00
GitHub Action
cc27986cac [ci skip] Translation update 2022-12-28 00:22:40 +00:00
Stéphane Graber
5ebbeff42d Add IPv6 support to snmp sensor (#84607)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-12-28 01:12:08 +01:00
shbatm
e383533ff3 ISY994: Bump pyisy to 3.0.9 (#84654)
fixes undefined
2022-12-27 23:38:34 +01:00
Marc Mueller
694fa3d014 Improve DataUpdateCoordinator typing in integrations (4) (#84658) 2022-12-27 22:50:57 +01:00
Marc Mueller
e170681016 Improve DataUpdateCoordinator typing in integrations (3) (#84657) 2022-12-27 22:49:23 +01:00
Marc Mueller
06db5476e4 Improve DataUpdateCoordinator typing in integrations (2) (#84656) 2022-12-27 22:47:04 +01:00
Marc Mueller
1de41ab123 Improve DataUpdateCoordinator typing in integrations (1) (#84655) 2022-12-27 22:44:25 +01:00
Franck Nijhof
5a5f01fcd4 Update wled to 0.15.0 (#84639) 2022-12-27 22:01:47 +01:00
Marc Mueller
4d69cf1cc3 Improve steam_online generic typing (#84646) 2022-12-27 21:53:07 +01:00
Marc Mueller
cf598bb5fd Improve surepetcare generic typing (#84647) 2022-12-27 21:50:33 +01:00
Marc Mueller
1624cb1046 Improve synology_dsm generic typing (#84649) 2022-12-27 21:49:47 +01:00
Marc Mueller
572af57ffe Improve totalconnect generic typing (#84650) 2022-12-27 21:47:22 +01:00
Martin Hjelmare
d441fb2ec5 Use debouncer in mysensors (#84638)
* Use debouncer in mysensors

* Clean cover tests

* Fix debouncer mocking

* Follow typing
2022-12-27 21:37:10 +01:00
Allen Porter
624c93bb38 Add Local calendar edit support (#84141)
* Add update support for calendars and implement in local calendar

* Fix supported feature for update calendar

* Increase test coverage for websocket error cases

* Improve test coverage for update failure cases

* Improve test coverage by sharing code between update and create

* Update homeassistant/components/calendar/__init__.py

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

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-12-27 12:36:43 -08:00
Marc Mueller
b01efc55a2 Improve lyric generic typing (#84637) 2022-12-27 21:24:33 +01:00
Marc Mueller
44e37a8026 Improve laundrify generic typing (#84635) 2022-12-27 21:24:09 +01:00
Marc Mueller
1cad55f721 Improve kostal_plenticore generic typing (#84634) 2022-12-27 21:23:22 +01:00
Marc Mueller
b8f83074ce Improve google calendar generic typing (#84633) 2022-12-27 21:21:16 +01:00
Marc Mueller
511f3335a1 Improve rdw generic typing (#84643) 2022-12-27 21:18:15 +01:00
Marc Mueller
54ba09ec1c Improve ovo_energy generic typing (#84641) 2022-12-27 21:17:35 +01:00
Marc Mueller
24a34b1739 Improve rainbird generic typing (#84642) 2022-12-27 21:17:20 +01:00
starkillerOG
a06b1eaf69 Add reolink IP NVR/Camera integration (#84081)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-12-27 10:15:53 -10:00
Brandon Rothweiler
f5c56152d5 Add climate platform to Mazda integration (#75037)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-12-27 10:13:36 -10:00
PierreAronnax
7ef145d4ce Return unavailable if Govee BLE sensor is in error (#84547)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-12-27 10:11:41 -10:00
Matthias Alphart
a752232de8 KNX ConfigFlow: Validate contents of knxkeys file (#84411) 2022-12-27 21:00:19 +01:00
Marc Mueller
c99025be26 Improve gogogate2 generic typing (#84632) 2022-12-27 09:44:39 -10:00
Marc Mueller
653805584b Improve lookin generic typing (#84636) 2022-12-27 09:37:47 -10:00
Matthias Alphart
acd31d4ae3 Add cooldown and respond_to_read options for KNX expose (#84613)
Add cooldown option for KNX expose
2022-12-27 20:36:02 +01:00
Martin Hjelmare
6c32337c8e Clean mysensors update callbacks (#84629) 2022-12-27 20:29:25 +01:00
Martin Hjelmare
eae8154753 Add mysensors cover tests (#84626) 2022-12-27 20:04:22 +01:00
Martin Hjelmare
d1489fe76f Add mysensors climate tests (#84619) 2022-12-27 17:40:59 +01:00
Martin Hjelmare
633c82d9fe Clean mysensors test fixture loading (#84618) 2022-12-27 17:17:01 +01:00
Franck Nijhof
a83d577b42 Add Plugwise climate preset translations (#84617) 2022-12-27 17:16:45 +01:00
Martin Hjelmare
dea513cdbd Add mysensors light tests (#84606) 2022-12-27 15:25:22 +01:00
Matthias Alphart
76f92cc985 Update xknx to 2.2.0 (#84609) 2022-12-27 15:18:14 +01:00
ollo69
5058272818 Use Object selector for AndroidTV detection rules option (#84412) 2022-12-27 15:08:23 +01:00
epenet
4c8e3aa7c4 Remove lumen from Illuminance units (#84386) 2022-12-27 14:25:47 +01:00
Matt Gerega
2215adf5cf Add support for covers in Prometheus metrics (#83763)
fixes undefined
2022-12-27 11:25:33 +01:00
Maximilian
5990bd7ca3 Add recommended actions to NINA (#83775) 2022-12-27 11:24:54 +01:00
Franck Nijhof
d4f69a3652 String formatting and max line length - Part 7 (#84532)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-12-27 11:18:56 +01:00
Yuval Aboulafia
3149c52be1 Fix F602 key repeated (#84531) 2022-12-27 11:07:10 +01:00
Rami Mosleh
03112bbeea Add strict typing to speedtestdotnet (#84597) 2022-12-27 09:19:56 +01:00
Rami Mosleh
f1466a3b86 Add strict typing to simplepush (#84598) 2022-12-27 09:19:24 +01:00
GitHub Action
16bff198de [ci skip] Translation update 2022-12-27 00:23:38 +00:00
Martin Hjelmare
941d175087 Add mysensors device tracker tests (#84589) 2022-12-26 12:58:13 -10:00
J. Nick Koston
0cebf1acb1 Bump pySwitchbot to 0.31.0 (#84586) 2022-12-26 21:45:02 +01:00
Martin Hjelmare
08586868f5 Add mysensors switch tests (#84585) 2022-12-26 09:44:10 -10:00
Christopher Bailey
3aa759fc49 Deprecate the UniFi Protect Detected Object sensor (#83480)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-12-26 09:32:05 -10:00
Christopher Bailey
b96330df03 Deprecate set_doorbell_message UniFi Protect service (#83675) 2022-12-26 09:19:34 -10:00
Martin Hjelmare
101118a60e Add mysensors binary sensor tests (#84580) 2022-12-26 20:19:15 +01:00
Christopher Bailey
cf92d8c536 Add more logging for UniFi Protect event entities (#84575)
* Add more logging for UniFi Protect event entities

* Condense logging

* Linting
2022-12-26 11:07:40 -08:00
dependabot[bot]
a70163042d Bump actions/cache from 3.2.0 to 3.2.1 (#84565)
Bumps [actions/cache](https://github.com/actions/cache) from 3.2.0 to 3.2.1.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/v3.2.0...v3.2.1)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-26 12:34:33 +01:00
GitHub Action
1baaf621be [ci skip] Translation update 2022-12-26 00:23:42 +00:00
Daniel Gangl
2b12aac24e Bump zamg from 0.2.1 to 0.2.2 (#84526) 2022-12-25 11:01:50 +01:00
GitHub Action
ca457ccf3c [ci skip] Translation update 2022-12-25 00:24:53 +00:00
Franck Nijhof
8819634b61 String formatting and max line length - Part 6 (#84525) 2022-12-24 13:19:51 +01:00
Joakim Plate
ac1359b3d8 Update nibe to 1.6.0 (#84449)
* Bump nibe to 1.6.0

* Only fail coordinator if all updates failed
2022-12-24 10:45:45 +01:00
Joakim Plate
ffb1722ca8 Update nibe to 1.6.0 (#84449)
* Bump nibe to 1.6.0

* Only fail coordinator if all updates failed
2022-12-24 10:45:26 +01:00
J. Nick Koston
75739d8621 Bump zeroconf to 0.47.1 (#84523) 2022-12-23 18:35:44 -10:00
J. Nick Koston
79cacade5c Bump pySwitchbot to 0.30.1 to fix a deadlock when services are missing (#84521)
changelog: https://github.com/Danielhiversen/pySwitchbot/compare/0.30.0...0.30.1
2022-12-23 23:00:09 -05:00
Allen Porter
1807f44e03 Cleanup rainbird controller setup as feedback from previous PR (#84504)
Additional rainbird cleanup from last PR
2022-12-23 19:54:25 -08:00
Paulus Schoutsen
55b46bfa7a Fix flaky Nina CI test (#84522) 2022-12-23 22:36:11 -05:00
J. Nick Koston
8c70e5aaad Try the next best adapter after a BLE connection fails (#84512)
* Try the next best adapter after a BLE connection fails

* add cover

* tweak

* tweak

* Update homeassistant/components/bluetooth/wrappers.py

* bump

* small tweak

* tweak logic
2022-12-23 20:48:47 -05:00
J. Nick Koston
5872b72f80 Bump yalexs_ble to 1.12.5 (#84517)
* Bump yalexs_ble to 1.12.4

changelog: https://github.com/bdraco/yalexs-ble/compare/v1.12.3...v1.12.4

* one more failure path to fix

* bump in both
2022-12-23 20:44:24 -05:00
Fabian Affolter
5bc9ea0e47 Upgrade hole to 0.8.0 (#84516) 2022-12-23 20:43:41 -05:00
GitHub Action
31a3f1100a [ci skip] Translation update 2022-12-24 00:19:43 +00:00
Michał Huryn
c737378ee1 Add blebox discovery/zeroconf (#83837)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-12-23 12:52:06 -10:00
J. Nick Koston
e4c610af62 Fix turning off via select in harmony (#84509)
closes https://github.com/home-assistant/core/issues/84413
2022-12-23 20:12:01 +01:00
J. Nick Koston
070aa714a0 Switch to a different local Bluetooth adapter when one runs out of connection slots (#84331) 2022-12-23 08:58:33 -10:00
Franck Nijhof
f39f3b612a String formatting and max line length - Part 5 (#84501)
Co-authored-by: jjlawren <jjlawren@users.noreply.github.com>
2022-12-23 16:43:17 +01:00
Franck Nijhof
139dd22ce6 Replace attrs with dataclasses in hassfest (#84475) 2022-12-23 15:46:00 +01:00
Franck Nijhof
94755a5773 String formatting and max line length - Part 4 (#84445)
Co-authored-by: jjlawren <jjlawren@users.noreply.github.com>
2022-12-23 13:27:27 +01:00
Maciej Bieniek
a8f09b4063 Round illuminance value in ZHA integration (#84500) 2022-12-23 13:24:15 +01:00
dependabot[bot]
e2e272aeb6 Bump actions/setup-python from 4.3.1 to 4.4.0 (#84488)
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 4.3.1 to 4.4.0.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v4.3.1...v4.4.0)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-23 08:49:53 +01:00
Paolo Bonzini
6cfd991e91 Make all ARMED states available for manual_mqtt (#84264)
* manual_mqtt: parametrize test_no_pending

* manual_mqtt: parametrize test_no_pending_when_code_not_req

* manual_mqtt: parametrize test_with_pending

* manual_mqtt: parametrize test_with_invalid_code

* manual_mqtt: parametrize test_with_template_code

* manual_mqtt: parametrize test_with_specific_pending

* manual_mqtt: parametrize test_arm_via_command_topic

* manual_mqtt: remove unnecessary async_block_till_done from tests

* manual_mqtt: bring over a new test from manual

* manual_mqtt: add more states

The manual alarm control panel supports ARMED_CUSTOM_BYPASS and ARMED_VACATION.
Bring them over to the MQTT version.
2022-12-23 08:20:24 +01:00
Franck Nijhof
9830cbfd5d Replace attrs with dataclasses in Core exceptions (#84473) 2022-12-22 23:28:48 -05:00
Allen Porter
f9779d3e97 Bump gcal-sync to 4.1.0 (#84474)
* Bump gcal-sync to 4.1.0

* Update test with UNTIL improvements
2022-12-22 23:28:12 -05:00
Paulus Schoutsen
96533e4c8f Test conversation WS API (#84466) 2022-12-22 20:19:37 -05:00
GitHub Action
6234190cfe [ci skip] Translation update 2022-12-23 00:23:22 +00: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
Allen Porter
490d2cfb71 Move Rainbird to async client library (#84417)
* Bump pyrainbird to 0.7.0 and move to async library

* Share updates across sensors

* Fix test version and delete dead code

* Add test coverage for yaml configuration

* Address PR feedback
2022-12-22 13:00:17 -08:00
Jesse Hills
5874b4cdcf ESPHome: do not set expected_name on APIClient (#84471) 2022-12-22 21:58:51 +01:00
Aarni Koskela
e575fffd23 Mark RuuviTag devices not connectable (#84345) 2022-12-22 10:47:08 -10:00
Franck Nijhof
f17a42dc27 Upgrade ciso8601 to 2.3.0 (#84465) 2022-12-22 15:01:59 -05:00
Allen Porter
24e11c6dcb Bump ical to 4.2.8 (#84455)
fixes undefined
2022-12-22 20:13:40 +01:00
Allen Porter
12e7ea3a39 Strip whitespace from application credentials (#84461)
fixes undefined
2022-12-22 20:12:17 +01:00
Michael
20b5e92656 Use first refresh method from data update coordinator in PI-Hole integration (#84453) 2022-12-22 19:33:23 +01:00
Paulus Schoutsen
2e195d848f Fix Matter param order for subscribing (#84460) 2022-12-22 19:29:53 +01:00
Nathan Spencer
a2935654b9 Add firmware update entity for Litter-Robot 4 (#83590)
* Add firmware update entity for Litter-Robot 4

* Report installed version of firmware on robot when updated
2022-12-22 08:22:21 -08:00
Marcel van der Veldt
cdeb91ea12 Fix title of Matter integration (#84385)
* Set title for Matter integration to integration name

* Update homeassistant/components/matter/config_flow.py

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

* Update title in tests

* one more title fix

Co-authored-by: Franck Nijhof <git@frenck.dev>
2022-12-22 16:42:37 +01:00
Erik Montnemery
53637d486d Improve error message when a script fails to validate (#84438) 2022-12-22 16:26:57 +01:00
Fuzzy
f7a6eb4f69 Add Ecobee Smart Enhanced (#83666) 2022-12-22 13:49:21 +01:00
Nyro
6ee8c8b60e Fix DHWP overkiz_to_operation_mode creation list (#83885)
* Fix dhWP overkiz_to_operation_mode creation list

* Improve operation__list too and rename var

* Improve if condition

* Improve state_modefintion test

Co-authored-by: Thibaut <thibaut@etienne.pw>

Co-authored-by: Thibaut <thibaut@etienne.pw>
2022-12-22 13:39:05 +01:00
Joakim Sørensen
d9c19e6e11 Remove front matter parsing in homeassistant_alerts (#83980) 2022-12-22 13:37:53 +01:00
Franck Nijhof
baef267f33 String formatting and max line length - Part 3 (#84394) 2022-12-22 13:35:47 +01:00
Robert Svensson
30df9e7706 Split out part of update sensor to a common UniFi entity class (#84262)
* Split out part of update sensor to a common entity class

* Mark methods abstract and/or raise NotImplementedError

* Resolve review comments
2022-12-22 13:17:17 +01:00
J. Nick Koston
3c07f92e72 Bump yalexs-ble to 1.12.3 (#84414) 2022-12-22 13:08:04 +01:00
jjlawren
da1f9c2823 Bump plexapi to 4.13.2 (#84416) 2022-12-22 13:06:26 +01:00
Erik Montnemery
2c02abfdd4 Improve script config tests (#84433) 2022-12-22 12:16:23 +01:00
Franck Nijhof
cb13418bab String formatting and max line length - Part 2 (#84393) 2022-12-22 11:38:59 +01:00
Franck Nijhof
7e682af472 Merge branch 'master' into dev 2022-12-22 11:35:03 +01:00
Franck Nijhof
4e2cebc6d6 Fix incorrect voltage device class usage in RuuviTag BLE (#84380) 2022-12-22 10:35:50 +01:00
Erik Montnemery
7b26a952bd Fix flaky automation test (#84428) 2022-12-22 10:26:37 +01:00
Jan Bouwhuis
8051e5d4f4 Additional tests to improve coverage of manual and manual_mqtt (#84424) 2022-12-22 10:14:54 +01:00
Franck Nijhof
b0cee0bc46 String formatting and max line length - Part 1 (#84390)
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2022-12-22 10:12:50 +01:00
Erik Montnemery
41341c76cf Restore speed when turning a Tasmota fan back on (#84337) 2022-12-22 09:31:14 +01:00
Franck Nijhof
2bd1a68559 Fix incorrect signal strength device class usage in Rituals Genie (#84376)
Fix incorrect signal strength device class usage in Rituals Perfume Genie
2022-12-22 08:54:51 +01:00
Jan Bouwhuis
df58b5d9bd Replace async_schedule_update_ha_state for manual and manual_mqtt (#84395)
Replace deprecated async_schedule_update_ha_state
2022-12-22 08:48:33 +01:00
Allen Porter
b8ce10f9a1 Add myself as a codeowner for rainbird (#84421) 2022-12-21 21:45:47 -08:00
J. Nick Koston
17d674e1cc Bump zeroconf to 0.47.0 (#84420) 2022-12-21 19:18:58 -10:00
GitHub Action
98f84c7c17 [ci skip] Translation update 2022-12-22 00:23:15 +00:00
Franck Nijhof
1f0ea73463 Add support for entity aliases to Google Assistant (#84405) 2022-12-21 23:52:01 +01:00
Marc Mueller
0d874899ea Update actions/cache to 3.2.0 + new restore action (#84408) 2022-12-21 23:51:48 +01:00
Marcel van der Veldt
10e796e9d5 Fix issues with Color temperature conversions in Hue (#83982) 2022-12-21 23:28:41 +01:00
Jelte Zeilstra
298ea3ff46 Add enum device class and translations to DSMR Active tariff sensor (#84253) 2022-12-21 23:26:56 +01:00
Erik Montnemery
a6217ca9b9 Improve error message when an automation fails to validate (#83977) 2022-12-21 23:20:50 +01:00
Marc Mueller
ac183b1394 Update isort to 5.11.4 (#84406) 2022-12-21 23:06:18 +01:00
ollo69
93cd73246a Use selector in AndroidTV option flow form (#83761) 2022-12-21 23:05:13 +01:00
Franck Nijhof
2e92fefc0a Fix uom/device class mismatches in tests (#84372) 2022-12-21 22:47:59 +01:00
Franck Nijhof
92beab82e2 Fix incorrect co device class usage in GIOS (#84379) 2022-12-21 22:47:39 +01:00
Franck Nijhof
370e458f2a Fix incorrect illuminance device class usage in Broadlink (#84373)
Fix incorect illuminance device class usage in Broadlink
2022-12-21 22:47:23 +01:00
Franck Nijhof
5c794234e7 Fix incorrect voc device class usage in Deconz sensors (#84371) 2022-12-21 22:44:13 +01:00
Franck Nijhof
fa55ba72a4 Fix incorrect power factor device class usage in Fronius (#84374) 2022-12-21 22:43:50 +01:00
Steven Looman
682501eb47 Less tasks when receiving SSDP messages (#84186)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-12-21 11:35:52 -10:00
Marc Mueller
19acbf0d2a Update types packages (#84381) 2022-12-21 19:15:55 +01:00
Paulus Schoutsen
2205006d31 2022.12.8 (#84369) 2022-12-21 10:37:08 -05:00
Allen Porter
d41fe01736 Don't allow google calendar create/delete for yaml/search calendars (#83604)
* Update tests/components/google/test_calendar.py

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

* Don't allow google calendar create/delete for yaml/search calendars

* Revert incorrect docstring update

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-12-21 07:36:37 -08:00
Allen Porter
4e1b399efd Fix google calendar recurrence rule create and view (#84330)
* Fix bug in google calendar recurrence rule handling

* Convert multiline ternary operator expressions to if block
2022-12-21 07:36:20 -08:00
Martin Hjelmare
06b4c82a37 Add matter node added subscription (#84377) 2022-12-21 16:34:55 +01:00
Franck Nijhof
c832982d94 Add sensor unit of measurement validation for device classes (#84366) 2022-12-21 16:14:11 +01:00
Nyro
93fe77de8d Add external handling in Overkiz AtlanticElectricalHeaterWithAdjustableTemperatureSetPoint (#84010)
* Add external handling in AtlanticElectricalHeaterWithAdjustableTemperatureSetpoint

* Improve comparing to external

Co-authored-by: Thibaut <thibaut@etienne.pw>

* Update to pyoverkiz 1.7.3

* Fix coding style lint

* Use OverkizCommand

* Fix small issues

Co-authored-by: Thibaut <thibaut@etienne.pw>
2022-12-21 16:05:27 +01:00
Kevin Stillhammer
588211223b Bump here_transit/here_routing and Implement backoff mechanism for here_travel_time (#83976)
* Add failing test

* Add backoff mechanism for too many requests

* Increase async_fire_time_changed

* Minimize try/except block
2022-12-21 07:00:15 -08:00
Daniel Gangl
b85e175812 Zamg api timestamp issue fix (#84143)
Bump zamg from 0.1.1 to 0.2.1
2022-12-21 15:56:47 +01:00
Maximilian
d2ee08c6fe Add filter for duplicate NINA warnings (#84069)
Add filter for duplicate warnings
2022-12-21 15:54:49 +01:00
Tarik2142
6a1c59be2c Add ZHA Zeroconf discovery for SLZB-06 (#84111)
* Add Zeroconf discovery for SLZB-06

* update hostname

* Update homeassistant/components/zha/manifest.json

Co-authored-by: puddly <32534428+puddly@users.noreply.github.com>

* Update manifest.json

Co-authored-by: puddly <32534428+puddly@users.noreply.github.com>
2022-12-21 15:51:38 +01:00
Paulus Schoutsen
97efcab310 flake8 2022-12-21 09:37:35 -05:00
epenet
d6fc2d9452 Prevent use of deprecated units (#83384)
* Prevent use of deprecated units

* Adjust obsolete util

* More units

* Add FREQUENCY

* Adjust pylint ignore

* Add ELECTRIC (current/potential)

* Add TIME

* Adjust units
2022-12-21 15:24:11 +01:00
Paulus Schoutsen
99b4c9d5f4 Isort 2022-12-21 09:20:56 -05:00
Paulus Schoutsen
115dc4fa4b Bumped version to 2022.12.8 2022-12-21 09:15:53 -05:00
Michael
7de11cfcfa Fix attribute check in prometheus exporter (#84321)
* fix attribute check

* add test
2022-12-21 09:15:34 -05:00
Daniel Hjelseth Høyer
7f0a9a5897 Improve Tibber rt Pulse streaming (#84313)
Improve rt Pulse streaming

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

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2022-12-21 09:14:40 -05:00
Joakim Sørensen
e8e4f6a515 Skip client metadata values that are None (#84293) 2022-12-21 09:14:40 -05:00
J. Nick Koston
93cffe8631 Bump bluetooth-data-tools to 0.3.1 (#84258)
changelog: https://github.com/Bluetooth-Devices/bluetooth-data-tools/compare/v0.3.0...v0.3.1
2022-12-21 09:14:25 -05:00
Allen Porter
39a47c939c Bump ical to 4.2.4 (#84248) 2022-12-21 09:13:57 -05:00
J. Nick Koston
3bdf80574d Fix connectable Bluetooth devices not going available after scanner recovers (#84172) 2022-12-21 09:13:38 -05:00
Nyro
756070cd81 Add missing preset for Overkiz atlantic electrical heater (#84080)
Readd missing preset for atlantic electrical heater
2022-12-21 08:52:33 -05:00
epenet
55133b3a27 Adjust units in lcn (#84365) 2022-12-21 14:38:00 +01:00
Tim Rogers
8619bdeec6 Update Blink 2FA flow description (#84362) 2022-12-21 12:40:28 +01:00
Nyro
cf196c09ac Add missing preset for overkiz Atlantic APC heating zone (#84008)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
fixes undefined
2022-12-21 12:04:54 +01:00
Franck Nijhof
73a43bfd1d Update pyotp to 2.8.0 (#84339) 2022-12-21 11:53:02 +01:00
epenet
fa33f27153 Adjust units in lcn (#84356) 2022-12-21 11:16:19 +01:00
epenet
c7cc4bcbd5 Use unit enums in sensirion_ble (#84353) 2022-12-21 11:15:38 +01:00
epenet
d58852be66 Use unit enums in ruuvitag_ble (#84352) 2022-12-21 11:15:06 +01:00
epenet
8ab945a67f Use unit enums in elkm1 (#84351) 2022-12-21 11:14:35 +01:00
epenet
ecbcb9496d Use unit enums in mold indicator (#84350) 2022-12-21 11:14:07 +01:00
epenet
af7a487706 Use unit enums in nexia (#84349) 2022-12-21 11:13:16 +01:00
J. Nick Koston
316f187bee Bump PySwitchbot to 0.30.0 (#84347) 2022-12-21 11:10:54 +01:00
epenet
2f45e6c2ae Use UnitOfVolumeFlowRate in integrations (#84348) 2022-12-21 11:00:24 +01:00
epenet
9a488cf250 Use unit enums in energy and sensor (#84343) 2022-12-21 10:49:51 +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
epenet
fc94569a0d Use unit enums in honeywell (#84344) 2022-12-21 10:11:08 +01:00
epenet
d0a389ce36 Use unit enums in airvisual_pro (#84346) 2022-12-21 10:10:45 +01:00
epenet
f4fb4bc91c Use unit enums in tasmota (#84342) 2022-12-21 10:02:35 +01:00
epenet
869cdc399f Use unit enums in plaato (#84341) 2022-12-21 09:49:45 +01:00
Allen Porter
de8575c890 Bump pyrainbird to 0.7.1 (#84325) 2022-12-21 09:30:49 +01:00
J. Nick Koston
e900918e51 Fix reload race in shelly when device is recently offline (#84328) 2022-12-21 09:29:48 +01:00
epenet
bbecf6ca37 Introduce unit enums for volume flow rate (#84310) 2022-12-21 09:28:49 +01:00
Tom Puttemans
cb3ab9b51e Add quarter-hour peak consumption sensors (#84271)
fixes undefined
2022-12-21 09:27:08 +01:00
Erik Montnemery
1a42bd5c4c Add aliases to area registry items (#84294)
* Add aliases to area registry items

* Update test

* Fix WS API
2022-12-21 08:44:44 +01:00
dependabot[bot]
556c355e9c Bump actions/stale from 6.0.1 to 7.0.0 (#84333)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-21 08:25:53 +01:00
Daniel Hjelseth Høyer
61e13bf84d Improve Tibber rt Pulse streaming (#84313)
Improve rt Pulse streaming

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

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2022-12-21 05:59:52 +01:00
Franck Nijhof
a1ed09f2cc Code quality improvements for Mastodon (#84320) 2022-12-21 02:32:29 +01:00
Kevin Stillhammer
ba94485ca1 Handle not existing arrival/departure keys for here_travel_time (#83754)
* handle not existing arrival/departure keys

* Use more concise code

* Add test

* Add testcase for empty arrival/departure
2022-12-20 16:47:43 -08:00
Michael
8a3fc2e82b Fix attribute check in prometheus exporter (#84321)
* fix attribute check

* add test
2022-12-20 16:32:00 -08:00
Guido Schmitz
0265aae247 Bump devolo-plc-api to 0.9.0 (#84324) 2022-12-20 16:31:18 -08:00
GitHub Action
e0bb26e964 [ci skip] Translation update 2022-12-21 00:21:15 +00:00
Erik Montnemery
057bb6ea0a Add aliases to device registry items (#84246) 2022-12-20 23:43:31 +01:00
epenet
79d3d4ceae Use UnitOfTemperature in integrations (t-z) (#84309) 2022-12-20 18:50:39 +01:00
epenet
ba043c9ebb Use UnitOfTemperature in integrations (p-s) (#84308) 2022-12-20 18:47:27 +01:00
epenet
d60fe7e7cd Use UnitOfTemperature in integrations (n-o) (#84306) 2022-12-20 18:39:09 +01:00
epenet
a6ddac9004 Use UnitOfTemperature in integrations (i-m) (#84307) 2022-12-20 18:30:46 +01:00
epenet
9580c4f1ec Use UnitOfTemperature in integrations (e-h) (#84305) 2022-12-20 18:29:16 +01:00
epenet
d89ba40010 Use UnitOfTemperature in integrations (a-d) (#84304) 2022-12-20 17:59:20 +01:00
Ernst Klamer
82efbee443 Bump bthome-ble to 2.4.0 (#84189) 2022-12-20 17:54:17 +01:00
Jonathan de Jong
b67009dee3 Allow MQTT device trackers to be able to the reset the location name for auto zone inference (#83952)
* adds auto-zone to mqtt device trackers

* black formatting

* abbr

* change abbreviation

* add test

* fade to black

* Modify custom overrides

Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>

* add custom + abbr payload and fix test docstrings

* change auto_zone to reset

* change RST to None, address isort

Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>
2022-12-20 17:38:40 +01:00
Franck Nijhof
4ef7bb9bbe Extract Forecast.Solar DataUpdateCoordinator into module (#83859) 2022-12-20 17:24:27 +01:00
Rami Mosleh
78cc547782 Remove scan_interval and manual options from speedtestdotnet (#84295) 2022-12-20 16:01:28 +01:00
Joakim Sørensen
63807e443a Skip client metadata values that are None (#84293) 2022-12-20 09:32:27 -05:00
Maciej Bieniek
1661daa911 Update gios library to version 2.3.0 (#84292) 2022-12-20 15:27:55 +01:00
Tom Puttemans
5df7cb0fb5 Revert the state class removal in dsmr_reader after bugfix (#84267) 2022-12-20 13:30:28 +01:00
Tom Puttemans
bd65258905 Improve the dsmr_reader sensor names (#84269) 2022-12-20 13:28:40 +01:00
epenet
68857dc272 Use UnitOfTime in integrations (a-g) (#84288) 2022-12-20 13:22:20 +01:00
epenet
55a5e17cf2 Use UnitOfTime in integrations (h-s) (#84289) 2022-12-20 13:21:14 +01:00
Martin Hjelmare
6a8d9a91cb Fix matter websocket reconnect (#84192) 2022-12-20 13:06:24 +01:00
epenet
fba13dcc90 Use UnitOfTime in integrations (t-z) (#84291) 2022-12-20 12:30:14 +01:00
Erik Montnemery
1f3da9cf1a Add aliases to entity registry items (#84239) 2022-12-20 12:10:46 +01:00
Daniel Gangl
8ca92254b6 Correct zamg config flow comments (#81369)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
fixes undefined
2022-12-20 11:47:32 +01:00
Erik Montnemery
fd9124279b Add minor version to area registry store (#84280) 2022-12-20 11:41:35 +01:00
Erik Montnemery
f88ed6b69e Use dict.setdefault in registry migration code (#84277) 2022-12-20 11:31:31 +01:00
Michaël Arnauts
7142b4ecac Fixes some grammar mistakes (#84283) 2022-12-20 11:10:31 +01:00
Nyro
2c238baa24 Add missing preset for Overkiz atlantic electrical heater (#84080)
Readd missing preset for atlantic electrical heater
2022-12-20 10:06:24 +01:00
Jelte Zeilstra
3fc667f55d Fix error when describing deCONZ events of removed devices (#84194)
* Fix error when describing deCONZ events of removed devices

* Apply suggestions from code review

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

Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>
2022-12-20 10:06:01 +01:00
Erik Montnemery
3884e16b46 Add tests.common.ANY (#84240) 2022-12-20 08:20:42 +01:00
Aaron Godfrey
3405fa60ec Add more types to the todoist integration (#84210)
* Add more types to the todoist integration.

* Update tests.

* Update homeassistant/components/todoist/calendar.py

Pass f-string directly to strftime.

Co-authored-by: Allen Porter <allen.porter@gmail.com>

* Add back mistakenly removed local var.

Co-authored-by: Allen Porter <allen.porter@gmail.com>
2022-12-19 20:29:57 -08:00
Laurent Martin
c212e317c3 fix provider name: linky is for electricity. (#84273) 2022-12-19 21:12:27 -07:00
J. Nick Koston
074dec36ad Add foundation for passive scanning support to switchbot (#84260) 2022-12-19 16:55:18 -10:00
J. Nick Koston
53363cf7e8 Implement an active update coordinator for polling ble devices that get data from both advertisements and active connections (#84207) 2022-12-19 16:09:29 -10:00
GitHub Action
7f8c4293b4 [ci skip] Translation update 2022-12-20 00:23:39 +00:00
Aaron Bach
ace20782f1 Clean up Notion config flow (and tests) (#84007)
* Clean up Notion config flow (and tests)

* Code review
2022-12-19 15:03:58 -07:00
Erik Montnemery
0d8cd2d067 Shuffle some device registry WS code (#84243)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2022-12-19 21:56:07 +01:00
Robert Svensson
af272c6730 Fix Styrbar device trigger mapping in deCONZ (#84257) 2022-12-19 21:48:11 +01:00
J. Nick Koston
88ef8cc51a Bump bluetooth-data-tools to 0.3.1 (#84258)
changelog: https://github.com/Bluetooth-Devices/bluetooth-data-tools/compare/v0.3.0...v0.3.1
2022-12-19 22:45:39 +02:00
Franck Nijhof
5651f4a3fe Remove Deutsche Bahn integration (#84236) 2022-12-19 21:43:28 +01:00
epenet
f988a1164d Use UnitOfPressure in integrations (#84230) 2022-12-19 21:41:46 +01:00
Aaron Bach
0ccac69ce1 Remove airvisual_pro code from airvisual (#84254) 2022-12-19 12:32:33 -07:00
majuss
1a476258c7 Bump lupupy to 0.2.4 (#84252) 2022-12-19 09:24:31 -10:00
Allen Porter
df23f03131 Bump ical to 4.2.4 (#84248) 2022-12-19 10:00:38 -08:00
Aaron Bach
09ae02fd56 Migrate AirVisual Pro devices to the airvisual_pro domain (#83882)
* Migration AirVisual Pro devices to the `airvisual_pro` domain

* Fix tests

* Remove airvisual_pro dependency

* Add repairs item

* Only fire repairs issue if automations exist

* Fix tests
2022-12-19 10:48:36 -07:00
J. Nick Koston
7c13e7cdfd Use a single source of data for switchbot (#84215) 2022-12-19 07:47:42 -10:00
Franck Nijhof
6e612a45ff Update watchdog to 2.2.0 (#84245) 2022-12-19 18:09:04 +01:00
epenet
418be1eeb6 Use UnitOfElectricCurrent in integrations (#84231) 2022-12-19 16:59:39 +01:00
Franck Nijhof
026f660889 Update spotipy to 2.22.0 (#84244) 2022-12-19 16:44:13 +01:00
Franck Nijhof
4ad589dcf6 Update black to 22.12.0 (#84242) 2022-12-19 16:43:53 +01:00
Franck Nijhof
952bf5497f Update coverage to 7.0.0 (#84237) 2022-12-19 16:42:34 +01:00
epenet
f4c13645d2 Add support for CCF volume unit (#84029) 2022-12-19 14:57:04 +01:00
ollo69
3351846b0e Add integration-type property to Nut manifest (#84020) 2022-12-19 14:46:40 +01:00
Franck Nijhof
ee10f9c4ce Update sentry-sdk to 1.12.1 (#84234) 2022-12-19 14:08:03 +01:00
Rami Mosleh
099a653bed Remove name key from transimssion services (#83974) 2022-12-19 13:38:54 +01:00
J. Nick Koston
bb3feceb57 Fix connectable Bluetooth devices not going available after scanner recovers (#84172) 2022-12-19 13:37:29 +01:00
epenet
1ab6352a87 Adjust units in lcn (#84051)
* Use unit enumerators in lcn

* Don't mix lcn units with home assistant units
2022-12-19 13:24:25 +01:00
epenet
b4274e4a26 Add POWER device class to goodwe number (#84232) 2022-12-19 13:17:57 +01:00
epenet
429dbd4215 Use UnitOfVolume in dsmr_reader (#84226) 2022-12-19 13:14:01 +01:00
epenet
cce438951d Use new unit enumerators in tuya (#84229) 2022-12-19 13:11:48 +01:00
Martin Hjelmare
4461e0f262 Clean mysensors test type errors (#84178) 2022-12-19 12:45:17 +01:00
Aaron Godfrey
fe2e357ae9 Upgrade attrs to 22.1.0 (#84205) 2022-12-19 12:40:30 +01:00
tronikos
e618a8cc0c Bump gassist-text to 0.0.5 (#84161) 2022-12-19 12:24:02 +01:00
Michaël Arnauts
627a208d9f Use a global const for CONF_UUID (#84093) 2022-12-19 12:16:30 +01:00
epenet
2f19b56d5e Use UnitOfVolume in bmw_connected_drive (#84228) 2022-12-19 12:12:48 +01:00
epenet
0f40a73bb4 Use new unit enums in fronius (#84224) 2022-12-19 11:58:24 +01:00
J. Nick Koston
f1fc54d29d Bump zeroconf to 0.44.0 (#84166) 2022-12-19 11:56:11 +01:00
epenet
a29aaebd4c Use ENERGY device class in oru (#84225)
* Use ENERGY device class in oru

* Apply suggestions from code review

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

Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2022-12-19 11:41:07 +01:00
epenet
1f60296415 Use ENERGY device class in landisgyr heat meter (#84223) 2022-12-19 11:26:48 +01:00
Paolo Bonzini
52594717ca Fix manual.alarm_control_panel RestoreEntity bugs (#82990)
* manual: add previous state for TRIGGERED as well

This will be useful to properly restore timers on restart.

* manual: correctly restore timers on startup
2022-12-19 11:19:24 +01:00
Maciej Bieniek
20f0abacc0 Bump nettigo air monitor library to version 1.6.0 (#84129) 2022-12-19 10:15:31 +00:00
epenet
0dd20fb309 Use UnitOfEnergy in integrations (a-n) (#84220) 2022-12-19 11:06:00 +01:00
epenet
ebdf9a8658 Use UnitOfEnergy in integrations (o-z) (#84221) 2022-12-19 10:58:37 +01:00
epenet
3168b30535 Use new unit enumerators in tibber (#84222) 2022-12-19 10:54:18 +01:00
Avi Miller
292294fb96 Bump aiolifx-themes to 0.4.0 (#84216) 2022-12-19 09:11:14 +01:00
J. Nick Koston
884fbdd5ce Bump PySwitchbot to 0.29.1 (#84119)
fixes https://github.com/home-assistant/core/issues/82795
closes https://github.com/home-assistant/core/issues/78562
2022-12-18 14:54:29 -10:00
GitHub Action
b96eab3e5e [ci skip] Translation update 2022-12-19 00:21:16 +00:00
epenet
14a47f5dff Use DATA_SIZE device class in folder integration (#83897) 2022-12-18 22:16:21 +01:00
hahn-th
5e5e89ea18 Add device HmIP-DRDI3 (#83337) 2022-12-18 12:44:49 -07:00
Aaron Bach
d423cbf8eb Add ability to add/remove PurpleAir sensors in an existing config entry (#83440) 2022-12-18 11:30:05 -07:00
Aaron Bach
168b3b50cd Save entry earlier in PurpleAir re-auth flow (#84203) 2022-12-18 11:15:03 -07:00
Aaron Bach
4c73826baf Add re-auth flow to AirVisual Pro (#84012)
* Add re-auth flow to AirVisual Pro

* Code review
2022-12-18 11:00:08 -07:00
Ernst Klamer
47522546e6 Sensor pro fix for negative temperatures (#84181)
fixes undefined
2022-12-18 07:35:04 -10:00
Alberto Geniola
ecdbddc1fa Elmax/alarm_control_panel (#75365) 2022-12-18 09:12:43 -07:00
Jelte Zeilstra
f99d26231f Add state_class to Tradfri battery and air quality sensors (#84185) 2022-12-18 16:52:08 +01:00
Rami Mosleh
10a6c56fec Move speedtestdotnet coordinator to separate file (#83979) 2022-12-18 10:57:17 +01:00
Kevin Stillhammer
487d84c8f9 Enable strict typing for here_travel_time (#83814)
* Enable strict typing for here_travel_time

* Use dict[str, Any] instead of Any

* Use kwargs ctor

* Specify dicts
2022-12-18 09:34:47 +01:00
J. Nick Koston
119664b55e Bump yalexs-ble to 1.12.2 (#84118) 2022-12-17 17:14:39 -10:00
J. Nick Koston
e7064bda25 Add dhcp discovery for newer august/yale bridges (#84125) 2022-12-17 16:42:47 -10:00
Paulus Schoutsen
bf66f39ca4 2022.12.7 (#84162) 2022-12-17 21:01:22 -05:00
Paulus Schoutsen
d95a843d93 Bumped version to 2022.12.7 2022-12-17 20:05:11 -05:00
Matthias Alphart
76d33fdaf1 Fix KNX ConfigFlow for manual secure tunnel keys (#84155) 2022-12-17 20:04:53 -05:00
Michael
0b4d1fe641 Fix check if Surveillance Station is available in Synology DSM (#84140)
start coordinator only when surveillance_station is avialble during api setup
2022-12-17 20:04:52 -05:00
Allen Porter
1e70901b9e Bump ical to 4.2.3 (#84104) 2022-12-17 20:04:51 -05:00
Joakim Plate
dac8560e14 Make sure philips_hs remote entity calls parent added (#84082)
Make sure remote calls parent added
2022-12-17 20:04:51 -05:00
J. Nick Koston
5e949b062a Bump bluetooth-auto-recovery to 1.0.3 (#84075)
* Bump bluetooth-auto-recovery to 1.0.1

changelog: https://github.com/Bluetooth-Devices/bluetooth-auto-recovery/compare/v1.0.0...v1.0.1

Handles the case were the adapter gets a new hci number
after a usb reset.

* one more

* bump again
2022-12-17 20:04:31 -05:00
Daniel Hjelseth Høyer
2d2318438c Update Tibber lib, improve realtime streaming (#84065)
Update tibber lib, improve realtime streaming

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

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2022-12-17 20:03:55 -05:00
J. Nick Koston
6ce2bf6be5 Bump govee-ble to 0.19.3 (#84062)
* Bump govee-ble to 0.19.2

fixes #82994 fixes #81335

changelog: https://github.com/Bluetooth-Devices/govee-ble/compare/v0.19.1...v0.19.2

* .3
2022-12-17 20:03:54 -05:00
Bram Kragten
b32ba33250 Update frontend to 20221213.1 (#84058) 2022-12-17 20:03:16 -05:00
muppet3000
c97b48cf3b Re-add missing Growatt TLX values (#84040)
* Growatt - Re-adding missing TLX values (#81470)

* Growatt - Added missing files to .coveragerc

* Growatt - Correcting TLX Voltage types

* Growatt - Addressing review comments
2022-12-17 20:02:08 -05:00
J. Nick Koston
2b3123b925 Bump pySwitchbot to 0.23.2 (#84002) 2022-12-17 19:52:00 -05:00
Michael
5f160be8f6 Fix check if Surveillance Station is available in Synology DSM (#84140)
start coordinator only when surveillance_station is avialble during api setup
2022-12-17 19:43:18 -05:00
Allen Porter
a3ab6a99e3 Bump ical to 4.2.3 (#84104) 2022-12-17 19:42:55 -05:00
GitHub Action
571a63f86e [ci skip] Translation update 2022-12-18 00:22:48 +00:00
Matthias Alphart
6e5d4b592d Fix KNX ConfigFlow for manual secure tunnel keys (#84155) 2022-12-18 00:06:14 +01:00
Martin Hjelmare
f29024795b Clean up matter adapter (#84144) 2022-12-17 23:44:19 +01:00
tronikos
d6158c0fcc Google Assistant SDK: Support non en-US language code (#84028)
* Support non en-US language code

* Get default language_code based on HA config

* Revert bumping gassist-text
Will be done in a separate PR
2022-12-17 14:40:24 -08:00
Marc Mueller
ed8aa51c76 Update isort to 5.11.3 (#84147) 2022-12-17 22:10:38 +01:00
Marc Mueller
813226e331 Update pyupgrade to 3.3.1 (#84148) 2022-12-17 22:10:13 +01:00
Paolo Bonzini
02fa5656bb Make manual and manual_mqtt fully asynchronous (#83436)
* manual: make it completely async

Restoring the timers on startup cannot use track_point_in_time,
because the restoring code runs from the async_added_to_hass
method.  Rewrite everything to run in the event loop instead
of using threaded wrappers, this way the code can be reused in
async_added_to_hass.

* manual_mqtt: replace async function with @callback

* manual_mqtt: make it completely async

Restoring the timers on startup cannot use track_point_in_time,
because the restoring code runs from the async_added_to_hass
method.  Rewrite everything to run in the event loop instead
of using threaded wrappers, this way the code can be reused in
async_added_to_hass when state restore is added.

Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>
2022-12-17 19:31:17 +01:00
Nyro
5c272583e7 Fix current_operation when there is no operation_mode in Overkiz DHWP (#84077)
Fix current_operation when there is no operation_mode
2022-12-17 11:12:15 -07:00
Maciej Bieniek
d9903c4cf9 Bump brother and pysnmplib (#84107)
* Bump brother version

* Bump pysnmplib version

* Update sensor platform

* Update switch platform

* Update tests

* Bump brother

Co-authored-by: J. Nick Koston <nick@koston.org>
2022-12-17 12:34:43 +01:00
epenet
768d147cb2 Add device classes to pool integrations (#84050)
* Add device classes to pool integrations

* Update omnilogic

* Don't use VOLTAGE device class
2022-12-17 10:06:39 +01:00
epenet
2d9095263e Add device classes in starline (#84049) 2022-12-17 09:52:59 +01:00
J. Nick Koston
9f10bd46ac Rename Bluetooth active_update_coordinator to active_update_processor (#84115) 2022-12-16 22:25:43 -10:00
Marc Mueller
089906790e Fix prettier [homewizard] (#84122) 2022-12-16 23:40:18 -05:00
GitHub Action
6b858ce8af [ci skip] Translation update 2022-12-17 00:21:18 +00:00
Daniel Hjelseth Høyer
8e3953a9d5 Update Tibber lib, improve realtime streaming (#84065)
Update tibber lib, improve realtime streaming

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

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2022-12-16 12:11:54 -07:00
epenet
1af72e3671 Add device class to withings (#84103) 2022-12-16 20:04:07 +01:00
Duco Sebel
b41d0be952 Improve HomeWizard request issue reporting (#82366)
* Trigger reauth flow when HomeWizard API was disabled

* Add tests for reauth flow

* Fix typo in test

* Add parallel updates constant

* Improve error message when device in unreachable during config

* Set quality scale

* Remove quality scale

* Throw error instead of abort when setup fails

* Adjust test for new setup behaviour

* Trigger reauth flow when API is disabled and continue retrying

* Reload entry and raise AuthFailed during init

* Abort running config flow

* Listen for coordinator updates to trigger reload

* Use build-in backoff system

* Fix failing test

* Test reauth flow is active after disable-api init

* Test reauth flow removal
2022-12-16 10:53:54 -05:00
epenet
f5a8ce4aca Split platform attributes in withings (#84099) 2022-12-16 15:35:03 +01:00
muppet3000
186e3a6d98 Re-add missing Growatt TLX values (#84040)
* Growatt - Re-adding missing TLX values (#81470)

* Growatt - Added missing files to .coveragerc

* Growatt - Correcting TLX Voltage types

* Growatt - Addressing review comments
2022-12-16 15:31:49 +01:00
J. Nick Koston
e479fbed0c Bump govee-ble to 0.19.3 (#84062)
* Bump govee-ble to 0.19.2

fixes #82994 fixes #81335

changelog: https://github.com/Bluetooth-Devices/govee-ble/compare/v0.19.1...v0.19.2

* .3
2022-12-16 09:25:49 -05:00
J. Nick Koston
c70faeae96 Bump bluetooth-auto-recovery to 1.0.3 (#84075)
* Bump bluetooth-auto-recovery to 1.0.1

changelog: https://github.com/Bluetooth-Devices/bluetooth-auto-recovery/compare/v1.0.0...v1.0.1

Handles the case were the adapter gets a new hci number
after a usb reset.

* one more

* bump again
2022-12-16 09:25:23 -05:00
Joakim Plate
09a83b90ea Make sure philips_hs remote entity calls parent added (#84082)
Make sure remote calls parent added
2022-12-16 09:25:05 -05: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
epenet
c51c8f7e8f Refactor withings constant (#84095)
Split withings constant
2022-12-16 12:30:56 +01:00
epenet
14ee3f1ddc Move unused function in withings (#84089)
* Remove unused function in withings

* Move to tests

* Remove reference to attribute.platform

* Move WITHINGS_MEASUREMENTS_MAP to tests

* measute_type > measure_type

* One more
2022-12-16 10:50:20 +01:00
GitHub Action
7f3f271a59 [ci skip] Translation update 2022-12-16 00:23:03 +00:00
epenet
93dd971b39 Add device classes in tesla wall connector (#84048)
Addd device classes in tesla wall connector
2022-12-15 20:00:38 +01:00
DataBitz
650d4d7faa Fix grammatical error in HomeKit strings (#84043)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-12-15 07:51:24 -10:00
J. Nick Koston
e94da1ad0f Update ESPHome bluetooth repair issue for unique id change and 2022.12.0 (#84026)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2022-12-15 06:59:53 -10:00
epenet
dcea8a6ced Add device classes to bloomsky (#84054) 2022-12-15 11:36:10 -05:00
Bram Kragten
b0b3b36392 Update frontend to 20221213.1 (#84058) 2022-12-15 11:35:02 -05:00
ollo69
30ac390471 Use Unit enums in MELCloud sensors (#84036) 2022-12-15 14:25:51 +01:00
epenet
c4a01cf8d2 Fix incorrect device class in nibe heatpump (#84047) 2022-12-15 14:23:06 +01:00
epenet
0184aadb09 Use UnitOfElectricPotential in integrations (#84044) 2022-12-15 13:59:21 +01:00
epenet
d72c28a135 Use UnitOfLength in integrations (#84034) 2022-12-15 12:42:53 +01:00
Erik Montnemery
bf4c399b19 Improve data entry flow typing (#84030) 2022-12-15 12:41:20 +01:00
Erik Montnemery
033a16b67e Improve data entry flow typing (#83901) 2022-12-15 08:45:54 +01:00
GitHub Action
cfa08c5229 [ci skip] Translation update 2022-12-15 00:24:38 +00:00
Aaron Bach
d375361072 Bump pyairvisual to 2022.12.1 (#84013)
Bump pyairvisual to 2022.12.1
2022-12-14 16:00:44 -07:00
Ville Skyttä
f02b6f1119 Huawei LTE SSDP improvements (#81643)
* Recognize more SSDP friendly names as "ours"

* Trigger on SoyeaLink devices

* Pass discovered URL through context, it does not persist via user_input

* Use manufacturer from SSDP

* Actually use serial number if available, update URL for configured

* Remove heuristic friendly name filtering against non-LTE devices
2022-12-14 23:48:25 +01:00
ollo69
9a25e75947 Add integration-type property to androidTV manifest (#84018) 2022-12-14 23:41:46 +01:00
J. Nick Koston
6b751de7ad Bump pySwitchbot to 0.23.2 (#84002) 2022-12-14 23:38:26 +01:00
J. Nick Koston
bf18ff9fb9 Bump yalexs_ble to 0.12.0 (#84004) 2022-12-14 12:38:17 -10:00
Philip Allgaier
3d7a3afca7 Add strings to alert integration (#83926) 2022-12-14 21:25:18 +01:00
Robert Svensson
360f36eb71 Unifi use entity description with sensors (#81930)
* Move bandwidth sensors

* Add uptime sensor

* Use bound

* Fix review comments from other PR
2022-12-14 20:54:33 +01:00
Aaron Bach
9f1c5d70bc Add re-auth flow to PurpleAir (#83445)
* Add re-auth flow to PurpleAir

* Code review

* Code review

* Code review
2022-12-14 12:29:07 -07:00
Paulus Schoutsen
cc40c6d16a 2022.12.6 (#83998) 2022-12-14 13:50:07 -05:00
Paulus Schoutsen
283349f17e Bumped version to 2022.12.6 2022-12-14 12:48:04 -05:00
Erik Montnemery
59b6d56207 Ignore certain device trigger validation errors (#83972) 2022-12-14 12:47:03 -05:00
J. Nick Koston
353fb3be7d Bump aioesphomeapi to 13.0.2 to fix reconnects after bad protobuf message (#83951) 2022-12-14 12:47:02 -05:00
J. Nick Koston
bedb587290 Bump aioshelly to 5.1.2 to fix state updates not firing after reconnect (#83950)
Bump aioshelly to 5.1.2

changelog: https://github.com/home-assistant-libs/aioshelly/compare/5.1.1...5.1.2
2022-12-14 12:47:01 -05:00
majuss
4ef2e91fd5 Bump lupupy dependency to v0.2.3 (#83765)
fixes undefined
2022-12-14 12:47:01 -05:00
Sergio Oller
a0518295d5 Do not add a Content-Type header to ingress (#83425) 2022-12-14 12:47:00 -05:00
Erik Montnemery
774ebc760c Ignore certain device trigger validation errors (#83972) 2022-12-14 16:41:11 +01:00
epenet
ae9506d0bb Use UnitOfMass in integrations (#83930) 2022-12-14 16:37:11 +01:00
Rami Mosleh
c0a7934828 Move transmission to an updated library (#83932)
fixes undefined
2022-12-14 16:36:37 +01:00
ollo69
227330563a Use UnitOfTemperature enumerator in AsusWrt (#83958) 2022-12-14 16:26:19 +01:00
ollo69
4d885b71ff Add integration_type property to AsusWrt manifest (#83960) 2022-12-14 16:14:31 +01:00
majuss
e16b874469 Bump lupupy dependency to v0.2.3 (#83765)
fixes undefined
2022-12-14 14:56:55 +01:00
Aaron Bach
9aaeefeb8e Ensure AirVisual Pro uses long-running Samba connection (#83869) 2022-12-13 23:31:13 -07:00
Øyvind Matheson Wergeland
c7d1402320 Fix nobo_hub HVAC mode (#83947) 2022-12-13 23:21:10 -07:00
Michael Hansen
98eabd2f68 Update intent response (#83962)
* Add language to conversation and intent response

* Move language to intent response instead of speech

* Extend intent response for voice MVP

* Add tests for error conditions in conversation/process

* Move intent response type data into "data" field

* Move intent response error message back to speech

* Remove "success" from intent response

* Add id to target in intent response

* target defaults to None

* Update homeassistant/helpers/intent.py

* Fix test

* Return conversation_id and multiple targets

* Clean up git mess

* Fix linting errors

* Fix more async_handle signatures

* Separate conversation_id and IntentResponse

* Add unknown error code

* Add ConversationResult

* Don't set domain on single entity

* Language is required for intent response

* Add partial_action_done

* Default language in almond agent

* Remove partial_action_done

* Fix linting

* Rename success/fail targets

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2022-12-13 23:32:30 -05:00
J. Nick Koston
da62528526 Bump aioshelly to 5.2.0 (#83961)
changelog: https://github.com/home-assistant-libs/aioshelly/compare/5.1.2...5.2.0
2022-12-13 21:21:31 -05:00
J. Nick Koston
b7c7e7f57b Try to reconnect disconnected shelly devices as soon as they discovered by zeroconf (#83872) 2022-12-13 14:22:34 -10:00
J. Nick Koston
45a9c1ca8c Bump aioesphomeapi to 13.0.2 to fix reconnects after bad protobuf message (#83951) 2022-12-13 12:57:54 -10:00
J. Nick Koston
5a970e0a2b Adjust additional esphome bluetooth debug messages for unique id change (#83955) 2022-12-13 12:57:29 -10:00
Michael Hansen
961c8cc167 Update intent response (#83858)
* Add language to conversation and intent response

* Move language to intent response instead of speech

* Extend intent response for voice MVP

* Add tests for error conditions in conversation/process

* Move intent response type data into "data" field

* Move intent response error message back to speech

* Remove "success" from intent response

* Add id to target in intent response

* target defaults to None

* Update homeassistant/helpers/intent.py

* Fix test

* Return conversation_id and multiple targets

* Clean up git mess

* Fix linting errors

* Fix more async_handle signatures

* Separate conversation_id and IntentResponse

* Add unknown error code

* Add ConversationResult

* Don't set domain on single entity

* Language is required for intent response

* Add partial_action_done

* Default language in almond agent

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2022-12-13 16:46:40 -06:00
J. Nick Koston
0e2ebfe5c4 Move bluetooth watchdog into the scanner base class (#83888) 2022-12-13 11:57:40 -10:00
J. Nick Koston
b97ec8125f Bump aioshelly to 5.1.2 to fix state updates not firing after reconnect (#83950)
Bump aioshelly to 5.1.2

changelog: https://github.com/home-assistant-libs/aioshelly/compare/5.1.1...5.1.2
2022-12-13 23:27:05 +02:00
epenet
62d22d7a2d Refactor fitbit descriptions to use device classes (#83936) 2022-12-13 21:49:41 +01:00
Paulus Schoutsen
47a7807cbd 2022.12.5 (#83944) 2022-12-13 14:22:09 -05:00
epenet
b7b7cdcfcf Refactor Huawei LTE to use Entity Description (#83904)
* Refactor Huawei LTE to use Entity Description

* Apply suggestions from code review

Co-authored-by: Ville Skyttä <ville.skytta@iki.fi>

Co-authored-by: Ville Skyttä <ville.skytta@iki.fi>
2022-12-13 19:48:46 +01:00
Paulus Schoutsen
c75bf20a3c Bumped version to 2022.12.5 2022-12-13 13:26:18 -05:00
Bram Kragten
edffb794f7 Update frontend to 20221213.0 (#83940) 2022-12-13 13:25:47 -05:00
Erik Montnemery
412e9d34d9 Bump pychromecast to 13.0.4 (#83896) 2022-12-13 13:25:18 -05:00
Artem Draft
700dbcf2a4 Fix saving options with missing ignored sources in BraviaTV (#83891)
fix https://github.com/home-assistant/core/issues/83217
fixes undefined
2022-12-13 13:25:17 -05:00
Koen van Zuijlen
fcbb40092a Fix Just Nimbus error codes (#83856) 2022-12-13 13:25:16 -05:00
Bram Kragten
42a9069338 Update frontend to 20221213.0 (#83940) 2022-12-13 13:24:24 -05:00
epenet
4a848e8222 Add stones to mass units (#83933) 2022-12-13 17:35:14 +01:00
Aaron Bach
fed308b59d Add diagnostics support to PurpleAir (#82446)
Add diagnostics to PurpleAir
2022-12-13 09:14:19 -07:00
Marc Mueller
0e95875912 Improve ignore_variance typing (#83927) 2022-12-13 15:22:23 +01:00
epenet
9f67eb1aaa Refactor huisbaasje to use entity descriptions (#83825)
* Refactor huisbaasje to use entity descriptions

* Apply suggestions from code review

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

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-12-13 14:16:50 +01:00
epenet
85235ea5f6 Use FREQUENCY device class in integrations (#83916)
* Use FREQUENCY device class in integrations

* Adjust tesla

* Undo goodwe

* Adjust cpuspeed tests
2022-12-13 14:14:42 +01:00
epenet
fc43fb17a9 Fix incorrect device class in goodwe (#83917)
Fix device class in goodwe
2022-12-13 13:45:51 +01:00
Erik Montnemery
534d343f67 Bump pychromecast to 13.0.4 (#83896) 2022-12-13 11:55:23 +01:00
epenet
946d5535b4 Use UnitOfFrequency in integrations (#83915) 2022-12-13 11:47:06 +01:00
Erik Montnemery
0f5c678708 Add explanatory comment to metoffice (#83914) 2022-12-13 11:03:18 +01:00
Koen van Zuijlen
cc5d319369 Fix Just Nimbus error codes (#83856) 2022-12-13 10:59:13 +01:00
epenet
b5107a3f1d Use DATA_SIZE device class in lidarr (#83907) 2022-12-13 10:19:22 +01:00
epenet
1ad4cb40df Use DATA_SIZE device class in netgear lte (#83908) 2022-12-13 10:18:35 +01:00
epenet
69bc95a715 Use DATA_SIZE device class in integrations (#83895) 2022-12-13 10:17:56 +01:00
Yuxin Wang
677f0dc335 Remove deprecated apcupsd YAML config (#83801) 2022-12-13 08:52:05 +01:00
Sergio Oller
9733d31cd0 Do not add a Content-Type header to ingress (#83425) 2022-12-13 08:50:20 +01:00
Artem Draft
e32074c74e Fix saving options with missing ignored sources in BraviaTV (#83891)
fix https://github.com/home-assistant/core/issues/83217
fixes undefined
2022-12-13 08:45:04 +01:00
dependabot[bot]
aa23a125bf Bump actions/checkout from 3.1.0 to 3.2.0 (#83894)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-13 08:36:15 +01:00
Paulus Schoutsen
05c429bcd7 2022.12.4 (#83870) 2022-12-12 22:36:56 -05:00
Aaron Bach
e64973c7cc Add PurpleAir integration (#82110) 2022-12-12 20:32:11 -07:00
J. Nick Koston
31d0e5e316 Fix HomeKit media players when entity has duplicate sources (#83890)
fixes #83852 fixes #83698
2022-12-12 21:33:31 -05:00
J. Nick Koston
8fb400e7ca Fix bleak-retry-connector get_device hang with HAOS 9.4 and only proxies (#83879)
The bleak connection setup to dbus hangs forever instead of errors if
there are no local bluetooth adapters and we are using remote proxies.

The library now times out when this happens instead of hanging
forever.

changelog: https://github.com/Bluetooth-Devices/bleak-retry-connector/compare/v2.10.1...v2.10.2
2022-12-12 21:33:04 -05:00
Nyro
a3fb8a6514 Bump pyoverkiz to 1.7.2 (#83866)
Bump pyoverkiz
2022-12-12 21:32:21 -05:00
Nyro
4c2975ad99 Fix issue on Overkiz Domestic Hot water heater entities with away mode (#83684)
* Don't call set boostMode Duration with 0 to disable boost mode

* use states.get() instead of states[]

* Revert select states
2022-12-12 21:32:20 -05:00
J. Nick Koston
7c6806e75d Fix bleak-retry-connector get_device hang with HAOS 9.4 and only proxies (#83879)
The bleak connection setup to dbus hangs forever instead of errors if
there are no local bluetooth adapters and we are using remote proxies.

The library now times out when this happens instead of hanging
forever.

changelog: https://github.com/Bluetooth-Devices/bleak-retry-connector/compare/v2.10.1...v2.10.2
2022-12-12 21:29:39 -05:00
J. Nick Koston
692a732555 Fix HomeKit media players when entity has duplicate sources (#83890)
fixes #83852 fixes #83698
2022-12-12 21:29:06 -05:00
GitHub Action
b9753a9f92 [ci skip] Translation update 2022-12-13 00:27:47 +00:00
Avi Miller
812db974c7 bump aiolifx_themes to 0.3.0 (#83877) 2022-12-12 13:52:38 -10:00
J. Nick Koston
9b5c5938ce Remove get_device call in switchbot (#83881) 2022-12-12 13:51:10 -10:00
J. Nick Koston
938475d988 Remove get_device call in led-ble (#83880) 2022-12-12 13:50:47 -10:00
Nyro
1ee2959e4e Bump pyoverkiz to 1.7.2 (#83866)
Bump pyoverkiz
2022-12-13 00:17:05 +01:00
Nyro
a3e62c9ecf Fix issue on Overkiz Domestic Hot water heater entities with away mode (#83684)
* Don't call set boostMode Duration with 0 to disable boost mode

* use states.get() instead of states[]

* Revert select states
2022-12-13 00:08:10 +01:00
Aaron Bach
3d4ee5906d Add integration for AirVisual Pro (#79770)
* Add integration for AirVisual Pro

* Tests

* A few more redactions

* Loggers

* Consistency

* Remove unnecessary f-string

* Use `entry.as_dict()` in diagnostics

* One call

* Integration types

* Cleanup

* Import cleanup

* Code review

* Code review

* Code review
2022-12-12 14:28:27 -07:00
Joakim Sørensen
38ab48b4fd Use the async_migrate_paypal_agreement function to get the migration URL (#83469)
* Use the async_migrate_paypal_agreement function to get the migration URL

* Update URL

* Handle timeout error
2022-12-12 16:27:11 -05:00
Paulus Schoutsen
463edd984b Bumped version to 2022.12.4 2022-12-12 16:16:41 -05:00
Michael
0a2fa9984d Move template check into fritzbox entry setup (#83863)
* move template check into entry setup

* use else in try-except block
2022-12-12 16:16:35 -05:00
Erik Montnemery
89efc455e3 Bump pychromecast to 13.0.3 (#83861) 2022-12-12 16:16:35 -05:00
David F. Mulcahey
3fe2f4f572 Bump version of ZHA quirks to 0.0.89 (#83848) 2022-12-12 16:16:34 -05:00
Bram Kragten
712cb1157f Update frontend to 20221212.0 (#83842) 2022-12-12 16:16:28 -05:00
J. Nick Koston
4452a84ee0 Bump bluetooth-auto-recovery to 1.0.0 (#83800)
fixes https://github.com/home-assistant/core/issues/83673
2022-12-12 16:15:37 -05:00
Paulus Schoutsen
753a4e9e5e SleepIQ to not retry a re-auth right away 2022-12-12 16:12:35 -05:00
Michael
41041cb673 Move template check into fritzbox entry setup (#83863)
* move template check into entry setup

* use else in try-except block
2022-12-12 16:11:57 -05:00
Erik Montnemery
22e5d86324 Bump pychromecast to 13.0.3 (#83861) 2022-12-12 15:57:12 -05:00
Bram Kragten
5ef972c5d9 Update frontend to 20221212.0 (#83842) 2022-12-12 18:52:47 +01:00
David F. Mulcahey
aa27d2ec2a Bump version of ZHA quirks to 0.0.89 (#83848) 2022-12-12 10:33:50 -07:00
epenet
a99a92a2e9 Refactor waterfurnace to use entity descriptions (#83824) 2022-12-12 17:14:53 +01:00
Jafar Atili
2d206e7e31 Bump pyswitchbee to 1.7.3 (#83748) 2022-12-12 16:00:30 +01:00
epenet
b8a5869f76 Refactor ted5000 to use entity descriptions (#83820)
* Refactor ted5000 to use entity descriptions

* Apply suggestions from code review

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

* Refactor native_value

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-12-12 15:36:27 +01:00
epenet
583b4aef07 Enable automatic conversion for pressures (#83525)
* Enable automatic conversion between bar and psi

* Fix tests

* Fix mazda tests

* Fix oncue tests

* Adjust US pressures

* Adjust metric pressures

* Adjust tests

* Adjust tests
2022-12-12 12:42:35 +01:00
epenet
52d4a358a0 Use UnitOfPower in integrations [s-z] (#83826) 2022-12-12 12:20:16 +01:00
Álvaro Fernández Rojas
eb6310f7bb Update aioqsw to v0.3.1 (#83784) 2022-12-12 11:58:22 +01:00
Hans Oischinger
f65e18c019 Bump PyVicare to 2.21.0 (#83770) 2022-12-12 11:57:44 +01:00
Christopher Bailey
b23f505130 Add new docs to Diagnostics information (#83767) 2022-12-12 11:57:24 +01:00
J. Nick Koston
876258e68a Bump bluetooth-auto-recovery to 1.0.0 (#83800)
fixes https://github.com/home-assistant/core/issues/83673
2022-12-12 11:49:57 +01:00
epenet
1667b4b19e Use POWER device class in enphase_envoy (#83811) 2022-12-12 11:49:02 +01:00
epenet
4fe025b297 Use UnitOfPower in integrations [a-g] (#83812) 2022-12-12 11:48:09 +01:00
epenet
431df618c3 Use POWER device class in eliqonline (#83810) 2022-12-12 11:46:46 +01:00
epenet
3b117998fb Use POWER device class in dte energy bridge (#83809) 2022-12-12 11:45:48 +01:00
epenet
cc7ce8ec45 Use POWER device class in aqualogic (#83808) 2022-12-12 11:45:14 +01:00
epenet
2b647bcd5b Use device classes in apcupsd (#83807) 2022-12-12 11:44:37 +01:00
epenet
87d24d4cbe Use unit enums in saj (#83818) 2022-12-12 11:43:29 +01:00
epenet
a48741d891 Use device classes in sense (#83817) 2022-12-12 11:42:57 +01:00
epenet
3edb0969de Use UnitOfPower in integrations [h-r] (#83815) 2022-12-12 11:41:58 +01:00
Brandon Rothweiler
f24f0c2954 Fix incorrect usage of 'setup' vs 'set up' (#83774) 2022-12-12 11:40:00 +01:00
Erik Montnemery
22b4c445a0 Drop title from auth flows (#83628) 2022-12-12 10:53:28 +01:00
epenet
254d46b80f Use device classes in solaredge_local (#83821) 2022-12-12 10:45:25 +01:00
epenet
fa06398721 Use POWER device class in solarlog (#83822) 2022-12-12 10:45:12 +01:00
epenet
a30f14a15e Use device classes in volkszaehler (#83823) 2022-12-12 10:27:44 +01:00
epenet
9cd159ee01 Remove device class on V_FLOW in mysensors (#83806) 2022-12-12 08:35:58 +01:00
J. Nick Koston
d91e44485c Do not try to reconnect shelly on disconnected if Home Assistant is stopping (#83805) 2022-12-11 21:33:58 -10:00
J. Nick Koston
80a8d5443d Improve remote bluetooth scanner diagnostics and add missing test cover (#83796) 2022-12-11 21:33:30 -10:00
Christopher Bailey
ec47f7b6ff Add text platform for UniFi Protect (#83674) 2022-12-11 21:30:24 -10:00
J. Nick Koston
95641fa780 Revert "Move esphome gatt services cache to be per device" #81265 (#83793) 2022-12-11 17:50:18 -10:00
Paulus Schoutsen
0f68a57913 2022.12.3 (#83797) 2022-12-11 22:32:46 -05:00
Paulus Schoutsen
531873fb4d SleepIQ to not retry a re-auth right away (#83798) 2022-12-11 22:26:52 -05:00
Paulus Schoutsen
39fecb523d SleepIQ to not retry a re-auth right away 2022-12-11 21:43:25 -05:00
Paulus Schoutsen
87432be102 Bumped version to 2022.12.3 2022-12-11 21:19:18 -05:00
Paulus Schoutsen
858cf8ca33 Drop aiohttp to 3.8.1 (#83795) 2022-12-11 21:19:15 -05:00
Paulus Schoutsen
1c0543bcd5 Drop aiohttp to 3.8.1 (#83795) 2022-12-11 21:19:02 -05:00
GitHub Action
6745f0c56a [ci skip] Translation update 2022-12-12 00:24:56 +00:00
Paulus Schoutsen
9b4d86399e 2022.12.2 (#83778) 2022-12-11 14:58:31 -05:00
J. Nick Koston
9008006ac8 Restore remote discovered devices between remote scanner restarts (#83699) 2022-12-11 09:02:55 -10:00
Paulus Schoutsen
d61be9a0eb Bumped version to 2022.12.2 2022-12-11 13:55:31 -05:00
G Johansson
3838c2ab62 Fix scan_interval in Scrape (#83758)
Scrape fix scan_interval
2022-12-11 13:55:27 -05:00
Michael
c9611303d5 Fix IPv6 sensor is only loaded when Fritz!Box is in router mode (#83757)
do not check ipv6 when device is not a router
2022-12-11 13:55:26 -05:00
Avi Miller
00655ef21c lifx: bump aiolifx_effects dependency to v0.3.1 (#83730)
Fixes #83719

Signed-off-by: Avi Miller <me@dje.li>

Signed-off-by: Avi Miller <me@dje.li>
2022-12-11 13:55:25 -05:00
Kostas Chatzikokolakis
c169654bdf Bump androidtv dependency of androitv component (#83707)
Fixes #80555
2022-12-11 13:55:25 -05:00
Michael
e1505339a5 Fix loading of Fritz!Smarthome issues on older Fritz!Box (#83688)
* check if templates are available

* add test
2022-12-11 13:55:24 -05:00
J. Nick Koston
3a2fb402a4 Fix delay setting up new Yale Access Bluetooth entries (#83683)
Entries took a while to setup because of the
async_wait_init_flow_finish call in _async_setup_component

The delay was so long that users thought the integration
was broken

We had a wait in place for advertisements to arrive
during discovery in case the lock was not
yet seen.  Since integration discovery is deferred
until after startup this wait it no longer needed
2022-12-11 13:55:23 -05:00
Shay Levy
d8982116fb Bump aioshelly to 5.1.1 (#83680) 2022-12-11 13:55:00 -05:00
SukramJ
4c346697f0 Add missing CONF_SPEED to sensor device_trigger SCHEMA (#83679)
* Update device_trigger.py

* add missing CONF_IS_SPEED to device_condition
2022-12-11 13:51:01 -05:00
Christopher Bailey
eb03307bce Fix event sensor for UniFi Protect (#83663)
* Fix event sensor for UniFi Protect

* Linting

* Adds no cover

* Clean up check

* Linting
2022-12-11 13:49:11 -05:00
rappenze
77336427a4 Fix fibaro climate unit (#83659) 2022-12-11 13:49:10 -05:00
Erik Montnemery
169b7c91c3 Bump pychromecast to 13.0.2 (#83625)
* Bump pychromecast to 13.0.2

* Pass hass UUID to HomeAssistantController
2022-12-11 13:49:09 -05:00
Maarten Weyns
b22bcc568a Bump pyrisco to 0.5.7 (#83548) 2022-12-11 13:49:09 -05:00
Michael Chisholm
fbab7413a5 Match config entries for dlna_dmr based on device MAC, in addition to UDN (#74619)
* Factor out _is_dmr_device function

* Use DMR device's MAC to match existing config entries

Some DMR devices change their every time they boot, against the DMR specs.
Try to match such devices to existing config entries by using their MAC
addresses.

* Add DMR device's MAC as a device_registry connection

* Use doc-only IPs (RFC5737) for dlna_dmr tests
2022-12-11 13:40:35 -05:00
Christopher Bailey
1f6e2511f8 Fix event sensor for UniFi Protect (#83663)
* Fix event sensor for UniFi Protect

* Linting

* Adds no cover

* Clean up check

* Linting
2022-12-11 13:32:26 -05:00
Michael
4fbaefe55a Fix IPv6 sensor is only loaded when Fritz!Box is in router mode (#83757)
do not check ipv6 when device is not a router
2022-12-11 13:22:54 -05:00
G Johansson
127eca3c35 Fix scan_interval in Scrape (#83758)
Scrape fix scan_interval
2022-12-11 13:19:04 -05:00
Hans Oischinger
5fa9da25f2 Rename "Power production this week" vicare sensor (#83771)
vicare: Rename "Power production this week" sensor

'Power' should be 'Energy' like for the other timespanns.
This one was forgotten last time this area was cleaned up.
2022-12-11 18:53:05 +01:00
Robert Svensson
188ce9bf49 Align implementation of the UniFi update platform with the UniFi switch platform (#81821)
* Use the same entity class as switches, but separately

Once all platforms are migrated I will consolidate them into one entity class

* Fix review comment

* Fix review comments

* Fix review comments
2022-12-11 16:41:58 +01:00
Maximilian
0aa4d0fb7b Bump pynina to 0.2.0 (#83726)
* Bump pynina to version 0.2.0

* Update tests with new url
2022-12-11 12:43:45 +02:00
J. Nick Koston
7178cacdc2 Adjust esphome bluetooth client logging for unique id change (#83742) 2022-12-10 17:45:59 -10:00
Paulus Schoutsen
d3df4dd3c1 ESPHome: Use MAC as unique ID (#83741)
* ESPHome: Use MAC as unique ID

* Normalize incoming zeroconf/dhcp macs

* Update comment

* Test ESPHome without mac in zeroconf

* Use format_mac

* Remove unique ID index from DomainData
2022-12-10 22:26:42 -05:00
J. Nick Koston
bd342ddc13 Bump HAP-python to 4.6.0 (#83729) 2022-12-10 17:25:36 -10:00
Avi Miller
5976de6b7a lifx: bump aiolifx_effects dependency to v0.3.1 (#83730)
Fixes #83719

Signed-off-by: Avi Miller <me@dje.li>

Signed-off-by: Avi Miller <me@dje.li>
2022-12-10 20:03:13 -05:00
J. Nick Koston
a65ce7e6c6 Correct deprecated volt units on yalexs_ble sensor (#83738) 2022-12-10 20:02:21 -05:00
GitHub Action
f19a1147fe [ci skip] Translation update 2022-12-11 00:26:24 +00:00
J. Nick Koston
9094d73df1 Connect esphome ble scanner as soon as possible (#83728)
Other integration depend on it being available so connect
it first
2022-12-10 15:17:05 -05:00
J. Nick Koston
642cefb035 Add MVP humidifier support to switchbot (#83696)
* Add MVP humidifier support to switchbot

changelog: https://github.com/Danielhiversen/pySwitchbot/compare/0.22.0...0.23.0

* Update homeassistant/components/switchbot/config_flow.py

* bump

* coveragerc

* Revert "coveragerc"

This reverts commit eb642f6543.

* fix dirty branch
2022-12-10 13:56:57 -05:00
J. Nick Koston
5c79dae4c0 Add support for battery to Yale Access Bluetooth (#83691)
* Add support for battery level to Yale Access Bluetooth

* fix

* bump

* bump

* bump

* bump

* fix

* bump

* battery level is always an estimate from voltage, but than again it always is for every device

* bump

* review

* bump again to fix slow start

* other one
2022-12-10 13:55:22 -05:00
rappenze
119f2a90b7 Fix fibaro climate unit (#83659) 2022-12-10 20:23:07 +02:00
Kevin Stillhammer
c467b890fe Add homeassistant.helpers.location to loggers for travel_time integrations (#83705)
Add homeassistant.helpers.location to loggers
2022-12-10 20:18:20 +02:00
Kostas Chatzikokolakis
3c704ba8da Bump androidtv dependency of androitv component (#83707)
Fixes #80555
2022-12-10 20:14:15 +02:00
Allen Porter
1ac7f5f013 Make google calendar fail louder on invalid google_calendars.yaml (#83668)
* Make google calendar fail louder on invalid google_calendars.yaml

* Update homeassistant/components/google/__init__.py

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>

* Update homeassistant/components/google/__init__.py

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2022-12-10 09:26:28 -08:00
J. Nick Koston
af1c326cff Try to reconnect right away when disconnected from Shelly Gen2 devices (#83701) 2022-12-10 06:15:10 -10:00
epenet
456c5515c8 Use UnitOfVolume in integrations (#83646) 2022-12-10 12:43:13 +01:00
epenet
68efa37bff Fix invalid unit in econet (#83656) 2022-12-10 12:39:53 +01:00
epenet
f53145c540 Use GAS device class in smartthings (#83658) 2022-12-10 12:37:56 +01:00
Joakim Plate
c196fefe31 Reduce log level for linger task/timer (#83703)
We don't need to warn that loudly for these issues.
2022-12-10 12:12:56 +01:00
Erik Montnemery
d2fc3a22e2 Drop title from repairs flows (#83627) 2022-12-10 11:43:22 +01:00
epenet
535aba10ee Use DataRate unit and device class in integrations (#83610) 2022-12-10 11:41:44 +01:00
epenet
3970da0ad3 Adjust device class in xiaomi_miio (#83647) 2022-12-10 11:10:13 +01:00
epenet
c947152c48 Use unit enums in vicare (#83648) 2022-12-10 11:06:46 +01:00
Sommerzeit
b17391014a Add hue wall switch to deconz integration (#83700) 2022-12-10 09:51:41 +01:00
tronikos
2cfdae0c45 Google Sheets: small cleanup (#83685)
* Remove duplicate object key in strings.json

* Remove async_entry_has_scopes check

This is not needed. This was copied from google calendar integration
where it was needed to reauth when the scope changed.

* Remove unused constant in application_credentials

* Move constant to the file used

* fix warning use-implicit-booleaness-not-len

* Remove not accessed parameters

* Revert "Remove async_entry_has_scopes check"

This reverts commit 63e24f84cc.
2022-12-09 20:57:40 -08:00
SukramJ
e53758c1bb Add missing CONF_SPEED to sensor device_trigger SCHEMA (#83679)
* Update device_trigger.py

* add missing CONF_IS_SPEED to device_condition
2022-12-09 21:18:47 -05:00
Kevin Stillhammer
ab3f0fc63b Handle special transit errors for here_travel_time (#83649)
Handle special transit errors
2022-12-09 21:09:55 -05:00
Shay Levy
2a6162a34d Bump aioshelly to 5.1.1 (#83680) 2022-12-09 20:55:40 -05:00
J. Nick Koston
df0f694b01 Bump dbus-fast to 1.82.0 (#83682)
performance improvements for HAOS 9.4 passive monitoring

changelog: https://github.com/Bluetooth-Devices/dbus-fast/compare/v1.80.0...v1.82.0
2022-12-09 20:55:20 -05:00
J. Nick Koston
fec887420d Fix delay setting up new Yale Access Bluetooth entries (#83683)
Entries took a while to setup because of the
async_wait_init_flow_finish call in _async_setup_component

The delay was so long that users thought the integration
was broken

We had a wait in place for advertisements to arrive
during discovery in case the lock was not
yet seen.  Since integration discovery is deferred
until after startup this wait it no longer needed
2022-12-09 20:55:06 -05:00
Michael
ea95f74d6d Fix loading of Fritz!Smarthome issues on older Fritz!Box (#83688)
* check if templates are available

* add test
2022-12-09 20:54:22 -05:00
aschmitz
ca5dc01207 Hide Aranet update interval by default (#83694) 2022-12-09 20:33:23 -05:00
GitHub Action
1e0345a377 [ci skip] Translation update 2022-12-10 00:21:35 +00:00
epenet
5c700916d3 Use unit enums in overkiz (#83660) 2022-12-10 00:08:03 +01:00
Maarten Weyns
d5c322732f Bump pyrisco to 0.5.7 (#83548) 2022-12-09 12:16:15 -10:00
Shay Levy
376db101d6 Bump aioshelly to 5.1.1 (#83680) 2022-12-09 22:21:38 +02:00
Erik Montnemery
cd487ccaed Bump pychromecast to 13.0.2 (#83625)
* Bump pychromecast to 13.0.2

* Pass hass UUID to HomeAssistantController
2022-12-09 14:33:00 -05:00
J. Nick Koston
09f9bb05dc Add bluetooth diagnostics to shelly (#83438)
* Add bluetooth diagnostics to shelly

* Add tests

Co-authored-by: Shay Levy <levyshay1@gmail.com>
2022-12-09 10:55:10 -05:00
epenet
b63359b186 Use UnitOfVolume in energy integration (#83641) 2022-12-09 10:39:40 -05:00
Jan Bouwhuis
e15388a2a0 Improve MQTT type hints for dict get assignments (#83634)
* Improve type hints for dict get assignments

* Move _expire_after as class attr

* Remove extra check
2022-12-09 16:22:36 +01:00
epenet
a1758a71d2 Use WATER device class in streamlabswater (#83654) 2022-12-09 10:20:35 -05:00
epenet
55b996f5db Use device classes in mysensors (#83653) 2022-12-09 10:20:06 -05:00
epenet
b44e8673a8 Use WATER device class in rainmachine (#83651) 2022-12-09 10:19:18 -05:00
tronikos
5d31673465 Google Assistant SDK integration (#82328)
* Copy google_sheets to google_assistant_sdk

This is to improve diff of the next commit with the actual implementation.

Commands used:
cp -r homeassistant/components/google_sheets/ homeassistant/components/google_assistant_sdk/
cp -r tests/components/google_sheets/ tests/components/google_assistant_sdk/

find homeassistant/components/google_assistant_sdk/ tests/components/google_assistant_sdk/ -type f | xargs sed -i \
-e 's@google_sheets@google_assistant_sdk@g' \
-e 's@Google Sheets@Google Assistant SDK@g' \
-e 's@tkdrob@tronikos@g'

* Google Assistant SDK integration
Allows sending commands and broadcast messages to Google Assistant.

* Remove unnecessary async_entry_has_scopes check

* Bump gassist-text to fix protobuf dependency
2022-12-09 07:14:43 -08:00
epenet
d63a1ab511 Use UnitOfPower.BTU_PER_HOUR in zha (#83657) 2022-12-09 15:57:57 +01:00
epenet
9ba0809852 Use WATER device class in suez water (#83650)
Adjust device class for suez water
2022-12-09 09:53:35 -05:00
Marc Mueller
9a97784168 Add types package for paho-mqtt (#83599) 2022-12-09 15:27:46 +01:00
dependabot[bot]
a77d9af989 Bump actions/setup-python from 4.3.0 to 4.3.1 (#83607)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-09 13:56:34 +01:00
Jan Bouwhuis
b4984ea255 Use native _attr_ properties for MqttEntity (#83639) 2022-12-09 13:37:26 +01:00
epenet
6b43c457ff Update device classes in ebusd (#83530)
* Move sensor definitions to sensor platform

* Use new unit enums

* Update device classes

* Adjust for config validation

* Minimize changes
2022-12-09 13:33:40 +01:00
epenet
e3aca53899 Use new unit enums in zha (#83633)
* Use new unit enums in zha

* Add kPa

* Add kPa
2022-12-09 13:33:08 +01:00
epenet
01ee066163 Use DataRate unit and device class in freebox (#83612)
* Use DataRate unit and device class in freebox

* UnitOfTemperature
2022-12-09 13:32:46 +01:00
epenet
549d1151b7 Use DataRate unit and device class in pyload (#83611) 2022-12-09 13:32:31 +01:00
epenet
4192e2377c Use Frequency and Current device classes in nut (#83623)
* Use Frequency and Current device classes in nut

* One more
2022-12-09 13:31:42 +01:00
epenet
7c3ca38eb7 Use UnitOfElectricCurrent in integrations (#83622) 2022-12-09 10:51:26 +01:00
Erik Montnemery
cc132bfad6 Make it optional to provide a title when finishing a FlowHandler (#83534)
* Make it optional to provide a title when finishing a FlowHandler

* Make ConfigEntry.title a str

* Revert changes in ConfigFlow

* Adjust tests
2022-12-09 10:24:08 +01:00
Franck Nijhof
4e73063ed3 2022.12.1 (#83592) 2022-12-09 08:29:14 +01: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
epenet
b172abaeeb Add new atmospheric pressure device class (#83455)
* Add new atmospheric pressure device class

* Translations

* Automatic conversion

* Convert all pressure units
2022-12-09 08:02:53 +01:00
epenet
061cef1a5e Use SoundPressure unit and device class in integrations (#83585)
* Use SoundPressure unit and device class in integrations

* Adjust tests
2022-12-09 07:56:09 +01:00
Paulus Schoutsen
e9796547c6 Make mypy happy (#83605) 2022-12-08 23:21:45 -05:00
J. Nick Koston
558dceac42 Bump dbus-fast to 1.80.0 (#83601)
changelog: https://github.com/Bluetooth-Devices/dbus-fast/compare/v1.79.0...v1.80.0

performance improvements
2022-12-09 05:03:09 +01:00
Paulus Schoutsen
9c7b80090a Disable multi-pan (#83603)
* Disable multi-pan

* One more test skip
2022-12-08 22:44:16 -05:00
Paulus Schoutsen
ea8511bcfc Disable multi-pan (#83603)
* Disable multi-pan

* One more test skip
2022-12-08 22:43:52 -05:00
J. Nick Koston
19ddf478e2 Bump bluetooth-auto-recovery to 0.5.5 (#83597)
changelog: https://github.com/Bluetooth-Devices/bluetooth-auto-recovery/compare/v0.5.4...v0.5.5

fixes #78036
2022-12-08 21:44:15 -05:00
Jeef
5cdcbcd5fe Bump intellifire4py to 2.2.2 (#83589) 2022-12-08 21:43:54 -05:00
Franck Nijhof
803d4a9998 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 21:39:30 -05:00
Michael Hansen
e71eb8dfe2 Update intent response (#83560)
* Add language to conversation and intent response

* Move language to intent response instead of speech

* Extend intent response for voice MVP

* Add tests for error conditions in conversation/process

* Move intent response type data into "data" field

* Move intent response error message back to speech

* Remove "success" from intent response

* Add id to target in intent response

* target defaults to None

* Update homeassistant/helpers/intent.py

* Fix test

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2022-12-08 20:30:08 -05:00
J. Nick Koston
52f754e83d Bump bluetooth-auto-recovery to 0.5.5 (#83597)
changelog: https://github.com/Bluetooth-Devices/bluetooth-auto-recovery/compare/v0.5.4...v0.5.5

fixes #78036
2022-12-08 20:29:14 -05:00
J. Nick Koston
8193ddf61a Bump dbus-fast to 1.79.0 (#83598)
HA OS 9.4 adds support for passive scanning, however
a different path is used in dbus-fast to get the passive
results which was never optimized which caused passive
scanning to use more cpu time than active scanning.

changelog: https://github.com/Bluetooth-Devices/dbus-fast/compare/v1.75.0...v1.79.0
2022-12-08 20:28:52 -05:00
Masahiro Konishi
b922e9331f Add power field to switchbot plug (#83495)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-12-08 15:26:22 -10:00
GitHub Action
f25017313a [ci skip] Translation update 2022-12-09 00:24:29 +00:00
epenet
6c8823fc14 Use Irradiance device class in tomorrowio (#83574) 2022-12-08 23:52:55 +01:00
epenet
911863ebf4 Use Irradiance unit and device class in integrations (#83576) 2022-12-08 23:51:47 +01:00
epenet
7f345e7672 Add entity translations to Renault (#83392) 2022-12-08 23:48:24 +01:00
Jeef
26080fbb89 Bump intellifire4py to 2.2.2 (#83589) 2022-12-08 23:43:41 +01:00
epenet
51ea3ff400 Use UnitOfSoundPressure in demo (#83584)
Co-authored-by: Shay Levy <levyshay1@gmail.com>
2022-12-09 00:42:30 +02:00
Paulus Schoutsen
8ccc77eb3d Bumped version to 2022.12.1 2022-12-08 16:45:23 -05:00
Allen Porter
5994dd558b Improve local calendar input validation error handling (#83563) 2022-12-08 16:45:16 -05:00
Bram Kragten
b548be35bc Update frontend to 20221208.0 (#83551) 2022-12-08 16:45:16 -05:00
Marc Mueller
2cf1235b78 Fix issue with Callable, Union, and Python 3.9 [mqtt] (#83547) 2022-12-08 16:45:15 -05:00
Allen Porter
609fc9196f Bump ical to 4.2.2 (#83520)
Co-authored-by: Shay Levy <levyshay1@gmail.com>
2022-12-08 16:45:14 -05:00
mezz64
b7396a736e Bump pyhik to 0.3.2 (#83517)
Increase pyHik version to fix videoloss error
2022-12-08 16:45:13 -05:00
Marcel van der Veldt
a64e56c8ad Bump python-matter-server to 1.0.7 (#83507) 2022-12-08 16:45:12 -05:00
Aaron Bach
94160903a7 Bump simplisafe-python to 2022.12.0 (#83497) 2022-12-08 16:45:12 -05:00
Joakim Plate
f4948e8f48 Make sure super async_added_to_hass is called (#83493)
Make sure super added to hass is called
2022-12-08 16:45:11 -05:00
Christian Kündig
ec7302ef1b Set connectable as false for sensirion_ble (#83481)
This is a passive ble integration. Not setting it as false means it won't match properly when using through a passive remote scanner.
2022-12-08 16:45:10 -05:00
Allen Porter
16f94e68b3 Improve local calendar input validation error handling (#83563) 2022-12-08 16:44:45 -05:00
Guido Schmitz
4f63eab453 Fix sensor tests in devolo Home Control (#83586)
Fix sensor tests
2022-12-08 22:52:20 +02:00
epenet
0f2097595e Use new device class in netatmo (#83367) 2022-12-08 20:57:51 +01:00
epenet
0edcb26844 Use SoundPressure unit and device class in point (#83580) 2022-12-08 20:57:38 +01:00
epenet
5d71afef85 Use SoundPressure unit and device class in airq (#83581) 2022-12-08 20:56:18 +01:00
epenet
ec0af2f25d Use SoundPressure unit and device class in awair (#83582) 2022-12-08 20:56:02 +01:00
epenet
248d5ff541 Use ApparentPower unit and device class in integrations (#83577) 2022-12-08 20:55:18 +01:00
epenet
f5334c5aed Use new unit enums in isy994 (#83583) 2022-12-08 20:54:16 +01:00
epenet
96c442349f Introduce unit enums for sound pressure (#83450)
* Introduce unit enums for sound pressure

* Adjust based on architecture comment

* Adjust
2022-12-08 20:06:02 +01:00
epenet
38f62ae622 Add new sound pressure device class (#83453)
* Add new sound pressure device class

* Translations

* Docstring

* Adjust unit
2022-12-08 19:46:03 +01:00
Guido Schmitz
500b00bd66 Add sensor tests for devolo_home_control (#74292) 2022-12-08 20:40:45 +02:00
epenet
54fb4df3aa Update opentherm_gw sensor definitions (#83533)
* Move sensor definitions to platform

* Use new unit enums

* Update device classes

* Minimize changes
2022-12-08 20:33:02 +02:00
mezz64
de09792cdd Bump pyhik to 0.3.2 (#83517)
Increase pyHik version to fix videoloss error
2022-12-08 20:30:20 +02:00
Franck Nijhof
9864d9e0d2 Remove str from sensor device class (#83391) 2022-12-08 19:04:58 +01:00
epenet
3ba264c318 Use new device class in tellduslive (#83369) 2022-12-08 18:48:50 +01:00
epenet
c4326ed1ef Add new irradiance device class (#83452) 2022-12-08 18:44:23 +01:00
epenet
90438edc17 Introduce unit enums for irradiance (#83414) 2022-12-08 18:41:38 +01:00
epenet
0eacd84ff3 Introduce unit enums for apparent power (#83451) 2022-12-08 18:23:23 +01:00
epenet
9987f7a125 Add new data rate device class (#83377) 2022-12-08 18:20:05 +01:00
Erik Montnemery
c4afc33fc5 Add abc.ABC to classes with abstract methods (#83546) 2022-12-08 17:50:36 +01:00
Allen Porter
7091781692 Bump ical to 4.2.2 (#83520)
Co-authored-by: Shay Levy <levyshay1@gmail.com>
2022-12-08 11:45:21 -05:00
Michael Hansen
ac87528bec Add language to conversation and intent response (#83486)
* Add language to conversation and intent response

* Add language parameter to conversation/process service

* Move language to intent response instead of speech

* Add language to almond conversation agent

* Fix intent test
2022-12-08 11:39:28 -05:00
Bram Kragten
ee8a2d1e25 Update frontend to 20221208.0 (#83551) 2022-12-08 17:18:39 +01:00
epenet
25961d71ef Add new data size device class (#83376) 2022-12-08 16:47:36 +01:00
Marc Mueller
25feac1bc4 Fix issue with Callable, Union, and Python 3.9 [mqtt] (#83547) 2022-12-08 15:42:40 +01:00
Christian Kündig
b2edf9b598 Set connectable as false for sensirion_ble (#83481)
This is a passive ble integration. Not setting it as false means it won't match properly when using through a passive remote scanner.
2022-12-08 15:23:25 +02: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
Nathan Spencer
997d4fbe53 Bump pylitterbot to 2022.12.0 (#83490) 2022-12-07 21:55:25 -05:00
Aaron Bach
844a9fb817 Bump simplisafe-python to 2022.12.0 (#83497) 2022-12-07 21:54:58 -05:00
Joakim Plate
2ca7d0dd97 Make sure super async_added_to_hass is called (#83493)
Make sure super added to hass is called
2022-12-08 02:21:55 +01:00
Marcel van der Veldt
c2fa1bdd49 Bump python-matter-server to 1.0.7 (#83507) 2022-12-08 01:31:44 +01:00
GitHub Action
3de8185506 [ci skip] Translation update 2022-12-08 00:21:50 +00:00
Martin Hjelmare
694cec3459 Set matter team as matter codeowners (#83506) 2022-12-07 23:53:30 +01:00
Franck Nijhof
7b462e1b8e 2022.12.0 (#83482) 2022-12-07 20:26:50 +01:00
Joakim Sørensen
f5cfd0329c Use the async_migrate_paypal_agreement function to get the migration URL (#83469)
* Use the async_migrate_paypal_agreement function to get the migration URL

* Update URL

* Handle timeout error
2022-12-07 12:02:22 -07:00
puddly
92bc93466e Fix missing Shelly UnitOfTemperature import (#83483) 2022-12-07 18:45:16 +01:00
Franck Nijhof
54dd556459 Bumped version to 2022.12.0 2022-12-07 17:49:50 +01:00
Bram Kragten
8553faf3c8 Update frontend to 20221207.0 (#83479) 2022-12-07 17:49:22 +01:00
TheJulianJES
1631d10365 Cleanup ZHA initialization for TS011F child_lock (#83478) 2022-12-07 17:49:19 +01:00
Joakim Sørensen
141f37504d When an account exist without a subscription "provider" will not exist (#83472) 2022-12-07 17:49:16 +01:00
David F. Mulcahey
f97795fbb9 Bump the ZHA quirks lib to 0.0.88 (#83468) 2022-12-07 17:49:12 +01:00
Joakim Sørensen
ebf133ef80 Bump hass-nabucasa from 0.59.0 to 0.61.0 (#83466) 2022-12-07 17:49:08 +01:00
Franck Nijhof
886525112b Remove doubtful repairs issue from UniFi Protect (#83463) 2022-12-07 17:49:05 +01:00
Maciej Bieniek
9a15494e69 Fix restored temperature values in Shelly climate platform (#83428)
* Set last_target_temp value according the unit system

* Convert restored temperature values

* Add test

* Improve comments

* Move _last_target_temp value to constants
2022-12-07 17:49:01 +01:00
mbo18
047012d167 Add Child lock support to Tuya devices (#83233)
* Add Child lock support to Tuya devices

* flake/black

* Add attribute to general.py

* apply only to TS011F

* also update general.py
2022-12-07 17:48:56 +01:00
Bram Kragten
dfb0887765 Update frontend to 20221207.0 (#83479) 2022-12-07 17:46:42 +01:00
TheJulianJES
fccf7fe1ca Cleanup ZHA initialization for TS011F child_lock (#83478) 2022-12-07 16:53:08 +01:00
Joakim Sørensen
8ed6fcd58e When an account exist without a subscription "provider" will not exist (#83472) 2022-12-07 16:48:34 +01:00
David F. Mulcahey
f6f89b6c5a Bump the ZHA quirks lib to 0.0.88 (#83468) 2022-12-07 16:48:13 +01:00
Franck Nijhof
12a81cc9f4 Remove doubtful repairs issue from UniFi Protect (#83463) 2022-12-07 10:46:28 -05:00
John Pettitt
31725d5411 Add leak detectors support for Ambient Station (#83357) 2022-12-07 07:53:00 -07:00
Nyro
7af18ac0ad Add @nyroDev to overkiz codeowner (#83456)
* Add @nyroDev to overkiz codeowner

* Update manifest.json too
2022-12-07 13:26:36 +01:00
Joakim Sørensen
41e4f10977 Bump hass-nabucasa from 0.59.0 to 0.61.0 (#83466) 2022-12-07 13:17:45 +01:00
mbo18
b031905956 Add Child lock support to Tuya devices (#83233)
* Add Child lock support to Tuya devices

* flake/black

* Add attribute to general.py

* apply only to TS011F

* also update general.py
2022-12-07 07:13:32 -05:00
Maciej Bieniek
e11917b7cb Fix restored temperature values in Shelly climate platform (#83428)
* Set last_target_temp value according the unit system

* Convert restored temperature values

* Add test

* Improve comments

* Move _last_target_temp value to constants
2022-12-07 09:11:18 +02:00
r01k
fa98685b1e Refactor Fully Kiosk and add logging details (#83028)
* - Refactor fully_kiosk/services.py with a less repetitive structure. - Log exception details in config_flow.py.

* Log config_flow.py connection exception details

* Appropriate logging level including stack trace.

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

* Finish setting appropriate logging level when recording stack trace.

* Log unknown exception with stack trace

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

* test_config_flow.py now passes.

* All pytests passing.

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-12-07 08:07:22 +01:00
J. Nick Koston
b665a060f7 Do not try to stop the shelly ble scanner if not connected (#83424)
Co-authored-by: Shay Levy <levyshay1@gmail.com>
2022-12-06 22:57:54 -05:00
Raman Gupta
41d5256533 Add via_device support to zwave_js (#83219)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2022-12-06 22:56:33 -05:00
GitHub Action
1f3e5fb4fc [ci skip] Translation update 2022-12-07 00:24:08 +00:00
Guido Pio Mariotti
b4b136b43e Update pyvesync to 2.1.1 (#83146)
Update pyvesync to 2.1.1 to close #70420
2022-12-07 00:42:08 +01:00
Shay Levy
111a38589e Shelly code quality - use properties for status (#83421) 2022-12-07 00:00:45 +02:00
Franck Nijhof
1a9302b8f6 Upgrade google-cloud-pubsub to 2.13.11 (#83419) 2022-12-06 22:21:49 +01:00
epenet
9f7fd8956f Use new unit enums in helpers (#83387) 2022-12-06 22:20:17 +01:00
Martin Hjelmare
511fd293b6 Add matter switch platform (#83149) 2022-12-06 21:57:24 +01:00
Franck Nijhof
552a87dfcc Upgrade grpcio(-status) to 1.51.1 (#83420) 2022-12-06 21:57:06 +01:00
Martin Hjelmare
9d96a021c7 Add matter sensor platform (#83147) 2022-12-06 21:39:00 +01:00
Martin Hjelmare
e7a06046a7 Add matter binary sensor platform (#83144) 2022-12-06 14:28:06 -05:00
Joakim Plate
46669a1704 Add update of model and version for nibe (#83347) 2022-12-06 12:20:55 -07:00
Raman Gupta
8d1a70391e Improve zwave_js test coverage (#83372)
* Improve zwave_js test coverage

* review comments and clean up test
2022-12-06 12:18:21 -07:00
Daniel Hjelseth Høyer
dc3401c94e Update tibber lib to 0.26.4, improve logging (#83418) 2022-12-06 20:08:27 +01:00
epenet
65b391e651 Use new device class in arwn (#83406) 2022-12-06 14:05:27 -05:00
Bram Kragten
75c5137e77 Update frontend to 20221206.0 (#83415) 2022-12-06 13:21:28 -05:00
Allen Porter
4819576b62 Tighten validation on calendar create event websocket (#83413) 2022-12-06 13:04:32 -05:00
Shay Levy
e1923bc13b Add Shelly support for Plus WallDimmer US (#83385) 2022-12-06 19:44:17 +02:00
Martin Hjelmare
874315c3fc Bypass zwave_js config validation if driver not ready (#83410) 2022-12-06 12:41:09 -05:00
Marcel van der Veldt
4c8f7bbf50 Replace fixtures for Matter tests (#83328)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-12-06 12:38:13 -05:00
epenet
91d6d620c2 Use new unit enums in alexa (#83409)
* Use new unit enums in alexa

* Adjust for mypy
2022-12-06 17:31:40 +01:00
Franck Nijhof
d715aa6867 Modernize Image Processing typing (#83405)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2022-12-06 16:35:40 +01:00
Franck Nijhof
c507ad86d1 Remove str from cover device class (#83396)
* Remove str from cover device class

* Fix tests
2022-12-06 16:13:29 +01:00
Franck Nijhof
ba0d6fe611 Enforce NumberDeviceClass in number entities (#83402) 2022-12-06 14:58:22 +01:00
Franck Nijhof
647469f472 Remove str from media player device class (#83398)
* Remove str from media player device class

* Adjust pylint plugin
2022-12-06 14:57:34 +01:00
Franck Nijhof
cb69364ad2 Remove str from binary sensor device class (#83393) 2022-12-06 14:52:26 +01:00
Franck Nijhof
46caefca7b Remove str from humidifier device class (#83397) 2022-12-06 14:51:23 +01:00
Franck Nijhof
8cdadd1552 Remove str from switch device class (#83400) 2022-12-06 14:50:44 +01:00
Franck Nijhof
91cf2e2792 Remove str from update device class (#83399) 2022-12-06 14:50:19 +01:00
Michał Huryn
923fa473e1 Blebox add thermoBox to climate (#81090)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-12-06 14:43:35 +01:00
Franck Nijhof
9f36412076 Use CoverDeviceClass in Dynalite (#83394) 2022-12-06 13:30:22 +01:00
Franck Nijhof
04793978d3 Use CoverDeviceClass in ESPHome (#83395) 2022-12-06 13:29:58 +01:00
Sean Chen
985c1b31e1 Use new device class in nws (#83172)
* Replace unit consts with enums

* Remove default entries in NWSSensorEntityDescription

* Replace wind icon property with setting device_class in Wind Speed and Wind Gust sensors
2022-12-06 13:27:58 +01:00
Franck Nijhof
96e9bf13fe Fix icon in meteoclimatic wind bearing (#83390) 2022-12-06 12:27:05 +01:00
Franck Nijhof
de352c520c Fix Goalzero time to empty sensor device class (#83389)
* Fix Goalzero time to empty sensor device class

* Fix tests
2022-12-06 12:14:15 +01:00
epenet
72fd57a685 Use new device class in accuweather (#83318) 2022-12-06 11:54:59 +01:00
Franck Nijhof
10db0d8bb1 Remove invalid device class from Hue connectivity sensor (#83388) 2022-12-06 11:28:14 +01:00
Franck Nijhof
6c74809400 Remove unused device class from Renault select (#83330)
* Remove unused device class from Renault select

* Fix tests

* More
2022-12-06 11:27:07 +01:00
Franck Nijhof
c25ba19ffd Use enum sensor device class in Litter-Robot (#83290) 2022-12-06 11:08:05 +01:00
Jevgeni Kiski
d62bdbb9ff Add vallox fan speed control (#82548)
* fan.set_percentage + tests

* let's see what is not yet covered

* Apply suggestions from code review

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

* tests fix

* vallox_websocket_api 3.0.0

* more coverage

* test coverage

* Update tests/components/vallox/test_fan.py

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

* raise exceptions on user input

* Supported features are different per preset mode.

* Test fixes

* Static supported features is back.

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-12-06 11:00:59 +01:00
epenet
a3c4996291 Use new device class in zamg (#83361) 2022-12-06 10:56:23 +01:00
epenet
8a1a341b3a Use new device class in darksky (#83362) 2022-12-06 10:55:12 +01:00
epenet
b8613ec09d Allow cm in precipitation units (#83360)
* Use new device class in zamg

* Adjust docstring

* Undo component changes
2022-12-06 10:34:58 +01:00
epenet
55d1474e4a Fix sensor schema for device classes (#83378) 2022-12-06 10:29:23 +01:00
Raman Gupta
87e2bbbfab Fix zwave_js_value_updated event (#83358)
* Fix zwave_js_value_updated event

* Fix zwave_js_value_updated event
2022-12-06 10:25:37 +01:00
epenet
4f94ad475f Use new device class in lacrosse view (#83365) 2022-12-06 10:22:52 +01:00
epenet
9856a811ae Use new device class in trafikverket weatherstation (#83370) 2022-12-06 10:16:49 +01:00
epenet
11609a63e3 Use new device class in metoffice (#83366) 2022-12-06 10:15:53 +01:00
epenet
a14e465246 Use new device class in ecowitt (#83364) 2022-12-06 10:15:01 +01:00
epenet
d915fd3052 Use new device class in rfxtrx (#83368) 2022-12-06 10:09:03 +01:00
epenet
0c9a78fb8e Use tuple in test parametrization (#83379) 2022-12-06 09:46:10 +01:00
Jan Bouwhuis
7ed1d4988b Add QoS parameter to MQTT websocket_subscribe (#83241) 2022-12-06 09:31:19 +01:00
epenet
3de7b439b8 Use new enums in rflink (#83371) 2022-12-06 09:11:53 +01:00
epenet
d1bbd241aa Use new device class in buienradar (#83363) 2022-12-06 09:11:12 +01:00
Franck Nijhof
c2da664bcc Migrate Sensibo translations (#83310) 2022-12-06 08:59:48 +01:00
puddly
5121952a85 Bump ZHA dependencies (#83350) 2022-12-05 22:34:39 -05:00
J. Nick Koston
1ee9c0cb8d Fix bluetooth device connection failure when device is seen by dbus but not bleak (#83281) 2022-12-05 22:34:21 -05:00
Erik Montnemery
587381440f Fix repairing datetime precision for PostgreSQL (#83351) 2022-12-05 22:33:06 -05:00
GitHub Action
3ab9a14ce7 [ci skip] Translation update 2022-12-06 00:21:31 +00:00
Franck Nijhof
30db947d99 Use enum sensor device class in Overkiz (#83342) 2022-12-06 00:36:57 +01:00
Franck Nijhof
3f891ef4ee Migrate Wolf SmartSet Service translations (#83323) 2022-12-06 00:14:07 +01:00
Joakim Plate
aa37f6c934 Adjust error message and add callback in nibe heatpump climate (#83027)
* Adjust error message and add callback

* Line break value error string
2022-12-06 00:12:14 +01:00
Franck Nijhof
bc9f86f342 Remove unused device class from Kostal Plenticore select (#83329) 2022-12-06 00:09:51 +01:00
Franck Nijhof
762eb57636 Validate state class and unit of measurement for non-numeric sensors (#83344)
* Validate state class and unit of measurement for non-numeric sensors

* Remove duration

* Fix rest tests
2022-12-06 00:07:02 +01:00
Bram Kragten
91cdf0ecf7 Update frontend to 20221205.0 (#83349) 2022-12-05 23:59:54 +01:00
epenet
67192d4ea7 Introduce unit enums for information and data rate (#83291)
* Introduce UnitOfData enum

* Introduce UnitOfDataRate enum

* UnitOfData > UnitOfInformation
2022-12-05 23:32:00 +01:00
epenet
7eda67be11 Introduce unit enums for electric current and potential (#83287)
* Introduce UnitOfElectricCurrent enum

* Introduce UnitOfElectricalPotential enum

* UnitOfElectricalPotential > UnitOfElectricPotential
2022-12-05 23:31:43 +01:00
epenet
f1ce8a9004 Use new device class in ambient_station (#83322)
* Use new device class in ambient_station

* Update homeassistant/components/ambient_station/sensor.py

* Update homeassistant/components/ambient_station/sensor.py

* Update homeassistant/components/ambient_station/sensor.py

* Update homeassistant/components/ambient_station/sensor.py

* Update homeassistant/components/ambient_station/sensor.py

* Update homeassistant/components/ambient_station/sensor.py

* Update homeassistant/components/ambient_station/sensor.py

* Update homeassistant/components/ambient_station/sensor.py

* Update homeassistant/components/ambient_station/sensor.py

* Update homeassistant/components/ambient_station/sensor.py

* Update homeassistant/components/ambient_station/sensor.py

* Update homeassistant/components/ambient_station/sensor.py
2022-12-05 22:02:04 +01:00
Bouwe Westerdijk
2c4f9ca037 Update plugwise to v0.25.14, improve number detection (#83345)
fixes undefined
2022-12-05 20:17:19 +01:00
Franck Nijhof
171bed7637 Migrate UniFi Protect translations (#83338)
* Migrate UniFi Protect translations

* Move key
2022-12-05 20:10:36 +01:00
Franck Nijhof
e918adb25d Clean up Zodiac (#83334) 2022-12-05 20:08:05 +01:00
epenet
8fdf35b80a Introduce UnitOfFrequency enum (#83289) 2022-12-05 20:03:47 +01:00
epenet
6295cf3dc4 Introduce UnitOfTime enum (#83288) 2022-12-05 20:03:27 +01:00
J. Nick Koston
d97bcfdca9 Bump aiohomekit to 2.4.1 (#83341) 2022-12-05 19:54:27 +01:00
epenet
106a405733 Use new device class in meteo_france (#83325) 2022-12-05 19:09:40 +01:00
Franck Nijhof
399f0ea161 Migrate Overkiz select translations (#83324) 2022-12-05 17:24:59 +01:00
Franck Nijhof
150e49f4c2 Use enum sensor device class in AirVisual (#83316) 2022-12-05 17:24:47 +01:00
Alice
b97f95efc4 Update litterrobot integration to support long-term statistics (#83269) 2022-12-05 17:12:58 +01:00
Maikel Punie
1011c30cc5 Small fix for the velbus clear-cache service (#83279) 2022-12-05 17:12:27 +01:00
epenet
4f4d60c105 Use attributes in homematicip_cloud (#83295) 2022-12-05 17:10:38 +01:00
epenet
9682249830 Use new device class in environment canada (#83297) 2022-12-05 17:08:00 +01:00
epenet
6053b6f94a Use new device class in aemet (#83315) 2022-12-05 17:07:01 +01:00
epenet
7b98656bcd Use new device class in openweathermap (#83331) 2022-12-05 17:04:02 +01:00
epenet
069c1f35ca Use new device class in meteoclimatic (#83327) 2022-12-05 16:59:04 +01:00
epenet
eb13f2b724 Use UnitOfVolume in unit conversion (#83292) 2022-12-05 16:56:05 +01:00
Michał Ajduk
ff7a70d31b Fix Tuya number native value raw return (#83333)
fixes undefined
2022-12-05 16:55:21 +01:00
Martin Hjelmare
bd04c1d9f9 Deprecate the Xbox Live integration (#83339) 2022-12-05 16:54:36 +01:00
Franck Nijhof
f125fd5772 Migrate Tractive translations (#83321) 2022-12-05 16:45:57 +01:00
Erik Montnemery
67875b99a3 Refactor support for integrations to drop custom unit conversion (#83228)
* Refactor support for integrations to drop custom unit conversion

* Fix lying comment

* Address review comment
2022-12-05 16:12:37 +01:00
Franck Nijhof
1f7a7d5cb5 Use enum sensor device class in Nettigo Air Monitor (#83314) 2022-12-05 16:05:03 +01:00
Marc Mueller
1ca9824191 Update pylint to 2.15.8 (#83311) 2022-12-05 10:01:27 -05:00
Franck Nijhof
f801fe307e Migrate Demo translations (#83294) 2022-12-05 08:44:26 -05:00
Franck Nijhof
aa4a0df194 Migrate Logitech Harmony Hub translations (#83308) 2022-12-05 13:57:13 +01:00
Franck Nijhof
73162e6fb5 Migrate TOLO Sauna translations (#83306)
* Migrate TOLO Sauna translations

* Fix capa
2022-12-05 13:55:07 +01:00
Franck Nijhof
03dc527a85 Migrate MusicCast translations (#83305) 2022-12-05 13:54:10 +01:00
Franck Nijhof
06c8b838b5 Use enum sensor device class in Season (#83301) 2022-12-05 13:48:32 +01:00
Franck Nijhof
303f203c2a Migrate Xiaomi Miio translations (#83300) 2022-12-05 13:47:18 +01:00
Franck Nijhof
e015f8bf8f Migrate LaMetric translations (#83298) 2022-12-05 13:46:08 +01:00
epenet
b75eb71764 Use new device class in homematic (#83303) 2022-12-05 13:45:30 +01:00
Franck Nijhof
42c6920a91 Migrate WLED translations (#83296) 2022-12-05 13:45:14 +01:00
Franck Nijhof
32dfc59d9e Migrate HomeKit Controller translations (#83304) 2022-12-05 13:44:59 +01:00
Franck Nijhof
226a880645 Use enum sensor device class in Tomorrow.io (#83293) 2022-12-05 13:17:49 +01:00
Klaas Schoute
2602b45ec8 Bump package for Garage Amsterdam (#83167)
* Bump to new package version

* Change the class name used in the new package

* Fix failing test with using old package name
2022-12-05 13:12:46 +01:00
Franck Nijhof
f0f4e4595c Migrate Plugwise translations (#83286) 2022-12-05 12:18:20 +01:00
epenet
63e8dd58ef Use UnitOfTemperature in water_heater entities (#83132) 2022-12-05 11:42:15 +01:00
G Johansson
1c86a543b7 Failback to v4 resolver for AAAA records in DNSIP integration (#82740) 2022-12-05 11:02:38 +01:00
Sean Chen
c8fbdde3b8 Add @kamiyo to nws codeowners (#83171) 2022-12-05 10:59:25 +01:00
Garrett
efc637cb2b Bump subarulink to v0.7.0 (#83213)
fixes undefined
2022-12-05 10:53:05 +01:00
epenet
68e454712d Use UnitOfTemperature in climate entities [g-l] (#83127)
* Use UnitOfTemperature in climate entities [g-l]

* Adjust gree

* Adjust honeywell
2022-12-05 10:42:24 +01:00
Franck Nijhof
40d337479e Use enum sensor device class in UptimeRobot (#83111) 2022-12-05 10:36:16 +01:00
epenet
c7a6b5983f Use UnitOfTemperature in climate entities [t-z] (#83129) 2022-12-05 10:18:57 +01:00
dependabot[bot]
ee5de654ab Bump dessant/lock-threads from 3 to 4 (#83273)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2022-12-05 10:11:24 +01:00
Marc Mueller
1f30d761a6 Code style improvements [alexa] (#83258) 2022-12-05 09:36:03 +01:00
Erik Montnemery
7e2960a973 Enable strict typing of hardware (#83120)
* Enable strict typing of hardware

* Address review comment
2022-12-05 09:32:52 +01:00
Christopher Bailey
ee7022dc67 Update UniFi Protect ring entity to use event entity (#83270) 2022-12-04 17:06:55 -10:00
Anton Malko
ec24b93c17 Bump aiolookin to 1.0.0 (#83198)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-12-04 16:31:35 -10:00
Avi Miller
88c8eef4eb Populate suggested_area using the LIFX group name for each device (#83259)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-12-04 16:31:08 -10:00
jjlawren
c70388869b Do not discard zero positions for Sonos media players (#83249)
fixes undefined
2022-12-04 21:11:30 -05:00
Joris Pelgröm
34fd64addf Fix mobile_app returning cloud URL when not subscribed (#83257)
fixes undefined
2022-12-04 21:10:26 -05:00
J. Nick Koston
3044e78d43 Avoid regex overhead in processing esphome bluetooth advertisements (#83246) 2022-12-04 21:09:45 -05:00
J. Nick Koston
1efc71624a Bump aioesphomeapi to 13.0.1 (#83223)
fixes https://github.com/home-assistant/core/issues/83212
2022-12-04 21:09:10 -05:00
GitHub Action
5f9290e572 [ci skip] Translation update 2022-12-05 00:23:07 +00:00
Stephan Singer
64a72daa27 Add IPv6 sensor to fritz component (#75708)
* Add IPv6 sensor to fritz component

* Cast return type to string

* Make ipv6 sensor suitable

* simplify cast to str

* use extisting property

Co-authored-by: chemelli74 <simone.chemelli@gmail.com>
Co-authored-by: mib1185 <mail@mib85.de>
2022-12-05 00:48:41 +01:00
Allen Porter
0f83db82d9 Bump gcal_sync to 4.0.4 (#83245) 2022-12-04 17:16:51 -05:00
Ville Skyttä
8f9baafac1 Tweak black config (#83230)
* Remove `--safe` from pre-commit args, it's the default

* Extend exclusions instead of overriding, improve regex
2022-12-04 17:12:37 -05:00
Allen Porter
6c896adcff Bump ical to 4.2.1 (#83254) 2022-12-04 23:05:35 +01:00
Joe Rogers
f1ee920463 Handle numeric versions in mqtt update (#83218)
* Handle numeric versions in mqtt update

* Remove need for type:ignore

Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>

Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>
2022-12-04 21:52:48 +01:00
J. Nick Koston
c617e7da31 Raise an exception when an esp proxy gets empty services during connection so callers know to retry (#83211) 2022-12-04 09:05:46 -10:00
Allen Porter
6499f5460a Bump ical to 4.2.0 (#83244) 2022-12-04 10:18:27 -08:00
Simone Chemelli
e436f6a7b2 Fix missing title placeholders in Synology DSM reauth flow (#83238)
* Fix missing title placeholders in reauth flow

* fix tests

Co-authored-by: mib1185 <mail@mib85.de>
2022-12-04 10:11:24 -08:00
J. Nick Koston
db0dfe875a Bump pySwitchbot to 0.22.0 (#83243)
fixes https://github.com/home-assistant/core/issues/82961
2022-12-04 08:08:21 -10:00
Michael Chisholm
7378277212 Update async-upnp-client to 0.32.3 (#83215) 2022-12-04 10:05:53 -08:00
Matthias Alphart
4ca6db825c Address late KNX flow tests review (#83208)
* Address late KNX flow tests review

* Update tests/components/knx/test_config_flow.py

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

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-12-04 18:39:27 +01:00
Milan Meulemans
cefdce5002 Remove deprecated GCM API from html5 (#83229)
* Remove deprecated GCM API

* Cleanup code after removing GCM

* Make vapid required

* Use dict[key] instead of dict.get(key) for vapid config
2022-12-04 18:34:54 +01:00
J. Nick Koston
1577f6ea50 Restore HomeKit Controller BLE GSN at startup (#83206) 2022-12-04 07:01:37 -10:00
Jan Bouwhuis
de77132a5a Add the QoS in the MQTT debug log (#83195)
Logging the MQTT QoS in the debug log
2022-12-04 15:03:41 +01:00
epenet
44d3f2192c Use UnitOfTemperature in climate entities [a-f] (#83125) 2022-12-04 11:53:56 +02:00
epenet
aace084931 Use unit enums in demo (#83130) 2022-12-04 11:21:44 +02:00
Joakim Plate
90f2a54165 Bump nibe to 1.5.0 (#83185) 2022-12-04 11:17:13 +02:00
J. Nick Koston
e139470c56 Bump yalexs-ble to 1.10.3 (#83216)
changelog: https://github.com/bdraco/yalexs-ble/compare/v1.10.2...v1.10.3
2022-12-04 11:10:53 +02:00
GitHub Action
a1eab7f842 [ci skip] Translation update 2022-12-04 00:23:06 +00:00
Olen
0d1506c3cf Switch Twinkly to awesomeversion (#83205)
Switch to awesomeversion
2022-12-03 22:43:10 +01:00
Aaron Bach
cd0037a780 Fix OpenUV coverage (#83203) 2022-12-03 14:40:42 -07:00
Aidan Timson
766c2f8bb4 Update aiolyric to 1.0.9 (#83190) 2022-12-03 14:26:21 -07:00
Glenn Waters
ffbde4ac90 Bump elkm1 lib to 2.2.1 (#83026) 2022-12-03 10:47:38 -10:00
J. Nick Koston
0cacfef325 Bump yalexs-ble to 1.10.2 (#83199) 2022-12-03 14:55:53 -05:00
J. Nick Koston
9321c2191e Bump aiohomekit to 2.3.6 (#83196) 2022-12-03 14:34:11 -05:00
J. Nick Koston
237a1d50d9 Bump pySwitchbot to 0.20.8 (#83197)
fixes https://github.com/home-assistant/core/issues/80491
2022-12-03 14:21:19 -05:00
Aaron Bach
c6ad48e236 Fix SimpliSafe service calls that require a device selector (#83200)
fixes undefined
2022-12-03 14:20:53 -05:00
Allen Porter
b735e66d2f Bump ical to 4.1.2 to fix emoji in local calendar (#83193)
Bump ical to 4.1.2
2022-12-03 12:02:25 -07:00
J. Nick Koston
955d4abf13 Fix missing services with esp32 proxies (#83192) 2022-12-03 13:50:59 -05:00
Lars
5422a17a35 Add integration_type to AVM FRITZ!SmartHome (#81096) 2022-12-03 13:24:06 -05:00
Olen
2a0496a3a9 Support older twinkly devices without effects (#83145)
fixes undefined
2022-12-03 13:23:29 -05:00
Kevin Stillhammer
f88d22b833 Raise UpdateFailed when here_travel_time cannot find_location (#83157)
Fixes https://github.com/home-assistant/core/issues/83100
fixes undefined
2022-12-03 13:06:10 -05:00
Joakim Sørensen
0dfc0af08c Add CLOSED as an expected type (#83180) 2022-12-03 10:19:16 -05:00
Matthias Alphart
6cef37641c KNX Config/OptionsFlow: Test connection to manually configured tunnel (#82872) 2022-12-03 12:53:12 +01:00
Daniel Hjelseth Høyer
949ebeeb97 Update pyTibber to 0.26.3 (#83175)
Update Tibber lib 0.26.3

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

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2022-12-03 12:30:03 +01:00
Franck Nijhof
58f2fc8610 Use enum sensor device class in Moon (#83108)
* Use enum sensor device class in Moon

* Adjust tests
2022-12-03 11:25:04 +01:00
Franck Nijhof
b40923a4cd Use enum sensor device class in PrusaLink (#83107) 2022-12-03 11:22:36 +01:00
J. Nick Koston
a63dd811dd Bump pySwitchbot to 0.20.7 (#83170)
changelog: https://github.com/Danielhiversen/pySwitchbot/compare/0.20.5...0.20.7
2022-12-03 11:14:39 +01:00
J. Nick Koston
4a23216e1e Bump aiohomekit to 2.3.5 (#83168) 2022-12-02 21:00:49 -05:00
Alex Yao
652fedf4d1 Fix html5 Firefox Notifications (#82556)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
fixes undefined
2022-12-02 20:51:16 -05:00
Aaron Bach
ee0fbae2ca Return empty data when OpenUV API call fails (#83089)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
fixes undefined
2022-12-02 20:27:33 -05:00
J. Nick Koston
4a56461d3c Fix reauth with esphome when adding noise encryption (#83164)
* Fix reauth with esphome when adding noise encryption

fixes #80813

* fix with unique id
2022-12-02 19:49:13 -05:00
J. Nick Koston
6651dfaf9b Bump bluetooth-auto-recovery to 0.5.4 (#83155)
changelog: https://github.com/Bluetooth-Devices/bluetooth-auto-recovery/compare/v0.5.3...v0.5.4
2022-12-02 19:48:06 -05:00
J. Nick Koston
de1e97a81f Fix esphome ble client leaking notify on disconnect (#83106)
* Fix esphome ble client leaking notify on disconnect

needs: https://github.com/esphome/aioesphomeapi/pull/329

* leak

* more cleanup

* more cleanup

* bump
2022-12-02 19:45:49 -05:00
GitHub Action
03154e1d83 [ci skip] Translation update 2022-12-03 00:21:50 +00:00
J. Nick Koston
cc105e5c27 Fix race setting up homekit controller triggers (#83166)
fixes https://github.com/home-assistant/core/issues/83165
2022-12-02 13:49:14 -10:00
J. Nick Koston
144f1b918b Fix logging the wrong bluetooth adapter while connecting and out of slots (#83158) 2022-12-02 13:24:12 -10:00
Michaël Arnauts
5a8cf38552 Update pycomfoconnect to 0.5.1 (#83124) 2022-12-02 10:38:29 -10:00
Martin Hjelmare
aab0c4eb71 Remove matter services available in websocket api (#83151) 2022-12-02 13:59:18 -05:00
epenet
8b867d612f Use UnitOfTemperature in climate entities [m-s] (#83131) 2022-12-02 19:56:18 +01:00
Philip Allgaier
d3b35ca2a7 Address review comments for shopping list websockets (#83143) 2022-12-02 19:33:25 +01:00
majuss
832bc15daa Bump lupupy to 0.2.1 (#83071) 2022-12-02 17:30:25 +01:00
Erik Montnemery
ef588a556a Enable strict typing of homeassistant hardware integrations (#83121) 2022-12-02 15:59:03 +01:00
Erik Montnemery
bd97f59395 Enable strict typing of hardkernel (#83122) 2022-12-02 15:56:48 +01:00
Erik Montnemery
e325ec26d0 Enable strict typing of raspberry_pi (#83123) 2022-12-02 15:56:13 +01:00
Erik Montnemery
155db2f2e1 Simplify diagnostics.DownloadDiagnosticsView (#83116)
* Refactor diagnostics.DownloadDiagnosticsView

* Simplify
2022-12-02 15:33:55 +01:00
J. Nick Koston
8eeba490d1 Update aiobafi6 to 0.7.3 (#83073) 2022-12-02 14:56:02 +01:00
Franck Nijhof
a4a80f367b Use enum sensor device class in HomeKit Controller (#83109) 2022-12-02 14:50:01 +01:00
Erik Montnemery
46500beefc Enable strict typing of analytics (#83119) 2022-12-02 14:05:08 +01:00
Philip Allgaier
80debae96d Add support for item removal to shopping list (#82992) 2022-12-02 12:40:59 +01:00
Nyro
21c051935f Fix small coding style in recent overkiz code (#82966)
* Fix small coding style

* Use kwargs[ATTR_TEMPERATURE] in overkiz water_heater

* Fix grammar

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-12-02 11:22:35 +01:00
ollo69
5789790d32 Review AsusWRT sensors tests (#71307)
* Review AsusWRT sensors tests

* Fix grammar

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-12-02 11:22:16 +01:00
Erik Montnemery
bf7e50eb32 Enable strict typing of diagnostics (#83053)
* Enable strict typing of diagnostics

* Reformat to avoid line break
2022-12-02 11:21:02 +01:00
Franck Nijhof
fc93521e02 Migrate Tuya translations (#83105)
* Migrate Tuya translations

* Don't use DPCode as translation key
2022-12-02 11:20:17 +01:00
Erik Montnemery
4edebacba5 Add type annotations to some hassio API (#83103)
* Add type annotations to some hassio API

* Adjust callers
2022-12-02 11:18:49 +01:00
Olen
faea29a268 Fix twinkly effects (#83104)
Adding additional checks
2022-12-02 09:58:29 +01:00
Marc Mueller
c6796494b4 Fix glob patterns for partial CI runs (#83086) 2022-12-02 09:16:20 +01:00
Christopher Bailey
484756c834 Bump pyunifiprotect to 4.5.2 (#83090) 2022-12-02 09:15:24 +01:00
Franck Nijhof
ce00f093d6 Add enum device_class and state options property to sensor entities (#82489) 2022-12-02 09:11:15 +01:00
J. Nick Koston
3feea879dd Bump aiohomekit to 2.3.4 (#83094) 2022-12-02 09:07:31 +01:00
J. Nick Koston
ccb5910db0 Bump bleak-retry-connector to 2.8.7 (#83095)
changelog: https://github.com/Bluetooth-Devices/bleak-retry-connector/compare/v2.8.6...v2.8.7
2022-12-02 08:08:56 +01:00
J. Nick Koston
56c0eacb08 Fix wrong ble device being logged (#83091)
This code can be simplified a bit now that we
have the fast bleak lookup. We do connect
via the correct path, but we logged the wrong one
2022-12-02 08:08:35 +01:00
Raman Gupta
3e71436267 Bump zwave-js-server-python to 0.43.1 (#83093) 2022-12-02 07:56:29 +01:00
GitHub Action
c9c2886b26 [ci skip] Translation update 2022-12-02 00:23:57 +00:00
Marc Mueller
6e4551f73f Fix prettier [ci] (#83077) 2022-12-01 23:54:12 +01:00
Christopher Bailey
6fb9bdec93 Assorted fixes for UniFi Protect (#83032) 2022-12-01 16:37:44 -05:00
J. Nick Koston
e23007322d Defer xiaomi ble polling until after startup (#83074)
fixes https://github.com/home-assistant/core/issues/77178
2022-12-01 16:37:22 -05:00
Bram Kragten
18e4c065eb Update frontend to 20221201.1 (#83062) 2022-12-01 16:35:53 -05:00
Allen Porter
5d1ca73a34 Add create and delete for Google Calendar events (#83034)
* Add Google Calendar create/delete support

Includes editing for recurring events

* Fix default calendar access role

* Formatting improvements

* Address other details that have changed due to local sync

* Update tests/components/google/test_calendar.py

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

* Update tests/components/google/test_calendar.py

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

* Update tests/components/google/test_calendar.py

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

* Increase test coverage

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-12-01 21:39:58 +01:00
Marcel van der Veldt
e2308fd15c Add matter integration BETA (#83064)
* Add matter base (#79372)

Co-authored-by: Marcel van der Veldt <m.vanderveldt@outlook.com>

* Add matter server add-on flow (#82698)

* Add matter server add-on flow

* Fix stale error argument

* Clean docstrings

* Use localhost as default address

* Add matter websocket api foundation (#82848)

* Add matter config entry add-on management (#82865)

* Use matter refactored server/client library (#83003)

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

* Bump python-matter-server to 1.0.6 (#83059)

* Extend matter websocket api (#82948)

* Extend matter websocket api

* Finish docstring

* Fix pin type

* Adjust api after new client

* Adjust api to frontend for now

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-12-01 20:44:56 +01:00
Daniel Hjelseth Høyer
845ce5c6ea Tibber, fix date parsing (#83067)
Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2022-12-01 20:36:46 +02: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
Daniel Hjelseth Høyer
87b6bb45d0 Remove home id from Tibber diagnostics (#83066)
Tibber diagnostic

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

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2022-12-01 20:24:17 +02:00
Franck Nijhof
fa31192448 Update debugpy to 1.6.4 (#83042) 2022-12-01 14:07:49 +01:00
Todd Johnson
5533368171 Add dialect support to google_translate (#81768)
* Add TLD option support to google_translate

* Fix tests for added TLD option in google_translate

* Add Language to TLD mapping, Make tld configurable in google_translate

* Move const to dedicated file in google_translate
2022-12-01 13:31:19 +01:00
Keilin Bickar
f4a58c7dc7 Bump sense_api to 0.11.0 and add refresh token support (#83030)
fixes undefined
2022-12-01 10:53:48 +01:00
r01k
8e357faa4d Bump python-fullykiosk to 0.0.12 (#83029) 2022-12-01 10:38:04 +01: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
Jc2k
843f537109 Fix getting updated thread IP at startup in homekit_controller (#83037) 2022-12-01 08:14:42 +00:00
Joakim Sørensen
817bbfe6aa Bump hass-nabucasa from 0.56.0 to 0.59.0 (#82987)
* Bump hass-nabucasa from 0.56.0 to 0.58.0

* 0.59.0
2022-12-01 09:08:39 +01:00
J. Nick Koston
38b9d896b2 Fix incorrect mapping of sensitive mode on oralb 4000 series (#83031) 2022-11-30 23:11:01 -05:00
J. Nick Koston
c91417e71f Fix yale access bluetooth locks delaying startup when key changes (#83024)
If the keys changed for the yale locks, the locks would be
slow to setup. Because august had yalexs_ble as an
after dep, it would be waiting with the new keys but not
able to setup because it was waiting for the locks to setup
which would be trying over and over until they failed because
the key had changed out from under it.

This change moves some more code into the lib to avoid
the dep and allows both to startup at the same time so
the cloud service can feed the new keys in if needed without
waiting for the lock to fail to setup

changelog: https://github.com/bdraco/yalexs-ble/compare/v1.9.8...v1.10.0
2022-12-01 03:36:02 +01:00
Franck Nijhof
4bef6ac191 Bump version to 2023.1.0dev0 (#83025) 2022-11-30 21:12:57 -05:00
J. Nick Koston
f0d8168db7 Bump aiohomekit to 2.3.2 (#83019) 2022-12-01 02:07:22 +01:00
Joakim Plate
9f236c4ca5 Add nibe heat pump climate entities (#78952)
* Add climate platform

* Enable climate plarform

* Some adjustments after review

* fixup! Add climate platform

* Rename description to avoid confusion

* No need to pass None

* Rename with nibe prefix

* Handle possible translations of values

* Make sure we prune None contexts

* Switch to constants from library
2022-12-01 01:58:59 +01:00
GitHub Action
0d1f476bee [ci skip] Translation update 2022-12-01 00:33:36 +00:00
8017 changed files with 185676 additions and 48266 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -80,8 +80,7 @@ body:
label: Diagnostics information
placeholder: "drag-and-drop the diagnostics data file here (do not copy-and-paste the content)"
description: >-
Many integrations provide the ability to download diagnostic data
on the device page (and on the integration dashboard).
Many integrations provide the ability to [download diagnostic data](https://www.home-assistant.io/docs/configuration/troubleshooting/#debug-logs-and-diagnostics).
**It would really help if you could download the diagnostics data for the device you are having issues with,
and <ins>drag-and-drop that file into the textbox below.</ins>**

View File

@@ -10,7 +10,7 @@ on:
env:
BUILD_TYPE: core
DEFAULT_PYTHON: 3.9
DEFAULT_PYTHON: "3.10"
jobs:
init:
@@ -24,12 +24,12 @@ jobs:
publish: ${{ steps.version.outputs.publish }}
steps:
- name: Checkout the repository
uses: actions/checkout@v3.1.0
uses: actions/checkout@v3.3.0
with:
fetch-depth: 0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v4.3.0
uses: actions/setup-python@v4.5.0
with:
python-version: ${{ env.DEFAULT_PYTHON }}
@@ -67,10 +67,10 @@ jobs:
if: github.repository_owner == 'home-assistant' && needs.init.outputs.publish == 'true'
steps:
- name: Checkout the repository
uses: actions/checkout@v3.1.0
uses: actions/checkout@v3.3.0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v4.3.0
uses: actions/setup-python@v4.5.0
with:
python-version: ${{ env.DEFAULT_PYTHON }}
@@ -100,7 +100,7 @@ jobs:
arch: ${{ fromJson(needs.init.outputs.architectures) }}
steps:
- name: Checkout the repository
uses: actions/checkout@v3.1.0
uses: actions/checkout@v3.3.0
- name: Download nightly wheels of frontend
if: needs.init.outputs.channel == 'dev'
@@ -113,9 +113,20 @@ jobs:
workflow_conclusion: success
name: wheels
- name: Download nightly wheels of intents
if: needs.init.outputs.channel == 'dev'
uses: dawidd6/action-download-artifact@v2
with:
github_token: ${{secrets.GITHUB_TOKEN}}
repo: home-assistant/intents
branch: main
workflow: nightly.yaml
workflow_conclusion: success
name: package
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
if: needs.init.outputs.channel == 'dev'
uses: actions/setup-python@v4.3.0
uses: actions/setup-python@v4.5.0
with:
python-version: ${{ env.DEFAULT_PYTHON }}
@@ -140,6 +151,24 @@ jobs:
python -m script.gen_requirements_all
fi
if [[ "$(ls home_assistant_intents*.whl)" =~ ^home_assistant_intents-(.*)-py3-none-any.whl$ ]]; then
echo "Found intents wheel, setting version to: ${BASH_REMATCH[1]}"
yq \
--inplace e -o json \
'del(.requirements[] | select(contains("home-assistant-intents")))' \
homeassistant/components/conversation/manifest.json
intents_version="${BASH_REMATCH[1]}" yq \
--inplace e -o json \
'.requirements += ["home-assistant-intents=="+env(intents_version)]' \
homeassistant/components/conversation/manifest.json
sed -i "s|home-assistant-intents==.*|home-assistant-intents==${BASH_REMATCH[1]}|" \
homeassistant/package_constraints.txt
python -m script.gen_requirements_all
fi
- name: Write meta info file
shell: bash
run: |
@@ -198,7 +227,7 @@ jobs:
- yellow
steps:
- name: Checkout the repository
uses: actions/checkout@v3.1.0
uses: actions/checkout@v3.3.0
- name: Set build additional args
run: |
@@ -241,7 +270,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout the repository
uses: actions/checkout@v3.1.0
uses: actions/checkout@v3.3.0
- name: Initialize git
uses: home-assistant/actions/helpers/git-init@master
@@ -280,7 +309,7 @@ jobs:
- "homeassistant"
steps:
- name: Checkout the repository
uses: actions/checkout@v3.1.0
uses: actions/checkout@v3.3.0
- name: Login to DockerHub
if: matrix.registry == 'homeassistant'

View File

@@ -18,13 +18,22 @@ on:
description: "Skip pytest"
default: false
type: boolean
pylint-only:
description: "Only run pylint"
default: false
type: boolean
mypy-only:
description: "Only run mypy"
default: false
type: boolean
env:
CACHE_VERSION: 3
PIP_CACHE_VERSION: 3
HA_SHORT_VERSION: 2022.12
DEFAULT_PYTHON: 3.9
ALL_PYTHON_VERSIONS: "['3.9', '3.10']"
MYPY_CACHE_VERSION: 3
HA_SHORT_VERSION: 2023.3
DEFAULT_PYTHON: "3.10"
ALL_PYTHON_VERSIONS: "['3.10']"
PRE_COMMIT_CACHE: ~/.cache/pre-commit
PIP_CACHE: /tmp/pip-cache
SQLALCHEMY_WARN_20: 1
@@ -56,7 +65,7 @@ jobs:
runs-on: ubuntu-20.04
steps:
- name: Check out code from GitHub
uses: actions/checkout@v3.1.0
uses: actions/checkout@v3.3.0
- name: Generate partial Python venv restore key
id: generate_python_cache_key
run: >-
@@ -163,20 +172,23 @@ jobs:
pre-commit:
name: Prepare pre-commit base
runs-on: ubuntu-20.04
if: |
github.event.inputs.pylint-only != 'true'
&& github.event.inputs.mypy-only != 'true'
needs:
- info
steps:
- name: Check out code from GitHub
uses: actions/checkout@v3.1.0
uses: actions/checkout@v3.3.0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
id: python
uses: actions/setup-python@v4.3.0
uses: actions/setup-python@v4.5.0
with:
python-version: ${{ env.DEFAULT_PYTHON }}
check-latest: true
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache@v3.0.11
uses: actions/cache@v3.2.4
with:
path: venv
key: >-
@@ -191,7 +203,7 @@ jobs:
pip install "$(cat requirements_test.txt | grep pre-commit)"
- name: Restore pre-commit environment from cache
id: cache-precommit
uses: actions/cache@v3.0.11
uses: actions/cache@v3.2.4
with:
path: ${{ env.PRE_COMMIT_CACHE }}
key: >-
@@ -211,39 +223,31 @@ jobs:
- pre-commit
steps:
- name: Check out code from GitHub
uses: actions/checkout@v3.1.0
uses: actions/checkout@v3.3.0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v4.3.0
uses: actions/setup-python@v4.5.0
id: python
with:
python-version: ${{ env.DEFAULT_PYTHON }}
check-latest: true
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache@v3.0.11
uses: actions/cache/restore@v3.2.4
with:
path: venv
fail-on-cache-miss: true
key: >-
${{ runner.os }}-${{ steps.python.outputs.python-version }}-venv-${{
needs.info.outputs.pre-commit_cache_key }}
- name: Fail job if Python cache restore failed
if: steps.cache-venv.outputs.cache-hit != 'true'
run: |
echo "Failed to restore Python virtual environment from cache"
exit 1
- name: Restore pre-commit environment from cache
id: cache-precommit
uses: actions/cache@v3.0.11
uses: actions/cache/restore@v3.2.4
with:
path: ${{ env.PRE_COMMIT_CACHE }}
fail-on-cache-miss: true
key: >-
${{ runner.os }}-${{ steps.python.outputs.python-version }}-${{
needs.info.outputs.pre-commit_cache_key }}
- name: Fail job if pre-commit cache restore failed
if: steps.cache-precommit.outputs.cache-hit != 'true'
run: |
echo "Failed to restore pre-commit environment from cache"
exit 1
- name: Run black (fully)
if: needs.info.outputs.test_full_suite == 'true'
run: |
@@ -255,7 +259,7 @@ jobs:
run: |
. venv/bin/activate
shopt -s globstar
pre-commit run --hook-stage manual black --files {homeassistant,tests}/components/${{ needs.info.outputs.integrations_glob }}/**/* --show-diff-on-failure
pre-commit run --hook-stage manual black --files {homeassistant,tests}/components/${{ needs.info.outputs.integrations_glob }}/{*,**/*} --show-diff-on-failure
lint-flake8:
name: Check flake8
@@ -265,39 +269,31 @@ jobs:
- pre-commit
steps:
- name: Check out code from GitHub
uses: actions/checkout@v3.1.0
uses: actions/checkout@v3.3.0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v4.3.0
uses: actions/setup-python@v4.5.0
id: python
with:
python-version: ${{ env.DEFAULT_PYTHON }}
check-latest: true
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache@v3.0.11
uses: actions/cache/restore@v3.2.4
with:
path: venv
fail-on-cache-miss: true
key: >-
${{ runner.os }}-${{ steps.python.outputs.python-version }}-venv-${{
needs.info.outputs.pre-commit_cache_key }}
- name: Fail job if Python cache restore failed
if: steps.cache-venv.outputs.cache-hit != 'true'
run: |
echo "Failed to restore Python virtual environment from cache"
exit 1
- name: Restore pre-commit environment from cache
id: cache-precommit
uses: actions/cache@v3.0.11
uses: actions/cache/restore@v3.2.4
with:
path: ${{ env.PRE_COMMIT_CACHE }}
fail-on-cache-miss: true
key: >-
${{ runner.os }}-${{ steps.python.outputs.python-version }}-${{
needs.info.outputs.pre-commit_cache_key }}
- name: Fail job if pre-commit cache restore failed
if: steps.cache-precommit.outputs.cache-hit != 'true'
run: |
echo "Failed to restore pre-commit environment from cache"
exit 1
- name: Register flake8 problem matcher
run: |
echo "::add-matcher::.github/workflows/matchers/flake8.json"
@@ -312,7 +308,56 @@ jobs:
run: |
. venv/bin/activate
shopt -s globstar
pre-commit run --hook-stage manual flake8 --files {homeassistant,tests}/components/${{ needs.info.outputs.integrations_glob }}/**/*
pre-commit run --hook-stage manual flake8 --files {homeassistant,tests}/components/${{ needs.info.outputs.integrations_glob }}/{*,**/*}
lint-ruff:
name: Check ruff
runs-on: ubuntu-latest
needs:
- info
- pre-commit
steps:
- name: Check out code from GitHub
uses: actions/checkout@v3.3.0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v4.5.0
id: python
with:
python-version: ${{ env.DEFAULT_PYTHON }}
check-latest: true
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache/restore@v3.2.4
with:
path: venv
fail-on-cache-miss: true
key: >-
${{ runner.os }}-${{ steps.python.outputs.python-version }}-venv-${{
needs.info.outputs.pre-commit_cache_key }}
- name: Restore pre-commit environment from cache
id: cache-precommit
uses: actions/cache/restore@v3.2.4
with:
path: ${{ env.PRE_COMMIT_CACHE }}
fail-on-cache-miss: true
key: >-
${{ runner.os }}-${{ steps.python.outputs.python-version }}-${{
needs.info.outputs.pre-commit_cache_key }}
- name: Register ruff problem matcher
run: |
echo "::add-matcher::.github/workflows/matchers/ruff.json"
- name: Run ruff (fully)
if: needs.info.outputs.test_full_suite == 'true'
run: |
. venv/bin/activate
pre-commit run --hook-stage manual ruff --all-files
- name: Run ruff (partially)
if: needs.info.outputs.test_full_suite == 'false'
shell: bash
run: |
. venv/bin/activate
shopt -s globstar
pre-commit run --hook-stage manual ruff --files {homeassistant,tests}/components/${{ needs.info.outputs.integrations_glob }}/{*,**/*}
lint-isort:
name: Check isort
@@ -322,39 +367,31 @@ jobs:
- pre-commit
steps:
- name: Check out code from GitHub
uses: actions/checkout@v3.1.0
uses: actions/checkout@v3.3.0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v4.3.0
uses: actions/setup-python@v4.5.0
id: python
with:
python-version: ${{ env.DEFAULT_PYTHON }}
check-latest: true
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache@v3.0.11
uses: actions/cache/restore@v3.2.4
with:
path: venv
fail-on-cache-miss: true
key: >-
${{ runner.os }}-${{ steps.python.outputs.python-version }}-venv-${{
needs.info.outputs.pre-commit_cache_key }}
- name: Fail job if Python cache restore failed
if: steps.cache-venv.outputs.cache-hit != 'true'
run: |
echo "Failed to restore Python virtual environment from cache"
exit 1
- name: Restore pre-commit environment from cache
id: cache-precommit
uses: actions/cache@v3.0.11
uses: actions/cache/restore@v3.2.4
with:
path: ${{ env.PRE_COMMIT_CACHE }}
fail-on-cache-miss: true
key: >-
${{ runner.os }}-${{ steps.python.outputs.python-version }}-${{
needs.info.outputs.pre-commit_cache_key }}
- name: Fail job if pre-commit cache restore failed
if: steps.cache-precommit.outputs.cache-hit != 'true'
run: |
echo "Failed to restore pre-commit environment from cache"
exit 1
- name: Run isort
run: |
. venv/bin/activate
@@ -368,39 +405,31 @@ jobs:
- pre-commit
steps:
- name: Check out code from GitHub
uses: actions/checkout@v3.1.0
uses: actions/checkout@v3.3.0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v4.3.0
uses: actions/setup-python@v4.5.0
id: python
with:
python-version: ${{ env.DEFAULT_PYTHON }}
check-latest: true
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache@v3.0.11
uses: actions/cache/restore@v3.2.4
with:
path: venv
fail-on-cache-miss: true
key: >-
${{ runner.os }}-${{ steps.python.outputs.python-version }}-venv-${{
needs.info.outputs.pre-commit_cache_key }}
- name: Fail job if Python cache restore failed
if: steps.cache-venv.outputs.cache-hit != 'true'
run: |
echo "Failed to restore Python virtual environment from cache"
exit 1
- name: Restore pre-commit environment from cache
id: cache-precommit
uses: actions/cache@v3.0.11
uses: actions/cache/restore@v3.2.4
with:
path: ${{ env.PRE_COMMIT_CACHE }}
fail-on-cache-miss: true
key: >-
${{ runner.os }}-${{ steps.python.outputs.python-version }}-${{
needs.info.outputs.pre-commit_cache_key }}
- name: Fail job if pre-commit cache restore failed
if: steps.cache-precommit.outputs.cache-hit != 'true'
run: |
echo "Failed to restore pre-commit environment from cache"
exit 1
- name: Run pyupgrade (fully)
if: needs.info.outputs.test_full_suite == 'true'
@@ -413,7 +442,7 @@ jobs:
run: |
. venv/bin/activate
shopt -s globstar
pre-commit run --hook-stage manual pyupgrade --files {homeassistant,tests}/components/${{ needs.info.outputs.integrations_glob }}/**/* --show-diff-on-failure
pre-commit run --hook-stage manual pyupgrade --files {homeassistant,tests}/components/${{ needs.info.outputs.integrations_glob }}/{*,**/*} --show-diff-on-failure
- name: Register yamllint problem matcher
run: |
@@ -442,7 +471,7 @@ jobs:
shell: bash
run: |
. venv/bin/activate
pre-commit run --hook-stage manual prettier --files {homeassistant,tests}/components/${{ needs.info.outputs.integrations_glob }}/**/*
pre-commit run --hook-stage manual prettier --files {homeassistant,tests}/components/${{ needs.info.outputs.integrations_glob }}/{*,**/*}
- name: Register check executables problem matcher
run: |
@@ -483,7 +512,7 @@ jobs:
run: |
. venv/bin/activate
shopt -s globstar
pre-commit run --hook-stage manual bandit --files {homeassistant,tests}/components/${{ needs.info.outputs.integrations_glob }}/**/* --show-diff-on-failure
pre-commit run --hook-stage manual bandit --files {homeassistant,tests}/components/${{ needs.info.outputs.integrations_glob }}/{*,**/*} --show-diff-on-failure
base:
name: Prepare dependencies
@@ -495,10 +524,10 @@ jobs:
python-version: ${{ fromJSON(needs.info.outputs.python_versions) }}
steps:
- name: Check out code from GitHub
uses: actions/checkout@v3.1.0
uses: actions/checkout@v3.3.0
- name: Set up Python ${{ matrix.python-version }}
id: python
uses: actions/setup-python@v4.3.0
uses: actions/setup-python@v4.5.0
with:
python-version: ${{ matrix.python-version }}
check-latest: true
@@ -509,7 +538,7 @@ jobs:
env.HA_SHORT_VERSION }}-$(date -u '+%Y-%m-%dT%H:%M:%s')" >> $GITHUB_OUTPUT
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache@v3.0.11
uses: actions/cache@v3.2.4
with:
path: venv
key: >-
@@ -517,7 +546,7 @@ jobs:
needs.info.outputs.python_cache_key }}
- name: Restore pip wheel cache
if: steps.cache-venv.outputs.cache-hit != 'true'
uses: actions/cache@v3.0.11
uses: actions/cache@v3.2.4
with:
path: ${{ env.PIP_CACHE }}
key: >-
@@ -554,31 +583,30 @@ jobs:
hassfest:
name: Check hassfest
runs-on: ubuntu-20.04
if: |
github.event.inputs.pylint-only != 'true'
&& github.event.inputs.mypy-only != 'true'
needs:
- info
- base
steps:
- name: Check out code from GitHub
uses: actions/checkout@v3.1.0
uses: actions/checkout@v3.3.0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
id: python
uses: actions/setup-python@v4.3.0
uses: actions/setup-python@v4.5.0
with:
python-version: ${{ env.DEFAULT_PYTHON }}
check-latest: true
- name: Restore full Python ${{ env.DEFAULT_PYTHON }} virtual environment
id: cache-venv
uses: actions/cache@v3.0.11
uses: actions/cache/restore@v3.2.4
with:
path: venv
fail-on-cache-miss: true
key: >-
${{ runner.os }}-${{ steps.python.outputs.python-version }}-${{
needs.info.outputs.python_cache_key }}
- name: Fail job if Python cache restore failed
if: steps.cache-venv.outputs.cache-hit != 'true'
run: |
echo "Failed to restore Python virtual environment from cache"
exit 1
- name: Run hassfest
run: |
. venv/bin/activate
@@ -587,31 +615,30 @@ jobs:
gen-requirements-all:
name: Check all requirements
runs-on: ubuntu-20.04
if: |
github.event.inputs.pylint-only != 'true'
&& github.event.inputs.mypy-only != 'true'
needs:
- info
- base
steps:
- name: Check out code from GitHub
uses: actions/checkout@v3.1.0
uses: actions/checkout@v3.3.0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
id: python
uses: actions/setup-python@v4.3.0
uses: actions/setup-python@v4.5.0
with:
python-version: ${{ env.DEFAULT_PYTHON }}
check-latest: true
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache@v3.0.11
uses: actions/cache/restore@v3.2.4
with:
path: venv
fail-on-cache-miss: true
key: >-
${{ runner.os }}-${{ steps.python.outputs.python-version }}-${{
needs.info.outputs.python_cache_key }}
- name: Fail job if Python cache restore failed
if: steps.cache-venv.outputs.cache-hit != 'true'
run: |
echo "Failed to restore Python virtual environment from cache"
exit 1
- name: Run gen_requirements_all.py
run: |
. venv/bin/activate
@@ -621,31 +648,30 @@ jobs:
name: Check pylint
runs-on: ubuntu-20.04
timeout-minutes: 20
if: |
github.event.inputs.mypy-only != 'true'
|| github.event.inputs.pylint-only == 'true'
needs:
- info
- base
steps:
- name: Check out code from GitHub
uses: actions/checkout@v3.1.0
uses: actions/checkout@v3.3.0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
id: python
uses: actions/setup-python@v4.3.0
uses: actions/setup-python@v4.5.0
with:
python-version: ${{ env.DEFAULT_PYTHON }}
check-latest: true
- name: Restore full Python ${{ env.DEFAULT_PYTHON }} virtual environment
id: cache-venv
uses: actions/cache@v3.0.11
uses: actions/cache/restore@v3.2.4
with:
path: venv
fail-on-cache-miss: true
key: >-
${{ runner.os }}-${{ steps.python.outputs.python-version }}-${{
needs.info.outputs.python_cache_key }}
- name: Fail job if Python cache restore failed
if: steps.cache-venv.outputs.cache-hit != 'true'
run: |
echo "Failed to restore Python virtual environment from cache"
exit 1
- name: Register pylint problem matcher
run: |
echo "::add-matcher::.github/workflows/matchers/pylint.json"
@@ -666,31 +692,48 @@ jobs:
mypy:
name: Check mypy
runs-on: ubuntu-20.04
if: |
github.event.inputs.pylint-only != 'true'
|| github.event.inputs.mypy-only == 'true'
needs:
- info
- base
steps:
- name: Check out code from GitHub
uses: actions/checkout@v3.1.0
uses: actions/checkout@v3.3.0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
id: python
uses: actions/setup-python@v4.3.0
uses: actions/setup-python@v4.5.0
with:
python-version: ${{ env.DEFAULT_PYTHON }}
check-latest: true
- name: Generate partial mypy restore key
id: generate-mypy-key
run: |
mypy_version=$(cat requirements_test.txt | grep mypy | cut -d '=' -f 3)
echo "version=$mypy_version" >> $GITHUB_OUTPUT
echo "key=mypy-${{ env.MYPY_CACHE_VERSION }}-$mypy_version-${{
env.HA_SHORT_VERSION }}-$(date -u '+%Y-%m-%dT%H:%M:%s')" >> $GITHUB_OUTPUT
- name: Restore full Python ${{ env.DEFAULT_PYTHON }} virtual environment
id: cache-venv
uses: actions/cache@v3.0.11
uses: actions/cache/restore@v3.2.4
with:
path: venv
fail-on-cache-miss: true
key: >-
${{ runner.os }}-${{ steps.python.outputs.python-version }}-${{
needs.info.outputs.python_cache_key }}
- name: Fail job if Python cache restore failed
if: steps.cache-venv.outputs.cache-hit != 'true'
run: |
echo "Failed to restore Python virtual environment from cache"
exit 1
- name: Restore mypy cache
uses: actions/cache@v3.2.4
with:
path: .mypy_cache
key: >-
${{ runner.os }}-${{ steps.python.outputs.python-version }}-${{
steps.generate-mypy-key.outputs.key }}
restore-keys: |
${{ runner.os }}-${{ steps.python.outputs.python-version }}-mypy-${{
env.MYPY_CACHE_VERSION }}-${{ steps.generate-mypy-key.outputs.version }}-${{
env.HA_SHORT_VERSION }}-
- name: Register mypy problem matcher
run: |
echo "::add-matcher::.github/workflows/matchers/mypy.json"
@@ -710,6 +753,9 @@ jobs:
pip-check:
runs-on: ubuntu-20.04
if: |
github.event.inputs.pylint-only != 'true'
&& github.event.inputs.mypy-only != 'true'
needs:
- info
- base
@@ -720,26 +766,22 @@ jobs:
name: Run pip check ${{ matrix.python-version }}
steps:
- name: Check out code from GitHub
uses: actions/checkout@v3.1.0
uses: actions/checkout@v3.3.0
- name: Set up Python ${{ matrix.python-version }}
id: python
uses: actions/setup-python@v4.3.0
uses: actions/setup-python@v4.5.0
with:
python-version: ${{ matrix.python-version }}
check-latest: true
- name: Restore full Python ${{ matrix.python-version }} virtual environment
id: cache-venv
uses: actions/cache@v3.0.11
uses: actions/cache/restore@v3.2.4
with:
path: venv
fail-on-cache-miss: true
key: >-
${{ runner.os }}-${{ steps.python.outputs.python-version }}-${{
needs.info.outputs.python_cache_key }}
- name: Fail job if Python cache restore failed
if: steps.cache-venv.outputs.cache-hit != 'true'
run: |
echo "Failed to restore Python virtual environment from cache"
exit 1
- name: Run pip check
run: |
. venv/bin/activate
@@ -750,6 +792,8 @@ jobs:
if: |
(github.event_name != 'push' || github.event.repository.full_name == 'home-assistant/core')
&& github.event.inputs.lint-only != 'true'
&& github.event.inputs.pylint-only != 'true'
&& github.event.inputs.mypy-only != 'true'
&& (needs.info.outputs.test_full_suite == 'true' || needs.info.outputs.tests_glob)
needs:
- info
@@ -757,8 +801,9 @@ jobs:
- gen-requirements-all
- hassfest
- lint-black
- lint-other
- lint-isort
- lint-other
- lint-ruff
- mypy
strategy:
fail-fast: false
@@ -775,25 +820,21 @@ jobs:
bluez \
ffmpeg
- name: Check out code from GitHub
uses: actions/checkout@v3.1.0
uses: actions/checkout@v3.3.0
- name: Set up Python ${{ matrix.python-version }}
id: python
uses: actions/setup-python@v4.3.0
uses: actions/setup-python@v4.5.0
with:
python-version: ${{ matrix.python-version }}
check-latest: true
- name: Restore full Python ${{ matrix.python-version }} virtual environment
id: cache-venv
uses: actions/cache@v3.0.11
uses: actions/cache/restore@v3.2.4
with:
path: venv
fail-on-cache-miss: true
key: ${{ runner.os }}-${{ steps.python.outputs.python-version }}-${{
needs.info.outputs.python_cache_key }}
- name: Fail job if Python cache restore failed
if: steps.cache-venv.outputs.cache-hit != 'true'
run: |
echo "Failed to restore Python virtual environment from cache"
exit 1
- name: Register Python problem matcher
run: |
echo "::add-matcher::.github/workflows/matchers/python.json"
@@ -852,7 +893,7 @@ jobs:
-p no:sugar \
tests/components/${{ matrix.group }}
- name: Upload coverage artifact
uses: actions/upload-artifact@v3.1.1
uses: actions/upload-artifact@v3.1.2
with:
name: coverage-${{ matrix.python-version }}-${{ matrix.group }}
path: coverage.xml
@@ -873,6 +914,8 @@ jobs:
if: |
(github.event_name != 'push' || github.event.repository.full_name == 'home-assistant/core')
&& github.event.inputs.lint-only != 'true'
&& github.event.inputs.pylint-only != 'true'
&& github.event.inputs.mypy-only != 'true'
&& needs.info.outputs.test_full_suite == 'true'
needs:
- info
@@ -880,8 +923,9 @@ jobs:
- gen-requirements-all
- hassfest
- lint-black
- lint-other
- lint-isort
- lint-other
- lint-ruff
- mypy
strategy:
fail-fast: false
@@ -898,25 +942,21 @@ jobs:
ffmpeg \
libmariadb-dev-compat
- name: Check out code from GitHub
uses: actions/checkout@v3.1.0
uses: actions/checkout@v3.3.0
- name: Set up Python ${{ matrix.python-version }}
id: python
uses: actions/setup-python@v4.3.0
uses: actions/setup-python@v4.5.0
with:
python-version: ${{ matrix.python-version }}
check-latest: true
- name: Restore full Python ${{ matrix.python-version }} virtual environment
id: cache-venv
uses: actions/cache@v3.0.11
uses: actions/cache/restore@v3.2.4
with:
path: venv
fail-on-cache-miss: true
key: ${{ runner.os }}-${{ steps.python.outputs.python-version }}-${{
needs.info.outputs.python_cache_key }}
- name: Fail job if Python cache restore failed
if: steps.cache-venv.outputs.cache-hit != 'true'
run: |
echo "Failed to restore Python virtual environment from cache"
exit 1
- name: Register Python problem matcher
run: |
echo "::add-matcher::.github/workflows/matchers/python.json"
@@ -954,7 +994,7 @@ jobs:
--dburl=mysql://root:password@127.0.0.1/homeassistant-test \
tests/components/recorder
- name: Upload coverage artifact
uses: actions/upload-artifact@v3.1.1
uses: actions/upload-artifact@v3.1.2
with:
name: coverage-${{ matrix.python-version }}-mariadb
path: coverage.xml
@@ -970,7 +1010,7 @@ jobs:
- pytest
steps:
- name: Check out code from GitHub
uses: actions/checkout@v3.1.0
uses: actions/checkout@v3.3.0
- name: Download all coverage artifacts
uses: actions/download-artifact@v3
- name: Upload coverage to Codecov (full coverage)

View File

@@ -10,7 +10,7 @@ jobs:
if: github.repository_owner == 'home-assistant'
runs-on: ubuntu-latest
steps:
- uses: dessant/lock-threads@v3
- uses: dessant/lock-threads@v4.0.0
with:
github-token: ${{ github.token }}
issue-inactive-days: "30"

30
.github/workflows/matchers/ruff.json vendored Normal file
View File

@@ -0,0 +1,30 @@
{
"problemMatcher": [
{
"owner": "ruff-error",
"severity": "error",
"pattern": [
{
"regexp": "^(.*):(\\d+):(\\d+):\\s([EF]\\d{3}\\s.*)$",
"file": 1,
"line": 2,
"column": 3,
"message": 4
}
]
},
{
"owner": "ruff-warning",
"severity": "warning",
"pattern": [
{
"regexp": "^(.*):(\\d+):(\\d+):\\s([CDNW]\\d{3}\\s.*)$",
"file": 1,
"line": 2,
"column": 3,
"message": 4
}
]
}
]
}

View File

@@ -11,34 +11,21 @@ jobs:
if: github.repository_owner == 'home-assistant'
runs-on: ubuntu-latest
steps:
# The 90 day stale policy
# The 90 day stale policy for PRs
# Used for:
# - Issues & PRs
# - PRs
# - No PRs marked as no-stale
# - No issues marked as no-stale or help-wanted
- name: 90 days stale issues & PRs policy
uses: actions/stale@v6.0.1
# - No issues (-1)
- name: 90 days stale PRs policy
uses: actions/stale@v7.0.0
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
days-before-stale: 90
days-before-close: 7
days-before-issue-stale: -1
days-before-issue-close: -1
operations-per-run: 150
remove-stale-when-updated: true
stale-issue-label: "stale"
exempt-issue-labels: "no-stale,help-wanted"
stale-issue-message: >
There hasn't been any activity on this issue recently. Due to the
high number of incoming GitHub notifications, we have to clean some
of the old issues, as many of them have already been resolved with
the latest updates.
Please make sure to update to the latest Home Assistant version and
check if that solves the issue. Let us know if that works for you by
adding a comment 👍
This issue has now been marked as stale and will be closed if no
further activity occurs. Thank you for your contributions.
stale-pr-label: "stale"
exempt-pr-labels: "no-stale"
stale-pr-message: >
@@ -48,30 +35,47 @@ jobs:
Thank you for your contributions.
# The 30 day stale policy for PRS
# Used for:
# - PRs
# - No PRs marked as no-stale or new-integrations
# - No issues (-1)
- name: 30 days stale PRs policy
uses: actions/stale@v6.0.1
# Generate a token for the GitHub App, we use this method to avoid
# hitting API limits for our GitHub actions + have a higher rate limit.
# This is only used for issues.
- name: Generate app token
id: token
# Pinned to a specific version of the action for security reasons
# v1.7.0
uses: tibdex/github-app-token@b62528385c34dbc9f38e5f4225ac829252d1ea92
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
days-before-stale: 30
days-before-close: 7
days-before-issue-close: -1
operations-per-run: 50
remove-stale-when-updated: true
stale-pr-label: "stale"
# Exempt new integrations, these often take more time.
# They will automatically be handled by the 90 day version above.
exempt-pr-labels: "no-stale,new-integration"
stale-pr-message: >
There hasn't been any activity on this pull request recently. This
pull request has been automatically marked as stale because of that
and will be closed if no further activity occurs within 7 days.
app_id: ${{ secrets.ISSUE_TRIAGE_APP_ID }}
private_key: ${{ secrets.ISSUE_TRIAGE_APP_PEM }}
Thank you for your contributions.
# The 90 day stale policy for issues
# Used for:
# - Issues
# - No issues marked as no-stale or help-wanted
# - No PRs (-1)
- name: 90 days stale issues
uses: actions/stale@v7.0.0
with:
repo-token: ${{ steps.token.outputs.token }}
days-before-stale: 90
days-before-close: 7
days-before-pr-stale: -1
days-before-pr-close: -1
operations-per-run: 250
remove-stale-when-updated: true
stale-issue-label: "stale"
exempt-issue-labels: "no-stale,help-wanted,needs-more-information"
stale-issue-message: >
There hasn't been any activity on this issue recently. Due to the
high number of incoming GitHub notifications, we have to clean some
of the old issues, as many of them have already been resolved with
the latest updates.
Please make sure to update to the latest Home Assistant version and
check if that solves the issue. Let us know if that works for you by
adding a comment 👍
This issue has now been marked as stale and will be closed if no
further activity occurs. Thank you for your contributions.
# The 30 day stale policy for issues
# Used for:
@@ -79,14 +83,15 @@ jobs:
# - No Issues marked as no-stale or help-wanted
# - No PRs (-1)
- name: Needs more information stale issues policy
uses: actions/stale@v6.0.1
uses: actions/stale@v7.0.0
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
repo-token: ${{ steps.token.outputs.token }}
only-labels: "needs-more-information"
days-before-stale: 14
days-before-close: 7
days-before-pr-stale: -1
days-before-pr-close: -1
operations-per-run: 50
operations-per-run: 250
remove-stale-when-updated: true
stale-issue-label: "stale"
exempt-issue-labels: "no-stale,help-wanted"

View File

@@ -12,7 +12,7 @@ on:
- "**strings.json"
env:
DEFAULT_PYTHON: 3.9
DEFAULT_PYTHON: "3.10"
jobs:
upload:
@@ -21,10 +21,10 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout the repository
uses: actions/checkout@v3.1.0
uses: actions/checkout@v3.3.0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v4.3.0
uses: actions/setup-python@v4.5.0
with:
python-version: ${{ env.DEFAULT_PYTHON }}
@@ -40,10 +40,10 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout the repository
uses: actions/checkout@v3.1.0
uses: actions/checkout@v3.3.0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v4.3.0
uses: actions/setup-python@v4.5.0
with:
python-version: ${{ env.DEFAULT_PYTHON }}

View File

@@ -22,7 +22,7 @@ jobs:
architectures: ${{ steps.info.outputs.architectures }}
steps:
- name: Checkout the repository
uses: actions/checkout@v3.1.0
uses: actions/checkout@v3.3.0
- name: Get information
id: info
@@ -57,13 +57,13 @@ jobs:
) > .env_file
- name: Upload env_file
uses: actions/upload-artifact@v3.1.1
uses: actions/upload-artifact@v3.1.2
with:
name: env_file
path: ./.env_file
- name: Upload requirements_diff
uses: actions/upload-artifact@v3.1.1
uses: actions/upload-artifact@v3.1.2
with:
name: requirements_diff
path: ./requirements_diff.txt
@@ -79,7 +79,7 @@ jobs:
arch: ${{ fromJson(needs.init.outputs.architectures) }}
steps:
- name: Checkout the repository
uses: actions/checkout@v3.1.0
uses: actions/checkout@v3.3.0
- name: Download env_file
uses: actions/download-artifact@v3
@@ -116,7 +116,7 @@ jobs:
arch: ${{ fromJson(needs.init.outputs.architectures) }}
steps:
- name: Checkout the repository
uses: actions/checkout@v3.1.0
uses: actions/checkout@v3.3.0
- name: Download env_file
uses: actions/download-artifact@v3
@@ -144,6 +144,14 @@ jobs:
sed -i "s|# opencv-python-headless|opencv-python-headless|g" ${requirement_file}
done
- name: Split requirements all
run: |
# We split requirements all into two different files.
# This is to prevent the build from running out of memory when
# resolving packages on 32-bits systems (like armhf, armv7).
split -l $(expr $(expr $(cat requirements_all.txt | wc -l) + 1) / 2) requirements_all.txt requirements_all.txt
- name: Adjust build env
run: |
if [ "${{ matrix.arch }}" = "i386" ]; then
@@ -159,7 +167,7 @@ jobs:
# Do not pin numpy in wheels building
sed -i "/numpy/d" homeassistant/package_constraints.txt
- name: Build wheels
- name: Build wheels (part 1)
uses: home-assistant/wheels@2022.10.1
with:
abi: cp310
@@ -172,4 +180,19 @@ jobs:
legacy: true
constraints: "homeassistant/package_constraints.txt"
requirements-diff: "requirements_diff.txt"
requirements: "requirements_all.txt"
requirements: "requirements_all.txtaa"
- name: Build wheels (part 2)
uses: home-assistant/wheels@2022.10.1
with:
abi: cp310
tag: musllinux_1_2
arch: ${{ matrix.arch }}
wheels-key: ${{ secrets.WHEELS_KEY }}
env-file: true
apk: "libexecinfo-dev;bluez-dev;libffi-dev;openssl-dev;glib-dev;eudev-dev;libxml2-dev;libxslt-dev;libpng-dev;libjpeg-turbo-dev;tiff-dev;cups-dev;gmp-dev;mpfr-dev;mpc1-dev;ffmpeg-dev;gammu-dev;yaml-dev;openblas-dev;fftw-dev;lapack-dev;gfortran;blas-dev;eigen-dev;freetype-dev;glew-dev;harfbuzz-dev;hdf5-dev;libdc1394-dev;libtbb-dev;mesa-dev;openexr-dev;openjpeg-dev"
skip-binary: aiohttp;grpcio
legacy: true
constraints: "homeassistant/package_constraints.txt"
requirements-diff: "requirements_diff.txt"
requirements: "requirements_all.txtab"

View File

@@ -1,9 +1,16 @@
repos:
- repo: https://github.com/charliermarsh/ruff-pre-commit
rev: v0.0.237
hooks:
- id: ruff
args:
- --fix
- repo: https://github.com/asottile/pyupgrade
rev: v3.2.2
rev: v3.3.1
hooks:
- id: pyupgrade
args: [--py39-plus]
args: [--py310-plus]
stages: [manual]
- repo: https://github.com/PyCQA/autoflake
rev: v2.0.0
hooks:
@@ -11,12 +18,12 @@ repos:
args:
- --in-place
- --remove-all-unused-imports
stages: [manual]
- repo: https://github.com/psf/black
rev: 22.10.0
rev: 22.12.0
hooks:
- id: black
args:
- --safe
- --quiet
files: ^((homeassistant|pylint|script|tests)/.+)?[^/]+\.py$
- repo: https://github.com/codespell-project/codespell
@@ -24,7 +31,7 @@ repos:
hooks:
- id: codespell
args:
- --ignore-words-list=additionals,alot,ba,bre,bund,datas,dof,dur,ether,farenheit,falsy,fo,haa,hass,hist,iam,iff,iif,incomfort,ines,ist,lightsensor,mut,nam,nd,pres,pullrequests,referer,resset,rime,ser,serie,sur,te,technik,ue,uint,unsecure,visability,wan,wanna,withing,zar
- --ignore-words-list=additionals,alle,alot,ba,bre,bund,datas,dof,dur,ether,farenheit,falsy,fo,haa,hass,hist,iam,iff,iif,incomfort,ines,ist,lightsensor,mut,nam,nd,pres,pullrequests,referer,resset,rime,ser,serie,sur,te,technik,ue,uint,unsecure,visability,wan,wanna,withing,zar
- --skip="./.*,*.csv,*.json"
- --quiet-level=2
exclude_types: [csv, json]
@@ -37,11 +44,12 @@ repos:
- pycodestyle==2.10.0
- pyflakes==3.0.1
- flake8-docstrings==1.6.0
- pydocstyle==6.1.1
- pydocstyle==6.2.3
- flake8-comprehensions==3.10.1
- flake8-noqa==1.3.0
- mccabe==0.7.0
files: ^(homeassistant|script|tests)/.+\.py$
exclude: docs/source/conf.py
stages: [manual]
- repo: https://github.com/PyCQA/bandit
rev: 1.7.4
hooks:
@@ -52,11 +60,11 @@ repos:
- --configfile=tests/bandit.yaml
files: ^(homeassistant|script|tests)/.+\.py$
- repo: https://github.com/PyCQA/isort
rev: 5.10.1
rev: 5.12.0
hooks:
- id: isort
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v3.2.0
rev: v4.4.0
hooks:
- id: check-executables-have-shebangs
stages: [manual]
@@ -85,7 +93,7 @@ repos:
- id: python-typing-update
stages: [manual]
args:
- --py39-plus
- --py310-plus
- --force
- --keep-updates
files: ^(homeassistant|tests|script)/.+\.py$

View File

@@ -56,7 +56,9 @@ homeassistant.components.amazon_polly.*
homeassistant.components.ambient_station.*
homeassistant.components.amcrest.*
homeassistant.components.ampio.*
homeassistant.components.analytics.*
homeassistant.components.anthemav.*
homeassistant.components.apcupsd.*
homeassistant.components.aqualogic.*
homeassistant.components.aseko_pool_live.*
homeassistant.components.asuswrt.*
@@ -67,6 +69,7 @@ homeassistant.components.backup.*
homeassistant.components.baf.*
homeassistant.components.bayesian.*
homeassistant.components.binary_sensor.*
homeassistant.components.bitcoin.*
homeassistant.components.blockchain.*
homeassistant.components.bluetooth.*
homeassistant.components.bluetooth_tracker.*
@@ -92,6 +95,7 @@ homeassistant.components.device_tracker.*
homeassistant.components.devolo_home_control.*
homeassistant.components.devolo_home_network.*
homeassistant.components.dhcp.*
homeassistant.components.diagnostics.*
homeassistant.components.dlna_dmr.*
homeassistant.components.dnsip.*
homeassistant.components.dsmr.*
@@ -108,6 +112,7 @@ homeassistant.components.fastdotcom.*
homeassistant.components.feedreader.*
homeassistant.components.file_upload.*
homeassistant.components.filesize.*
homeassistant.components.filter.*
homeassistant.components.fitbit.*
homeassistant.components.flux_led.*
homeassistant.components.forecast_solar.*
@@ -126,9 +131,15 @@ homeassistant.components.google_sheets.*
homeassistant.components.greeneye_monitor.*
homeassistant.components.group.*
homeassistant.components.guardian.*
homeassistant.components.hardkernel.*
homeassistant.components.hardware.*
homeassistant.components.here_travel_time.*
homeassistant.components.history.*
homeassistant.components.homeassistant.triggers.event
homeassistant.components.homeassistant_alerts.*
homeassistant.components.homeassistant_hardware.*
homeassistant.components.homeassistant_sky_connect.*
homeassistant.components.homeassistant_yellow.*
homeassistant.components.homekit
homeassistant.components.homekit.accessories
homeassistant.components.homekit.aidmanager
@@ -152,8 +163,8 @@ homeassistant.components.http.*
homeassistant.components.huawei_lte.*
homeassistant.components.hyperion.*
homeassistant.components.ibeacon.*
homeassistant.components.image.*
homeassistant.components.image_processing.*
homeassistant.components.image_upload.*
homeassistant.components.input_button.*
homeassistant.components.input_select.*
homeassistant.components.integration.*
@@ -164,10 +175,12 @@ homeassistant.components.jewish_calendar.*
homeassistant.components.kaleidescape.*
homeassistant.components.knx.*
homeassistant.components.kraken.*
homeassistant.components.lacrosse.*
homeassistant.components.lacrosse_view.*
homeassistant.components.lametric.*
homeassistant.components.laundrify.*
homeassistant.components.lcn.*
homeassistant.components.ld2410_ble.*
homeassistant.components.lidarr.*
homeassistant.components.lifx.*
homeassistant.components.light.*
@@ -179,6 +192,7 @@ homeassistant.components.logger.*
homeassistant.components.lookin.*
homeassistant.components.luftdaten.*
homeassistant.components.mailbox.*
homeassistant.components.mastodon.*
homeassistant.components.matter.*
homeassistant.components.media_player.*
homeassistant.components.media_source.*
@@ -189,6 +203,7 @@ homeassistant.components.mjpeg.*
homeassistant.components.modbus.*
homeassistant.components.modem_callerid.*
homeassistant.components.moon.*
homeassistant.components.mopeka.*
homeassistant.components.mqtt.*
homeassistant.components.mysensors.*
homeassistant.components.nam.*
@@ -210,6 +225,7 @@ homeassistant.components.onewire.*
homeassistant.components.open_meteo.*
homeassistant.components.openexchangerates.*
homeassistant.components.openuv.*
homeassistant.components.otbr.*
homeassistant.components.overkiz.*
homeassistant.components.peco.*
homeassistant.components.persistent_notification.*
@@ -218,10 +234,12 @@ homeassistant.components.powerwall.*
homeassistant.components.proximity.*
homeassistant.components.prusalink.*
homeassistant.components.pure_energie.*
homeassistant.components.purpleair.*
homeassistant.components.pvoutput.*
homeassistant.components.qnap_qsw.*
homeassistant.components.radarr.*
homeassistant.components.rainmachine.*
homeassistant.components.raspberry_pi.*
homeassistant.components.rdw.*
homeassistant.components.recollect_waste.*
homeassistant.components.recorder.*
@@ -234,18 +252,23 @@ homeassistant.components.ridwell.*
homeassistant.components.rituals_perfume_genie.*
homeassistant.components.roku.*
homeassistant.components.rpi_power.*
homeassistant.components.rss_feed_template.*
homeassistant.components.rtsp_to_webrtc.*
homeassistant.components.ruuvi_gateway.*
homeassistant.components.ruuvitag_ble.*
homeassistant.components.samsungtv.*
homeassistant.components.scene.*
homeassistant.components.schedule.*
homeassistant.components.scrape.*
homeassistant.components.select.*
homeassistant.components.senseme.*
homeassistant.components.sensibo.*
homeassistant.components.sensirion_ble.*
homeassistant.components.sensor.*
homeassistant.components.senz.*
homeassistant.components.sfr_box.*
homeassistant.components.shelly.*
homeassistant.components.simplepush.*
homeassistant.components.simplisafe.*
homeassistant.components.skybell.*
homeassistant.components.slack.*
@@ -253,6 +276,7 @@ homeassistant.components.sleepiq.*
homeassistant.components.smhi.*
homeassistant.components.snooz.*
homeassistant.components.sonarr.*
homeassistant.components.speedtestdotnet.*
homeassistant.components.ssdp.*
homeassistant.components.statistics.*
homeassistant.components.steamist.*

28
.vscode/tasks.json vendored
View File

@@ -27,6 +27,20 @@
},
"problemMatcher": []
},
{
"label": "Pytest (changed tests only)",
"type": "shell",
"command": "pytest --timeout=10 --picked",
"group": {
"kind": "test",
"isDefault": true
},
"presentation": {
"reveal": "always",
"panel": "new"
},
"problemMatcher": []
},
{
"label": "Flake8",
"type": "shell",
@@ -41,6 +55,20 @@
},
"problemMatcher": []
},
{
"label": "Ruff",
"type": "shell",
"command": "pre-commit run ruff --all-files",
"group": {
"kind": "test",
"isDefault": true
},
"presentation": {
"reveal": "always",
"panel": "new"
},
"problemMatcher": []
},
{
"label": "Pylint",
"type": "shell",

View File

@@ -55,6 +55,8 @@ build.json @home-assistant/supervisor
/tests/components/airtouch4/ @LonePurpleWolf
/homeassistant/components/airvisual/ @bachya
/tests/components/airvisual/ @bachya
/homeassistant/components/airvisual_pro/ @bachya
/tests/components/airvisual_pro/ @bachya
/homeassistant/components/airzone/ @Noltari
/tests/components/airzone/ @Noltari
/homeassistant/components/aladdin_connect/ @mkmer
@@ -65,8 +67,6 @@ build.json @home-assistant/supervisor
/tests/components/alert/ @home-assistant/core @frenck
/homeassistant/components/alexa/ @home-assistant/cloud @ochlocracy @jbouwh
/tests/components/alexa/ @home-assistant/cloud @ochlocracy @jbouwh
/homeassistant/components/almond/ @gcampax @balloob
/tests/components/almond/ @gcampax @balloob
/homeassistant/components/amberelectric/ @madpilot
/tests/components/amberelectric/ @madpilot
/homeassistant/components/ambiclimate/ @danielhiversen
@@ -154,6 +154,8 @@ build.json @home-assistant/supervisor
/homeassistant/components/bluesound/ @thrawnarn
/homeassistant/components/bluetooth/ @bdraco
/tests/components/bluetooth/ @bdraco
/homeassistant/components/bluetooth_adapters/ @bdraco
/tests/components/bluetooth_adapters/ @bdraco
/homeassistant/components/bmw_connected_drive/ @gerard33 @rikroe
/tests/components/bmw_connected_drive/ @gerard33 @rikroe
/homeassistant/components/bond/ @bdraco @prystupa @joshs85 @marciogranzotto
@@ -209,8 +211,8 @@ build.json @home-assistant/supervisor
/tests/components/configurator/ @home-assistant/core
/homeassistant/components/control4/ @lawtancool
/tests/components/control4/ @lawtancool
/homeassistant/components/conversation/ @home-assistant/core
/tests/components/conversation/ @home-assistant/core
/homeassistant/components/conversation/ @home-assistant/core @synesthesiam
/tests/components/conversation/ @home-assistant/core @synesthesiam
/homeassistant/components/coolmaster/ @OnFreund
/tests/components/coolmaster/ @OnFreund
/homeassistant/components/coronavirus/ @home-assistant/core
@@ -263,6 +265,8 @@ build.json @home-assistant/supervisor
/tests/components/discord/ @tkdrob
/homeassistant/components/discovery/ @home-assistant/core
/tests/components/discovery/ @home-assistant/core
/homeassistant/components/dlink/ @tkdrob
/tests/components/dlink/ @tkdrob
/homeassistant/components/dlna_dmr/ @StevenLooman @chishm
/tests/components/dlna_dmr/ @StevenLooman @chishm
/homeassistant/components/dlna_dms/ @chishm
@@ -311,6 +315,8 @@ build.json @home-assistant/supervisor
/tests/components/emulated_kasa/ @kbickar
/homeassistant/components/energy/ @home-assistant/core
/tests/components/energy/ @home-assistant/core
/homeassistant/components/energyzero/ @klaasnicolaas
/tests/components/energyzero/ @klaasnicolaas
/homeassistant/components/enigma2/ @fbradyirl
/homeassistant/components/enocean/ @bdurrer
/tests/components/enocean/ @bdurrer
@@ -329,6 +335,8 @@ build.json @home-assistant/supervisor
/tests/components/escea/ @lazdavila
/homeassistant/components/esphome/ @OttoWinter @jesserockz
/tests/components/esphome/ @OttoWinter @jesserockz
/homeassistant/components/eufylife_ble/ @bdr99
/tests/components/eufylife_ble/ @bdr99
/homeassistant/components/evil_genius_labs/ @balloob
/tests/components/evil_genius_labs/ @balloob
/homeassistant/components/evohome/ @zxdavb
@@ -428,13 +436,17 @@ build.json @home-assistant/supervisor
/tests/components/google/ @allenporter
/homeassistant/components/google_assistant/ @home-assistant/cloud
/tests/components/google_assistant/ @home-assistant/cloud
/homeassistant/components/google_assistant_sdk/ @tronikos
/tests/components/google_assistant_sdk/ @tronikos
/homeassistant/components/google_cloud/ @lufton
/homeassistant/components/google_mail/ @tkdrob
/tests/components/google_mail/ @tkdrob
/homeassistant/components/google_sheets/ @tkdrob
/tests/components/google_sheets/ @tkdrob
/homeassistant/components/google_travel_time/ @eifinger
/tests/components/google_travel_time/ @eifinger
/homeassistant/components/govee_ble/ @bdraco
/tests/components/govee_ble/ @bdraco
/homeassistant/components/govee_ble/ @bdraco @PierreAronnax
/tests/components/govee_ble/ @bdraco @PierreAronnax
/homeassistant/components/gpsd/ @fabaff
/homeassistant/components/gree/ @cmroche
/tests/components/gree/ @cmroche
@@ -495,8 +507,8 @@ build.json @home-assistant/supervisor
/tests/components/homematic/ @pvizeli @danielperna84
/homeassistant/components/homewizard/ @DCSBL
/tests/components/homewizard/ @DCSBL
/homeassistant/components/honeywell/ @rdfurman
/tests/components/honeywell/ @rdfurman
/homeassistant/components/honeywell/ @rdfurman @mkmer
/tests/components/honeywell/ @rdfurman @mkmer
/homeassistant/components/http/ @home-assistant/core
/tests/components/http/ @home-assistant/core
/homeassistant/components/huawei_lte/ @scop @fphammerle
@@ -525,10 +537,12 @@ build.json @home-assistant/supervisor
/tests/components/icloud/ @Quentame @nzapponi
/homeassistant/components/ign_sismologia/ @exxamalte
/tests/components/ign_sismologia/ @exxamalte
/homeassistant/components/image/ @home-assistant/core
/tests/components/image/ @home-assistant/core
/homeassistant/components/image_processing/ @home-assistant/core
/tests/components/image_processing/ @home-assistant/core
/homeassistant/components/image_upload/ @home-assistant/core
/tests/components/image_upload/ @home-assistant/core
/homeassistant/components/imap/ @engrbm87
/tests/components/imap/ @engrbm87
/homeassistant/components/incomfort/ @zxdavb
/homeassistant/components/influxdb/ @mdegat01
/tests/components/influxdb/ @mdegat01
@@ -552,8 +566,8 @@ build.json @home-assistant/supervisor
/tests/components/integration/ @dgomes
/homeassistant/components/intellifire/ @jeeftor
/tests/components/intellifire/ @jeeftor
/homeassistant/components/intent/ @home-assistant/core
/tests/components/intent/ @home-assistant/core
/homeassistant/components/intent/ @home-assistant/core @synesthesiam
/tests/components/intent/ @home-assistant/core @synesthesiam
/homeassistant/components/intesishome/ @jnimmo
/homeassistant/components/ios/ @robbiet480
/tests/components/ios/ @robbiet480
@@ -595,6 +609,8 @@ build.json @home-assistant/supervisor
/homeassistant/components/keyboard_remote/ @bendavid @lanrat
/homeassistant/components/keymitt_ble/ @spycle
/tests/components/keymitt_ble/ @spycle
/homeassistant/components/kitchen_sink/ @home-assistant/core
/tests/components/kitchen_sink/ @home-assistant/core
/homeassistant/components/kmtronic/ @dgomes
/tests/components/kmtronic/ @dgomes
/homeassistant/components/knx/ @Julius2342 @farmio @marvin-w
@@ -621,6 +637,8 @@ build.json @home-assistant/supervisor
/tests/components/laundrify/ @xLarry
/homeassistant/components/lcn/ @alengwenus
/tests/components/lcn/ @alengwenus
/homeassistant/components/ld2410_ble/ @930913
/tests/components/ld2410_ble/ @930913
/homeassistant/components/led_ble/ @bdraco
/tests/components/led_ble/ @bdraco
/homeassistant/components/lg_netcast/ @Drafteed
@@ -665,9 +683,8 @@ build.json @home-assistant/supervisor
/homeassistant/components/lyric/ @timmo001
/tests/components/lyric/ @timmo001
/homeassistant/components/mastodon/ @fabaff
/homeassistant/components/matrix/ @tinloaf
/homeassistant/components/matter/ @MartinHjelmare @marcelveldt
/tests/components/matter/ @MartinHjelmare @marcelveldt
/homeassistant/components/matter/ @home-assistant/matter
/tests/components/matter/ @home-assistant/matter
/homeassistant/components/mazda/ @bdr99
/tests/components/mazda/ @bdr99
/homeassistant/components/meater/ @Sotolotl @emontnemery
@@ -721,6 +738,8 @@ build.json @home-assistant/supervisor
/tests/components/monoprice/ @etsinko @OnFreund
/homeassistant/components/moon/ @fabaff @frenck
/tests/components/moon/ @fabaff @frenck
/homeassistant/components/mopeka/ @bdraco
/tests/components/mopeka/ @bdraco
/homeassistant/components/motion_blinds/ @starkillerOG
/tests/components/motion_blinds/ @starkillerOG
/homeassistant/components/motioneye/ @dermotduffy
@@ -798,8 +817,8 @@ build.json @home-assistant/supervisor
/tests/components/number/ @home-assistant/core @Shulyaka
/homeassistant/components/nut/ @bdraco @ollo69
/tests/components/nut/ @bdraco @ollo69
/homeassistant/components/nws/ @MatthewFlamm
/tests/components/nws/ @MatthewFlamm
/homeassistant/components/nws/ @MatthewFlamm @kamiyo
/tests/components/nws/ @MatthewFlamm @kamiyo
/homeassistant/components/nzbget/ @chriscla
/tests/components/nzbget/ @chriscla
/homeassistant/components/obihai/ @dshokouhi
@@ -821,6 +840,8 @@ build.json @home-assistant/supervisor
/tests/components/onvif/ @hunterjm
/homeassistant/components/open_meteo/ @frenck
/tests/components/open_meteo/ @frenck
/homeassistant/components/openai_conversation/ @balloob
/tests/components/openai_conversation/ @balloob
/homeassistant/components/openerz/ @misialq
/tests/components/openerz/ @misialq
/homeassistant/components/openexchangerates/ @MartinHjelmare
@@ -836,11 +857,13 @@ build.json @home-assistant/supervisor
/tests/components/openweathermap/ @fabaff @freekode @nzapponi
/homeassistant/components/opnsense/ @mtreinish
/tests/components/opnsense/ @mtreinish
/homeassistant/components/oralb/ @bdraco
/tests/components/oralb/ @bdraco
/homeassistant/components/oralb/ @bdraco @Lash-L
/tests/components/oralb/ @bdraco @Lash-L
/homeassistant/components/oru/ @bvlaicu
/homeassistant/components/overkiz/ @imicknl @vlebourl @tetienne
/tests/components/overkiz/ @imicknl @vlebourl @tetienne
/homeassistant/components/otbr/ @home-assistant/core
/tests/components/otbr/ @home-assistant/core
/homeassistant/components/overkiz/ @imicknl @vlebourl @tetienne @nyroDev
/tests/components/overkiz/ @imicknl @vlebourl @tetienne @nyroDev
/homeassistant/components/ovo_energy/ @timmo001
/tests/components/ovo_energy/ @timmo001
/homeassistant/components/p1_monitor/ @klaasnicolaas
@@ -873,8 +896,8 @@ build.json @home-assistant/supervisor
/tests/components/point/ @fredrike
/homeassistant/components/poolsense/ @haemishkyd
/tests/components/poolsense/ @haemishkyd
/homeassistant/components/powerwall/ @bdraco @jrester
/tests/components/powerwall/ @bdraco @jrester
/homeassistant/components/powerwall/ @bdraco @jrester @daniel-simpson
/tests/components/powerwall/ @bdraco @jrester @daniel-simpson
/homeassistant/components/profiler/ @bdraco
/tests/components/profiler/ @bdraco
/homeassistant/components/progettihwsw/ @ardaseremet
@@ -890,6 +913,8 @@ build.json @home-assistant/supervisor
/tests/components/ps4/ @ktnrg45
/homeassistant/components/pure_energie/ @klaasnicolaas
/tests/components/pure_energie/ @klaasnicolaas
/homeassistant/components/purpleair/ @bachya
/tests/components/purpleair/ @bachya
/homeassistant/components/push/ @dgomes
/tests/components/push/ @dgomes
/homeassistant/components/pushbullet/ @engrbm87
@@ -919,7 +944,8 @@ build.json @home-assistant/supervisor
/tests/components/radio_browser/ @frenck
/homeassistant/components/radiotherm/ @bdraco @vinnyfuria
/tests/components/radiotherm/ @bdraco @vinnyfuria
/homeassistant/components/rainbird/ @konikvranik
/homeassistant/components/rainbird/ @konikvranik @allenporter
/tests/components/rainbird/ @konikvranik @allenporter
/homeassistant/components/raincloud/ @vanstinator
/homeassistant/components/rainforest_eagle/ @gtdiehl @jcalbert @hastarin
/tests/components/rainforest_eagle/ @gtdiehl @jcalbert @hastarin
@@ -940,6 +966,8 @@ build.json @home-assistant/supervisor
/tests/components/remote/ @home-assistant/core
/homeassistant/components/renault/ @epenet
/tests/components/renault/ @epenet
/homeassistant/components/reolink/ @starkillerOG
/tests/components/reolink/ @starkillerOG
/homeassistant/components/repairs/ @home-assistant/core
/tests/components/repairs/ @home-assistant/core
/homeassistant/components/repetier/ @MTrab @ShadowBr0ther
@@ -971,8 +999,12 @@ build.json @home-assistant/supervisor
/tests/components/rtsp_to_webrtc/ @allenporter
/homeassistant/components/ruckus_unleashed/ @gabe565
/tests/components/ruckus_unleashed/ @gabe565
/homeassistant/components/ruuvi_gateway/ @akx
/tests/components/ruuvi_gateway/ @akx
/homeassistant/components/ruuvitag_ble/ @akx
/tests/components/ruuvitag_ble/ @akx
/homeassistant/components/rympro/ @OnFreund @elad-bar @maorcc
/tests/components/rympro/ @OnFreund @elad-bar @maorcc
/homeassistant/components/sabnzbd/ @shaiu
/tests/components/sabnzbd/ @shaiu
/homeassistant/components/safe_mode/ @home-assistant/core
@@ -1017,6 +1049,8 @@ build.json @home-assistant/supervisor
/tests/components/senz/ @milanmeu
/homeassistant/components/serial/ @fabaff
/homeassistant/components/seven_segments/ @fabaff
/homeassistant/components/sfr_box/ @epenet
/tests/components/sfr_box/ @epenet
/homeassistant/components/sharkiq/ @JeffResc @funkybunch @AritroSaha10
/tests/components/sharkiq/ @JeffResc @funkybunch @AritroSaha10
/homeassistant/components/shell_command/ @home-assistant/core
@@ -1098,6 +1132,8 @@ build.json @home-assistant/supervisor
/tests/components/srp_energy/ @briglx
/homeassistant/components/starline/ @anonym-tsk
/tests/components/starline/ @anonym-tsk
/homeassistant/components/starlink/ @boswelja
/tests/components/starlink/ @boswelja
/homeassistant/components/statistics/ @fabaff @ThomDietrich
/tests/components/statistics/ @fabaff @ThomDietrich
/homeassistant/components/steam_online/ @tkdrob
@@ -1107,6 +1143,8 @@ build.json @home-assistant/supervisor
/homeassistant/components/stiebel_eltron/ @fucm
/homeassistant/components/stookalert/ @fwestenberg @frenck
/tests/components/stookalert/ @fwestenberg @frenck
/homeassistant/components/stookwijzer/ @fwestenberg
/tests/components/stookwijzer/ @fwestenberg
/homeassistant/components/stream/ @hunterjm @uvjustin @allenporter
/tests/components/stream/ @hunterjm @uvjustin @allenporter
/homeassistant/components/stt/ @pvizeli
@@ -1127,8 +1165,8 @@ build.json @home-assistant/supervisor
/tests/components/switch_as_x/ @home-assistant/core
/homeassistant/components/switchbee/ @jafar-atili
/tests/components/switchbee/ @jafar-atili
/homeassistant/components/switchbot/ @bdraco @danielhiversen @RenierM26 @murtas @Eloston
/tests/components/switchbot/ @bdraco @danielhiversen @RenierM26 @murtas @Eloston
/homeassistant/components/switchbot/ @bdraco @danielhiversen @RenierM26 @murtas @Eloston @dsypniewski
/tests/components/switchbot/ @bdraco @danielhiversen @RenierM26 @murtas @Eloston @dsypniewski
/homeassistant/components/switcher_kis/ @tomerfi @thecode
/tests/components/switcher_kis/ @tomerfi @thecode
/homeassistant/components/switchmate/ @danielhiversen @qiz-li
@@ -1168,6 +1206,8 @@ build.json @home-assistant/supervisor
/homeassistant/components/thermopro/ @bdraco
/tests/components/thermopro/ @bdraco
/homeassistant/components/thethingsnetwork/ @fabaff
/homeassistant/components/thread/ @home-assistant/core
/tests/components/thread/ @home-assistant/core
/homeassistant/components/threshold/ @fabaff
/tests/components/threshold/ @fabaff
/homeassistant/components/tibber/ @danielhiversen
@@ -1284,14 +1324,14 @@ build.json @home-assistant/supervisor
/tests/components/weather/ @home-assistant/core
/homeassistant/components/webhook/ @home-assistant/core
/tests/components/webhook/ @home-assistant/core
/homeassistant/components/webostv/ @bendavid @thecode
/tests/components/webostv/ @bendavid @thecode
/homeassistant/components/webostv/ @thecode
/tests/components/webostv/ @thecode
/homeassistant/components/websocket_api/ @home-assistant/core
/tests/components/websocket_api/ @home-assistant/core
/homeassistant/components/wemo/ @esev
/tests/components/wemo/ @esev
/homeassistant/components/whirlpool/ @abmantis
/tests/components/whirlpool/ @abmantis
/homeassistant/components/whirlpool/ @abmantis @mkmer
/tests/components/whirlpool/ @abmantis @mkmer
/homeassistant/components/whois/ @frenck
/tests/components/whois/ @frenck
/homeassistant/components/wiffi/ @mampfes
@@ -1347,6 +1387,8 @@ build.json @home-assistant/supervisor
/tests/components/zeroconf/ @bdraco
/homeassistant/components/zerproc/ @emlove
/tests/components/zerproc/ @emlove
/homeassistant/components/zeversolar/ @kvanzuijlen
/tests/components/zeversolar/ @kvanzuijlen
/homeassistant/components/zha/ @dmulcahey @adminiuga @puddly
/tests/components/zha/ @dmulcahey @adminiuga @puddly
/homeassistant/components/zodiac/ @JulienTant
@@ -1356,8 +1398,8 @@ build.json @home-assistant/supervisor
/homeassistant/components/zoneminder/ @rohankapoorcom
/homeassistant/components/zwave_js/ @home-assistant/z-wave
/tests/components/zwave_js/ @home-assistant/z-wave
/homeassistant/components/zwave_me/ @lawfulchaos @Z-Wave-Me
/tests/components/zwave_me/ @lawfulchaos @Z-Wave-Me
/homeassistant/components/zwave_me/ @lawfulchaos @Z-Wave-Me @PoltoS
/tests/components/zwave_me/ @lawfulchaos @Z-Wave-Me @PoltoS
# Individual files
/homeassistant/components/demo/weather.py @fabaff

View File

@@ -5,28 +5,59 @@ FROM ${BUILD_FROM}
ENV \
S6_SERVICES_GRACETIME=220000
ARG QEMU_CPU
WORKDIR /usr/src
## Setup Home Assistant Core dependencies
COPY requirements.txt homeassistant/
COPY homeassistant/package_constraints.txt homeassistant/homeassistant/
RUN \
pip3 install --no-cache-dir --no-index --only-binary=:all: --find-links "${WHEELS_LINKS}" \
-r homeassistant/requirements.txt --use-deprecated=legacy-resolver
COPY requirements_all.txt home_assistant_frontend-* homeassistant/
pip3 install \
--no-cache-dir \
--no-index \
--only-binary=:all: \
--find-links "${WHEELS_LINKS}" \
--use-deprecated=legacy-resolver \
-r homeassistant/requirements.txt
COPY requirements_all.txt home_assistant_frontend-* home_assistant_intents-* homeassistant/
RUN \
if ls homeassistant/home_assistant_frontend*.whl 1> /dev/null 2>&1; then \
pip3 install --no-cache-dir --no-index homeassistant/home_assistant_frontend-*.whl; \
pip3 install \
--no-cache-dir \
--no-index \
homeassistant/home_assistant_frontend-*.whl; \
fi \
&& pip3 install --no-cache-dir --no-index --only-binary=:all: --find-links "${WHEELS_LINKS}" \
-r homeassistant/requirements_all.txt --use-deprecated=legacy-resolver
&& if ls homeassistant/home_assistant_intents*.whl 1> /dev/null 2>&1; then \
pip3 install \
--no-cache-dir \
--no-index \
homeassistant/home_assistant_intents-*.whl; \
fi \
&& \
LD_PRELOAD="/usr/local/lib/libjemalloc.so.2" \
MALLOC_CONF="background_thread:true,metadata_thp:auto,dirty_decay_ms:20000,muzzy_decay_ms:20000" \
pip3 install \
--no-cache-dir \
--no-index \
--only-binary=:all: \
--find-links "${WHEELS_LINKS}" \
--use-deprecated=legacy-resolver \
-r homeassistant/requirements_all.txt
## Setup Home Assistant Core
COPY . homeassistant/
RUN \
pip3 install --no-cache-dir --no-index --only-binary=:all: --find-links "${WHEELS_LINKS}" \
-e ./homeassistant --use-deprecated=legacy-resolver \
&& python3 -m compileall homeassistant/homeassistant
pip3 install \
--no-cache-dir \
--no-index \
--only-binary=:all: \
--find-links "${WHEELS_LINKS}" \
--use-deprecated=legacy-resolver \
-e ./homeassistant \
&& python3 -m compileall \
homeassistant/homeassistant
# Home Assistant S6-Overlay
COPY rootfs /

View File

@@ -1,4 +1,4 @@
FROM mcr.microsoft.com/vscode/devcontainers/python:0-3.9
FROM mcr.microsoft.com/vscode/devcontainers/python:0-3.10
SHELL ["/bin/bash", "-o", "pipefail", "-c"]

View File

@@ -6,19 +6,39 @@ coverage:
default:
target: 90
threshold: 0.09
config-flows:
required:
target: auto
threshold: 1
paths:
- homeassistant/components/*/config_flow.py
- homeassistant/components/*/device_action.py
- homeassistant/components/*/device_condition.py
- homeassistant/components/*/device_trigger.py
- homeassistant/components/*/diagnostics.py
- homeassistant/components/*/group.py
- homeassistant/components/*/intent.py
- homeassistant/components/*/logbook.py
- homeassistant/components/*/media_source.py
- homeassistant/components/*/recorder.py
- homeassistant/components/*/scene.py
patch:
default:
target: auto
config-flows:
required:
target: 100
threshold: 0
paths:
- homeassistant/components/*/config_flow.py
- homeassistant/components/*/device_action.py
- homeassistant/components/*/device_condition.py
- homeassistant/components/*/device_trigger.py
- homeassistant/components/*/diagnostics.py
- homeassistant/components/*/group.py
- homeassistant/components/*/intent.py
- homeassistant/components/*/logbook.py
- homeassistant/components/*/media_source.py
- homeassistant/components/*/recorder.py
- homeassistant/components/*/scene.py
comment: false
# To make partial tests possible,

View File

@@ -1,6 +1,5 @@
"""
Sphinx extension to add ReadTheDocs-style "Edit on GitHub" links to the
sidebar.
Sphinx extension for ReadTheDocs-style "Edit on GitHub" links on the sidebar.
Loosely based on https://github.com/astropy/astropy/pull/347
"""
@@ -12,6 +11,7 @@ __licence__ = "BSD (3 clause)"
def get_github_url(app, view, path):
"""Build the GitHub URL."""
return (
f"https://github.com/{app.config.edit_on_github_project}/"
f"{view}/{app.config.edit_on_github_branch}/"
@@ -20,6 +20,7 @@ def get_github_url(app, view, path):
def html_page_context(app, pagename, templatename, context, doctree):
"""Build the HTML page."""
if templatename != "page.html":
return
@@ -38,6 +39,7 @@ def html_page_context(app, pagename, templatename, context, doctree):
def setup(app):
"""Set up the app."""
app.add_config_value("edit_on_github_project", "", True)
app.add_config_value("edit_on_github_branch", "master", True)
app.add_config_value("edit_on_github_src_path", "", True) # 'eg' "docs/"

View File

@@ -1,21 +1,20 @@
#!/usr/bin/env python3
#
# Home-Assistant documentation build configuration file, created by
# sphinx-quickstart on Sun Aug 28 13:13:10 2016.
#
# This file is execfile()d with the current directory set to its
# containing dir.
#
# Note that not all possible configuration values are present in this
# autogenerated file.
#
# All configuration values have a default; values that are commented out
# serve to show the default.
"""Home Assistant documentation build configuration file.
This file is execfile()d with the current directory set to its
containing dir.
Note that not all possible configuration values are present in this
autogenerated file.
All configuration values have a default; values that are commented out
serve to show the default.
If extensions (or modules to document with autodoc) are in another directory,
add these directories to sys.path here. If the directory is relative to the
documentation root, use os.path.abspath to make it absolute, like shown here.
"""
# If extensions (or modules to document with autodoc) are in another directory,
# add these directories to sys.path here. If the directory is relative to the
# documentation root, use os.path.abspath to make it absolute, like shown here.
#
import inspect
import os
import sys
@@ -25,7 +24,7 @@ from homeassistant.const import __short_version__, __version__
PROJECT_NAME = "Home Assistant"
PROJECT_PACKAGE_NAME = "homeassistant"
PROJECT_AUTHOR = "The Home Assistant Authors"
PROJECT_COPYRIGHT = f" 2013-2020, {PROJECT_AUTHOR}"
PROJECT_COPYRIGHT = PROJECT_AUTHOR
PROJECT_LONG_DESCRIPTION = (
"Home Assistant is an open-source "
"home automation platform running on Python 3. "
@@ -110,17 +109,17 @@ def linkcode_resolve(domain, info):
for part in fullname.split("."):
try:
obj = getattr(obj, part)
except:
except Exception: # pylint: disable=broad-except
return None
try:
fn = inspect.getsourcefile(obj)
except:
except Exception: # pylint: disable=broad-except
fn = None
if not fn:
return None
try:
source, lineno = inspect.findsource(obj)
except:
except Exception: # pylint: disable=broad-except
lineno = None
if lineno:
linespec = "#L%d" % (lineno + 1)

View File

@@ -15,7 +15,10 @@ FAULT_LOG_FILENAME = "home-assistant.log.fault"
def validate_os() -> None:
"""Validate that Home Assistant is running in a supported operating system."""
if not sys.platform.startswith(("darwin", "linux")):
print("Home Assistant only supports Linux, OSX and Windows using WSL")
print(
"Home Assistant only supports Linux, OSX and Windows using WSL",
file=sys.stderr,
)
sys.exit(1)
@@ -24,14 +27,15 @@ def validate_python() -> None:
if sys.version_info[:3] < REQUIRED_PYTHON_VER:
print(
"Home Assistant requires at least Python "
f"{REQUIRED_PYTHON_VER[0]}.{REQUIRED_PYTHON_VER[1]}.{REQUIRED_PYTHON_VER[2]}"
f"{REQUIRED_PYTHON_VER[0]}.{REQUIRED_PYTHON_VER[1]}.{REQUIRED_PYTHON_VER[2]}",
file=sys.stderr,
)
sys.exit(1)
def ensure_config_path(config_dir: str) -> None:
"""Validate the configuration directory."""
# pylint: disable=import-outside-toplevel
# pylint: disable-next=import-outside-toplevel
from . import config as config_util
lib_dir = os.path.join(config_dir, "deps")
@@ -39,18 +43,23 @@ def ensure_config_path(config_dir: str) -> None:
# Test if configuration directory exists
if not os.path.isdir(config_dir):
if config_dir != config_util.get_default_config_dir():
if os.path.exists(config_dir):
reason = "is not a directory"
else:
reason = "does not exist"
print(
f"Fatal Error: Specified configuration directory {config_dir} "
"does not exist"
f"Fatal Error: Specified configuration directory {config_dir} {reason}",
file=sys.stderr,
)
sys.exit(1)
try:
os.mkdir(config_dir)
except OSError:
except OSError as ex:
print(
"Fatal Error: Unable to create default configuration "
f"directory {config_dir}"
f"directory {config_dir}: {ex}",
file=sys.stderr,
)
sys.exit(1)
@@ -58,14 +67,17 @@ def ensure_config_path(config_dir: str) -> None:
if not os.path.isdir(lib_dir):
try:
os.mkdir(lib_dir)
except OSError:
print(f"Fatal Error: Unable to create library directory {lib_dir}")
except OSError as ex:
print(
f"Fatal Error: Unable to create library directory {lib_dir}: {ex}",
file=sys.stderr,
)
sys.exit(1)
def get_arguments() -> argparse.Namespace:
"""Get parsed passed in arguments."""
# pylint: disable=import-outside-toplevel
# pylint: disable-next=import-outside-toplevel
from . import config as config_util
parser = argparse.ArgumentParser(
@@ -172,7 +184,7 @@ def main() -> int:
validate_os()
if args.script is not None:
# pylint: disable=import-outside-toplevel
# pylint: disable-next=import-outside-toplevel
from . import scripts
return scripts.run(args.script)
@@ -180,7 +192,7 @@ def main() -> int:
config_dir = os.path.abspath(os.path.join(os.getcwd(), args.config))
ensure_config_path(config_dir)
# pylint: disable=import-outside-toplevel
# pylint: disable-next=import-outside-toplevel
from . import runner
runtime_conf = runner.RuntimeConfig(

View File

@@ -5,7 +5,7 @@ import asyncio
from collections import OrderedDict
from collections.abc import Mapping
from datetime import timedelta
from typing import Any, Optional, cast
from typing import Any, cast
import jwt
@@ -24,7 +24,7 @@ EVENT_USER_UPDATED = "user_updated"
EVENT_USER_REMOVED = "user_removed"
_MfaModuleDict = dict[str, MultiFactorAuthModule]
_ProviderKey = tuple[str, Optional[str]]
_ProviderKey = tuple[str, str | None]
_ProviderDict = dict[_ProviderKey, AuthProvider]
@@ -87,7 +87,7 @@ class AuthManagerFlowManager(data_entry_flow.FlowManager):
async def async_create_flow(
self,
handler_key: Any,
handler_key: str,
*,
context: dict[str, Any] | None = None,
data: dict[str, Any] | None = None,
@@ -534,7 +534,8 @@ class AuthManager:
)
if provider is None:
raise InvalidProvider(
f"Auth provider {refresh_token.credential.auth_provider_type}, {refresh_token.credential.auth_provider_id} not available"
f"Auth provider {refresh_token.credential.auth_provider_type},"
f" {refresh_token.credential.auth_provider_id} not available"
)
return provider

View File

@@ -449,8 +449,10 @@ class AuthStore:
created_at = dt_util.parse_datetime(rt_dict["created_at"])
if created_at is None:
getLogger(__name__).error(
"Ignoring refresh token %(id)s with invalid created_at "
"%(created_at)s for user_id %(user_id)s",
(
"Ignoring refresh token %(id)s with invalid created_at "
"%(created_at)s for user_id %(user_id)s"
),
rt_dict,
)
continue
@@ -553,7 +555,9 @@ class AuthStore:
"client_icon": refresh_token.client_icon,
"token_type": refresh_token.token_type,
"created_at": refresh_token.created_at.isoformat(),
"access_token_expiration": refresh_token.access_token_expiration.total_seconds(),
"access_token_expiration": (
refresh_token.access_token_expiration.total_seconds()
),
"token": refresh_token.token,
"jwt_key": refresh_token.jwt_key,
"last_used_at": refresh_token.last_used_at.isoformat()

View File

@@ -116,9 +116,7 @@ class SetupFlow(data_entry_flow.FlowHandler):
if user_input:
result = await self._auth_module.async_setup_user(self._user_id, user_input)
return self.async_create_entry(
title=self._auth_module.name, data={"result": result}
)
return self.async_create_entry(data={"result": result})
return self.async_show_form(
step_id="init", data_schema=self._setup_schema, errors=errors

View File

@@ -26,7 +26,7 @@ from . import (
SetupFlow,
)
REQUIREMENTS = ["pyotp==2.7.0"]
REQUIREMENTS = ["pyotp==2.8.0"]
CONF_MESSAGE = "message"
@@ -330,7 +330,7 @@ class NotifySetupFlow(SetupFlow):
self._user_id,
{"notify_service": self._notify_service, "target": self._target},
)
return self.async_create_entry(title=self._auth_module.name, data={})
return self.async_create_entry(data={})
errors["base"] = "invalid_code"

View File

@@ -19,7 +19,7 @@ from . import (
SetupFlow,
)
REQUIREMENTS = ["pyotp==2.7.0", "PyQRCode==1.2.1"]
REQUIREMENTS = ["pyotp==2.8.0", "PyQRCode==1.2.1"]
CONFIG_SCHEMA = MULTI_FACTOR_AUTH_MODULE_SCHEMA.extend({}, extra=vol.PREVENT_EXTRA)
@@ -47,8 +47,10 @@ def _generate_qr_code(data: str) -> str:
.decode("ascii")
.replace("\n", "")
.replace(
'<?xml version="1.0" encoding="UTF-8"?>'
'<svg xmlns="http://www.w3.org/2000/svg"',
(
'<?xml version="1.0" encoding="UTF-8"?>'
'<svg xmlns="http://www.w3.org/2000/svg"'
),
"<svg",
)
)
@@ -206,9 +208,7 @@ class TotpSetupFlow(SetupFlow):
result = await self._auth_module.async_setup_user(
self._user_id, {"secret": self._ota_secret}
)
return self.async_create_entry(
title=self._auth_module.name, data={"result": result}
)
return self.async_create_entry(data={"result": result})
errors["base"] = "invalid_code"

View File

@@ -1,29 +1,28 @@
"""Common code for permissions."""
from collections.abc import Mapping
from typing import Union
# MyPy doesn't support recursion yet. So writing it out as far as we need.
ValueType = Union[
ValueType = (
# Example: entities.all = { read: true, control: true }
Mapping[str, bool],
bool,
None,
]
Mapping[str, bool]
| bool
| None
)
# Example: entities.domains = { light: … }
SubCategoryDict = Mapping[str, ValueType]
SubCategoryType = Union[SubCategoryDict, bool, None]
SubCategoryType = SubCategoryDict | bool | None
CategoryType = Union[
CategoryType = (
# Example: entities.domains
Mapping[str, SubCategoryType],
Mapping[str, SubCategoryType]
# Example: entities.all
Mapping[str, ValueType],
bool,
None,
]
| Mapping[str, ValueType]
| bool
| None
)
# Example: { entities: … }
PolicyType = Mapping[str, CategoryType]

View File

@@ -3,13 +3,13 @@ from __future__ import annotations
from collections.abc import Callable
from functools import wraps
from typing import Optional, cast
from typing import cast
from .const import SUBCAT_ALL
from .models import PermissionLookup
from .types import CategoryType, SubCategoryDict, ValueType
LookupFunc = Callable[[PermissionLookup, SubCategoryDict, str], Optional[ValueType]]
LookupFunc = Callable[[PermissionLookup, SubCategoryDict, str], ValueType | None]
SubCatLookupType = dict[str, LookupFunc]

View File

@@ -284,4 +284,4 @@ class LoginFlow(data_entry_flow.FlowHandler):
async def async_finish(self, flow_result: Any) -> FlowResult:
"""Handle the pass of login flow."""
return self.async_create_entry(title=self._auth_provider.name, data=flow_result)
return self.async_create_entry(data=flow_result)

View File

@@ -93,9 +93,11 @@ class Data:
self.is_legacy = True
logging.getLogger(__name__).warning(
"Home Assistant auth provider is running in legacy mode "
"because we detected usernames that are case-insensitive"
"equivalent. Please change the username: '%s'.",
(
"Home Assistant auth provider is running in legacy mode "
"because we detected usernames that are case-insensitive"
"equivalent. Please change the username: '%s'."
),
username,
)
@@ -108,9 +110,11 @@ class Data:
self.is_legacy = True
logging.getLogger(__name__).warning(
"Home Assistant auth provider is running in legacy mode "
"because we detected usernames that start or end in a "
"space. Please change the username: '%s'.",
(
"Home Assistant auth provider is running in legacy mode "
"because we detected usernames that start or end in a "
"space. Please change the username: '%s'."
),
username,
)

View File

@@ -14,7 +14,7 @@ from ipaddress import (
ip_address,
ip_network,
)
from typing import Any, Union, cast
from typing import Any, cast
import voluptuous as vol
@@ -27,8 +27,8 @@ from . import AUTH_PROVIDER_SCHEMA, AUTH_PROVIDERS, AuthProvider, LoginFlow
from .. import InvalidAuthError
from ..models import Credentials, RefreshToken, UserMeta
IPAddress = Union[IPv4Address, IPv6Address]
IPNetwork = Union[IPv4Network, IPv6Network]
IPAddress = IPv4Address | IPv6Address
IPNetwork = IPv4Network | IPv6Network
CONF_TRUSTED_NETWORKS = "trusted_networks"
CONF_TRUSTED_USERS = "trusted_users"

View File

@@ -8,7 +8,9 @@ from .util.async_ import protect_loop
def enable() -> None:
"""Enable the detection of blocking calls in the event loop."""
# Prevent urllib3 and requests doing I/O in event loop
HTTPConnection.putrequest = protect_loop(HTTPConnection.putrequest) # type: ignore[assignment]
HTTPConnection.putrequest = protect_loop( # type: ignore[assignment]
HTTPConnection.putrequest
)
# Prevent sleeping in event loop. Non-strict since 2022.02
time.sleep = protect_loop(time.sleep, strict=False)

View File

@@ -284,8 +284,7 @@ async def async_from_config_dict(
return None
except HomeAssistantError:
_LOGGER.error(
"Home Assistant core failed to initialize. "
"Further initialization aborted"
"Home Assistant core failed to initialize. Further initialization aborted"
)
return None
@@ -347,7 +346,7 @@ def async_enable_logging(
if not log_no_color:
try:
# pylint: disable=import-outside-toplevel
# pylint: disable-next=import-outside-toplevel
from colorlog import ColoredFormatter
# basicConfig must be called after importing colorlog in order to
@@ -386,7 +385,11 @@ def async_enable_logging(
)
threading.excepthook = lambda args: logging.getLogger(None).exception(
"Uncaught thread exception",
exc_info=(args.exc_type, args.exc_value, args.exc_traceback), # type: ignore[arg-type]
exc_info=( # type: ignore[arg-type]
args.exc_type,
args.exc_value,
args.exc_traceback,
),
)
# Log errors to a file if we have write access to file or config dir
@@ -404,7 +407,10 @@ def async_enable_logging(
not err_path_exists and os.access(err_dir, os.W_OK)
):
err_handler: logging.handlers.RotatingFileHandler | logging.handlers.TimedRotatingFileHandler
err_handler: (
logging.handlers.RotatingFileHandler
| logging.handlers.TimedRotatingFileHandler
)
if log_rotate_days:
err_handler = logging.handlers.TimedRotatingFileHandler(
err_log_path, when="midnight", backupCount=log_rotate_days
@@ -463,7 +469,10 @@ def _get_domains(hass: core.HomeAssistant, config: dict[str, Any]) -> set[str]:
async def _async_watch_pending_setups(hass: core.HomeAssistant) -> None:
"""Periodic log of setups that are pending for longer than LOG_SLOW_STARTUP_INTERVAL."""
"""Periodic log of setups that are pending.
Pending for longer than LOG_SLOW_STARTUP_INTERVAL.
"""
loop_count = 0
setup_started: dict[str, datetime] = hass.data[DATA_SETUP_STARTED]
previous_was_empty = True

View File

@@ -0,0 +1,5 @@
{
"domain": "airvisual",
"name": "AirVisual",
"integrations": ["airvisual", "airvisual_pro"]
}

View File

@@ -1,5 +1,5 @@
{
"domain": "amazon",
"name": "Amazon",
"integrations": ["alexa", "amazon_polly", "aws", "route53"]
"integrations": ["alexa", "amazon_polly", "aws", "fire_tv", "route53"]
}

View File

@@ -0,0 +1,6 @@
{
"domain": "eufy",
"name": "eufy",
"integrations": ["eufy", "eufylife_ble"],
"iot_standards": []
}

View File

@@ -3,8 +3,10 @@
"name": "Google",
"integrations": [
"google_assistant",
"google_assistant_sdk",
"google_cloud",
"google_domains",
"google_mail",
"google_maps",
"google_pubsub",
"google_sheets",

View File

@@ -3,10 +3,14 @@ from __future__ import annotations
from functools import partial
from abodepy import Abode, AbodeAutomation as AbodeAuto
from abodepy.devices import AbodeDevice as AbodeDev
from abodepy.exceptions import AbodeAuthenticationException, AbodeException
import abodepy.helpers.timeline as TIMELINE
from jaraco.abode.automation import Automation as AbodeAuto
from jaraco.abode.client import Client as Abode
from jaraco.abode.devices.base import Device as AbodeDev
from jaraco.abode.exceptions import (
AuthenticationException as AbodeAuthenticationException,
Exception as AbodeException,
)
from jaraco.abode.helpers.timeline import Groups as GROUPS
from requests.exceptions import ConnectTimeout, HTTPError
import voluptuous as vol
@@ -26,7 +30,7 @@ from homeassistant.exceptions import ConfigEntryAuthFailed, ConfigEntryNotReady
from homeassistant.helpers import config_validation as cv, entity
from homeassistant.helpers.dispatcher import dispatcher_send
from .const import ATTRIBUTION, CONF_POLLING, DEFAULT_CACHEDB, DOMAIN, LOGGER
from .const import ATTRIBUTION, CONF_POLLING, DOMAIN, LOGGER
SERVICE_SETTINGS = "change_setting"
SERVICE_CAPTURE_IMAGE = "capture_image"
@@ -82,7 +86,6 @@ async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool:
username = entry.data[CONF_USERNAME]
password = entry.data[CONF_PASSWORD]
polling = entry.data[CONF_POLLING]
cache = hass.config.path(DEFAULT_CACHEDB)
# For previous config entries where unique_id is None
if entry.unique_id is None:
@@ -92,7 +95,7 @@ async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool:
try:
abode = await hass.async_add_executor_job(
Abode, username, password, True, True, True, cache
Abode, username, password, True, True, True
)
except AbodeAuthenticationException as ex:
@@ -225,17 +228,17 @@ def setup_abode_events(hass: HomeAssistant) -> None:
hass.bus.fire(event, data)
events = [
TIMELINE.ALARM_GROUP,
TIMELINE.ALARM_END_GROUP,
TIMELINE.PANEL_FAULT_GROUP,
TIMELINE.PANEL_RESTORE_GROUP,
TIMELINE.AUTOMATION_GROUP,
TIMELINE.DISARM_GROUP,
TIMELINE.ARM_GROUP,
TIMELINE.ARM_FAULT_GROUP,
TIMELINE.TEST_GROUP,
TIMELINE.CAPTURE_GROUP,
TIMELINE.DEVICE_GROUP,
GROUPS.ALARM,
GROUPS.ALARM_END,
GROUPS.PANEL_FAULT,
GROUPS.PANEL_RESTORE,
GROUPS.AUTOMATION,
GROUPS.DISARM,
GROUPS.ARM,
GROUPS.ARM_FAULT,
GROUPS.TEST,
GROUPS.CAPTURE,
GROUPS.DEVICE,
]
for event in events:

View File

@@ -1,7 +1,7 @@
"""Support for Abode Security System alarm control panels."""
from __future__ import annotations
from abodepy.devices.alarm import AbodeAlarm as AbodeAl
from jaraco.abode.devices.alarm import Alarm as AbodeAl
import homeassistant.components.alarm_control_panel as alarm
from homeassistant.components.alarm_control_panel import AlarmControlPanelEntityFeature

View File

@@ -4,8 +4,8 @@ from __future__ import annotations
from contextlib import suppress
from typing import cast
from abodepy.devices.binary_sensor import AbodeBinarySensor as ABBinarySensor
import abodepy.helpers.constants as CONST
from jaraco.abode.devices.sensor import BinarySensor as ABBinarySensor
from jaraco.abode.helpers import constants as CONST
from homeassistant.components.binary_sensor import (
BinarySensorDeviceClass,

View File

@@ -4,9 +4,9 @@ from __future__ import annotations
from datetime import timedelta
from typing import Any, cast
from abodepy.devices import CONST, AbodeDevice as AbodeDev
from abodepy.devices.camera import AbodeCamera as AbodeCam
import abodepy.helpers.timeline as TIMELINE
from jaraco.abode.devices.base import Device as AbodeDev
from jaraco.abode.devices.camera import Camera as AbodeCam
from jaraco.abode.helpers import constants as CONST, timeline as TIMELINE
import requests
from requests.models import Response
@@ -30,7 +30,7 @@ async def async_setup_entry(
data: AbodeSystem = hass.data[DOMAIN]
async_add_entities(
AbodeCamera(data, device, TIMELINE.CAPTURE_IMAGE)
AbodeCamera(data, device, TIMELINE.CAPTURE_IMAGE) # pylint: disable=no-member
for device in data.abode.get_devices(generic_type=CONST.TYPE_CAMERA)
)

View File

@@ -5,9 +5,12 @@ from collections.abc import Mapping
from http import HTTPStatus
from typing import Any, cast
from abodepy import Abode
from abodepy.exceptions import AbodeAuthenticationException, AbodeException
from abodepy.helpers.errors import MFA_CODE_REQUIRED
from jaraco.abode.client import Client as Abode
from jaraco.abode.exceptions import (
AuthenticationException as AbodeAuthenticationException,
Exception as AbodeException,
)
from jaraco.abode.helpers.errors import MFA_CODE_REQUIRED
from requests.exceptions import ConnectTimeout, HTTPError
import voluptuous as vol
@@ -15,7 +18,7 @@ from homeassistant import config_entries
from homeassistant.const import CONF_PASSWORD, CONF_USERNAME
from homeassistant.data_entry_flow import FlowResult
from .const import CONF_POLLING, DEFAULT_CACHEDB, DOMAIN, LOGGER
from .const import CONF_POLLING, DOMAIN, LOGGER
CONF_MFA = "mfa_code"
@@ -35,7 +38,6 @@ class AbodeFlowHandler(config_entries.ConfigFlow, domain=DOMAIN):
vol.Required(CONF_MFA): str,
}
self._cache: str | None = None
self._mfa_code: str | None = None
self._password: str | None = None
self._polling: bool = False
@@ -43,12 +45,11 @@ class AbodeFlowHandler(config_entries.ConfigFlow, domain=DOMAIN):
async def _async_abode_login(self, step_id: str) -> FlowResult:
"""Handle login with Abode."""
self._cache = self.hass.config.path(DEFAULT_CACHEDB)
errors = {}
try:
await self.hass.async_add_executor_job(
Abode, self._username, self._password, True, False, False, self._cache
Abode, self._username, self._password, True, False, False
)
except AbodeException as ex:
@@ -77,12 +78,7 @@ class AbodeFlowHandler(config_entries.ConfigFlow, domain=DOMAIN):
"""Handle multi-factor authentication (MFA) login with Abode."""
try:
# Create instance to access login method for passing MFA code
abode = Abode(
auto_login=False,
get_devices=False,
get_automations=False,
cache_path=self._cache,
)
abode = Abode(auto_login=False, get_devices=False, get_automations=False)
await self.hass.async_add_executor_job(
abode.login, self._username, self._password, self._mfa_code
)

View File

@@ -6,5 +6,4 @@ LOGGER = logging.getLogger(__package__)
DOMAIN = "abode"
ATTRIBUTION = "Data provided by goabode.com"
DEFAULT_CACHEDB = "abodepy_cache.pickle"
CONF_POLLING = "polling"

View File

@@ -1,8 +1,8 @@
"""Support for Abode Security System covers."""
from typing import Any
from abodepy.devices.cover import AbodeCover as AbodeCV
import abodepy.helpers.constants as CONST
from jaraco.abode.devices.cover import Cover as AbodeCV
from jaraco.abode.helpers import constants as CONST
from homeassistant.components.cover import CoverEntity
from homeassistant.config_entries import ConfigEntry

View File

@@ -4,8 +4,8 @@ from __future__ import annotations
from math import ceil
from typing import Any
from abodepy.devices.light import AbodeLight as AbodeLT
import abodepy.helpers.constants as CONST
from jaraco.abode.devices.light import Light as AbodeLT
from jaraco.abode.helpers import constants as CONST
from homeassistant.components.light import (
ATTR_BRIGHTNESS,

View File

@@ -1,8 +1,8 @@
"""Support for the Abode Security System locks."""
from typing import Any
from abodepy.devices.lock import AbodeLock as AbodeLK
import abodepy.helpers.constants as CONST
from jaraco.abode.devices.lock import Lock as AbodeLK
from jaraco.abode.helpers import constants as CONST
from homeassistant.components.lock import LockEntity
from homeassistant.config_entries import ConfigEntry

View File

@@ -3,11 +3,11 @@
"name": "Abode",
"config_flow": true,
"documentation": "https://www.home-assistant.io/integrations/abode",
"requirements": ["abodepy==1.2.0"],
"requirements": ["jaraco.abode==3.2.1"],
"codeowners": ["@shred86"],
"homekit": {
"models": ["Abode", "Iota"]
},
"iot_class": "cloud_push",
"loggers": ["abodepy", "lomond"]
"loggers": ["jaraco.abode", "lomond"]
}

View File

@@ -3,7 +3,8 @@ from __future__ import annotations
from typing import cast
from abodepy.devices.sensor import CONST, AbodeSensor as AbodeSense
from jaraco.abode.devices.sensor import Sensor as AbodeSense
from jaraco.abode.helpers import constants as CONST
from homeassistant.components.sensor import (
SensorDeviceClass,

View File

@@ -3,7 +3,8 @@ from __future__ import annotations
from typing import Any, cast
from abodepy.devices.switch import CONST, AbodeSwitch as AbodeSW
from jaraco.abode.devices.switch import Switch as AbodeSW
from jaraco.abode.helpers import constants as CONST
from homeassistant.components.switch import SwitchEntity
from homeassistant.config_entries import ConfigEntry

View File

@@ -2,7 +2,7 @@
"config": {
"abort": {
"reauth_successful": "\u041f\u043e\u0432\u0442\u043e\u0440\u043d\u0430\u0442\u0430 \u0430\u0432\u0442\u0435\u043d\u0442\u0438\u043a\u0430\u0446\u0438\u044f \u0431\u0435\u0448\u0435 \u0443\u0441\u043f\u0435\u0448\u043d\u0430",
"single_instance_allowed": "\u0420\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0430 \u0435 \u0441\u0430\u043c\u043e \u0435\u0434\u043d\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f \u043d\u0430 Abode."
"single_instance_allowed": "\u0412\u0435\u0447\u0435 \u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u0430\u043d\u043e. \u0412\u044a\u0437\u043c\u043e\u0436\u043d\u0430 \u0435 \u0441\u0430\u043c\u043e \u0435\u0434\u043d\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f."
},
"error": {
"cannot_connect": "\u041d\u0435\u0443\u0441\u043f\u0435\u0445 \u043f\u0440\u0438 \u0441\u0432\u044a\u0440\u0437\u0432\u0430\u043d\u0435"

View File

@@ -28,7 +28,7 @@
"password": "Passwort",
"username": "E-Mail"
},
"title": "Gib deine Abode-Anmeldeinformationen ein"
"title": "Gib deine Abode Anmeldeinformationen ein"
}
}
}

View File

@@ -0,0 +1,12 @@
{
"config": {
"step": {
"user": {
"data": {
"password": "Slapta\u017eodis",
"username": "El. pa\u0161tas"
}
}
}
}
}

View File

@@ -5,7 +5,7 @@
"single_instance_allowed": "J\u00e1 configurado. Apenas uma \u00fanica configura\u00e7\u00e3o \u00e9 poss\u00edvel."
},
"error": {
"cannot_connect": "Falha na liga\u00e7\u00e3o",
"cannot_connect": "A liga\u00e7\u00e3o falhou",
"invalid_auth": "Autentica\u00e7\u00e3o inv\u00e1lida",
"invalid_mfa_code": "C\u00f3digo MFA inv\u00e1lido"
},
@@ -19,14 +19,14 @@
"reauth_confirm": {
"data": {
"password": "Palavra-passe",
"username": "Email"
"username": ""
},
"title": "Preencha as informa\u00e7\u00f5es de login de Abode"
},
"user": {
"data": {
"password": "Palavra-passe",
"username": "Email"
"username": ""
},
"title": "Preencha as informa\u00e7\u00f5es de login de Abode"
}

View File

@@ -1,6 +1,8 @@
"""Diagnostics support for AccuWeather."""
from __future__ import annotations
from typing import Any
from homeassistant.components.diagnostics import async_redact_data
from homeassistant.config_entries import ConfigEntry
from homeassistant.const import CONF_API_KEY, CONF_LATITUDE, CONF_LONGITUDE
@@ -14,7 +16,7 @@ TO_REDACT = {CONF_API_KEY, CONF_LATITUDE, CONF_LONGITUDE}
async def async_get_config_entry_diagnostics(
hass: HomeAssistant, config_entry: ConfigEntry
) -> dict:
) -> dict[str, Any]:
"""Return diagnostics for a config entry."""
coordinator: AccuWeatherDataUpdateCoordinator = hass.data[DOMAIN][
config_entry.entry_id

View File

@@ -2,7 +2,7 @@
"domain": "accuweather",
"name": "AccuWeather",
"documentation": "https://www.home-assistant.io/integrations/accuweather/",
"requirements": ["accuweather==0.4.0"],
"requirements": ["accuweather==0.5.0"],
"codeowners": ["@bieniu"],
"config_flow": true,
"quality_scale": "platinum",

View File

@@ -14,17 +14,13 @@ from homeassistant.components.sensor import (
from homeassistant.config_entries import ConfigEntry
from homeassistant.const import (
CONCENTRATION_PARTS_PER_CUBIC_METER,
LENGTH_FEET,
LENGTH_INCHES,
LENGTH_METERS,
LENGTH_MILLIMETERS,
PERCENTAGE,
SPEED_KILOMETERS_PER_HOUR,
SPEED_MILES_PER_HOUR,
TEMP_CELSIUS,
TEMP_FAHRENHEIT,
TIME_HOURS,
UV_INDEX,
UnitOfLength,
UnitOfSpeed,
UnitOfTemperature,
UnitOfTime,
UnitOfVolumetricFlux,
)
from homeassistant.core import HomeAssistant, callback
from homeassistant.helpers.entity_platform import AddEntitiesCallback
@@ -65,7 +61,8 @@ class AccuWeatherSensorDescription(
"""Class describing AccuWeather sensor entities."""
attr_fn: Callable[[dict[str, Any]], dict[str, StateType]] = lambda _: {}
unit_fn: Callable[[bool], str | None] = lambda _: None
metric_unit: str | None = None
us_customary_unit: str | None = None
FORECAST_SENSOR_TYPES: tuple[AccuWeatherSensorDescription, ...] = (
@@ -74,7 +71,7 @@ FORECAST_SENSOR_TYPES: tuple[AccuWeatherSensorDescription, ...] = (
icon="mdi:weather-cloudy",
name="Cloud cover day",
entity_registry_enabled_default=False,
unit_fn=lambda _: PERCENTAGE,
native_unit_of_measurement=PERCENTAGE,
value_fn=lambda data, _: cast(int, data),
),
AccuWeatherSensorDescription(
@@ -82,7 +79,7 @@ FORECAST_SENSOR_TYPES: tuple[AccuWeatherSensorDescription, ...] = (
icon="mdi:weather-cloudy",
name="Cloud cover night",
entity_registry_enabled_default=False,
unit_fn=lambda _: PERCENTAGE,
native_unit_of_measurement=PERCENTAGE,
value_fn=lambda data, _: cast(int, data),
),
AccuWeatherSensorDescription(
@@ -90,7 +87,7 @@ FORECAST_SENSOR_TYPES: tuple[AccuWeatherSensorDescription, ...] = (
icon="mdi:grass",
name="Grass pollen",
entity_registry_enabled_default=False,
unit_fn=lambda _: CONCENTRATION_PARTS_PER_CUBIC_METER,
native_unit_of_measurement=CONCENTRATION_PARTS_PER_CUBIC_METER,
value_fn=lambda data, _: cast(int, data[ATTR_VALUE]),
attr_fn=lambda data: {ATTR_LEVEL: data[ATTR_CATEGORY]},
),
@@ -98,7 +95,7 @@ FORECAST_SENSOR_TYPES: tuple[AccuWeatherSensorDescription, ...] = (
key="HoursOfSun",
icon="mdi:weather-partly-cloudy",
name="Hours of sun",
unit_fn=lambda _: TIME_HOURS,
native_unit_of_measurement=UnitOfTime.HOURS,
value_fn=lambda data, _: cast(float, data),
),
AccuWeatherSensorDescription(
@@ -106,7 +103,7 @@ FORECAST_SENSOR_TYPES: tuple[AccuWeatherSensorDescription, ...] = (
icon="mdi:blur",
name="Mold pollen",
entity_registry_enabled_default=False,
unit_fn=lambda _: CONCENTRATION_PARTS_PER_CUBIC_METER,
native_unit_of_measurement=CONCENTRATION_PARTS_PER_CUBIC_METER,
value_fn=lambda data, _: cast(int, data[ATTR_VALUE]),
attr_fn=lambda data: {ATTR_LEVEL: data[ATTR_CATEGORY]},
),
@@ -122,7 +119,7 @@ FORECAST_SENSOR_TYPES: tuple[AccuWeatherSensorDescription, ...] = (
key="Ragweed",
icon="mdi:sprout",
name="Ragweed pollen",
unit_fn=lambda _: CONCENTRATION_PARTS_PER_CUBIC_METER,
native_unit_of_measurement=CONCENTRATION_PARTS_PER_CUBIC_METER,
entity_registry_enabled_default=False,
value_fn=lambda data, _: cast(int, data[ATTR_VALUE]),
attr_fn=lambda data: {ATTR_LEVEL: data[ATTR_CATEGORY]},
@@ -131,14 +128,16 @@ FORECAST_SENSOR_TYPES: tuple[AccuWeatherSensorDescription, ...] = (
key="RealFeelTemperatureMax",
device_class=SensorDeviceClass.TEMPERATURE,
name="RealFeel temperature max",
unit_fn=lambda metric: TEMP_CELSIUS if metric else TEMP_FAHRENHEIT,
metric_unit=UnitOfTemperature.CELSIUS,
us_customary_unit=UnitOfTemperature.FAHRENHEIT,
value_fn=lambda data, _: cast(float, data[ATTR_VALUE]),
),
AccuWeatherSensorDescription(
key="RealFeelTemperatureMin",
device_class=SensorDeviceClass.TEMPERATURE,
name="RealFeel temperature min",
unit_fn=lambda metric: TEMP_CELSIUS if metric else TEMP_FAHRENHEIT,
metric_unit=UnitOfTemperature.CELSIUS,
us_customary_unit=UnitOfTemperature.FAHRENHEIT,
value_fn=lambda data, _: cast(float, data[ATTR_VALUE]),
),
AccuWeatherSensorDescription(
@@ -146,7 +145,8 @@ FORECAST_SENSOR_TYPES: tuple[AccuWeatherSensorDescription, ...] = (
device_class=SensorDeviceClass.TEMPERATURE,
name="RealFeel temperature shade max",
entity_registry_enabled_default=False,
unit_fn=lambda metric: TEMP_CELSIUS if metric else TEMP_FAHRENHEIT,
metric_unit=UnitOfTemperature.CELSIUS,
us_customary_unit=UnitOfTemperature.FAHRENHEIT,
value_fn=lambda data, _: cast(float, data[ATTR_VALUE]),
),
AccuWeatherSensorDescription(
@@ -154,28 +154,29 @@ FORECAST_SENSOR_TYPES: tuple[AccuWeatherSensorDescription, ...] = (
device_class=SensorDeviceClass.TEMPERATURE,
name="RealFeel temperature shade min",
entity_registry_enabled_default=False,
unit_fn=lambda metric: TEMP_CELSIUS if metric else TEMP_FAHRENHEIT,
metric_unit=UnitOfTemperature.CELSIUS,
us_customary_unit=UnitOfTemperature.FAHRENHEIT,
value_fn=lambda data, _: cast(float, data[ATTR_VALUE]),
),
AccuWeatherSensorDescription(
key="ThunderstormProbabilityDay",
icon="mdi:weather-lightning",
name="Thunderstorm probability day",
unit_fn=lambda _: PERCENTAGE,
native_unit_of_measurement=PERCENTAGE,
value_fn=lambda data, _: cast(int, data),
),
AccuWeatherSensorDescription(
key="ThunderstormProbabilityNight",
icon="mdi:weather-lightning",
name="Thunderstorm probability night",
unit_fn=lambda _: PERCENTAGE,
native_unit_of_measurement=PERCENTAGE,
value_fn=lambda data, _: cast(int, data),
),
AccuWeatherSensorDescription(
key="Tree",
icon="mdi:tree-outline",
name="Tree pollen",
unit_fn=lambda _: CONCENTRATION_PARTS_PER_CUBIC_METER,
native_unit_of_measurement=CONCENTRATION_PARTS_PER_CUBIC_METER,
entity_registry_enabled_default=False,
value_fn=lambda data, _: cast(int, data[ATTR_VALUE]),
attr_fn=lambda data: {ATTR_LEVEL: data[ATTR_CATEGORY]},
@@ -184,53 +185,45 @@ FORECAST_SENSOR_TYPES: tuple[AccuWeatherSensorDescription, ...] = (
key="UVIndex",
icon="mdi:weather-sunny",
name="UV index",
unit_fn=lambda _: UV_INDEX,
native_unit_of_measurement=UV_INDEX,
value_fn=lambda data, _: cast(int, data[ATTR_VALUE]),
attr_fn=lambda data: {ATTR_LEVEL: data[ATTR_CATEGORY]},
),
AccuWeatherSensorDescription(
key="WindGustDay",
device_class=SensorDeviceClass.WIND_SPEED,
icon="mdi:weather-windy",
name="Wind gust day",
entity_registry_enabled_default=False,
unit_fn=lambda metric: SPEED_KILOMETERS_PER_HOUR
if metric
else SPEED_MILES_PER_HOUR,
metric_unit=UnitOfSpeed.KILOMETERS_PER_HOUR,
us_customary_unit=UnitOfSpeed.MILES_PER_HOUR,
value_fn=lambda data, _: cast(float, data[ATTR_SPEED][ATTR_VALUE]),
attr_fn=lambda data: {"direction": data[ATTR_DIRECTION][ATTR_ENGLISH]},
),
AccuWeatherSensorDescription(
key="WindGustNight",
device_class=SensorDeviceClass.WIND_SPEED,
icon="mdi:weather-windy",
name="Wind gust night",
entity_registry_enabled_default=False,
unit_fn=lambda metric: SPEED_KILOMETERS_PER_HOUR
if metric
else SPEED_MILES_PER_HOUR,
metric_unit=UnitOfSpeed.KILOMETERS_PER_HOUR,
us_customary_unit=UnitOfSpeed.MILES_PER_HOUR,
value_fn=lambda data, _: cast(float, data[ATTR_SPEED][ATTR_VALUE]),
attr_fn=lambda data: {"direction": data[ATTR_DIRECTION][ATTR_ENGLISH]},
),
AccuWeatherSensorDescription(
key="WindDay",
device_class=SensorDeviceClass.WIND_SPEED,
icon="mdi:weather-windy",
name="Wind day",
unit_fn=lambda metric: SPEED_KILOMETERS_PER_HOUR
if metric
else SPEED_MILES_PER_HOUR,
metric_unit=UnitOfSpeed.KILOMETERS_PER_HOUR,
us_customary_unit=UnitOfSpeed.MILES_PER_HOUR,
value_fn=lambda data, _: cast(float, data[ATTR_SPEED][ATTR_VALUE]),
attr_fn=lambda data: {"direction": data[ATTR_DIRECTION][ATTR_ENGLISH]},
),
AccuWeatherSensorDescription(
key="WindNight",
device_class=SensorDeviceClass.WIND_SPEED,
icon="mdi:weather-windy",
name="Wind night",
unit_fn=lambda metric: SPEED_KILOMETERS_PER_HOUR
if metric
else SPEED_MILES_PER_HOUR,
metric_unit=UnitOfSpeed.KILOMETERS_PER_HOUR,
us_customary_unit=UnitOfSpeed.MILES_PER_HOUR,
value_fn=lambda data, _: cast(float, data[ATTR_SPEED][ATTR_VALUE]),
attr_fn=lambda data: {"direction": data[ATTR_DIRECTION][ATTR_ENGLISH]},
),
@@ -243,7 +236,8 @@ SENSOR_TYPES: tuple[AccuWeatherSensorDescription, ...] = (
name="Apparent temperature",
entity_registry_enabled_default=False,
state_class=SensorStateClass.MEASUREMENT,
unit_fn=lambda metric: TEMP_CELSIUS if metric else TEMP_FAHRENHEIT,
metric_unit=UnitOfTemperature.CELSIUS,
us_customary_unit=UnitOfTemperature.FAHRENHEIT,
value_fn=lambda data, unit: cast(float, data[unit][ATTR_VALUE]),
),
AccuWeatherSensorDescription(
@@ -252,8 +246,10 @@ SENSOR_TYPES: tuple[AccuWeatherSensorDescription, ...] = (
icon="mdi:weather-fog",
name="Cloud ceiling",
state_class=SensorStateClass.MEASUREMENT,
unit_fn=lambda metric: LENGTH_METERS if metric else LENGTH_FEET,
value_fn=lambda data, unit: round(cast(float, data[unit][ATTR_VALUE])),
metric_unit=UnitOfLength.METERS,
us_customary_unit=UnitOfLength.FEET,
value_fn=lambda data, unit: cast(float, data[unit][ATTR_VALUE]),
native_precision=0,
),
AccuWeatherSensorDescription(
key="CloudCover",
@@ -261,7 +257,7 @@ SENSOR_TYPES: tuple[AccuWeatherSensorDescription, ...] = (
name="Cloud cover",
entity_registry_enabled_default=False,
state_class=SensorStateClass.MEASUREMENT,
unit_fn=lambda _: PERCENTAGE,
native_unit_of_measurement=PERCENTAGE,
value_fn=lambda data, _: cast(int, data),
),
AccuWeatherSensorDescription(
@@ -270,7 +266,8 @@ SENSOR_TYPES: tuple[AccuWeatherSensorDescription, ...] = (
name="Dew point",
entity_registry_enabled_default=False,
state_class=SensorStateClass.MEASUREMENT,
unit_fn=lambda metric: TEMP_CELSIUS if metric else TEMP_FAHRENHEIT,
metric_unit=UnitOfTemperature.CELSIUS,
us_customary_unit=UnitOfTemperature.FAHRENHEIT,
value_fn=lambda data, unit: cast(float, data[unit][ATTR_VALUE]),
),
AccuWeatherSensorDescription(
@@ -278,7 +275,8 @@ SENSOR_TYPES: tuple[AccuWeatherSensorDescription, ...] = (
device_class=SensorDeviceClass.TEMPERATURE,
name="RealFeel temperature",
state_class=SensorStateClass.MEASUREMENT,
unit_fn=lambda metric: TEMP_CELSIUS if metric else TEMP_FAHRENHEIT,
metric_unit=UnitOfTemperature.CELSIUS,
us_customary_unit=UnitOfTemperature.FAHRENHEIT,
value_fn=lambda data, unit: cast(float, data[unit][ATTR_VALUE]),
),
AccuWeatherSensorDescription(
@@ -287,23 +285,27 @@ SENSOR_TYPES: tuple[AccuWeatherSensorDescription, ...] = (
name="RealFeel temperature shade",
entity_registry_enabled_default=False,
state_class=SensorStateClass.MEASUREMENT,
unit_fn=lambda metric: TEMP_CELSIUS if metric else TEMP_FAHRENHEIT,
metric_unit=UnitOfTemperature.CELSIUS,
us_customary_unit=UnitOfTemperature.FAHRENHEIT,
value_fn=lambda data, unit: cast(float, data[unit][ATTR_VALUE]),
),
AccuWeatherSensorDescription(
key="Precipitation",
icon="mdi:weather-rainy",
device_class=SensorDeviceClass.PRECIPITATION_INTENSITY,
name="Precipitation",
state_class=SensorStateClass.MEASUREMENT,
unit_fn=lambda metric: LENGTH_MILLIMETERS if metric else LENGTH_INCHES,
metric_unit=UnitOfVolumetricFlux.MILLIMETERS_PER_HOUR,
us_customary_unit=UnitOfVolumetricFlux.INCHES_PER_HOUR,
value_fn=lambda data, unit: cast(float, data[unit][ATTR_VALUE]),
attr_fn=lambda data: {"type": data["PrecipitationType"]},
),
AccuWeatherSensorDescription(
key="PressureTendency",
device_class="accuweather__pressure_tendency",
device_class=SensorDeviceClass.ENUM,
icon="mdi:gauge",
name="Pressure tendency",
options=["falling", "rising", "steady"],
translation_key="pressure_tendency",
value_fn=lambda data, _: cast(str, data["LocalizedText"]).lower(),
),
AccuWeatherSensorDescription(
@@ -311,7 +313,7 @@ SENSOR_TYPES: tuple[AccuWeatherSensorDescription, ...] = (
icon="mdi:weather-sunny",
name="UV index",
state_class=SensorStateClass.MEASUREMENT,
unit_fn=lambda _: UV_INDEX,
native_unit_of_measurement=UV_INDEX,
value_fn=lambda data, _: cast(int, data),
attr_fn=lambda data: {ATTR_LEVEL: data["UVIndexText"]},
),
@@ -321,7 +323,8 @@ SENSOR_TYPES: tuple[AccuWeatherSensorDescription, ...] = (
name="Wet bulb temperature",
entity_registry_enabled_default=False,
state_class=SensorStateClass.MEASUREMENT,
unit_fn=lambda metric: TEMP_CELSIUS if metric else TEMP_FAHRENHEIT,
metric_unit=UnitOfTemperature.CELSIUS,
us_customary_unit=UnitOfTemperature.FAHRENHEIT,
value_fn=lambda data, unit: cast(float, data[unit][ATTR_VALUE]),
),
AccuWeatherSensorDescription(
@@ -330,30 +333,27 @@ SENSOR_TYPES: tuple[AccuWeatherSensorDescription, ...] = (
name="Wind chill temperature",
entity_registry_enabled_default=False,
state_class=SensorStateClass.MEASUREMENT,
unit_fn=lambda metric: TEMP_CELSIUS if metric else TEMP_FAHRENHEIT,
metric_unit=UnitOfTemperature.CELSIUS,
us_customary_unit=UnitOfTemperature.FAHRENHEIT,
value_fn=lambda data, unit: cast(float, data[unit][ATTR_VALUE]),
),
AccuWeatherSensorDescription(
key="Wind",
device_class=SensorDeviceClass.WIND_SPEED,
icon="mdi:weather-windy",
name="Wind",
state_class=SensorStateClass.MEASUREMENT,
unit_fn=lambda metric: SPEED_KILOMETERS_PER_HOUR
if metric
else SPEED_MILES_PER_HOUR,
metric_unit=UnitOfSpeed.KILOMETERS_PER_HOUR,
us_customary_unit=UnitOfSpeed.MILES_PER_HOUR,
value_fn=lambda data, unit: cast(float, data[ATTR_SPEED][unit][ATTR_VALUE]),
),
AccuWeatherSensorDescription(
key="WindGust",
device_class=SensorDeviceClass.WIND_SPEED,
icon="mdi:weather-windy",
name="Wind gust",
entity_registry_enabled_default=False,
state_class=SensorStateClass.MEASUREMENT,
unit_fn=lambda metric: SPEED_KILOMETERS_PER_HOUR
if metric
else SPEED_MILES_PER_HOUR,
metric_unit=UnitOfSpeed.KILOMETERS_PER_HOUR,
us_customary_unit=UnitOfSpeed.MILES_PER_HOUR,
value_fn=lambda data, unit: cast(float, data[ATTR_SPEED][unit][ATTR_VALUE]),
),
)
@@ -413,13 +413,15 @@ class AccuWeatherSensor(
self._attr_unique_id = (
f"{coordinator.location_key}-{description.key}".lower()
)
self._attr_native_unit_of_measurement = description.native_unit_of_measurement
if self.coordinator.hass.config.units is METRIC_SYSTEM:
self._unit_system = API_METRIC
if metric_unit := description.metric_unit:
self._attr_native_unit_of_measurement = metric_unit
else:
self._unit_system = API_IMPERIAL
self._attr_native_unit_of_measurement = self.entity_description.unit_fn(
self.coordinator.hass.config.units is METRIC_SYSTEM
)
if us_customary_unit := description.us_customary_unit:
self._attr_native_unit_of_measurement = us_customary_unit
self._attr_device_info = coordinator.device_info
if forecast_day is not None:
self.forecast_day = forecast_day
@@ -453,7 +455,7 @@ def _get_sensor_data(
return sensors[ATTR_FORECAST][forecast_day][kind]
if kind == "Precipitation":
return sensors["PrecipitationSummary"][kind]
return sensors["PrecipitationSummary"]["PastHour"]
return sensors[kind]

View File

@@ -22,6 +22,17 @@
"single_instance_allowed": "[%key:common::config_flow::abort::single_instance_allowed%]"
}
},
"entity": {
"sensor": {
"pressure_tendency": {
"state": {
"steady": "Steady",
"rising": "Rising",
"falling": "Falling"
}
}
}
},
"options": {
"step": {
"init": {

View File

@@ -1,9 +0,0 @@
{
"state": {
"accuweather__pressure_tendency": {
"steady": "Steady",
"rising": "Rising",
"falling": "Falling"
}
}
}

View File

@@ -4,16 +4,6 @@
"requests_exceeded": "\u062a\u0645 \u062a\u062c\u0627\u0648\u0632 \u0627\u0644\u0639\u062f\u062f \u0627\u0644\u0645\u0633\u0645\u0648\u062d \u0628\u0647 \u0645\u0646 \u0627\u0644\u0637\u0644\u0628\u0627\u062a \u0625\u0644\u0649 Accuweather API. \u0639\u0644\u064a\u0643 \u0627\u0644\u0627\u0646\u062a\u0638\u0627\u0631 \u0623\u0648 \u062a\u063a\u064a\u064a\u0631 \u0645\u0641\u062a\u0627\u062d API."
}
},
"options": {
"step": {
"user": {
"data": {
"forecast": "\u0627\u0644\u0646\u0634\u0631\u0629 \u0627\u0644\u062c\u0648\u064a\u0629"
},
"description": "\u0646\u0638\u0631\u064b\u0627 \u0644\u0642\u064a\u0648\u062f \u0627\u0644\u0625\u0635\u062f\u0627\u0631 \u0627\u0644\u0645\u062c\u0627\u0646\u064a \u0645\u0646 \u0645\u0641\u062a\u0627\u062d AccuWeather API \u060c \u0639\u0646\u062f \u062a\u0645\u0643\u064a\u0646 \u0627\u0644\u062a\u0646\u0628\u0624 \u0628\u0627\u0644\u0637\u0642\u0633 \u060c \u0633\u064a\u062a\u0645 \u0625\u062c\u0631\u0627\u0621 \u062a\u062d\u062f\u064a\u062b\u0627\u062a \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a \u0643\u0644 80 \u062f\u0642\u064a\u0642\u0629 \u0628\u062f\u0644\u0627\u064b \u0645\u0646 \u0643\u0644 40 \u062f\u0642\u064a\u0642\u0629."
}
}
},
"system_health": {
"info": {
"can_reach_server": "\u0627\u0644\u0648\u0635\u0648\u0644 \u0625\u0644\u0649 \u062e\u0627\u062f\u0645 AccuWeather",

View File

@@ -18,6 +18,17 @@
}
}
},
"entity": {
"sensor": {
"pressure_tendency": {
"state": {
"falling": "\u041f\u043e\u043d\u0438\u0436\u0435\u043d\u0438\u0435",
"rising": "\u041f\u043e\u0432\u0438\u0448\u0435\u043d\u0438\u0435",
"steady": "\u0421\u0442\u0430\u0431\u0438\u043b\u043d\u043e"
}
}
}
},
"options": {
"step": {
"init": {
@@ -25,11 +36,6 @@
"forecast": "\u041f\u0440\u043e\u0433\u043d\u043e\u0437\u0430 \u0437\u0430 \u0432\u0440\u0435\u043c\u0435\u0442\u043e"
},
"description": "\u041f\u043e\u0440\u0430\u0434\u0438 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f\u0442\u0430 \u043d\u0430 \u0431\u0435\u0437\u043f\u043b\u0430\u0442\u043d\u0430\u0442\u0430 \u0432\u0435\u0440\u0441\u0438\u044f \u043d\u0430 API \u043a\u043b\u044e\u0447\u0430 \u043d\u0430 AccuWeather, \u043a\u043e\u0433\u0430\u0442\u043e \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u0430\u0442\u0435 \u043f\u0440\u043e\u0433\u043d\u043e\u0437\u0430\u0442\u0430 \u0437\u0430 \u0432\u0440\u0435\u043c\u0435\u0442\u043e, \u0430\u043a\u0442\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438\u0442\u0435 \u043d\u0430 \u0434\u0430\u043d\u043d\u0438 \u0449\u0435 \u0441\u0435 \u0438\u0437\u0432\u044a\u0440\u0448\u0432\u0430\u0442 \u043d\u0430 \u0432\u0441\u0435\u043a\u0438 80 \u043c\u0438\u043d\u0443\u0442\u0438 \u0432\u043c\u0435\u0441\u0442\u043e \u043d\u0430 \u0432\u0441\u0435\u043a\u0438 40 \u043c\u0438\u043d\u0443\u0442\u0438."
},
"user": {
"data": {
"forecast": "\u041f\u0440\u043e\u0433\u043d\u043e\u0437\u0430 \u0437\u0430 \u0432\u0440\u0435\u043c\u0435\u0442\u043e"
}
}
}
}

View File

@@ -22,18 +22,24 @@
}
}
},
"entity": {
"sensor": {
"pressure_tendency": {
"state": {
"falling": "Disminuint",
"rising": "Augmentant",
"steady": "Estable"
}
}
}
},
"options": {
"step": {
"init": {
"data": {
"forecast": "Previsi\u00f3 meteorol\u00f2gica"
}
},
"user": {
"data": {
"forecast": "Previsi\u00f3 meteorol\u00f2gica"
},
"description": "Per culpa de les limitacions de la versi\u00f3 gratu\u00efta l'API d'AccuWeather, quan habilitis la previsi\u00f3 meteorol\u00f2gica, les actualitzacions de dades es faran cada 80 minuts en comptes de cada 40."
"description": "Per culpa de les limitacions de la versi\u00f3 gratu\u00efta de l'API d'AccuWeather, quan activis la previsi\u00f3 meteorol\u00f2gica, les actualitzacions de dades es faran cada 80 minuts en comptes de cada 40."
}
}
},

View File

@@ -19,6 +19,15 @@
}
}
},
"entity": {
"sensor": {
"pressure_tendency": {
"state": {
"steady": "Stabiln\u00ed"
}
}
}
},
"options": {
"step": {
"init": {
@@ -26,12 +35,6 @@
"forecast": "P\u0159edpov\u011b\u010f po\u010das\u00ed"
},
"description": "Vzhledem k omezen\u00edm bezplatn\u00e9 verze kl\u00ed\u010de AccuWeather API, kdy\u017e povol\u00edte p\u0159edpov\u011b\u010f po\u010das\u00ed, aktualizace dat se budou prov\u00e1d\u011bt ka\u017ed\u00fdch 80 minut m\u00edsto ka\u017ed\u00fdch 40 minut."
},
"user": {
"data": {
"forecast": "P\u0159edpov\u011b\u010f po\u010das\u00ed"
},
"description": "Kdy\u017e povol\u00edte p\u0159edpov\u011b\u010f po\u010das\u00ed, budou aktualizace dat prov\u00e1d\u011bny ka\u017ed\u00fdch 80 minut nam\u00edsto 40 minut z d\u016fvodu omezen\u00ed bezplatn\u00e9 verze AccuWeather."
}
}
},

View File

@@ -22,6 +22,17 @@
}
}
},
"entity": {
"sensor": {
"pressure_tendency": {
"state": {
"falling": "Fallend",
"rising": "Steigend",
"steady": "Stetig"
}
}
}
},
"options": {
"step": {
"init": {
@@ -29,12 +40,6 @@
"forecast": "Wettervorhersage"
},
"description": "Aufgrund der Einschr\u00e4nkungen der kostenlosen Version des AccuWeather API-Schl\u00fcssels werden bei aktivierter Wettervorhersage Datenaktualisierungen alle 80 Minuten statt alle 40 Minuten durchgef\u00fchrt."
},
"user": {
"data": {
"forecast": "Wettervorhersage"
},
"description": "Aufgrund der Einschr\u00e4nkungen der kostenlosen Version des AccuWeather-API-Schl\u00fcssels werden bei aktivierter Wettervorhersage Datenaktualisierungen alle 80 Minuten statt alle 40 Minuten durchgef\u00fchrt."
}
}
},

View File

@@ -22,6 +22,17 @@
}
}
},
"entity": {
"sensor": {
"pressure_tendency": {
"state": {
"falling": "\u03a0\u03c4\u03ce\u03c3\u03b7",
"rising": "\u0391\u03c5\u03be\u03b1\u03bd\u03cc\u03bc\u03b5\u03bd\u03b7",
"steady": "\u03a3\u03c4\u03b1\u03b8\u03b5\u03c1\u03ae"
}
}
}
},
"options": {
"step": {
"init": {
@@ -29,12 +40,6 @@
"forecast": "\u03a0\u03c1\u03cc\u03b3\u03bd\u03c9\u03c3\u03b7 \u03ba\u03b1\u03b9\u03c1\u03bf\u03cd"
},
"description": "\u039b\u03cc\u03b3\u03c9 \u03c4\u03c9\u03bd \u03c0\u03b5\u03c1\u03b9\u03bf\u03c1\u03b9\u03c3\u03bc\u03ce\u03bd \u03c4\u03b7\u03c2 \u03b4\u03c9\u03c1\u03b5\u03ac\u03bd \u03ad\u03ba\u03b4\u03bf\u03c3\u03b7\u03c2 \u03c4\u03bf\u03c5 \u03ba\u03bb\u03b5\u03b9\u03b4\u03b9\u03bf\u03cd AccuWeather API, \u03cc\u03c4\u03b1\u03bd \u03b5\u03bd\u03b5\u03c1\u03b3\u03bf\u03c0\u03bf\u03b9\u03b5\u03af\u03c4\u03b5 \u03c4\u03b7\u03bd \u03c0\u03c1\u03cc\u03b3\u03bd\u03c9\u03c3\u03b7 \u03ba\u03b1\u03b9\u03c1\u03bf\u03cd, \u03bf\u03b9 \u03b5\u03bd\u03b7\u03bc\u03b5\u03c1\u03ce\u03c3\u03b5\u03b9\u03c2 \u03b4\u03b5\u03b4\u03bf\u03bc\u03ad\u03bd\u03c9\u03bd \u03b8\u03b1 \u03b5\u03ba\u03c4\u03b5\u03bb\u03bf\u03cd\u03bd\u03c4\u03b1\u03b9 \u03ba\u03ac\u03b8\u03b5 80 \u03bb\u03b5\u03c0\u03c4\u03ac \u03b1\u03bd\u03c4\u03af \u03b3\u03b9\u03b1 \u03ba\u03ac\u03b8\u03b5 40 \u03bb\u03b5\u03c0\u03c4\u03ac."
},
"user": {
"data": {
"forecast": "\u03a0\u03c1\u03cc\u03b3\u03bd\u03c9\u03c3\u03b7 \u03ba\u03b1\u03b9\u03c1\u03bf\u03cd"
},
"description": "\u039b\u03cc\u03b3\u03c9 \u03c4\u03c9\u03bd \u03c0\u03b5\u03c1\u03b9\u03bf\u03c1\u03b9\u03c3\u03bc\u03ce\u03bd \u03c4\u03b7\u03c2 \u03b4\u03c9\u03c1\u03b5\u03ac\u03bd \u03ad\u03ba\u03b4\u03bf\u03c3\u03b7\u03c2 \u03c4\u03bf\u03c5 \u03ba\u03bb\u03b5\u03b9\u03b4\u03b9\u03bf\u03cd API \u03c4\u03bf\u03c5 AccuWeather, \u03cc\u03c4\u03b1\u03bd \u03b5\u03bd\u03b5\u03c1\u03b3\u03bf\u03c0\u03bf\u03b9\u03b5\u03af\u03c4\u03b5 \u03c4\u03b7\u03bd \u03c0\u03c1\u03cc\u03b3\u03bd\u03c9\u03c3\u03b7 \u03ba\u03b1\u03b9\u03c1\u03bf\u03cd, \u03bf\u03b9 \u03b5\u03bd\u03b7\u03bc\u03b5\u03c1\u03ce\u03c3\u03b5\u03b9\u03c2 \u03b4\u03b5\u03b4\u03bf\u03bc\u03ad\u03bd\u03c9\u03bd \u03b8\u03b1 \u03c0\u03c1\u03b1\u03b3\u03bc\u03b1\u03c4\u03bf\u03c0\u03bf\u03b9\u03bf\u03cd\u03bd\u03c4\u03b1\u03b9 \u03ba\u03ac\u03b8\u03b5 80 \u03bb\u03b5\u03c0\u03c4\u03ac \u03b1\u03bd\u03c4\u03af \u03b3\u03b9\u03b1 \u03ba\u03ac\u03b8\u03b5 40 \u03bb\u03b5\u03c0\u03c4\u03ac."
}
}
},

View File

@@ -22,6 +22,17 @@
}
}
},
"entity": {
"sensor": {
"pressure_tendency": {
"state": {
"falling": "Falling",
"rising": "Rising",
"steady": "Steady"
}
}
}
},
"options": {
"step": {
"init": {
@@ -29,12 +40,6 @@
"forecast": "Weather forecast"
},
"description": "Due to the limitations of the free version of the AccuWeather API key, when you enable weather forecast, data updates will be performed every 80 minutes instead of every 40 minutes."
},
"user": {
"data": {
"forecast": "Weather forecast"
},
"description": "Due to the limitations of the free version of the AccuWeather API key, when you enable weather forecast, data updates will be performed every 80 minutes instead of every 40 minutes."
}
}
},

View File

@@ -12,16 +12,6 @@
"requests_exceeded": "Se super\u00f3 el n\u00famero permitido de solicitudes a la API de Accuweather. Tiene que esperar o cambiar la clave de API."
}
},
"options": {
"step": {
"user": {
"data": {
"forecast": "Pron\u00f3stico del tiempo"
},
"description": "Debido a las limitaciones de la versi\u00f3n gratuita de la clave API de AccuWeather, cuando habilita el pron\u00f3stico del tiempo, las actualizaciones de datos se realizar\u00e1n cada 64 minutos en lugar de cada 32 minutos."
}
}
},
"system_health": {
"info": {
"can_reach_server": "Llegar al servidor de AccuWeather",

View File

@@ -22,6 +22,17 @@
}
}
},
"entity": {
"sensor": {
"pressure_tendency": {
"state": {
"falling": "Descendente",
"rising": "Creciente",
"steady": "Estable"
}
}
}
},
"options": {
"step": {
"init": {
@@ -29,12 +40,6 @@
"forecast": "Previsi\u00f3n meteorol\u00f3gica"
},
"description": "Debido a las limitaciones de la versi\u00f3n gratuita de la clave API de AccuWeather, cuando habilitas la previsi\u00f3n meteorol\u00f3gica, las actualizaciones de datos se realizar\u00e1n cada 80 minutos en lugar de cada 40 minutos."
},
"user": {
"data": {
"forecast": "Previsi\u00f3n meteorol\u00f3gica"
},
"description": "Debido a las limitaciones de la versi\u00f3n gratuita de la clave API de AccuWeather, cuando habilitas la previsi\u00f3n meteorol\u00f3gica, las actualizaciones de datos se realizar\u00e1n cada 80 minutos en lugar de cada 40 minutos."
}
}
},

View File

@@ -22,6 +22,17 @@
}
}
},
"entity": {
"sensor": {
"pressure_tendency": {
"state": {
"falling": "Langev",
"rising": "T\u00f5usev",
"steady": "\u00dchtlane"
}
}
}
},
"options": {
"step": {
"init": {
@@ -29,12 +40,6 @@
"forecast": "Ilmateade"
},
"description": "AccuWeather API tasuta versioonis toimub ilmaennustuse lubamisel andmete v\u00e4rskendamine iga 80 minuti j\u00e4rel (muidu 40 minutit)."
},
"user": {
"data": {
"forecast": "Ilmateade"
},
"description": "AccuWeather API tasuta versioonis toimub ilmaennustuse lubamisel andmete v\u00e4rskendamine iga 80 minuti j\u00e4rel (muidu 40 minutit)."
}
}
},

View File

@@ -28,12 +28,6 @@
"data": {
"forecast": "Pr\u00e9visions m\u00e9t\u00e9orologiques"
}
},
"user": {
"data": {
"forecast": "Pr\u00e9visions m\u00e9t\u00e9orologiques"
},
"description": "En raison des limitations de la version gratuite de la cl\u00e9 API AccuWeather, lorsque vous activez les pr\u00e9visions m\u00e9t\u00e9orologiques, les mises \u00e0 jour des donn\u00e9es seront effectu\u00e9es toutes les 64 minutes au lieu de toutes les 32 minutes."
}
}
},

View File

@@ -22,9 +22,20 @@
}
}
},
"entity": {
"sensor": {
"pressure_tendency": {
"state": {
"falling": "\u05e9\u05d5\u05e7\u05e2\u05ea",
"rising": "\u05d6\u05d5\u05e8\u05d7\u05ea",
"steady": "\u05d9\u05e6\u05d9\u05d1"
}
}
}
},
"options": {
"step": {
"user": {
"init": {
"data": {
"forecast": "\u05ea\u05d7\u05d6\u05d9\u05ea \u05de\u05d6\u05d2 \u05d4\u05d0\u05d5\u05d5\u05d9\u05e8"
},

View File

@@ -22,13 +22,24 @@
}
}
},
"entity": {
"sensor": {
"pressure_tendency": {
"state": {
"falling": "Cs\u00f6kken\u0151",
"rising": "Emelked\u0151",
"steady": "\u00c1lland\u00f3"
}
}
}
},
"options": {
"step": {
"user": {
"init": {
"data": {
"forecast": "Id\u0151j\u00e1r\u00e1s el\u0151rejelz\u00e9s"
},
"description": "Az AccuWeather API kulcs ingyenes verzi\u00f3j\u00e1nak korl\u00e1tai miatt, amikor enged\u00e9lyezi az id\u0151j\u00e1r\u00e1s -el\u0151rejelz\u00e9st, az adatfriss\u00edt\u00e9seket 40 percenk\u00e9nt 80 percenk\u00e9nt hajtj\u00e1k v\u00e9gre."
"description": "Az AccuWeather API-kulcs ingyenes verzi\u00f3j\u00e1nak korl\u00e1tai miatt az id\u0151j\u00e1r\u00e1s-el\u0151rejelz\u00e9s enged\u00e9lyez\u00e9sekor az adatok friss\u00edt\u00e9se 40 perc helyett 80 percenk\u00e9nt t\u00f6rt\u00e9nik."
}
}
},

View File

@@ -22,6 +22,17 @@
}
}
},
"entity": {
"sensor": {
"pressure_tendency": {
"state": {
"falling": "Turun",
"rising": "Naik",
"steady": "Tetap"
}
}
}
},
"options": {
"step": {
"init": {
@@ -29,12 +40,6 @@
"forecast": "Prakiraan cuaca"
},
"description": "Karena keterbatasan versi gratis kunci API AccuWeather, ketika Anda mengaktifkan prakiraan cuaca, pembaruan data akan dilakukan setiap 80 menit, bukan setiap 40 menit."
},
"user": {
"data": {
"forecast": "Prakiraan cuaca"
},
"description": "Karena keterbatasan versi gratis kunci API AccuWeather, ketika Anda mengaktifkan prakiraan cuaca, pembaruan data akan dilakukan setiap 80 menit, bukan setiap 40 menit."
}
}
},

View File

@@ -22,13 +22,24 @@
}
}
},
"entity": {
"sensor": {
"pressure_tendency": {
"state": {
"falling": "In diminuzione",
"rising": "In aumento",
"steady": "Stabile"
}
}
}
},
"options": {
"step": {
"user": {
"init": {
"data": {
"forecast": "Previsioni meteo"
"forecast": "Previsioni del tempo"
},
"description": "A causa delle limitazioni della versione gratuita della chiave API AccuWeather, quando si abilitano le previsioni del tempo, gli aggiornamenti dei dati verranno eseguiti ogni 80 minuti invece che ogni 40."
"description": "A causa delle limitazioni della versione gratuita della chiave API AccuWeather, quando abiliti le previsioni del tempo, gli aggiornamenti dei dati verranno eseguiti ogni 80 minuti anzich\u00e9 ogni 40 minuti."
}
}
},

View File

@@ -22,16 +22,6 @@
}
}
},
"options": {
"step": {
"user": {
"data": {
"forecast": "\u5929\u6c17\u4e88\u5831"
},
"description": "\u7121\u6599\u7248\u306eAccuWeather API\u30ad\u30fc\u306e\u5236\u9650\u306b\u3088\u308a\u3001\u5929\u6c17\u4e88\u5831\u3092\u6709\u52b9\u306b\u3057\u305f\u5834\u5408\u3001\u30c7\u30fc\u30bf\u306e\u66f4\u65b0\u306f40\u5206\u6bce\u3067\u306f\u306a\u304f80\u5206\u6bce\u306b\u5b9f\u884c\u3055\u308c\u307e\u3059\u3002"
}
}
},
"system_health": {
"info": {
"can_reach_server": "AccuWeather\u30b5\u30fc\u30d0\u30fc\u3078\u306e\u30a2\u30af\u30bb\u30b9",

View File

@@ -19,13 +19,24 @@
}
}
},
"entity": {
"sensor": {
"pressure_tendency": {
"state": {
"falling": "\ud558\uac15",
"rising": "\uc0c1\uc2b9",
"steady": "\uc548\uc815\ub428"
}
}
}
},
"options": {
"step": {
"user": {
"init": {
"data": {
"forecast": "\ub0a0\uc528 \uc608\ubcf4"
},
"description": "\ubb34\ub8cc \ubc84\uc804\uc758 AccuWeather API \ud0a4\ub85c \uc77c\uae30\uc608\ubcf4\ub97c \ud65c\uc131\ud654\ud55c \uacbd\uc6b0 \uc81c\ud55c\uc0ac\ud56d\uc73c\ub85c \uc778\ud574 \uc5c5\ub370\uc774\ud2b8\ub294 40 \ubd84\uc774 \uc544\ub2cc 80 \ubd84\ub9c8\ub2e4 \uc218\ud589\ub429\ub2c8\ub2e4."
"description": "\ubb34\ub8cc \ubc84\uc804 AccuWeather API \ud0a4\uc758 \uc81c\ud55c\uc73c\ub85c \uc778\ud574 \ub0a0\uc528 \uc608\ubcf4\ub97c \ud65c\uc131\ud654\ud558\uba74 \ub370\uc774\ud130 \uc5c5\ub370\uc774\ud2b8\uac00 40\ubd84\uc774 \uc544\ub2cc 80\ubd84\ub9c8\ub2e4 \uc218\ud589\ub429\ub2c8\ub2e4."
}
}
},

View File

@@ -19,16 +19,6 @@
}
}
},
"options": {
"step": {
"user": {
"data": {
"forecast": "Wieder Pr\u00e9visioun"
},
"description": "Duerch d'Limite vun der Gratis Versioun vun der AccuWeather API, wann d'Wieder Pr\u00e9visoune aktiv\u00e9iert sinn, ginn d'Aktualis\u00e9ierungen all 64 Minutten gemaach, am plaatz vun all 32 Minutten."
}
}
},
"system_health": {
"info": {
"can_reach_server": "AccuWeather Server ereechbar",

View File

@@ -22,6 +22,17 @@
}
}
},
"entity": {
"sensor": {
"pressure_tendency": {
"state": {
"falling": "Dalende",
"rising": "Stijgende",
"steady": "Stabiel"
}
}
}
},
"options": {
"step": {
"init": {
@@ -29,12 +40,6 @@
"forecast": "Weersverwachting"
},
"description": "Wanneer je de weersverwachting ingeschakeld zullen updates elke 80 minuten plaatsvinden i.p.v. elke 40 minuten, dit komt door de beperkingen van de gratis versie van de AccuWeather API sleutel."
},
"user": {
"data": {
"forecast": "Weervoorspelling"
},
"description": "Vanwege de beperkingen van de gratis versie van de AccuWeather API-sleutel, worden gegevensupdates elke 64 minuten in plaats van elke 32 minuten uitgevoerd wanneer u weersvoorspelling inschakelt."
}
}
},

View File

@@ -22,6 +22,17 @@
}
}
},
"entity": {
"sensor": {
"pressure_tendency": {
"state": {
"falling": "Fallende",
"rising": "Stiger",
"steady": "Jevn"
}
}
}
},
"options": {
"step": {
"init": {
@@ -29,12 +40,6 @@
"forecast": "V\u00e6rmelding"
},
"description": "P\u00e5 grunn av begrensningene til gratisversjonen av AccuWeather API-n\u00f8kkelen, n\u00e5r du aktiverer v\u00e6rmelding, vil dataoppdateringer utf\u00f8res hvert 80. minutt i stedet for hvert 40. minutt."
},
"user": {
"data": {
"forecast": "V\u00e6rmelding"
},
"description": "P\u00e5 grunn av begrensningene i den gratis versjonen av AccuWeather API-n\u00f8kkelen, vil dataoppdateringer utf\u00f8res hvert 80. minutt i stedet for hvert 40. minutt n\u00e5r du aktiverer v\u00e6rmelding."
}
}
},

View File

@@ -22,9 +22,20 @@
}
}
},
"entity": {
"sensor": {
"pressure_tendency": {
"state": {
"falling": "malej\u0105ce",
"rising": "rosn\u0105ce",
"steady": "sta\u0142e"
}
}
}
},
"options": {
"step": {
"user": {
"init": {
"data": {
"forecast": "Prognoza pogody"
},

View File

@@ -22,6 +22,17 @@
}
}
},
"entity": {
"sensor": {
"pressure_tendency": {
"state": {
"falling": "Caindo",
"rising": "Ascendente",
"steady": "Est\u00e1vel"
}
}
}
},
"options": {
"step": {
"init": {
@@ -29,12 +40,6 @@
"forecast": "Previs\u00e3o do tempo"
},
"description": "Devido \u00e0s limita\u00e7\u00f5es da vers\u00e3o gratuita da chave API AccuWeather, quando voc\u00ea ativa a previs\u00e3o do tempo, as atualiza\u00e7\u00f5es de dados s\u00e3o realizadas a cada 80 minutos em vez de 40 minutos."
},
"user": {
"data": {
"forecast": "Previs\u00e3o do Tempo"
},
"description": "Devido \u00e0s limita\u00e7\u00f5es da vers\u00e3o gratuita da chave da API AccuWeather, quando voc\u00ea habilita a previs\u00e3o do tempo, as atualiza\u00e7\u00f5es de dados ser\u00e3o realizadas a cada 64 minutos em vez de a cada 32 minutos."
}
}
},

View File

@@ -7,7 +7,7 @@
"default": "Alguns sensores n\u00e3o s\u00e3o ativados por defeito. Podem ser ativados no registo da entidade ap\u00f3s a configura\u00e7\u00e3o da integra\u00e7\u00e3o.\nA previs\u00e3o do tempo n\u00e3o est\u00e1 ativada por defeito. Pode ativ\u00e1-la nas op\u00e7\u00f5es de integra\u00e7\u00e3o."
},
"error": {
"cannot_connect": "Falha na liga\u00e7\u00e3o",
"cannot_connect": "A liga\u00e7\u00e3o falhou",
"invalid_api_key": "Chave de API inv\u00e1lida",
"requests_exceeded": "O n\u00famero permitido de pedidos \u00e0 API do Accuweather foi excedido. \u00c9 necess\u00e1rio aguardar ou alterar a chave API."
},
@@ -22,16 +22,6 @@
}
}
},
"options": {
"step": {
"user": {
"data": {
"forecast": "Previs\u00e3o meteorol\u00f3gica"
},
"description": "Devido \u00e0s limita\u00e7\u00f5es da vers\u00e3o gratuita da chave AccuWeather API, quando se activa a previs\u00e3o do tempo, as actualiza\u00e7\u00f5es de dados ser\u00e3o realizadas a cada 80 minutos em vez de a cada 40 minutos."
}
}
},
"system_health": {
"info": {
"can_reach_server": "Alcance o servidor AccuWeather",

View File

@@ -22,6 +22,17 @@
}
}
},
"entity": {
"sensor": {
"pressure_tendency": {
"state": {
"falling": "\u041f\u043e\u043d\u0438\u0436\u0430\u0435\u0442\u0441\u044f",
"rising": "\u041f\u043e\u0432\u044b\u0448\u0430\u0435\u0442\u0441\u044f",
"steady": "\u041f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u043e\u0435"
}
}
}
},
"options": {
"step": {
"init": {
@@ -29,12 +40,6 @@
"forecast": "\u041f\u0440\u043e\u0433\u043d\u043e\u0437 \u043f\u043e\u0433\u043e\u0434\u044b"
},
"description": "\u0412 \u0441\u0432\u044f\u0437\u0438 \u0441 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f\u043c\u0438 \u0431\u0435\u0441\u043f\u043b\u0430\u0442\u043d\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 \u043a\u043b\u044e\u0447\u0430 API AccuWeather, \u043f\u0440\u0438 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438 \u043f\u0440\u043e\u0433\u043d\u043e\u0437\u0430 \u043f\u043e\u0433\u043e\u0434\u044b \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442\u044c \u043a\u0430\u0436\u0434\u044b\u0435 80 \u043c\u0438\u043d\u0443\u0442, \u0430 \u043d\u0435 \u043a\u0430\u0436\u0434\u044b\u0435 40 \u043c\u0438\u043d\u0443\u0442."
},
"user": {
"data": {
"forecast": "\u041f\u0440\u043e\u0433\u043d\u043e\u0437 \u043f\u043e\u0433\u043e\u0434\u044b"
},
"description": "\u0412 \u0441\u0432\u044f\u0437\u0438 \u0441 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f\u043c\u0438 \u0431\u0435\u0441\u043f\u043b\u0430\u0442\u043d\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 \u043a\u043b\u044e\u0447\u0430 API AccuWeather, \u043f\u0440\u0438 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438 \u043f\u0440\u043e\u0433\u043d\u043e\u0437\u0430 \u043f\u043e\u0433\u043e\u0434\u044b \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442\u044c \u043a\u0430\u0436\u0434\u044b\u0435 80 \u043c\u0438\u043d\u0443\u0442, \u0430 \u043d\u0435 \u043a\u0430\u0436\u0434\u044b\u0435 40 \u043c\u0438\u043d\u0443\u0442."
}
}
},

View File

@@ -2,7 +2,8 @@
"state": {
"accuweather__pressure_tendency": {
"falling": "Klesaj\u00faci",
"rising": "Padaj\u00faci"
"rising": "Padaj\u00faci",
"steady": "Stabiln\u00fd"
}
}
}

View File

@@ -3,6 +3,9 @@
"abort": {
"single_instance_allowed": "U\u017e je nakonfigurovan\u00fd. Mo\u017en\u00e1 len jedna konfigur\u00e1cia."
},
"create_entry": {
"default": "Niektor\u00e9 sn\u00edma\u010de nie s\u00fa predvolene povolen\u00e9. M\u00f4\u017eete ich povoli\u0165 v registri ent\u00edt po konfigur\u00e1cii integr\u00e1cie.\n Predpove\u010f po\u010dasia nie je predvolene zapnut\u00e1. M\u00f4\u017eete to povoli\u0165 v mo\u017enostiach integr\u00e1cie."
},
"error": {
"cannot_connect": "Nepodarilo sa pripoji\u0165",
"invalid_api_key": "Neplatn\u00fd API k\u013e\u00fa\u010d",
@@ -19,17 +22,24 @@
}
}
},
"entity": {
"sensor": {
"pressure_tendency": {
"state": {
"falling": "Klesaj\u00faci",
"rising": "St\u00fapaj\u00faci",
"steady": "Stabiln\u00fd"
}
}
}
},
"options": {
"step": {
"init": {
"data": {
"forecast": "Predpove\u010f po\u010dasia"
}
},
"user": {
"data": {
"forecast": "Predpove\u010f po\u010dasia"
}
},
"description": "Z d\u00f4vodu obmedzen\u00ed bezplatnej verzie k\u013e\u00fa\u010da AccuWeather API, ke\u010f povol\u00edte predpove\u010f po\u010dasia, aktualiz\u00e1cie \u00fadajov sa bud\u00fa vykon\u00e1va\u0165 ka\u017ed\u00fdch 80 min\u00fat namiesto ka\u017ed\u00fdch 40 min\u00fat."
}
}
},

View File

@@ -22,16 +22,6 @@
}
}
},
"options": {
"step": {
"user": {
"data": {
"forecast": "V\u00e4derprognos"
},
"description": "P\u00e5 grund av begr\u00e4nsningarna f\u00f6r den kostnadsfria versionen av AccuWeather API-nyckeln, n\u00e4r du aktiverar v\u00e4derprognos, kommer datauppdateringar att utf\u00f6ras var 80:e minut ist\u00e4llet f\u00f6r var 40:e minut."
}
}
},
"system_health": {
"info": {
"can_reach_server": "N\u00e5 AccuWeather-servern",

View File

@@ -22,9 +22,20 @@
}
}
},
"entity": {
"sensor": {
"pressure_tendency": {
"state": {
"falling": "D\u00fc\u015f\u00fcyor",
"rising": "Y\u00fckseliyor",
"steady": "Sabit"
}
}
}
},
"options": {
"step": {
"user": {
"init": {
"data": {
"forecast": "Hava Durumu tahmini"
},

View File

@@ -19,16 +19,6 @@
}
}
},
"options": {
"step": {
"user": {
"data": {
"forecast": "\u041f\u0440\u043e\u0433\u043d\u043e\u0437 \u043f\u043e\u0433\u043e\u0434\u0438"
},
"description": "\u0423 \u0437\u0432'\u044f\u0437\u043a\u0443 \u0437 \u043e\u0431\u043c\u0435\u0436\u0435\u043d\u043d\u044f\u043c\u0438 \u0431\u0435\u0437\u043a\u043e\u0448\u0442\u043e\u0432\u043d\u043e\u0457 \u0432\u0435\u0440\u0441\u0456\u0457 \u043a\u043b\u044e\u0447\u0430 API AccuWeather, \u043f\u0440\u0438 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u0456 \u043f\u0440\u043e\u0433\u043d\u043e\u0437\u0443 \u043f\u043e\u0433\u043e\u0434\u0438 \u043e\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u044f \u0434\u0430\u043d\u0438\u0445 \u0431\u0443\u0434\u0435 \u0432\u0456\u0434\u0431\u0443\u0432\u0430\u0442\u0438\u0441\u044f \u043a\u043e\u0436\u043d\u0456 64 \u0445\u0432\u0438\u043b\u0438\u043d\u0438, \u0430 \u043d\u0435 \u043a\u043e\u0436\u043d\u0456 32 \u0445\u0432\u0438\u043b\u0438\u043d\u0438."
}
}
},
"system_health": {
"info": {
"can_reach_server": "\u0414\u043e\u0441\u0442\u0443\u043f \u0434\u043e \u0441\u0435\u0440\u0432\u0435\u0440\u0430 AccuWeather",

View File

@@ -22,6 +22,17 @@
}
}
},
"entity": {
"sensor": {
"pressure_tendency": {
"state": {
"falling": "\u4e0b\u964d",
"rising": "\u4e0a\u5347",
"steady": "\u7a69\u5b9a"
}
}
}
},
"options": {
"step": {
"init": {
@@ -29,12 +40,6 @@
"forecast": "\u5929\u6c23\u9810\u5831"
},
"description": "\u7531\u65bc AccuWeather API \u91d1\u9470\u514d\u8cbb\u7248\u672c\u9650\u5236\uff0c\u7576\u958b\u555f\u5929\u6c23\u9810\u5831\u6642\u3001\u6578\u64da\u6703\u6bcf 80 \u5206\u9418\u66f4\u65b0\u4e00\u6b21\uff0c\u800c\u975e 40 \u5206\u9418\u3002"
},
"user": {
"data": {
"forecast": "\u5929\u6c23\u9810\u5831"
},
"description": "\u7531\u65bc AccuWeather API \u91d1\u9470\u514d\u8cbb\u7248\u672c\u9650\u5236\uff0c\u7576\u958b\u555f\u5929\u6c23\u9810\u5831\u6642\u3001\u6578\u64da\u6703\u6bcf 80 \u5206\u9418\u66f4\u65b0\u4e00\u6b21\uff0c\u800c\u975e 40 \u5206\u9418\u3002"
}
}
},

View File

@@ -7,7 +7,8 @@
"user": {
"data": {
"id": "ID hostite\u013ea"
}
},
"title": "Vyberte hub, ktor\u00fd chcete prida\u0165"
}
}
}

View File

@@ -19,7 +19,7 @@ from homeassistant.const import (
CONF_TOKEN,
CONF_UNIQUE_ID,
PRECISION_WHOLE,
TEMP_CELSIUS,
UnitOfTemperature,
)
from homeassistant.core import HomeAssistant
from homeassistant.helpers.aiohttp_client import async_get_clientsession
@@ -69,7 +69,7 @@ class AdaxDevice(ClimateEntity):
_attr_min_temp = 5
_attr_supported_features = ClimateEntityFeature.TARGET_TEMPERATURE
_attr_target_temperature_step = PRECISION_WHOLE
_attr_temperature_unit = TEMP_CELSIUS
_attr_temperature_unit = UnitOfTemperature.CELSIUS
def __init__(self, heater_data: dict[str, Any], adax_data_handler: Adax) -> None:
"""Initialize the heater."""
@@ -132,7 +132,7 @@ class LocalAdaxDevice(ClimateEntity):
_attr_min_temp = 5
_attr_supported_features = ClimateEntityFeature.TARGET_TEMPERATURE
_attr_target_temperature_step = PRECISION_WHOLE
_attr_temperature_unit = TEMP_CELSIUS
_attr_temperature_unit = UnitOfTemperature.CELSIUS
def __init__(self, adax_data_handler, unique_id):
"""Initialize the heater."""

View File

@@ -0,0 +1,18 @@
{
"config": {
"abort": {
"already_configured": "\uae30\uae30\uac00 \uc774\ubbf8 \uad6c\uc131\ub418\uc5c8\uc2b5\ub2c8\ub2e4",
"invalid_auth": "\uc778\uc99d\uc774 \uc798\ubabb\ub418\uc5c8\uc2b5\ub2c8\ub2e4"
},
"error": {
"cannot_connect": "\uc5f0\uacb0\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4"
},
"step": {
"cloud": {
"data": {
"password": "\ube44\ubc00\ubc88\ud638"
}
}
}
}
}

View File

@@ -1,5 +1,8 @@
{
"config": {
"abort": {
"already_configured": "Ier\u012bce jau pievienota Home Assistant."
},
"step": {
"cloud": {
"data": {

View File

@@ -7,7 +7,7 @@
"invalid_auth": "Autentica\u00e7\u00e3o inv\u00e1lida"
},
"error": {
"cannot_connect": "Falha na liga\u00e7\u00e3o"
"cannot_connect": "A liga\u00e7\u00e3o falhou"
},
"step": {
"cloud": {

View File

@@ -20,7 +20,8 @@
"data": {
"wifi_pswd": "Heslo Wi-Fi",
"wifi_ssid": "Wi-Fi SSID"
}
},
"description": "Resetujte ohrieva\u010d stla\u010den\u00edm + a OK, dokia\u013e se nezobraz\u00ed \"Reset\". Potom stla\u010dte a podr\u017ete tla\u010didlo OK na ohrieva\u010di, dokia\u013e modr\u00e1 led di\u00f3da neza\u010dne blika\u0165, k\u00fdm stla\u010d\u00edte tla\u010didlo Odosla\u0165. Konfigur\u00e1cia ohrieva\u010da m\u00f4\u017ee trva\u0165 nieko\u013eko min\u00fat."
},
"user": {
"data": {

View File

@@ -0,0 +1,15 @@
{
"config": {
"abort": {
"invalid_auth": "\u041d\u0435\u0434\u0456\u0439\u0441\u043d\u0430 \u0430\u0432\u0442\u0435\u043d\u0442\u0438\u0444\u0456\u043a\u0430\u0446\u0456\u044f"
},
"step": {
"cloud": {
"data": {
"account_id": "ID \u041e\u0431\u043b\u0456\u043a\u043e\u0432\u043e\u0433\u043e \u0437\u0430\u043f\u0438\u0441\u0443",
"password": "\u041f\u0430\u0440\u043e\u043b\u044c"
}
}
}
}
}

View File

@@ -58,7 +58,12 @@ class AdGuardHomeEntity(Entity):
return DeviceInfo(
entry_type=DeviceEntryType.SERVICE,
identifiers={
(DOMAIN, self.adguard.host, self.adguard.port, self.adguard.base_path) # type: ignore[arg-type]
( # type: ignore[arg-type]
DOMAIN,
self.adguard.host,
self.adguard.port,
self.adguard.base_path,
)
},
manufacturer="AdGuard Team",
name="AdGuard Home",

View File

@@ -3,7 +3,7 @@
"name": "AdGuard Home",
"config_flow": true,
"documentation": "https://www.home-assistant.io/integrations/adguard",
"requirements": ["adguardhome==0.5.1"],
"requirements": ["adguardhome==0.6.1"],
"codeowners": ["@frenck"],
"iot_class": "local_polling",
"integration_type": "service",

View File

@@ -10,7 +10,7 @@ from adguardhome import AdGuardHome, AdGuardHomeConnectionError
from homeassistant.components.sensor import SensorEntity, SensorEntityDescription
from homeassistant.config_entries import ConfigEntry
from homeassistant.const import PERCENTAGE, TIME_MILLISECONDS
from homeassistant.const import PERCENTAGE, UnitOfTime
from homeassistant.core import HomeAssistant
from homeassistant.exceptions import PlatformNotReady
from homeassistant.helpers.entity_platform import AddEntitiesCallback
@@ -83,7 +83,7 @@ SENSORS: tuple[AdGuardHomeEntityDescription, ...] = (
key="average_speed",
name="Average processing speed",
icon="mdi:speedometer",
native_unit_of_measurement=TIME_MILLISECONDS,
native_unit_of_measurement=UnitOfTime.MILLISECONDS,
value_fn=lambda adguard: adguard.stats.avg_processing_time(),
),
AdGuardHomeEntityDescription(

View File

@@ -0,0 +1,11 @@
{
"config": {
"step": {
"user": {
"data": {
"password": "Slapta\u017eodis"
}
}
}
}
}

View File

@@ -4,7 +4,7 @@
"already_configured": "O servi\u00e7o j\u00e1 est\u00e1 configurado"
},
"error": {
"cannot_connect": "Falha na liga\u00e7\u00e3o"
"cannot_connect": "A liga\u00e7\u00e3o falhou"
},
"step": {
"hassio_confirm": {
@@ -13,7 +13,7 @@
},
"user": {
"data": {
"host": "Servidor",
"host": "Endere\u00e7o",
"password": "Palavra-passe",
"port": "Porta",
"ssl": "Utiliza um certificado SSL",

View File

@@ -20,7 +20,8 @@
"ssl": "Pou\u017e\u00edva SSL certifik\u00e1t",
"username": "Pou\u017e\u00edvate\u013esk\u00e9 meno",
"verify_ssl": "Overi\u0165 SSL certifik\u00e1t"
}
},
"description": "Nastavte svoju in\u0161tanciu AdGuard Home pre monitorovanie a riadenie."
}
}
}

View File

@@ -14,7 +14,7 @@ from homeassistant.components.climate import (
HVACMode,
)
from homeassistant.config_entries import ConfigEntry
from homeassistant.const import ATTR_TEMPERATURE, PRECISION_WHOLE, TEMP_CELSIUS
from homeassistant.const import ATTR_TEMPERATURE, PRECISION_WHOLE, UnitOfTemperature
from homeassistant.core import HomeAssistant
from homeassistant.helpers.entity_platform import AddEntitiesCallback
@@ -83,7 +83,7 @@ async def async_setup_entry(
class AdvantageAirAC(AdvantageAirAcEntity, ClimateEntity):
"""AdvantageAir AC unit."""
_attr_temperature_unit = TEMP_CELSIUS
_attr_temperature_unit = UnitOfTemperature.CELSIUS
_attr_target_temperature_step = PRECISION_WHOLE
_attr_max_temp = 32
_attr_min_temp = 16
@@ -149,7 +149,7 @@ class AdvantageAirAC(AdvantageAirAcEntity, ClimateEntity):
class AdvantageAirZone(AdvantageAirZoneEntity, ClimateEntity):
"""AdvantageAir Zone control."""
_attr_temperature_unit = TEMP_CELSIUS
_attr_temperature_unit = UnitOfTemperature.CELSIUS
_attr_target_temperature_step = PRECISION_WHOLE
_attr_max_temp = 32
_attr_min_temp = 16

Some files were not shown because too many files have changed in this diff Show More