We are currently working on porting this changelog to the specifications in Keep a Changelog. This project adheres to Semantic Versioning.
- generalized the monitor so it can be launched in an independent process and reports errors better.
- New
monitor='hybrid'mode (now the default for tmux and slurmrun()): renders the live status table inline in the current shell and also spawns a detachedcmd_queue monitortmux session. Press[a]from the inline UI to attach (orswitch-clientwhen already inside tmux),[q]to stop watching while the queue keeps running. The side session is killed when the inline monitor exits.
monitorkwarg accepted values are now'hybrid' | 'inline' | 'tmux' | 'none'.'inline'reverts to its original pure-current-shell meaning; the'hybrid'mode covers the inline+tmux combination. The default is'hybrid', so a no-argrun()now spawns an attachable tmux side session whenever tmux is available.
- cwd will now handle failures if the directory doesnt exist in the bash queue
- general improvements to bash script construction with per-job preamble commands
- slurm now correctly respects header/preamble commands
- deprecate
header_commandsforpreamble - Dropped support for 3.8 and 3.9
- Transition from stubs to type annotations.
- Issue with slurm 21.x
- Experimental feature to automatically handle activating virtual environments, currently disabled by default set
--virtualenv_cmd=autoto use with cmdqueue boilerplate scripts. - Experimental airflow backend now has minimal functionality.
- Add initial support for monitoring passed and failed jobs in slurm.
- Fixed compatibility issues with Slurm v23
- Slurmify helper script
- Better slurm support
- fix
SlurmQueue.is_availablewith slurm version 19.x
- Add "gpus" as a CLI option
- Made pint an optional requirement
- Drop support for 3.6 and 3.7
- Fixed issue with single-argv commands in the bash interface
- CLI Boilerplate run-queue can now pass kwargs to the run method.
- Change the CLI to be modal
- Added experimental
vertical_chainsargument to draw-network-text
- Add yes argument to CLI
- Added more options to the serial queue
runmethod.
- allow workaround gres issue with slurm by explicitly specifying it.
- consolidated print commands code, all backends use the same logic now.
- Issue with
slurm_options
- the
cli_boilerplatesubmodule for help writing consistent scriptconfig + cmdqueue CLIs - util yaml
- Support for more sbatch options in slurm backend
- Bugs in slurm backend
- New experimental CLI-queue feature. Create a pipeline in bash using the CLI. Very basic atm.
- The log option to submit now default to False (due to non-obvious tee issues)
- The serial queue now correctly reorders jobs into a topological order when necessary.
- Experimental CLI to help cleanup dangling tmux jobs
- Deprecate
rprintin favor ofprint_commands. - Deprecate
use_richinprint_commandsin favor ofstyle='rich'.
- Tweaked text output
- Demo in the readme with better record demo scripts
- new
other_session_handlerarg to run, which can be ask, kill, ignore, or auto.
- Textual monitor will now restart if you decide not to quit.
- tmux queue is condensed when size=1
- UnknownBackendError and DuplicateJobError
- Add
tagsproperty to Jobs andexclude_tagstorprint.
-
The kill-other-session logic now only asks to kill sessions with the same name.
-
The serial / tmux queue now output stdout/stderr of each process to a log file and write a status indicating when a command has started to run.
-
Slurm is available check now looks to see if any node exists that is not down.
- Bug in serial queue when a dependency was None
- Improved textual monitor for tmux queue
- Keep track of skipped jobs in tmux / serial queue
- The tmux queue can now clean up other existing sessions if you start fresh
- Basic airflow queue.
- Job dependencies can now be given by name.
- Bug where serial queue would execute jobs if any dependency passed.
- Minor dependency issues
- Initial version