rscript() can now redirect the standard error of the subprocess its standard output. This allows to keep them correctly interleaved. For this, you need to either set the
stderr argument to the special string
"2>&1", or to the same output file as specified for
rscript() now pass
... arguments to
... arguments to the
processx::process constructor. For
rscript_process extra arguments can be specified as
options$extra, these are also passed to the
processx::process constructor (#100).
Better default for the
repos option in callr subprocesses. callr no longer creates duplicate “CRAN” entries. By default the new
default_repos() function is used to set
repos in the subprocess.
options("repos") to the child process as is, without checking. Closes #82.
r_session$run_with_output() now returns an S3 object with class
r_session$run*() handle interrupts properly. It tries to interrupt the background process fist, kills it if it is not interruptable, and then re-throws the interrupt condition, going back to the top level prompt if the re-thrown condition is un-caught.
callr now handles the case when the subprocess calls
callr now uses the processx package, instead of embedded code, to create and control processes.
Fix a race condition on Windows, when creating named pipes for stdout or stderr. The client sometimes didn’t wait for the server, and callr failed with ERROR_PIPE_BUSY (231, All pipe instances are busy).
Fix compilation issues on CRAN’s Solaris machine
Fix a test failure on CRAN’s macOS machine
Support block callbacks, in addition to line callbacks. Block callbacks are called for arbitrary chunks of output, even without a newline
Support timeouts, via the
Fix bug when stdout and stderr are redirected to the same file
rcmd_safe_env() to allow extending the environment variables set in safe mode
rcmd() gets a
rcmd() gets a
wd argument to set the working directory