Skip to content

Conversation

@dmamelin
Copy link
Contributor

@dmamelin dmamelin commented Dec 9, 2025

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.

@ALERTua
Copy link
Contributor

ALERTua commented Dec 9, 2025

This PR did not break anything for me, it seems.

@dmamelin
Copy link
Contributor Author

dmamelin commented Dec 9, 2025

Perhaps in start_global_context, modules should be launched first so that their triggers and trigger-factories can execute, and then everything else. This would preserve the startup order as before.
But I don't see the point - the order of execution of pyscript triggers isn't guaranteed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants