CRAN Package Check Results for Package deSolve

Last updated on 2019-12-15 13:46:34 CET.

Flavor Version Tinstall Tcheck Ttotal Status Flags
r-devel-linux-x86_64-debian-clang 1.25 35.39 106.49 141.88 ERROR
r-devel-linux-x86_64-debian-gcc 1.25 28.14 94.05 122.19 OK
r-devel-linux-x86_64-fedora-clang 1.25 201.07 OK
r-devel-linux-x86_64-fedora-gcc 1.25 195.96 OK
r-devel-windows-ix86+x86_64 1.25 102.00 251.00 353.00 OK
r-devel-windows-ix86+x86_64-gcc8 1.25 97.00 254.00 351.00 OK
r-patched-linux-x86_64 1.25 30.44 109.92 140.36 OK
r-patched-solaris-x86 1.25 213.10 OK
r-release-linux-x86_64 1.25 32.49 111.73 144.22 OK
r-release-windows-ix86+x86_64 1.25 124.00 169.00 293.00 OK
r-release-osx-x86_64 1.25 OK
r-oldrel-windows-ix86+x86_64 1.25 94.00 174.00 268.00 OK
r-oldrel-osx-x86_64 1.25 OK

Additional issues

gcc10

Check Details

Version: 1.25
Check: examples
Result: ERROR
    Running examples in 'deSolve-Ex.R' failed
    The error most likely occurred in:
    
    > base::assign(".ptime", proc.time(), pos = "CheckExEnv")
    > ### Name: ode.band
    > ### Title: Solver for Ordinary Differential Equations; Assumes a Banded
    > ### Jacobian
    > ### Aliases: ode.band
    > ### Keywords: math
    >
    > ### ** Examples
    >
    >
    > ## =======================================================================
    > ## The Aphid model from Soetaert and Herman, 2009.
    > ## A practical guide to ecological modelling.
    > ## Using R as a simulation platform. Springer.
    > ## =======================================================================
    >
    > ## 1-D diffusion model
    >
    > ## ================
    > ## Model equations
    > ## ================
    > Aphid <- function(t, APHIDS, parameters) {
    + deltax <- c (0.5*delx, rep(delx, numboxes-1), 0.5*delx)
    + Flux <- -D*diff(c(0, APHIDS, 0))/deltax
    + dAPHIDS <- -diff(Flux)/delx + APHIDS*r
    +
    + list(dAPHIDS) # the output
    + }
    >
    > ## ==================
    > ## Model application
    > ## ==================
    >
    > ## the model parameters:
    > D <- 0.3 # m2/day diffusion rate
    > r <- 0.01 # /day net growth rate
    > delx <- 1 # m thickness of boxes
    > numboxes <- 60
    >
    > ## distance of boxes on plant, m, 1 m intervals
    > Distance <- seq(from = 0.5, by = delx, length.out = numboxes)
    >
    > ## Initial conditions, ind/m2
    > ## aphids present only on two central boxes
    > APHIDS <- rep(0, times = numboxes)
    > APHIDS[30:31] <- 1
    > state <- c(APHIDS = APHIDS) # initialise state variables
    >
    > ## RUNNING the model:
    > times <- seq(0, 200, by = 1) # output wanted at these time intervals
    > out <- ode.band(state, times, Aphid, parms = 0,
    + nspec = 1, names = "Aphid")
    >
    > ## ================
    > ## Plotting output
    > ## ================
    > image(out, grid = Distance, method = "filled.contour",
    + xlab = "time, days", ylab = "Distance on plant, m",
    + main = "Aphid density on a row of plants")
    >
    > matplot.1D(out, grid = Distance, type = "l",
    + subset = time %in% seq(0, 200, by = 10))
    >
    > # add an observed dataset to 1-D plot (make sure to use correct name):
    > data <- cbind(dist = c(0,10, 20, 30, 40, 50, 60),
    + Aphid = c(0,0.1,0.25,0.5,0.25,0.1,0))
    >
    > matplot.1D(out, grid = Distance, type = "l",
    + subset = time %in% seq(0, 200, by = 10),
    + obs = data, obspar = list(pch = 18, cex = 2, col="red"))
     ----------- FAILURE REPORT --------------
     --- failure: the condition has length > 1 ---
     --- srcref ---
    :
     --- package (from environment) ---
    deSolve
     --- call from context ---
    SetData(obs)
     --- call from argument ---
    if (!class(obs) %in% c("data.frame", "matrix")) stop("'obs' should be either a 'data.frame' or a 'matrix'")
     --- R stacktrace ---
    where 1: SetData(obs)
    where 2: matplot.1D(out, grid = Distance, type = "l", subset = time %in%
     seq(0, 200, by = 10), obs = data, obspar = list(pch = 18,
     cex = 2, col = "red"))
    
     --- value of length: 2 type: logical ---
    [1] FALSE TRUE
     --- function from context ---
    function (obs)
    {
     nobs <- 0
     obs.pos <- NULL
     obsname <- NULL
     if (!is.null(obs)) {
     if (!is.data.frame(obs) & is.list(obs)) {
     Obs <- obs
     obs <- Obs[[1]]
     obs.pos <- matrix(nrow = 1, c(1, nrow(obs)))
     if (!class(obs) %in% c("data.frame", "matrix"))
     stop("'obs' should be either a 'data.frame' or a 'matrix'")
     if (length(Obs) > 1)
     for (i in 2:length(Obs)) {
     obs <- mergeObs(obs, Obs[[i]])
     obs.pos <- rbind(obs.pos, c(obs.pos[nrow(obs.pos),
     2] + 1, nrow(obs)))
     }
     obsname <- colnames(obs)
     }
     else {
     if (is.character(obs[, 1]) | is.factor(obs[, 1]))
     obs <- convert2wide(obs)
     obsname <- colnames(obs)
     if (!class(obs) %in% c("data.frame", "matrix"))
     stop("'obs' should be either a 'data.frame' or a 'matrix'")
     obs.pos <- matrix(nrow = 1, c(1, nrow(obs)))
     }
     DD <- duplicated(obsname)
     if (sum(DD) > 0)
     obs <- mergeObs(obs[, !DD], cbind(obs[, 1], obs[,
     DD]))
     nobs <- nrow(obs.pos)
     }
     return(list(dat = obs, pos = obs.pos, name = obsname, length = nobs))
    }
    <bytecode: 0x21b0b58>
    <environment: namespace:deSolve>
     --- function search by body ---
    Function SetData in namespace deSolve has this body.
     ----------- END OF FAILURE REPORT --------------
    Error in if (!class(obs) %in% c("data.frame", "matrix")) stop("'obs' should be either a 'data.frame' or a 'matrix'") :
     the condition has length > 1
    Calls: matplot.1D -> SetData
    Execution halted
Flavor: r-devel-linux-x86_64-debian-clang

Version: 1.25
Check: re-building of vignette outputs
Result: WARN
    Error(s) in re-building vignettes:
     ...
    --- re-building 'compiledCode.Rnw' using Sweave
    --- finished re-building 'compiledCode.Rnw'
    
    --- re-building 'deSolve.Rnw' using Sweave
     ----------- FAILURE REPORT --------------
     --- failure: the condition has length > 1 ---
     --- srcref ---
    :
     --- package (from environment) ---
    deSolve
     --- call from context ---
    SetData(obs)
     --- call from argument ---
    if (!class(obs) %in% c("data.frame", "matrix")) stop("'obs' should be either a 'data.frame' or a 'matrix'")
     --- R stacktrace ---
    where 1: SetData(obs)
    where 2: matplot.1D(out, grid = Distance, type = "l", mfrow = NULL, subset = time %in%
     seq(0, 200, by = 10), obs = data, obspar = list(pch = 18,
     cex = 2, col = "red"))
    where 3: eval(expr, .GlobalEnv)
    where 4: eval(expr, .GlobalEnv)
    where 5: withVisible(eval(expr, .GlobalEnv))
    where 6: doTryCatch(return(expr), name, parentenv, handler)
    where 7: tryCatchOne(expr, names, parentenv, handlers[[1L]])
    where 8: tryCatchList(expr, classes, parentenv, handlers)
    where 9: tryCatch(expr, error = function(e) {
     call <- conditionCall(e)
     if (!is.null(call)) {
     if (identical(call[[1L]], quote(doTryCatch)))
     call <- sys.call(-4L)
     dcall <- deparse(call)[1L]
     prefix <- paste("Error in", dcall, ": ")
     LONG <- 75L
     sm <- strsplit(conditionMessage(e), "\n")[[1L]]
     w <- 14L + nchar(dcall, type = "w") + nchar(sm[1L], type = "w")
     if (is.na(w))
     w <- 14L + nchar(dcall, type = "b") + nchar(sm[1L],
     type = "b")
     if (w > LONG)
     prefix <- paste0(prefix, "\n ")
     }
     else prefix <- "Error : "
     msg <- paste0(prefix, conditionMessage(e), "\n")
     .Internal(seterrmessage(msg[1L]))
     if (!silent && isTRUE(getOption("show.error.messages"))) {
     cat(msg, file = outFile)
     .Internal(printDeferredWarnings())
     }
     invisible(structure(msg, class = "try-error", condition = e))
    })
    where 10: try(withVisible(eval(expr, .GlobalEnv)), silent = TRUE)
    where 11: evalFunc(ce, options)
    where 12: tryCatchList(expr, classes, parentenv, handlers)
    where 13: tryCatch(evalFunc(ce, options), finally = {
     cat("\n")
     sink()
    })
    where 14: driver$runcode(drobj, chunk, chunkopts)
    where 15: utils::Sweave(...)
    where 16: engine$weave(file, quiet = quiet, encoding = enc)
    where 17: doTryCatch(return(expr), name, parentenv, handler)
    where 18: tryCatchOne(expr, names, parentenv, handlers[[1L]])
    where 19: tryCatchList(expr, classes, parentenv, handlers)
    where 20: tryCatch({
     engine$weave(file, quiet = quiet, encoding = enc)
     setwd(startdir)
     output <- find_vignette_product(name, by = "weave", engine = engine)
     if (!have.makefile && vignette_is_tex(output)) {
     texi2pdf(file = output, clean = FALSE, quiet = quiet)
     output <- find_vignette_product(name, by = "texi2pdf",
     engine = engine)
     }
    }, error = function(e) {
     OK <<- FALSE
     message(gettextf("Error: processing vignette '%s' failed with diagnostics:\n%s",
     file, conditionMessage(e)))
    })
    where 21: tools:::.buildOneVignette("deSolve.Rnw", "/home/hornik/tmp/R.check/r-devel-clang/Work/PKGS/deSolve.Rcheck/vign_test/deSolve",
     TRUE, FALSE, "deSolve", "", "/tmp/RtmpSVcuND/file161b3036376c.rds")
    
     --- value of length: 2 type: logical ---
    [1] FALSE TRUE
     --- function from context ---
    function (obs)
    {
     nobs <- 0
     obs.pos <- NULL
     obsname <- NULL
     if (!is.null(obs)) {
     if (!is.data.frame(obs) & is.list(obs)) {
     Obs <- obs
     obs <- Obs[[1]]
     obs.pos <- matrix(nrow = 1, c(1, nrow(obs)))
     if (!class(obs) %in% c("data.frame", "matrix"))
     stop("'obs' should be either a 'data.frame' or a 'matrix'")
     if (length(Obs) > 1)
     for (i in 2:length(Obs)) {
     obs <- mergeObs(obs, Obs[[i]])
     obs.pos <- rbind(obs.pos, c(obs.pos[nrow(obs.pos),
     2] + 1, nrow(obs)))
     }
     obsname <- colnames(obs)
     }
     else {
     if (is.character(obs[, 1]) | is.factor(obs[, 1]))
     obs <- convert2wide(obs)
     obsname <- colnames(obs)
     if (!class(obs) %in% c("data.frame", "matrix"))
     stop("'obs' should be either a 'data.frame' or a 'matrix'")
     obs.pos <- matrix(nrow = 1, c(1, nrow(obs)))
     }
     DD <- duplicated(obsname)
     if (sum(DD) > 0)
     obs <- mergeObs(obs[, !DD], cbind(obs[, 1], obs[,
     DD]))
     nobs <- nrow(obs.pos)
     }
     return(list(dat = obs, pos = obs.pos, name = obsname, length = nobs))
    }
    <bytecode: 0x40a9a98>
    <environment: namespace:deSolve>
     --- function search by body ---
    Function SetData in namespace deSolve has this body.
     ----------- END OF FAILURE REPORT --------------
    
    Error: processing vignette 'deSolve.Rnw' failed with diagnostics:
     chunk 23 (label = matplot1d)
    Error in if (!class(obs) %in% c("data.frame", "matrix")) stop("'obs' should be either a 'data.frame' or a 'matrix'") :
     the condition has length > 1
    
    --- failed re-building 'deSolve.Rnw'
    
    SUMMARY: processing the following file failed:
     'deSolve.Rnw'
    
    Error: Vignette re-building failed.
    Execution halted
Flavor: r-devel-linux-x86_64-debian-clang