From 09324f743a4bcc433ccbd4b3634ba71ea877f299 Mon Sep 17 00:00:00 2001 From: jasenfinch Date: Fri, 29 Apr 2022 17:03:12 +0100 Subject: [PATCH 1/8] Ignore RStudio project files --- .Rbuildignore | 2 ++ .gitignore | 2 ++ 2 files changed, 4 insertions(+) diff --git a/.Rbuildignore b/.Rbuildignore index 4d607a1..c20741d 100644 --- a/.Rbuildignore +++ b/.Rbuildignore @@ -60,3 +60,5 @@ Rplots.pdf$ #---------------------------- ^.ghi ^.issues +^.*\.Rproj$ +^\.Rproj\.user$ diff --git a/.gitignore b/.gitignore index f9413af..bd07cc9 100644 --- a/.gitignore +++ b/.gitignore @@ -10,3 +10,5 @@ .make/*.md.rsp docs/ .Rdump +.Rproj.user +BiocParallel.FutureParam.Rproj From ba79e22333f3f2e40cb61d356f746ff4695c74bf Mon Sep 17 00:00:00 2001 From: jasenfinch Date: Fri, 29 Apr 2022 17:08:52 +0100 Subject: [PATCH 2/8] add missing arguments to bpiterate --- NAMESPACE | 1 + R/FutureParam-class.R | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/NAMESPACE b/NAMESPACE index e433fdf..f74973a 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -10,6 +10,7 @@ importFrom(BiocParallel,bplog) importFrom(BiocParallel,bplogdir) importFrom(BiocParallel,bploop) importFrom(BiocParallel,bpok) +importFrom(BiocParallel,bpoptions) importFrom(BiocParallel,bpparam) importFrom(BiocParallel,bpstopOnError) importFrom(BiocParallel,bpthreshold) diff --git a/R/FutureParam-class.R b/R/FutureParam-class.R index d41593e..0360ff3 100644 --- a/R/FutureParam-class.R +++ b/R/FutureParam-class.R @@ -173,9 +173,9 @@ setMethod("bplapply", c("ANY", "FutureParam"), function(X, FUN, ..., BPREDO=list #' @importFrom methods setMethod -#' @importFrom BiocParallel bploop bplog bptimeout bpstopOnError +#' @importFrom BiocParallel bploop bplog bptimeout bpstopOnError bpoptions #' @importFrom future future resolve value -setMethod("bpiterate", c("ANY", "ANY", "FutureParam"), function(ITER, FUN, ..., REDUCE, init, reduce.in.order=FALSE, BPPARAM=bpparam()) { +setMethod("bpiterate", c("ANY", "ANY", "FutureParam"), function(ITER, FUN, ..., REDUCE, init, reduce.in.order=FALSE, BPREDO = list(),BPPARAM=bpparam(),BPOPTIONS = bpoptions()) { .composeTry <- importBP(".composeTry") ITER <- match.fun(ITER) From 7d71ea82165d310f832de9ed65e2d91764a12b95 Mon Sep 17 00:00:00 2001 From: jasenfinch Date: Sat, 30 Apr 2022 10:01:23 +0100 Subject: [PATCH 3/8] fix arguments declared to .composeTry --- R/FutureParam-class.R | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/R/FutureParam-class.R b/R/FutureParam-class.R index 0360ff3..455487b 100644 --- a/R/FutureParam-class.R +++ b/R/FutureParam-class.R @@ -121,10 +121,11 @@ setReplaceMethod("bplogdir", c("FutureParam", "character"), function(x, value) { ### #' @importFrom methods setMethod -#' @importFrom BiocParallel bplog bpok bpparam bpstopOnError bpthreshold bptimeout +#' @importFrom BiocParallel bplog bpok bpparam bpstopOnError bpthreshold bptimeout bpexportglobals #' @importFrom future future resolve value setMethod("bplapply", c("ANY", "FutureParam"), function(X, FUN, ..., BPREDO=list(), BPPARAM=bpparam()) { .composeTry <- importBP(".composeTry") + .workerOptions <- importBP('.workerOptions') .error_bplist <- importBP(".error_bplist") .log_load <- importBP(".log_load") .redo_index <- importBP(".redo_index") @@ -140,9 +141,14 @@ setMethod("bplapply", c("ANY", "FutureParam"), function(X, FUN, ..., BPREDO=list .log_load(bplog(BPPARAM), bpthreshold(BPPARAM)) - FUN <- .composeTry(FUN, bplog(BPPARAM), bpstopOnError(BPPARAM), - stop.immediate=bpstopOnError(BPPARAM), - timeout=bptimeout(BPPARAM)) + OPTIONS <- .workerOptions( + log = bplog(BPPARAM), + stop.on.error = bpstopOnError(BPPARAM), + timeout = bptimeout(BPPARAM), + exportglobals = bpexportglobals(BPPARAM) + ) + + FUN <- .composeTry(FUN, OPTIONS, bpRNGseed(BPPARAM)) ## Create futures fs <- list() @@ -177,7 +183,8 @@ setMethod("bplapply", c("ANY", "FutureParam"), function(X, FUN, ..., BPREDO=list #' @importFrom future future resolve value setMethod("bpiterate", c("ANY", "ANY", "FutureParam"), function(ITER, FUN, ..., REDUCE, init, reduce.in.order=FALSE, BPREDO = list(),BPPARAM=bpparam(),BPOPTIONS = bpoptions()) { .composeTry <- importBP(".composeTry") - + .workerOptions <- importBP(".workerOptions") + ITER <- match.fun(ITER) FUN <- match.fun(FUN) hasREDUCE <- !missing(REDUCE) @@ -192,8 +199,7 @@ setMethod("bpiterate", c("ANY", "ANY", "FutureParam"), function(ITER, FUN, ..., } } - FUN <- .composeTry(FUN, bplog(BPPARAM), bpstopOnError(BPPARAM), - timeout=bptimeout(BPPARAM)) + FUN <- .composeTry(FUN, bpstopOnError(BPPARAM),bpRNGseed(BPPARAM)) ARGFUN <- function(value) c(list(value), list(...)) From af0a8af8a184d49eb86947654b9994cb52e38802 Mon Sep 17 00:00:00 2001 From: jasenfinch Date: Sat, 30 Apr 2022 10:05:28 +0100 Subject: [PATCH 4/8] fix argument declared to .composeTry in bpiterate --- R/FutureParam-class.R | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/R/FutureParam-class.R b/R/FutureParam-class.R index 455487b..93041ce 100644 --- a/R/FutureParam-class.R +++ b/R/FutureParam-class.R @@ -199,7 +199,14 @@ setMethod("bpiterate", c("ANY", "ANY", "FutureParam"), function(ITER, FUN, ..., } } - FUN <- .composeTry(FUN, bpstopOnError(BPPARAM),bpRNGseed(BPPARAM)) + OPTIONS <- .workerOptions( + log = bplog(BPPARAM), + stop.on.error = bpstopOnError(BPPARAM), + timeout = bptimeout(BPPARAM), + exportglobals = bpexportglobals(BPPARAM) + ) + + FUN <- .composeTry(FUN, OPTIONS, bpRNGseed(BPPARAM)) ARGFUN <- function(value) c(list(value), list(...)) From 8e898f99f89156efc5e9a9ae21d4841d5b984055 Mon Sep 17 00:00:00 2001 From: jasenfinch Date: Sat, 30 Apr 2022 10:08:20 +0100 Subject: [PATCH 5/8] update NAMESPACE --- NAMESPACE | 1 + 1 file changed, 1 insertion(+) diff --git a/NAMESPACE b/NAMESPACE index f74973a..3c581e4 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -6,6 +6,7 @@ if (getRversion() >= "3.6.0") { importFrom(BiocParallel,.BiocParallelParam_prototype) } export(FutureParam) +importFrom(BiocParallel,bpexportglobals) importFrom(BiocParallel,bplog) importFrom(BiocParallel,bplogdir) importFrom(BiocParallel,bploop) From df883beb4df09edb11ec7703c2258f30372d2601 Mon Sep 17 00:00:00 2001 From: jasenfinch Date: Sat, 30 Apr 2022 10:16:17 +0100 Subject: [PATCH 6/8] add future.batchtools to DESCRIPTION suggests field --- DESCRIPTION | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/DESCRIPTION b/DESCRIPTION index 970004e..5eb6bdf 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -8,7 +8,9 @@ Imports: methods Suggests: markdown, - R.rsp + R.rsp, + future.batchtools +Remotes: VignetteBuilder: R.rsp Title: Use Futures with BiocParallel @@ -21,5 +23,5 @@ License: LGPL (>= 2.1) LazyLoad: TRUE URL: https://BiocParallel.FutureParam.futureverse.org, https://github.com/HenrikBengtsson/BiocParallel.FutureParam BugReports: https://github.com/HenrikBengtsson/BiocParallel.FutureParam/issues -RoxygenNote: 7.1.1 +RoxygenNote: 7.1.2 Roxygen: list(markdown = TRUE) From 5b8fd78d3ca3f7dae6e2d78774986758dfdcbc26 Mon Sep 17 00:00:00 2001 From: jasenfinch Date: Sat, 30 Apr 2022 10:16:34 +0100 Subject: [PATCH 7/8] add missing function import. Update NAMESPACE --- NAMESPACE | 1 + R/FutureParam-class.R | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/NAMESPACE b/NAMESPACE index 3c581e4..ebe6c8a 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -6,6 +6,7 @@ if (getRversion() >= "3.6.0") { importFrom(BiocParallel,.BiocParallelParam_prototype) } export(FutureParam) +importFrom(BiocParallel,bpRNGseed) importFrom(BiocParallel,bpexportglobals) importFrom(BiocParallel,bplog) importFrom(BiocParallel,bplogdir) diff --git a/R/FutureParam-class.R b/R/FutureParam-class.R index 93041ce..5727407 100644 --- a/R/FutureParam-class.R +++ b/R/FutureParam-class.R @@ -179,7 +179,7 @@ setMethod("bplapply", c("ANY", "FutureParam"), function(X, FUN, ..., BPREDO=list #' @importFrom methods setMethod -#' @importFrom BiocParallel bploop bplog bptimeout bpstopOnError bpoptions +#' @importFrom BiocParallel bploop bplog bptimeout bpstopOnError bpoptions bpRNGseed #' @importFrom future future resolve value setMethod("bpiterate", c("ANY", "ANY", "FutureParam"), function(ITER, FUN, ..., REDUCE, init, reduce.in.order=FALSE, BPREDO = list(),BPPARAM=bpparam(),BPOPTIONS = bpoptions()) { .composeTry <- importBP(".composeTry") From 9f871c9e48d960b3aff567ee021d5e0fca4b276c Mon Sep 17 00:00:00 2001 From: jasenfinch Date: Thu, 1 Dec 2022 17:57:19 +0000 Subject: [PATCH 8/8] Add BiocParallel to remotes field in DESCRIPTION --- DESCRIPTION | 1 + 1 file changed, 1 insertion(+) diff --git a/DESCRIPTION b/DESCRIPTION index 5eb6bdf..3872d16 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -11,6 +11,7 @@ Suggests: R.rsp, future.batchtools Remotes: + bioc::BiocParallel VignetteBuilder: R.rsp Title: Use Futures with BiocParallel