Touch a module by marking it as outdated and by resetting its default configuration, if appropriate.
touch(name = .Last.name)
name | A string (character vector of lenght one). A module name can contain letters, figures and some special characters,
namely Names containing The name "modulr" corresponds to a special module and is therefore reserved. |
---|
See make
and module_options
.
It is considered a very bad practice to define, touch, undefine, load, make, reset, or perform any other operation from within a module definition that may alterate the internal state of modulr.
.Last.name
, plot_dependencies
,
make
, module_options
,
and reset
.
reset()#> [2018-12-02T17:14:11 CET] Resetting modulr state ... OK#> [2018-12-02T17:14:11 CET] Defining 'foo' ... OKmake()#> [2018-12-02T17:14:11 CET] Making 'foo' ... #> [2018-12-02T17:14:11 CET] * Visiting and defining dependencies ... #> [2018-12-02T17:14:11 CET] * Constructing dependency graph ... OK #> [2018-12-02T17:14:11 CET] DONE ('foo' in 0.026 secs)#> [1] "17:14:11.631650"make()#> [2018-12-02T17:14:11 CET] Making 'foo' ... #> [2018-12-02T17:14:11 CET] * Visiting and defining dependencies ... #> [2018-12-02T17:14:11 CET] * Constructing dependency graph ... OK #> [2018-12-02T17:14:11 CET] DONE ('foo' in 0.026 secs)#> [1] "17:14:11.631650"touch()#> [2018-12-02T17:14:11 CET] Touching 'foo' ... OKmake()#> [2018-12-02T17:14:11 CET] Making 'foo' ... #> [2018-12-02T17:14:11 CET] * Visiting and defining dependencies ... #> [2018-12-02T17:14:11 CET] * Constructing dependency graph ... OK #> [2018-12-02T17:14:11 CET] DONE ('foo' in 0.033 secs)#> [1] "17:14:11.703787"reset()#> [2018-12-02T17:14:11 CET] Resetting modulr state ... OK#> [2018-12-02T17:14:11 CET] Defining 'A' ... OK#> [2018-12-02T17:14:11 CET] Defining 'B' ... OK#> [2018-12-02T17:14:11 CET] Defining 'C' ... OK#> [2018-12-02T17:14:11 CET] Defining 'D' ... OK#> [2018-12-02T17:14:11 CET] Defining 'E' ... OK#> [2018-12-02T17:14:11 CET] Defining 'F' ... OKmake()#> [2018-12-02T17:14:11 CET] Making 'F' ... #> [2018-12-02T17:14:11 CET] * Visiting and defining dependencies ... #> [2018-12-02T17:14:11 CET] * Constructing dependency graph ... OK #> [2018-12-02T17:14:11 CET] * Sorting 5 dependencies with 7 relations ... on 3 layers, OK #> [2018-12-02T17:14:11 CET] * Evaluating new and outdated dependencies ... #> [2018-12-02T17:14:11 CET] ** Evaluating #1/5 (layer #1/3): 'B' ... #> [2018-12-02T17:14:11 CET] ** Evaluating #2/5 (layer #1/3): 'A' ... #> [2018-12-02T17:14:11 CET] ** Evaluating #3/5 (layer #2/3): 'C' ... #> [2018-12-02T17:14:11 CET] ** Evaluating #4/5 (layer #2/3): 'D' ... #> [2018-12-02T17:14:11 CET] ** Evaluating #5/5 (layer #3/3): 'E' ... #> [2018-12-02T17:14:11 CET] DONE ('F' in 0.15 secs)#> [1] "(((A)C)((A)(B)D)(((A)(B)D)E)F)"touch("B")#> [2018-12-02T17:14:11 CET] Touching 'B' ... OKmake("F")#> [2018-12-02T17:14:11 CET] Making 'F' ... #> [2018-12-02T17:14:11 CET] * Visiting and defining dependencies ... #> [2018-12-02T17:14:12 CET] * Constructing dependency graph ... OK #> [2018-12-02T17:14:12 CET] * Sorting 5 dependencies with 7 relations ... on 3 layers, OK #> [2018-12-02T17:14:12 CET] * Evaluating new and outdated dependencies ... #> [2018-12-02T17:14:12 CET] ** Evaluating #1/5 (layer #1/3): 'B' ... #> [2018-12-02T17:14:12 CET] ** Evaluating #4/5 (layer #2/3): 'D' ... #> [2018-12-02T17:14:12 CET] ** Evaluating #5/5 (layer #3/3): 'E' ... #> [2018-12-02T17:14:12 CET] DONE ('F' in 0.15 secs)#> [1] "(((A)C)((A)(B)D)(((A)(B)D)E)F)"#> [2018-12-02T17:14:12 CET] Resetting modulr state ... OK#> [2018-12-02T17:14:12 CET] Defining 'foo' ... OK#> [2018-12-02T17:14:12 CET] Defining 'bar#1.0.0' ... OK#> [2018-12-02T17:14:12 CET] Defining 'bar#1.0.1' ... OKmake("foo")#> [2018-12-02T17:14:12 CET] Making 'foo' ... #> [2018-12-02T17:14:12 CET] * Visiting and defining dependencies ... #> [2018-12-02T17:14:12 CET] * Constructing dependency graph ... OK #> [2018-12-02T17:14:12 CET] * Evaluating #1/1 (layer #1/1): 'bar#1.0.1' ... #> [2018-12-02T17:14:12 CET] DONE ('foo' in 0.059 secs)#> [1] "bar v1.0.1"#> [2018-12-02T17:14:12 CET] Making 'foo' ... #> [2018-12-02T17:14:12 CET] * Visiting and defining dependencies ... #> [2018-12-02T17:14:12 CET] * Constructing dependency graph ... OK #> [2018-12-02T17:14:12 CET] DONE ('foo' in 0.057 secs)#> [1] "bar v1.0.1"touch("foo")#> [2018-12-02T17:14:12 CET] Touching 'foo' ... OKmake("foo")#> [2018-12-02T17:14:12 CET] Making 'foo' ... #> [2018-12-02T17:14:12 CET] * Visiting and defining dependencies ... #> [2018-12-02T17:14:12 CET] * Constructing dependency graph ... OK #> [2018-12-02T17:14:12 CET] * Evaluating #1/1 (layer #1/1): 'bar#1.0.0' ... #> [2018-12-02T17:14:12 CET] DONE ('foo' in 0.059 secs)#> [1] "bar v1.0.0"