Parse and extract a module's version
moduleVersion(module, path, sim, envir = NULL)
# S4 method for class 'character,character,missing'
moduleVersion(module, path, envir)
# S4 method for class 'character,missing,missing'
moduleVersion(module, envir)
# S4 method for class 'character,missing,simList'
moduleVersion(module, sim, envir)
Character string. Your module's name.
Character string specifying the file path to modules directory.
Default is to use the spades.modulePath
option.
A simList
simulation object, generally produced by simInit
.
Optional environment in which to store parsed code. This may be
useful if the same file is being parsed multiple times. This
function will check in that environment for the parsed file before
parsing again. If the envir
is transient, then this will have no effect.
numeric_version
indicating the module's version.
# using filepath
path <- getSampleModules(tempdir())
moduleVersion("caribouMovement", path)
#> [1] ‘1.6.1’
# using simList
options("spades.useRequire" = FALSE)
if (require("SpaDES.tools", quietly = TRUE)) {
mySim <- simInit(
times = list(start = 2000.0, end = 2002.0, timeunit = "year"),
params = list(
.globals = list(stackName = "landscape", burnStats = "nPixelsBurned")
),
modules = list("caribouMovement"),
paths = list(modulePath = path)
)
moduleVersion("caribouMovement", sim = mySim)
}
#> Setting:
#> options(
#> spades.modulePath = '/tmp/RtmpXxjf07/sampleModules'
#> )
#> Paths set to:
#> options(
#> rasterTmpDir = '/tmp/RtmpXxjf07/SpaDES/scratch/raster'
#> reproducible.cachePath = '/tmp/RtmpXxjf07/reproducible/cache'
#> spades.inputPath = '/tmp/RtmpXxjf07/SpaDES/inputs'
#> spades.outputPath = '/tmp/RtmpXxjf07/SpaDES/outputs'
#> spades.modulePath = '/tmp/RtmpXxjf07/sampleModules'
#> spades.scratchPath = '/tmp/RtmpXxjf07/SpaDES/scratch'
#> )
#> terra::terraOptions(tempdir = '/tmp/RtmpXxjf07/SpaDES/scratch/terra'
#> Sep18 15:24:09 simInit Using setDTthreads(1). To change: 'options(spades.DTthreads = X)'.
#> Sep18 15:24:09 simInit caribouMovement: module code: landscape, caribou are declared in metadata inputObjects, but no default(s) are provided in .inputObjects
#> Sep18 15:24:09 simInit caribouMovement: module code: landscape is declared in metadata inputObjects, but is not used in the module
#> Sep18 15:24:09 simInit caribouMovement: inputObjects: Par$stackName is used from sim inside Init, but is not declared in metadata inputObjects
#> Sep18 15:24:09 simInit caribouMovement: inputObjects: Par$stackName is used from sim inside Move, but is not declared in metadata inputObjects
#> Sep18 15:24:09 simInit The following .globals were used:
#> Sep18 15:24:09 simInit Key: <global, module>
#> Sep18 15:24:09 simInit module global
#> Sep18 15:24:09 simInit <char> <char>
#> Sep18 15:24:09 simInit 1: caribouMovement stackName
#> Sep18 15:24:09 simInit Global parameter(s) not used in any module: burnStats.
#> Elapsed time for simInit: 0.1515417 secs
#> [1] ‘1.6.1’