v1.1.3
What's new
TUI
- Queue table supports multi-select.
Spacetoggles a*marker in the#column for the cursor row,Ctrl+Aselects everything,Escclears. With any selection: Remove selected drops every removable entry in one pass, Up / Down moves the whole group as a unit (rows that hit a boundary or a non-pending neighbour stay put while the rest still shift), and View log opens one tab per finished entry. - Zip + remove now run on a background daemon thread, so the next case starts as soon as the previous simulator exits while the previous output is still being archived. Tasks are serialised behind a single worker so multiple 7z runs don't thrash disk. The batch waits for any remaining tasks before declaring idle.
- Time and ETA columns share the same left-flush
H:MM:SSformat (up to 999h), so they line up cleanly. Elapsed time no longer rolls intoX days, ....
7-Zip
simulator.zip_ext(default.zip) picks the archive format from the filename extension. Switch to.7zfor LZMA2.simulator.zip_args(default[]) passes extra switches betweenaand the archive name. Defaults in the shipped template set-mx=5 -mmt=on(7z's own defaults, made explicit) so the knobs are discoverable.
Bug fixes
- Unquoted Windows paths typed / pasted into the Scene input no longer have their backslashes silently eaten (
shlex.splitis now called withposix=False).
Internal
- One-pass comment cleanup across the codebase, keeping the WHY notes (subprocess deadlock, OLE drag-drop modality, Textual binding collisions, etc.) and dropping the WHAT / historical references.