fix module context starting before Home Assistant; see #784 #785
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Explanation:
Before this PR, all imported modules were always assigned
auto_start = True, which caused their triggers to run immediately after the file was loaded:load files from disk → import modules → module.set_auto_start(True) → run module triggers (including the factories) →
wait for HA startup → run file-level triggers
After this PR, a module inherits the auto_start value of the current context:
• If Home Assistant is already running, behavior remains unchanged.
• If HA is still starting up, the current context has auto_start == False, and the module receives the same value.
In this case, the module will start later in
start_global_context, together with all other contexts.