Babashka process Clojure library for shelling out / spawning sub-processes
exec
now converts :env
and :extra-env
keywords (@lread)java.nio.file.Path
as :dir
argumentPath
in :out
, :err
and :in
babashka.fs
to 0.4.18:cmd
to be passed in map argumentexec
always needs to resolve the full path of the program:write
instead of :append
to an :out-file
by default. This
default was undocumented so the impact should be small.babashka.process.pprint
if clojure.pprint
was already loadedshell
and process
: the recommended syntax is now: (process opts? & args)
alive?
to check if process is still alive (@grzm)process
' docstring to mention clojure standard streams (@ikappaki):err
in check
only if it is an input stream (@ikappaki)deref-ed
result to :exit-fn
:exit-fn
to process
: a one-argument function which will be called upon the termination of the process.tokenize
with single-quoted strings inside double-quoted stringbabashka.process
with older GraalVM librariesshell
function that behaves similar to babashka.tasks/shell
:out
and :err
for writing to filebabashka.process.pprint
which defines how to pprint
a Process
record (if
loaded).:pre-start-fn
to process
options, e.g. for printing the command before executionexec
but only in GraalVM binariesSimilar to tools.build.api/process
, process
now supports appending output to
files. To reduce cognitive overhead between libraries, process adopted the same
convention:
:out
+ (:write
/ :append
) and :out-file
+ file:err
+ (:write
/ :append
) and :err-file
+ filefs/which
deref
with timeout #50 (@SevereOverfl0w)$
macro #52Initial release
Can you improve this documentation? These fine people already did:
Michiel Borkent, Lee Read & BobEdit on GitHub
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close