Running commands sequentially is a good and safe default, but for some instances, running the commands in parallel is better: it reduces end-to-end runtime if the commands are long-running and independent. It's implemented with bash built-ins only (read, &, wait, etc) to avoid adding more deps. The output in parallel mode is changed slightly so each line can be traced back to its writer.
I've also added some tests of both the existing behavior and the new.
Running commands sequentially is a good and safe default, but for some instances, running the commands in parallel is better: it reduces end-to-end runtime if the commands are long-running and independent. It's implemented with bash built-ins only (
read
,&
,wait
, etc) to avoid adding more deps. The output in parallel mode is changed slightly so each line can be traced back to its writer.I've also added some tests of both the existing behavior and the new.