Changes¶
0.11¶
Commands can be now be composed from a format with
-k
.Non-job output, including errors, can now be redirect to an open file descriptor with
-e
.para can now be sent USR1 to let running jobs finish, but not start new ones.
-v
shows whole commands again.-l
now accepts 0 even if getloadavg(3) is not available.-s
has be renamed to-q
.Jobs are now sent a CONT before being sent a TERM to make sure that they are a in state in which they can handle the TERM.
0.10.1¶
Messages by para, not the jobs run by para, are now written to standard error atomically, if possible. This should make
-v
more orderly.
0.10¶
Jobs are now only started if no jobs are running or if the one minute load average is smaller than the number of available processors minus one (or, if the number or processors cannot be detected, smaller than two); the maximum load can be adjusted with
-l
.The number of commands that can be given is now indefinite.
Jobs now run in process groups of their own.
If the number of available processors can be detected, that number is now the default for
-j
.If
-f
is given and an error occurs, Para waits for running jobs to finish and then exits.Word-splitting now behaves the same was as in sh, save for that escaped newlines are interpreted as newlines (rather than spaces) and that trailing backslashes raise an error.
Pressing Ctrl-Z now suspends all running jobs.
-e
has been removed.-o
has been removed.-v
now shows how many jobs have succeeded and failed.Killing jobs can now be disabled with
-g0
.-j
no longer accepts 64.-i
no longer accepts 0.If a job exits because it received a signal, Para now exits with the appropriate status.
If a job exits because it received a signal, it is now counted as “failed” in the tally shown by
-v
(rather than being counted neither as “succeeded” nor as “failed”).Leading whitespace in commands is now ignored.
Giving the empty string as command no longer segfaults.
Giving a very long command no longer may segfault.
Option errors are no longer mangled on GNU-based systems.
Files should now be closed and streams be flushed on all systems.
Options that take numeric values now recognise overflow correctly.
Options that take numeric values now raise an error even if
strtoll()
is permissive.Giving the empty string as command now prints a more meaningful error.
0.9.2¶
Job output and errors can now be redirected to files with
-o
and-e
respectively.Para status reports no longer overwrite job output and vice versa.
“#” is no longer treated as starting a comment in commands.
0.9.1¶
-v
displays “Waiting for x jobs to finish …” again.“x jobs completed” message is now grammatically correct for x = 1.
0.9¶
-s
now suppresses, rather than shows job output.-q has been replaced with
-v
, which has the opposite meaning.Fixed out-of-bounds access if jobs exit with status 128.
0.8.2¶
Allow configuration of defaults and limits at compile-time.
Stop execution if a job receives a signal.
0.8.1¶
Minor changes to diagnostic output.
Added a man page.
0.8¶
First release