diff --git a/DESCRIPTION b/DESCRIPTION index b07baafb..e5fde1e9 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -1,12 +1,14 @@ Package: batchtools Title: Tools for Computation on Batch Systems -Version: 0.9.18 +Version: 0.9.19 Authors@R: c( person("Michel", "Lang", , "michellang@gmail.com", role = c("cre", "aut"), comment = c(ORCID = "0000-0001-9754-0393")), person("Bernd", "Bischl", , "bernd_bischl@gmx.net", role = "aut"), person("Dirk", "Surmann", , "surmann@statistik.tu-dortmund.de", role = "ctb", - comment = c(ORCID = "0000-0003-0873-137X")) + comment = c(ORCID = "0000-0003-0873-137X")), + person("Lukas", "Burk", , "sgithub@quantenbrot.de", role = "ctb", + comment = c(ORCID = "0000-0001-7528-3795")) ) Description: As a successor of the packages 'BatchJobs' and 'BatchExperiments', this package provides a parallel implementation of diff --git a/NEWS.md b/NEWS.md index 281e5c35..59115f91 100644 --- a/NEWS.md +++ b/NEWS.md @@ -1,3 +1,7 @@ +# batchtools 0.9.19 + +* Fixed a bug in `Worker` initialization where the script path was not assigned for remote SSH hosts, causing `runOSCommand()` to fail with NULL argument. + # batchtools 0.9.18 * Fixed CRAN issues with documentation diff --git a/R/Worker.R b/R/Worker.R index 3436e5a1..42c5c50e 100644 --- a/R/Worker.R +++ b/R/Worker.R @@ -52,6 +52,7 @@ Worker = R6Class("Worker", if (!testString(script, min.chars = 1L)) { stopf("Unable to locate helper script on SSH node '%s'. Is batchtools installed on the node?", nodename) } + self$script = script } self$ncpus = ncpus %??% as.integer(private$run("number-of-cpus")$output) diff --git a/R/runOSCommand.R b/R/runOSCommand.R index c410c126..226b8458 100644 --- a/R/runOSCommand.R +++ b/R/runOSCommand.R @@ -30,9 +30,8 @@ runOSCommand = function(sys.cmd, sys.args = character(0L), stdin = "", nodename if (!isLocalHost(nodename)) { command = sprintf("%s %s", sys.cmd, stri_flatten(sys.args, " ")) - if (getRversion() < "4.0.0") { - command = shQuote(command) - } + # The shQuote'ing appears to be necessary even on R >= 4.5 + command = shQuote(command) command = stri_replace_all_fixed(command, "\\$", "$") sys.args = c("-q", nodename, command) sys.cmd = "ssh"