Commit Graph

228 Commits

Author SHA1 Message Date
rlippmann
f5911bcad6 Add slots to dataclasses in default_config (#91410)
* add dataclass slots to default config items

* remove slots from sun mixing
2023-04-14 14:22:39 -04:00
Franck Nijhof
ca1a12898c Enable Ruff D212 (#87347) 2023-02-03 23:08:48 +01:00
Karlie Meads
156307f3f2 Fix logic of disabled condition for "OR" (#79718) 2023-01-16 21:08:09 +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
a6217ca9b9 Improve error message when an automation fails to validate (#83977) 2022-12-21 23:20:50 +01:00
Erik Montnemery
9bd676aff6 Improve automation reload (#81854)
* Improve automation reload

* Small tweak

* Improve
2022-11-10 14:44:55 +01:00
Erik Montnemery
627bd82766 Simplify parsing of script and automation config (#80465) 2022-10-17 11:42:17 +02:00
Erik Montnemery
4ebf9df901 Unconditionally call DomainBlueprints.populate (#80336) 2022-10-14 12:03:43 -04:00
Erik Montnemery
284893d942 Fix reload of automation and scripts when blueprint changed (#80322) 2022-10-14 16:43:09 +02:00
Erik Montnemery
81f40afd80 Only reload modified automations (#80282)
* Only reload modified automations

* Update tests

* Adjust spelling

* Improve efficiency of matching automations and configurations

* Reload automations without an alias if they have been moved

* Add test

* Add test

* Add test
2022-10-14 15:28:03 +02:00
Paulus Schoutsen
4843d330f3 Allow fetching automation config (#79130) 2022-09-28 12:49:00 +02:00
epenet
b4afb1cb6b Make use of generic EntityComponent (#78492) 2022-09-15 11:53:00 +02:00
Erik Montnemery
30702bdcd2 Deduplicate some code in scripts and automations (#78443) 2022-09-15 07:41:11 +02:00
epenet
996bcbdac6 Make EntityComponent generic (#78473) 2022-09-14 14:16:23 -04:00
Erik Montnemery
2ba0f42acc Prevent deleting blueprints which are in use (#78444) 2022-09-14 16:47:08 +02:00
epenet
5e338d2166 Improve type hints in automation (#78368)
* Improve type hints in automation

* Apply suggestion

* Apply suggestion

* Apply suggestion

* Add Protocol for IfAction

* Use ConfigType for IfAction

* Rename variable
2022-09-14 13:04:09 +02:00
J. Nick Koston
47848b7cf8 Fix IssueSeverity import (#77338) 2022-08-25 21:52:33 -05:00
Franck Nijhof
5f0cca9b26 Raise repairs issue if automation calls unknown service (#76949) 2022-08-25 20:56:26 -04:00
Franck Nijhof
9843753f30 Add alias support to all triggers (#77184) 2022-08-22 17:43:09 -04:00
Erik Montnemery
1c1b23ef69 Correct referenced entities and devices for event triggers (#76818) 2022-08-15 17:35:30 -04:00
Marc Mueller
c93d9d9a90 Move AutomationActionType to helpers.trigger (#76790) 2022-08-15 08:37:11 -04:00
Marc Mueller
70aeaa3c76 Use Callback protocol for AutomationActionType (#76054) 2022-08-09 16:10:26 -04:00
Franck Nijhof
63679d3d29 Fix missing device & entity references in automations (#71103) 2022-05-01 21:49:50 -07:00
J. Nick Koston
c3108b3899 Exclude attributes for automation and script domains (#70168) 2022-04-18 12:10:18 +02:00
Erik Montnemery
46f27fdefd Don't prevent automations from triggering themselves (#68178) 2022-03-15 18:48:54 +01:00
Marc Mueller
67c35652f0 Update typing - collections.abc (2) (#63934) 2022-01-12 09:04:37 +01:00
Marc Mueller
4e2cd1bec0 Update typing (2) [a-i] (#63923) 2022-01-11 21:23:26 +01:00
Marc Mueller
40262c4763 Fix exception import locations (#63454) 2022-01-05 15:00:49 +01:00
epenet
545e321002 Add init type hints [a] (#63098)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-30 21:17:05 -08:00
Erik Montnemery
caf5ee2fab Remove optional validation when creating conditions (#60481) 2021-11-28 14:54:07 +01:00
Marc Mueller
84618fa831 Use assignment expressions 30 (#58714) 2021-10-30 16:33:42 +02:00
Marc Mueller
7063c05127 Use assignment expressions 33 (#58717) 2021-10-30 16:32:41 +02:00
Erik Montnemery
961ee717ef Store automation and script traces (#56894)
* Store automation and script traces

* Pylint

* Deduplicate code

* Fix issues when no stored traces are available

* Store serialized data for restored traces

* Update WS API

* Update test

* Restore context

* Improve tests

* Add new test files

* Rename restore_traces to async_restore_traces

* Refactor trace.websocket_api

* Defer loading stored traces

* Lint

* Revert refactoring which is no longer needed

* Correct order when restoring traces

* Apply suggestion from code review

* Improve test coverage

* Apply suggestions from code review
2021-10-19 10:23:23 +02:00
Marc Mueller
2b72b7b7b9 Use assignment expressions 09 (#57790) 2021-10-17 20:19:56 +02:00
Ville Skyttä
b10fc89a6b Automation trigger info type hint improvements (#55402)
* Make automation trigger info a TypedDict

* zwave_js trigger type hint fixes

* Remove redundant automation trigger info field presence checks

* Use async_initialize_triggers in mqtt and tasmota device_trigger tests
2021-09-04 02:25:51 +02:00
Paulus Schoutsen
8377b557da Packages to support config platforms (#54085) 2021-08-05 13:11:01 -07:00
Richard T. Schaefer
9e219d9b6e Add this variable for use by automation and script templates (#52774) 2021-07-28 09:09:13 +02:00
Robert Hillis
55b0d562ce Use entity class attributes for automation (#52694)
* Use entity class attributes for automation

* tweak
2021-07-13 15:01:43 +02:00
Erik Montnemery
4c9f12b9c5 Correct trace path for trigger with custom id (#51847) 2021-06-14 17:09:20 +02:00
Erik Montnemery
7b5e63132c Prevent parallel reload of automations (#50008) 2021-05-25 08:50:50 -07:00
Erik Montnemery
ce64690817 Make number of stored traces configurable (#49728) 2021-04-27 10:27:12 -07:00
Ruslan Sayfutdinov
37466ae423 Don't ignore mypy errors by default (#49270) 2021-04-26 14:23:21 +02:00
Erik Montnemery
76d0f93ec1 Include blueprint input in automation trace (#48575) 2021-04-01 13:34:47 -07:00
Erik Montnemery
9f481e1642 Include script script_execution in script and automation traces (#48576) 2021-04-01 09:42:23 -07:00
Erik Montnemery
b26779a27a Add id to automation triggers (#48464) 2021-03-31 14:56:04 +02:00
Bram Kragten
d1a1e70726 Search for areas used in automations and scripts (#48499)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Bram Kragten <mail@bramkragten.nl>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-03-30 15:01:56 -07:00
Erik Montnemery
7534b54e4e Merge condition and action traces (#48461) 2021-03-29 14:06:49 -07:00
Erik Montnemery
a49989241a Refactor tracing: Move trace support to its own integration (#48224) 2021-03-22 19:19:38 +01:00
Paulus Schoutsen
f67e8b4369 Populate trigger variable when manually triggering automation (#48202)
* Populate trigger variable when manually triggering automation

* Update tests/components/automation/test_init.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-03-22 08:22:32 +01:00
Erik Montnemery
346a724ac3 Mark base components' state_attribute @final, rename others to extra_state_attributes (#48161)
* Mark base state_attributes @final, rename others to extra_state_attributes

* Fix calendar, update tests
2021-03-21 10:38:24 +01:00