Skip to content

Confluence and other changes - #193

Merged
almostearthling merged 62 commits into
mainfrom
development
Apr 11, 2026
Merged

Confluence and other changes#193
almostearthling merged 62 commits into
mainfrom
development

Conversation

@almostearthling

Copy link
Copy Markdown
Owner

The code currently in the development branch introduces, in particular, these significant enhancements:

  • conditions that are activated by other conditions
  • support for TOML 1.1

and the following issue is also solved:

  • now literal TOML strings are used for Lua init script paths too in the configuration file.

Documentation has been updated accordingly.

Being active, in a production environment, for some days without major problems, the code can be considered mature enough for merging into main.

almostearthling and others added 30 commits February 14, 2026 16:54
The `confluence` feature is now labeled MCRT, which stands for Multiple Conditions to Run Tasks, and will probably keep sporting this name
Move the Lua library for the `confluence` feature to a Lua source file, eventually it will be copy-pasted into a literal string in order to make it available to the Lua interpreter in whenever
Additionally, copy the Lua library to a string in the Python module
Create specific form for confluence based conditions, and add a flag to the common part of condition forms that sets a condition to be confluent.
Part of the refactoring has been introduced in order to avoid circular imports and other bugs, with the side effects of less polluted namespaces
When editing an existing condition that is confluent, correctly update the form widgets by checking the specific flag, clearing tasks, and disabling task list related controls
Fix some issues while enabling/disabling task related widgets in conditions according to their being confluent or not; also, clean up temporary directory (`APPDATA/temp`) at startup: this should be mentioned in the documentation
This version uses the shared states feature available for Lua in whenever 1.2.0 to implement MCRT (aka confluence), and tests are successful; implements #187.
The path to the Lua initialization script is saved as literal for readability: fixes #192
almostearthling and others added 13 commits April 8, 2026 15:04
Version 0.14 implements TOML 1.1.0, thus closes #191
Describe ignored linter warnings in the project configuration file
The generated configuration file is now divided in two sections: the first one, at the beginning of the file, contains user defined items and global parameters, while the second part, below a specific comment that warns about modification, contains all the private items (the ones whose names begin with `__When__private__` and should not be modified), so that the configuration file itself becomes more manageable
Introduce RC state so that possible fine tuning can progressively change release number allowing for `pipx` to effectively upgrade the package when required
Check dependencies of conditions from tasks and of events from conditions before deletion, and show an error message if other items depend on the one being deleted; this should close #194
@almostearthling almostearthling linked an issue Apr 10, 2026 that may be closed by this pull request
@almostearthling
almostearthling merged commit 410acf3 into main Apr 11, 2026
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment