J. Nick Koston
31c21126a8
Implement time tracking in templates ( #41147 )
...
Co-authored-by: Anders Melchiorsen <amelchio@nogoto.net>
2020-10-19 11:02:43 +02:00
J. Nick Koston
77b95ae8a1
Reduce domain states rate limit to 1 per second ( #42004 )
2020-10-19 10:18:25 +02:00
J. Nick Koston
3a9b2392f8
Suppress domain and all listeners during template rate limit ( #42005 )
2020-10-19 10:17:51 +02:00
Paulus Schoutsen
6ab9b7355f
Add tests for singleton decorator ( #42055 )
2020-10-18 22:41:22 +02:00
Philip Allgaier
dde6305549
Cleanup unused loggers (components N-Z + tests) ( #41982 )
2020-10-16 21:24:08 -05:00
J. Nick Koston
21cc23244d
Improve template ratelimit performance ( #41741 )
2020-10-15 12:02:05 +02:00
J. Nick Koston
53a1d92f2b
Permit event trackers to accept an empty list of entities or domains ( #41857 )
2020-10-15 09:26:51 +02:00
J. Nick Koston
1bcedd15b3
Update sun listeners to use HassJob ( #41695 )
...
Avoids checking the callable type every time sun events trigger
2020-10-13 21:37:10 +02:00
Erik Montnemery
12a6d10168
Log exceptions in EntityPlatform.async_add_entities ( #41730 )
...
Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-10-13 15:35:27 +02:00
Ville Skyttä
f28c3273c2
Upgrade mypy to 0.790 ( #41595 )
2020-10-12 19:17:30 -05:00
J. Nick Koston
b897ca7260
Ensure all template errors are caught and the websocket api reports them ( #41719 )
2020-10-12 16:38:24 +02:00
Matthias Alphart
93a9a11065
Add config validator helper positive_float ( #41640 )
2020-10-11 22:04:49 +02:00
Raman Gupta
d3734aae9d
Allow custom_serializer to recognize cv.string and cv.boolean to make config schema more reusable ( #41532 )
2020-10-09 09:36:54 +02:00
J. Nick Koston
852d1b2e67
Update discovery to use HassJob ( #41511 )
...
Predetermine the listener types for discovery
2020-10-09 09:35:28 +02:00
J. Nick Koston
3a863c4a0f
Fully convert async_track_time_interval to use HassJob ( #41513 )
...
The callback type for interval_listener was being determined
each time the interval hit.
This was missed in the original conversion.
2020-10-09 09:35:09 +02:00
J. Nick Koston
5ebf5996f1
Predetermine listener type for script change listeners ( #41510 )
2020-10-09 08:41:12 +02:00
J. Nick Koston
0b3bea0282
Use async_add_hass_job for debouncer ( #41449 )
2020-10-09 08:40:36 +02:00
Erik Montnemery
343e5d64b8
Add MQTT integration discovery ( #41332 )
...
* Add MQTT integration discovery
* Add script/hassfest/mqtt.py
* Unsubscribe if config entry exists
* Add homeassistant/generated/mqtt.py
* Fix bad loop
* Improve tests
* Improve tests
* Apply suggestions from code review
Co-authored-by: Fabian Affolter <mail@fabian-affolter.ch>
* Prevent initiating multiple config flows
Co-authored-by: Fabian Affolter <mail@fabian-affolter.ch>
2020-10-07 18:30:51 +02:00
J. Nick Koston
9e1461da62
Determine how to run listeners at setup time instead of execution time ( #41304 )
2020-10-07 16:51:50 +02:00
J. Nick Koston
8d5c124deb
Improve performance of generating non-cryptographically secure uuids ( #41314 )
2020-10-07 16:37:01 +02:00
Franck Nijhof
ee914366a8
Add native Python types support to templates ( #41227 )
...
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2020-10-07 00:05:52 +02:00
J. Nick Koston
2fabd4edb8
Prevent collecting states already referenced by domain or all ( #41308 )
...
The template engine would collect all the states in
a domain or all states while iterating even though
they were already included in all or the domain
This lead to the rate limit not being applied to
templates that iterated all states that also
accessed a collectable property because the engine
incorrectly believed they were specifically
referenced.
2020-10-06 07:25:05 +02:00
J. Nick Koston
f50976a0b3
Switch to asyncio.wait for slow update warning implementation ( #41184 )
2020-10-05 15:28:15 +02:00
Paulus Schoutsen
8ae3f575dd
Add extended validation for script repeat/choose ( #41265 )
2020-10-05 14:03:48 +02:00
Paulus Schoutsen
fe2c16dc29
Allow any value when triggering on state attribute ( #41261 )
2020-10-05 12:53:12 +02:00
J. Nick Koston
51da605b9f
Remove manual rate_limit control directive from templates ( #41225 )
...
Increase default rate limit for all states and entire
domain states to one minute
Ensure specifically referenced entities are excluded from
the rate limit
2020-10-04 22:40:04 +02:00
Franck Nijhof
38d132addd
Fix referenced entity extraction when service call entity contains a template ( #41107 )
2020-10-03 20:55:59 +02:00
springstan
a2c3c33b22
Use core GitHub URL in all files ( #41089 )
2020-10-03 00:04:11 +02:00
J. Nick Koston
ab17b4ab70
Simplify template tracking and make it easier to follow ( #41030 )
2020-10-02 07:27:39 -05:00
Paulus Schoutsen
22b4ad6308
Allow processing data in CoordinatorEntity before writing state ( #40926 )
2020-10-02 09:16:37 +02:00
J. Nick Koston
b45215f1d2
Implement template rate_limit directive ( #40667 )
2020-10-01 21:39:44 +02:00
springstan
c7ebfdb403
Use single_instance_allowed for webhook config flows ( #40965 )
2020-10-01 20:44:13 +02:00
J. Nick Koston
7285c7806f
Seperate state change tracking from async_track_template_result into async_track_state_change_filtered ( #40803 )
2020-10-01 10:19:20 +02:00
J. Nick Koston
205cf57a77
Code cleanups for async_track_template_result ( #40737 )
2020-09-30 13:00:21 +02:00
J. Nick Koston
e564af0b5b
Improve performance of accessing template state ( #40323 )
...
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-09-28 10:35:12 -05:00
J. Nick Koston
e08ee282ab
Abort execution of template renders that overwhelm the system ( #40647 )
2020-09-28 14:43:22 +02:00
J. Nick Koston
57b7559832
Ensure all jinja2 errors are trapped and displayed in the developer tools ( #40624 )
...
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-09-26 17:03:32 -05:00
J. Nick Koston
3261a904da
Reduce the number of template re-renders when we are only counting states ( #40272 )
2020-09-26 16:29:49 -05:00
J. Nick Koston
35533407fe
Improve performance of counting and iterating states in templates ( #40250 )
...
Co-authored-by: Anders Melchiorsen <amelchio@nogoto.net>
2020-09-26 11:36:47 -05:00
Franck Nijhof
c64eec3238
Add bare hostname as valid known hostname in get_url helper ( #40510 )
2020-09-26 09:36:03 +02:00
Ville Skyttä
167490b71c
Complete helpers.service type hints ( #40193 )
...
* Complete helpers.service type hints
* Update homeassistant/helpers/service.py
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
* Handle None entity.supported_features
2020-09-20 12:03:58 +03:00
Philip Allgaier
ddbcfe83dd
Catch TypeError in strptime() template helper ( #40226 )
2020-09-18 15:29:40 +02:00
J. Nick Koston
e9abb357e4
Log template listeners when debug logging is on ( #40180 )
2020-09-17 14:45:30 -05:00
springstan
db582bdc1b
Use http status constants more, add HTTP_ACCEPTED and HTTP_BAD_GATEWAY ( #39993 )
...
* Use http status codes and add HTTP_BAD_GATEWAY constant
* Address review comments:
- using constants in tado integration
- using constant in media_player init.py
* Add and use HTTP_ACCEPTED constant
2020-09-15 20:01:07 +03:00
J. Nick Koston
949bd8d738
Reduce listener cancelation code in template tracker ( #40040 )
2020-09-14 21:43:00 +02:00
Franck Nijhof
cd26384634
Fix entity extraction from Template conditions ( #40034 )
2020-09-13 22:05:45 +02:00
J. Nick Koston
ff4bb962c4
Cleanup and reduce duplicate code from recent template changes ( #40012 )
...
As a result of refactoring, there is duplicate code
we can now reduce.
Additionally `_wrap_state` can be removed because
it had unreachable checks for `None`
2020-09-13 09:21:11 -05:00
J. Nick Koston
aaa8083d49
Change template loop detection strategy to allow self-referencing updates when there are multiple templates ( #39943 )
2020-09-12 14:20:21 +02:00
Jakob Schlyter
9b49ca3820
Add template filter timedelta_seconds to create a timedelta from seconds ( #39608 )
2020-09-11 15:07:31 -05:00
J. Nick Koston
741487a1fc
Return the listeners with the template result for the websocket api ( #39925 )
2020-09-11 13:18:40 -05:00