CRAN Package Check Results for Package tree.interpreter

Last updated on 2020-01-26 07:52:37 CET.

Flavor Version Tinstall Tcheck Ttotal Status Flags
r-devel-linux-x86_64-debian-clang 0.1.0 40.24 33.67 73.91 ERROR
r-devel-linux-x86_64-debian-gcc 0.1.0 28.72 26.99 55.71 ERROR
r-devel-linux-x86_64-fedora-clang 0.1.0 99.42 ERROR
r-devel-linux-x86_64-fedora-gcc 0.1.0 99.99 ERROR
r-devel-windows-ix86+x86_64 0.1.0 108.00 98.00 206.00 ERROR
r-devel-windows-ix86+x86_64-gcc8 0.1.0 107.00 82.00 189.00 ERROR
r-patched-linux-x86_64 0.1.0 32.46 30.48 62.94 ERROR
r-patched-solaris-x86 0.1.0 125.50 ERROR
r-release-linux-x86_64 0.1.0 33.92 30.48 64.40 ERROR
r-release-windows-ix86+x86_64 0.1.0 75.00 71.00 146.00 ERROR
r-release-osx-x86_64 0.1.0 OK
r-oldrel-windows-ix86+x86_64 0.1.0 61.00 65.00 126.00 ERROR
r-oldrel-osx-x86_64 0.1.0 OK

Check Details

Version: 0.1.0
Check: examples
Result: ERROR
    Running examples in 'tree.interpreter-Ex.R' failed
    The error most likely occurred in:
    
    > base::assign(".ptime", proc.time(), pos = "CheckExEnv")
    > ### Name: MDITree
    > ### Title: Mean Decrease in Impurity
    > ### Aliases: MDITree MDI
    >
    > ### ** Examples
    >
    > library(ranger)
    > rfobj <- ranger(Species ~ ., iris, keep.inbag=TRUE)
    > tidy.RF <- tidyRF(rfobj, iris[, -5], iris[, 5])
    
     *** caught segfault ***
    address 0xfffffffc08bc4e18, cause 'memory not mapped'
    
    Traceback:
     1: tidyRFCpp_ranger(rfobj, trainX, trainY, inbag.counts)
     2: tidyRF.ranger(rfobj, iris[, -5], iris[, 5])
     3: tidyRF(rfobj, iris[, -5], iris[, 5])
    An irrecoverable exception occurred. R is aborting now ...
    Segmentation fault
Flavor: r-devel-linux-x86_64-debian-clang

Version: 0.1.0
Check: tests
Result: ERROR
     Running 'testthat.R' [3s/4s]
    Running the tests in 'tests/testthat.R' failed.
    Complete output:
     > library(testthat)
     > library(tree.interpreter)
     >
     > test_check("tree.interpreter")
    
     *** caught segfault ***
     address 0xfffffffc0a7d8dd8, cause 'memory not mapped'
    
     Traceback:
     1: tidyRFCpp_ranger(rfobj, trainX, trainY, inbag.counts)
     2: tidyRF.ranger(rfobj, iris[, -5], iris[, 5])
     3: tidyRF(rfobj, iris[, -5], iris[, 5])
     4: eval(code, test_env)
     5: eval(code, test_env)
     6: withCallingHandlers({ eval(code, test_env) if (!handled && !is.null(test)) { skip_empty() }}, expectation = handle_expectation, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error)
     7: doTryCatch(return(expr), name, parentenv, handler)
     8: tryCatchOne(expr, names, parentenv, handlers[[1L]])
     9: tryCatchList(expr, names[-nh], parentenv, handlers[-nh])
     10: doTryCatch(return(expr), name, parentenv, handler)
     11: tryCatchOne(tryCatchList(expr, names[-nh], parentenv, handlers[-nh]), names[nh], parentenv, handlers[[nh]])
     12: tryCatchList(expr, classes, parentenv, handlers)
     13: tryCatch(withCallingHandlers({ eval(code, test_env) if (!handled && !is.null(test)) { skip_empty() }}, expectation = handle_expectation, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error), error = handle_fatal, skip = function(e) { })
     14: test_code(desc, code, env = parent.frame())
     15: test_that("MDI works for ranger & classification tree", { set.seed(42L) rfobj <- ranger(Species ~ ., iris, keep.inbag = TRUE, importance = "impurity") tidy.RF <- tidyRF(rfobj, iris[, -5], iris[, 5]) iris.MDITree <- MDITree(tidy.RF, 1, iris[, -5], iris[, 5]) expect_equal(dim(iris.MDITree), c(ncol(iris) - 1, nlevels(iris$Species))) expect_equal(dimnames(iris.MDITree), list(names(iris[, -5]), levels(iris$Species))) iris.MDI <- MDI(tidy.RF, iris[, -5], iris[, 5]) expect_equal(dim(iris.MDI), c(ncol(iris) - 1, nlevels(iris$Species))) expect_equal(dimnames(iris.MDI), list(names(iris[, -5]), levels(iris$Species))) expect_equal(as.vector(rowSums(iris.MDI)), as.vector(ranger::importance(rfobj)/sum(tidy.RF$inbag.counts[[1]])))})
     16: eval(code, test_env)
     17: eval(code, test_env)
     18: withCallingHandlers({ eval(code, test_env) if (!handled && !is.null(test)) { skip_empty() }}, expectation = handle_expectation, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error)
     19: doTryCatch(return(expr), name, parentenv, handler)
     20: tryCatchOne(expr, names, parentenv, handlers[[1L]])
     21: tryCatchList(expr, names[-nh], parentenv, handlers[-nh])
     22: doTryCatch(return(expr), name, parentenv, handler)
     23: tryCatchOne(tryCatchList(expr, names[-nh], parentenv, handlers[-nh]), names[nh], parentenv, handlers[[nh]])
     24: tryCatchList(expr, classes, parentenv, handlers)
     25: tryCatch(withCallingHandlers({ eval(code, test_env) if (!handled && !is.null(test)) { skip_empty() }}, expectation = handle_expectation, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error), error = handle_fatal, skip = function(e) { })
     26: test_code(NULL, exprs, env)
     27: source_file(path, new.env(parent = env), chdir = TRUE, wrap = wrap)
     28: force(code)
     29: doWithOneRestart(return(expr), restart)
     30: withOneRestart(expr, restarts[[1L]])
     31: withRestarts(testthat_abort_reporter = function() NULL, force(code))
     32: with_reporter(reporter = reporter, start_end_reporter = start_end_reporter, { reporter$start_file(basename(path)) lister$start_file(basename(path)) source_file(path, new.env(parent = env), chdir = TRUE, wrap = wrap) reporter$.end_context() reporter$end_file() })
     33: FUN(X[[i]], ...)
     34: lapply(paths, test_file, env = env, reporter = current_reporter, start_end_reporter = FALSE, load_helpers = FALSE, wrap = wrap)
     35: force(code)
     36: doWithOneRestart(return(expr), restart)
     37: withOneRestart(expr, restarts[[1L]])
     38: withRestarts(testthat_abort_reporter = function() NULL, force(code))
     39: with_reporter(reporter = current_reporter, results <- lapply(paths, test_file, env = env, reporter = current_reporter, start_end_reporter = FALSE, load_helpers = FALSE, wrap = wrap))
     40: test_files(paths, reporter = reporter, env = env, stop_on_failure = stop_on_failure, stop_on_warning = stop_on_warning, wrap = wrap)
     41: test_dir(path = test_path, reporter = reporter, env = env, filter = filter, ..., stop_on_failure = stop_on_failure, stop_on_warning = stop_on_warning, wrap = wrap)
     42: test_package_dir(package = package, test_path = test_path, filter = filter, reporter = reporter, ..., stop_on_failure = stop_on_failure, stop_on_warning = stop_on_warning, wrap = wrap)
     43: test_check("tree.interpreter")
     An irrecoverable exception occurred. R is aborting now ...
     Segmentation fault
Flavor: r-devel-linux-x86_64-debian-clang

Version: 0.1.0
Check: re-building of vignette outputs
Result: WARN
    Error(s) in re-building vignettes:
     ...
    --- re-building 'MDI.Rmd' using rmarkdown
    
     *** caught segfault ***
    address 0xfffffffc09ced598, cause 'memory not mapped'
    
    Traceback:
     1: tidyRFCpp_ranger(rfobj, trainX, trainY, inbag.counts)
     2: tidyRF.ranger(rfobj, Boston[, -14], Boston[, 14])
     3: tidyRF(rfobj, Boston[, -14], Boston[, 14])
     4: eval(expr, envir, enclos)
     5: eval(expr, envir, enclos)
     6: withVisible(eval(expr, envir, enclos))
     7: withCallingHandlers(withVisible(eval(expr, envir, enclos)), warning = wHandler, error = eHandler, message = mHandler)
     8: handle(ev <- withCallingHandlers(withVisible(eval(expr, envir, enclos)), warning = wHandler, error = eHandler, message = mHandler))
     9: timing_fn(handle(ev <- withCallingHandlers(withVisible(eval(expr, envir, enclos)), warning = wHandler, error = eHandler, message = mHandler)))
    10: evaluate_call(expr, parsed$src[[i]], envir = envir, enclos = enclos, debug = debug, last = i == length(out), use_try = stop_on_error != 2L, keep_warning = keep_warning, keep_message = keep_message, output_handler = output_handler, include_timing = include_timing)
    11: evaluate::evaluate(...)
    12: evaluate(code, envir = env, new_device = FALSE, keep_warning = !isFALSE(options$warning), keep_message = !isFALSE(options$message), stop_on_error = if (options$error && options$include) 0L else 2L, output_handler = knit_handlers(options$render, options))
    13: in_dir(input_dir(), evaluate(code, envir = env, new_device = FALSE, keep_warning = !isFALSE(options$warning), keep_message = !isFALSE(options$message), stop_on_error = if (options$error && options$include) 0L else 2L, output_handler = knit_handlers(options$render, options)))
    14: block_exec(params)
    15: call_block(x)
    16: process_group.block(group)
    17: process_group(group)
    18: withCallingHandlers(if (tangle) process_tangle(group) else process_group(group), error = function(e) { setwd(wd) cat(res, sep = "\n", file = output %n% "") message("Quitting from lines ", paste(current_lines(i), collapse = "-"), " (", knit_concord$get("infile"), ") ") })
    19: process_file(text, output)
    20: knitr::knit(knit_input, knit_output, envir = envir, quiet = quiet)
    21: rmarkdown::render(file, encoding = encoding, quiet = quiet, envir = globalenv(), output_dir = getwd(), ...)
    22: vweave_rmarkdown(...)
    23: engine$weave(file, quiet = quiet, encoding = enc)
    24: doTryCatch(return(expr), name, parentenv, handler)
    25: tryCatchOne(expr, names, parentenv, handlers[[1L]])
    26: tryCatchList(expr, classes, parentenv, handlers)
    27: 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) } outputs <- c(outputs, output)}, error = function(e) { thisOK <<- FALSE fails <<- c(fails, file) message(gettextf("Error: processing vignette '%s' failed with diagnostics:\n%s", file, conditionMessage(e)))})
    28: tools:::buildVignettes(dir = "/home/hornik/tmp/R.check/r-devel-clang/Work/PKGS/tree.interpreter.Rcheck/vign_test/tree.interpreter", ser_elibs = "/tmp/RtmpuwNYLd/file33a751073276.rds")
    An irrecoverable exception occurred. R is aborting now ...
    Segmentation fault
Flavor: r-devel-linux-x86_64-debian-clang

Version: 0.1.0
Check: examples
Result: ERROR
    Running examples in ‘tree.interpreter-Ex.R’ failed
    The error most likely occurred in:
    
    > base::assign(".ptime", proc.time(), pos = "CheckExEnv")
    > ### Name: MDITree
    > ### Title: Mean Decrease in Impurity
    > ### Aliases: MDITree MDI
    >
    > ### ** Examples
    >
    > library(ranger)
    > rfobj <- ranger(Species ~ ., iris, keep.inbag=TRUE)
    > tidy.RF <- tidyRF(rfobj, iris[, -5], iris[, 5])
    
     *** caught segfault ***
    address 0x5648baa09958, cause 'memory not mapped'
    
    Traceback:
     1: tidyRFCpp_ranger(rfobj, trainX, trainY, inbag.counts)
     2: tidyRF.ranger(rfobj, iris[, -5], iris[, 5])
     3: tidyRF(rfobj, iris[, -5], iris[, 5])
    An irrecoverable exception occurred. R is aborting now ...
    Segmentation fault
Flavor: r-devel-linux-x86_64-debian-gcc

Version: 0.1.0
Check: tests
Result: ERROR
     Running ‘testthat.R’ [3s/4s]
    Running the tests in ‘tests/testthat.R’ failed.
    Complete output:
     > library(testthat)
     > library(tree.interpreter)
     >
     > test_check("tree.interpreter")
    
     *** caught segfault ***
     address 0x55fbfc101ec8, cause 'memory not mapped'
    
     Traceback:
     1: tidyRFCpp_ranger(rfobj, trainX, trainY, inbag.counts)
     2: tidyRF.ranger(rfobj, iris[, -5], iris[, 5])
     3: tidyRF(rfobj, iris[, -5], iris[, 5])
     4: eval(code, test_env)
     5: eval(code, test_env)
     6: withCallingHandlers({ eval(code, test_env) if (!handled && !is.null(test)) { skip_empty() }}, expectation = handle_expectation, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error)
     7: doTryCatch(return(expr), name, parentenv, handler)
     8: tryCatchOne(expr, names, parentenv, handlers[[1L]])
     9: tryCatchList(expr, names[-nh], parentenv, handlers[-nh])
     10: doTryCatch(return(expr), name, parentenv, handler)
     11: tryCatchOne(tryCatchList(expr, names[-nh], parentenv, handlers[-nh]), names[nh], parentenv, handlers[[nh]])
     12: tryCatchList(expr, classes, parentenv, handlers)
     13: tryCatch(withCallingHandlers({ eval(code, test_env) if (!handled && !is.null(test)) { skip_empty() }}, expectation = handle_expectation, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error), error = handle_fatal, skip = function(e) { })
     14: test_code(desc, code, env = parent.frame())
     15: test_that("MDI works for ranger & classification tree", { set.seed(42L) rfobj <- ranger(Species ~ ., iris, keep.inbag = TRUE, importance = "impurity") tidy.RF <- tidyRF(rfobj, iris[, -5], iris[, 5]) iris.MDITree <- MDITree(tidy.RF, 1, iris[, -5], iris[, 5]) expect_equal(dim(iris.MDITree), c(ncol(iris) - 1, nlevels(iris$Species))) expect_equal(dimnames(iris.MDITree), list(names(iris[, -5]), levels(iris$Species))) iris.MDI <- MDI(tidy.RF, iris[, -5], iris[, 5]) expect_equal(dim(iris.MDI), c(ncol(iris) - 1, nlevels(iris$Species))) expect_equal(dimnames(iris.MDI), list(names(iris[, -5]), levels(iris$Species))) expect_equal(as.vector(rowSums(iris.MDI)), as.vector(ranger::importance(rfobj)/sum(tidy.RF$inbag.counts[[1]])))})
     16: eval(code, test_env)
     17: eval(code, test_env)
     18: withCallingHandlers({ eval(code, test_env) if (!handled && !is.null(test)) { skip_empty() }}, expectation = handle_expectation, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error)
     19: doTryCatch(return(expr), name, parentenv, handler)
     20: tryCatchOne(expr, names, parentenv, handlers[[1L]])
     21: tryCatchList(expr, names[-nh], parentenv, handlers[-nh])
     22: doTryCatch(return(expr), name, parentenv, handler)
     23: tryCatchOne(tryCatchList(expr, names[-nh], parentenv, handlers[-nh]), names[nh], parentenv, handlers[[nh]])
     24: tryCatchList(expr, classes, parentenv, handlers)
     25: tryCatch(withCallingHandlers({ eval(code, test_env) if (!handled && !is.null(test)) { skip_empty() }}, expectation = handle_expectation, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error), error = handle_fatal, skip = function(e) { })
     26: test_code(NULL, exprs, env)
     27: source_file(path, new.env(parent = env), chdir = TRUE, wrap = wrap)
     28: force(code)
     29: doWithOneRestart(return(expr), restart)
     30: withOneRestart(expr, restarts[[1L]])
     31: withRestarts(testthat_abort_reporter = function() NULL, force(code))
     32: with_reporter(reporter = reporter, start_end_reporter = start_end_reporter, { reporter$start_file(basename(path)) lister$start_file(basename(path)) source_file(path, new.env(parent = env), chdir = TRUE, wrap = wrap) reporter$.end_context() reporter$end_file() })
     33: FUN(X[[i]], ...)
     34: lapply(paths, test_file, env = env, reporter = current_reporter, start_end_reporter = FALSE, load_helpers = FALSE, wrap = wrap)
     35: force(code)
     36: doWithOneRestart(return(expr), restart)
     37: withOneRestart(expr, restarts[[1L]])
     38: withRestarts(testthat_abort_reporter = function() NULL, force(code))
     39: with_reporter(reporter = current_reporter, results <- lapply(paths, test_file, env = env, reporter = current_reporter, start_end_reporter = FALSE, load_helpers = FALSE, wrap = wrap))
     40: test_files(paths, reporter = reporter, env = env, stop_on_failure = stop_on_failure, stop_on_warning = stop_on_warning, wrap = wrap)
     41: test_dir(path = test_path, reporter = reporter, env = env, filter = filter, ..., stop_on_failure = stop_on_failure, stop_on_warning = stop_on_warning, wrap = wrap)
     42: test_package_dir(package = package, test_path = test_path, filter = filter, reporter = reporter, ..., stop_on_failure = stop_on_failure, stop_on_warning = stop_on_warning, wrap = wrap)
     43: test_check("tree.interpreter")
     An irrecoverable exception occurred. R is aborting now ...
     Segmentation fault
Flavor: r-devel-linux-x86_64-debian-gcc

Version: 0.1.0
Check: re-building of vignette outputs
Result: WARN
    Error(s) in re-building vignettes:
     ...
    --- re-building ‘MDI.Rmd’ using rmarkdown
    
     *** caught segfault ***
    address 0x5557c00d73e8, cause 'memory not mapped'
    
    Traceback:
     1: tidyRFCpp_ranger(rfobj, trainX, trainY, inbag.counts)
     2: tidyRF.ranger(rfobj, Boston[, -14], Boston[, 14])
     3: tidyRF(rfobj, Boston[, -14], Boston[, 14])
     4: eval(expr, envir, enclos)
     5: eval(expr, envir, enclos)
     6: withVisible(eval(expr, envir, enclos))
     7: withCallingHandlers(withVisible(eval(expr, envir, enclos)), warning = wHandler, error = eHandler, message = mHandler)
     8: handle(ev <- withCallingHandlers(withVisible(eval(expr, envir, enclos)), warning = wHandler, error = eHandler, message = mHandler))
     9: timing_fn(handle(ev <- withCallingHandlers(withVisible(eval(expr, envir, enclos)), warning = wHandler, error = eHandler, message = mHandler)))
    10: evaluate_call(expr, parsed$src[[i]], envir = envir, enclos = enclos, debug = debug, last = i == length(out), use_try = stop_on_error != 2L, keep_warning = keep_warning, keep_message = keep_message, output_handler = output_handler, include_timing = include_timing)
    11: evaluate::evaluate(...)
    12: evaluate(code, envir = env, new_device = FALSE, keep_warning = !isFALSE(options$warning), keep_message = !isFALSE(options$message), stop_on_error = if (options$error && options$include) 0L else 2L, output_handler = knit_handlers(options$render, options))
    13: in_dir(input_dir(), evaluate(code, envir = env, new_device = FALSE, keep_warning = !isFALSE(options$warning), keep_message = !isFALSE(options$message), stop_on_error = if (options$error && options$include) 0L else 2L, output_handler = knit_handlers(options$render, options)))
    14: block_exec(params)
    15: call_block(x)
    16: process_group.block(group)
    17: process_group(group)
    18: withCallingHandlers(if (tangle) process_tangle(group) else process_group(group), error = function(e) { setwd(wd) cat(res, sep = "\n", file = output %n% "") message("Quitting from lines ", paste(current_lines(i), collapse = "-"), " (", knit_concord$get("infile"), ") ") })
    19: process_file(text, output)
    20: knitr::knit(knit_input, knit_output, envir = envir, quiet = quiet)
    21: rmarkdown::render(file, encoding = encoding, quiet = quiet, envir = globalenv(), output_dir = getwd(), ...)
    22: vweave_rmarkdown(...)
    23: engine$weave(file, quiet = quiet, encoding = enc)
    24: doTryCatch(return(expr), name, parentenv, handler)
    25: tryCatchOne(expr, names, parentenv, handlers[[1L]])
    26: tryCatchList(expr, classes, parentenv, handlers)
    27: 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) } outputs <- c(outputs, output)}, error = function(e) { thisOK <<- FALSE fails <<- c(fails, file) message(gettextf("Error: processing vignette '%s' failed with diagnostics:\n%s", file, conditionMessage(e)))})
    28: tools:::buildVignettes(dir = "/home/hornik/tmp/R.check/r-devel-gcc/Work/PKGS/tree.interpreter.Rcheck/vign_test/tree.interpreter", ser_elibs = "/home/hornik/tmp/scratch/RtmpIu12Ox/file4e685f5db395.rds")
    An irrecoverable exception occurred. R is aborting now ...
    Segmentation fault
Flavor: r-devel-linux-x86_64-debian-gcc

Version: 0.1.0
Check: examples
Result: ERROR
    Running examples in ‘tree.interpreter-Ex.R’ failed
    The error most likely occurred in:
    
    > ### Name: MDITree
    > ### Title: Mean Decrease in Impurity
    > ### Aliases: MDITree MDI
    >
    > ### ** Examples
    >
    > library(ranger)
    > rfobj <- ranger(Species ~ ., iris, keep.inbag=TRUE)
    > tidy.RF <- tidyRF(rfobj, iris[, -5], iris[, 5])
    
     *** caught segfault ***
    address 0xfffffffc092a7328, cause 'memory not mapped'
    
    Traceback:
     1: tidyRFCpp_ranger(rfobj, trainX, trainY, inbag.counts)
     2: tidyRF.ranger(rfobj, iris[, -5], iris[, 5])
     3: tidyRF(rfobj, iris[, -5], iris[, 5])
    An irrecoverable exception occurred. R is aborting now ...
Flavor: r-devel-linux-x86_64-fedora-clang

Version: 0.1.0
Check: tests
Result: ERROR
     Running ‘testthat.R’
    Running the tests in ‘tests/testthat.R’ failed.
    Complete output:
     > library(testthat)
     > library(tree.interpreter)
     >
     > test_check("tree.interpreter")
    
     *** caught segfault ***
     address 0xfffffffc0a1d9678, cause 'memory not mapped'
    
     Traceback:
     1: tidyRFCpp_ranger(rfobj, trainX, trainY, inbag.counts)
     2: tidyRF.ranger(rfobj, iris[, -5], iris[, 5])
     3: tidyRF(rfobj, iris[, -5], iris[, 5])
     4: eval(code, test_env)
     5: eval(code, test_env)
     6: withCallingHandlers({ eval(code, test_env) if (!handled && !is.null(test)) { skip_empty() }}, expectation = handle_expectation, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error)
     7: doTryCatch(return(expr), name, parentenv, handler)
     8: tryCatchOne(expr, names, parentenv, handlers[[1L]])
     9: tryCatchList(expr, names[-nh], parentenv, handlers[-nh])
     10: doTryCatch(return(expr), name, parentenv, handler)
     11: tryCatchOne(tryCatchList(expr, names[-nh], parentenv, handlers[-nh]), names[nh], parentenv, handlers[[nh]])
     12: tryCatchList(expr, classes, parentenv, handlers)
     13: tryCatch(withCallingHandlers({ eval(code, test_env) if (!handled && !is.null(test)) { skip_empty() }}, expectation = handle_expectation, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error), error = handle_fatal, skip = function(e) { })
     14: test_code(desc, code, env = parent.frame())
     15: test_that("MDI works for ranger & classification tree", { set.seed(42L) rfobj <- ranger(Species ~ ., iris, keep.inbag = TRUE, importance = "impurity") tidy.RF <- tidyRF(rfobj, iris[, -5], iris[, 5]) iris.MDITree <- MDITree(tidy.RF, 1, iris[, -5], iris[, 5]) expect_equal(dim(iris.MDITree), c(ncol(iris) - 1, nlevels(iris$Species))) expect_equal(dimnames(iris.MDITree), list(names(iris[, -5]), levels(iris$Species))) iris.MDI <- MDI(tidy.RF, iris[, -5], iris[, 5]) expect_equal(dim(iris.MDI), c(ncol(iris) - 1, nlevels(iris$Species))) expect_equal(dimnames(iris.MDI), list(names(iris[, -5]), levels(iris$Species))) expect_equal(as.vector(rowSums(iris.MDI)), as.vector(ranger::importance(rfobj)/sum(tidy.RF$inbag.counts[[1]])))})
     16: eval(code, test_env)
     17: eval(code, test_env)
     18: withCallingHandlers({ eval(code, test_env) if (!handled && !is.null(test)) { skip_empty() }}, expectation = handle_expectation, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error)
     19: doTryCatch(return(expr), name, parentenv, handler)
     20: tryCatchOne(expr, names, parentenv, handlers[[1L]])
     21: tryCatchList(expr, names[-nh], parentenv, handlers[-nh])
     22: doTryCatch(return(expr), name, parentenv, handler)
     23: tryCatchOne(tryCatchList(expr, names[-nh], parentenv, handlers[-nh]), names[nh], parentenv, handlers[[nh]])
     24: tryCatchList(expr, classes, parentenv, handlers)
     25: tryCatch(withCallingHandlers({ eval(code, test_env) if (!handled && !is.null(test)) { skip_empty() }}, expectation = handle_expectation, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error), error = handle_fatal, skip = function(e) { })
     26: test_code(NULL, exprs, env)
     27: source_file(path, new.env(parent = env), chdir = TRUE, wrap = wrap)
     28: force(code)
     29: doWithOneRestart(return(expr), restart)
     30: withOneRestart(expr, restarts[[1L]])
     31: withRestarts(testthat_abort_reporter = function() NULL, force(code))
     32: with_reporter(reporter = reporter, start_end_reporter = start_end_reporter, { reporter$start_file(basename(path)) lister$start_file(basename(path)) source_file(path, new.env(parent = env), chdir = TRUE, wrap = wrap) reporter$.end_context() reporter$end_file() })
     33: FUN(X[[i]], ...)
     34: lapply(paths, test_file, env = env, reporter = current_reporter, start_end_reporter = FALSE, load_helpers = FALSE, wrap = wrap)
     35: force(code)
     36: doWithOneRestart(return(expr), restart)
     37: withOneRestart(expr, restarts[[1L]])
     38: withRestarts(testthat_abort_reporter = function() NULL, force(code))
     39: with_reporter(reporter = current_reporter, results <- lapply(paths, test_file, env = env, reporter = current_reporter, start_end_reporter = FALSE, load_helpers = FALSE, wrap = wrap))
     40: test_files(paths, reporter = reporter, env = env, stop_on_failure = stop_on_failure, stop_on_warning = stop_on_warning, wrap = wrap)
     41: test_dir(path = test_path, reporter = reporter, env = env, filter = filter, ..., stop_on_failure = stop_on_failure, stop_on_warning = stop_on_warning, wrap = wrap)
     42: test_package_dir(package = package, test_path = test_path, filter = filter, reporter = reporter, ..., stop_on_failure = stop_on_failure, stop_on_warning = stop_on_warning, wrap = wrap)
     43: test_check("tree.interpreter")
     An irrecoverable exception occurred. R is aborting now ...
Flavor: r-devel-linux-x86_64-fedora-clang

Version: 0.1.0
Check: re-building of vignette outputs
Result: WARN
    Error(s) in re-building vignettes:
    --- re-building ‘MDI.Rmd’ using rmarkdown
    
     *** caught segfault ***
    address 0xfffffffc098f2078, cause 'memory not mapped'
    
    Traceback:
     1: tidyRFCpp_ranger(rfobj, trainX, trainY, inbag.counts)
     2: tidyRF.ranger(rfobj, Boston[, -14], Boston[, 14])
     3: tidyRF(rfobj, Boston[, -14], Boston[, 14])
     4: eval(expr, envir, enclos)
     5: eval(expr, envir, enclos)
     6: withVisible(eval(expr, envir, enclos))
     7: withCallingHandlers(withVisible(eval(expr, envir, enclos)), warning = wHandler, error = eHandler, message = mHandler)
     8: handle(ev <- withCallingHandlers(withVisible(eval(expr, envir, enclos)), warning = wHandler, error = eHandler, message = mHandler))
     9: timing_fn(handle(ev <- withCallingHandlers(withVisible(eval(expr, envir, enclos)), warning = wHandler, error = eHandler, message = mHandler)))
    10: evaluate_call(expr, parsed$src[[i]], envir = envir, enclos = enclos, debug = debug, last = i == length(out), use_try = stop_on_error != 2L, keep_warning = keep_warning, keep_message = keep_message, output_handler = output_handler, include_timing = include_timing)
    11: evaluate::evaluate(...)
    12: evaluate(code, envir = env, new_device = FALSE, keep_warning = !isFALSE(options$warning), keep_message = !isFALSE(options$message), stop_on_error = if (options$error && options$include) 0L else 2L, output_handler = knit_handlers(options$render, options))
    13: in_dir(input_dir(), evaluate(code, envir = env, new_device = FALSE, keep_warning = !isFALSE(options$warning), keep_message = !isFALSE(options$message), stop_on_error = if (options$error && options$include) 0L else 2L, output_handler = knit_handlers(options$render, options)))
    14: block_exec(params)
    15: call_block(x)
    16: process_group.block(group)
    17: process_group(group)
    18: withCallingHandlers(if (tangle) process_tangle(group) else process_group(group), error = function(e) { setwd(wd) cat(res, sep = "\n", file = output %n% "") message("Quitting from lines ", paste(current_lines(i), collapse = "-"), " (", knit_concord$get("infile"), ") ") })
    19: process_file(text, output)
    20: knitr::knit(knit_input, knit_output, envir = envir, quiet = quiet)
    21: rmarkdown::render(file, encoding = encoding, quiet = quiet, envir = globalenv(), output_dir = getwd(), ...)
    22: vweave_rmarkdown(...)
    23: engine$weave(file, quiet = quiet, encoding = enc)
    24: doTryCatch(return(expr), name, parentenv, handler)
    25: tryCatchOne(expr, names, parentenv, handlers[[1L]])
    26: tryCatchList(expr, classes, parentenv, handlers)
    27: 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) } outputs <- c(outputs, output)}, error = function(e) { thisOK <<- FALSE fails <<- c(fails, file) message(gettextf("Error: processing vignette '%s' failed with diagnostics:\n%s", file, conditionMessage(e)))})
    28: tools:::buildVignettes(dir = "/data/gannet/ripley/R/packages/tests-clang/tree.interpreter.Rcheck/vign_test/tree.interpreter", ser_elibs = "/tmp/Rtmpu9lXDN/file21de51913d7e.rds")
    An irrecoverable exception occurred. R is aborting now ...
Flavor: r-devel-linux-x86_64-fedora-clang

Version: 0.1.0
Check: examples
Result: ERROR
    Running examples in ‘tree.interpreter-Ex.R’ failed
    The error most likely occurred in:
    
    > ### Name: MDITree
    > ### Title: Mean Decrease in Impurity
    > ### Aliases: MDITree MDI
    >
    > ### ** Examples
    >
    > library(ranger)
    > rfobj <- ranger(Species ~ ., iris, keep.inbag=TRUE)
    > tidy.RF <- tidyRF(rfobj, iris[, -5], iris[, 5])
    
     *** caught segfault ***
    address 0xfffffffc0a482118, cause 'memory not mapped'
    
    Traceback:
     1: tidyRFCpp_ranger(rfobj, trainX, trainY, inbag.counts)
     2: tidyRF.ranger(rfobj, iris[, -5], iris[, 5])
     3: tidyRF(rfobj, iris[, -5], iris[, 5])
    An irrecoverable exception occurred. R is aborting now ...
Flavor: r-devel-linux-x86_64-fedora-gcc

Version: 0.1.0
Check: tests
Result: ERROR
     Running ‘testthat.R’
    Running the tests in ‘tests/testthat.R’ failed.
    Complete output:
     > library(testthat)
     > library(tree.interpreter)
     >
     > test_check("tree.interpreter")
    
     *** caught segfault ***
     address 0xfffffffc0b2e3838, cause 'memory not mapped'
    
     Traceback:
     1: tidyRFCpp_ranger(rfobj, trainX, trainY, inbag.counts)
     2: tidyRF.ranger(rfobj, iris[, -5], iris[, 5])
     3: tidyRF(rfobj, iris[, -5], iris[, 5])
     4: eval(code, test_env)
     5: eval(code, test_env)
     6: withCallingHandlers({ eval(code, test_env) if (!handled && !is.null(test)) { skip_empty() }}, expectation = handle_expectation, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error)
     7: doTryCatch(return(expr), name, parentenv, handler)
     8: tryCatchOne(expr, names, parentenv, handlers[[1L]])
     9: tryCatchList(expr, names[-nh], parentenv, handlers[-nh])
     10: doTryCatch(return(expr), name, parentenv, handler)
     11: tryCatchOne(tryCatchList(expr, names[-nh], parentenv, handlers[-nh]), names[nh], parentenv, handlers[[nh]])
     12: tryCatchList(expr, classes, parentenv, handlers)
     13: tryCatch(withCallingHandlers({ eval(code, test_env) if (!handled && !is.null(test)) { skip_empty() }}, expectation = handle_expectation, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error), error = handle_fatal, skip = function(e) { })
     14: test_code(desc, code, env = parent.frame())
     15: test_that("MDI works for ranger & classification tree", { set.seed(42L) rfobj <- ranger(Species ~ ., iris, keep.inbag = TRUE, importance = "impurity") tidy.RF <- tidyRF(rfobj, iris[, -5], iris[, 5]) iris.MDITree <- MDITree(tidy.RF, 1, iris[, -5], iris[, 5]) expect_equal(dim(iris.MDITree), c(ncol(iris) - 1, nlevels(iris$Species))) expect_equal(dimnames(iris.MDITree), list(names(iris[, -5]), levels(iris$Species))) iris.MDI <- MDI(tidy.RF, iris[, -5], iris[, 5]) expect_equal(dim(iris.MDI), c(ncol(iris) - 1, nlevels(iris$Species))) expect_equal(dimnames(iris.MDI), list(names(iris[, -5]), levels(iris$Species))) expect_equal(as.vector(rowSums(iris.MDI)), as.vector(ranger::importance(rfobj)/sum(tidy.RF$inbag.counts[[1]])))})
     16: eval(code, test_env)
     17: eval(code, test_env)
     18: withCallingHandlers({ eval(code, test_env) if (!handled && !is.null(test)) { skip_empty() }}, expectation = handle_expectation, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error)
     19: doTryCatch(return(expr), name, parentenv, handler)
     20: tryCatchOne(expr, names, parentenv, handlers[[1L]])
     21: tryCatchList(expr, names[-nh], parentenv, handlers[-nh])
     22: doTryCatch(return(expr), name, parentenv, handler)
     23: tryCatchOne(tryCatchList(expr, names[-nh], parentenv, handlers[-nh]), names[nh], parentenv, handlers[[nh]])
     24: tryCatchList(expr, classes, parentenv, handlers)
     25: tryCatch(withCallingHandlers({ eval(code, test_env) if (!handled && !is.null(test)) { skip_empty() }}, expectation = handle_expectation, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error), error = handle_fatal, skip = function(e) { })
     26: test_code(NULL, exprs, env)
     27: source_file(path, new.env(parent = env), chdir = TRUE, wrap = wrap)
     28: force(code)
     29: doWithOneRestart(return(expr), restart)
     30: withOneRestart(expr, restarts[[1L]])
     31: withRestarts(testthat_abort_reporter = function() NULL, force(code))
     32: with_reporter(reporter = reporter, start_end_reporter = start_end_reporter, { reporter$start_file(basename(path)) lister$start_file(basename(path)) source_file(path, new.env(parent = env), chdir = TRUE, wrap = wrap) reporter$.end_context() reporter$end_file() })
     33: FUN(X[[i]], ...)
     34: lapply(paths, test_file, env = env, reporter = current_reporter, start_end_reporter = FALSE, load_helpers = FALSE, wrap = wrap)
     35: force(code)
     36: doWithOneRestart(return(expr), restart)
     37: withOneRestart(expr, restarts[[1L]])
     38: withRestarts(testthat_abort_reporter = function() NULL, force(code))
     39: with_reporter(reporter = current_reporter, results <- lapply(paths, test_file, env = env, reporter = current_reporter, start_end_reporter = FALSE, load_helpers = FALSE, wrap = wrap))
     40: test_files(paths, reporter = reporter, env = env, stop_on_failure = stop_on_failure, stop_on_warning = stop_on_warning, wrap = wrap)
     41: test_dir(path = test_path, reporter = reporter, env = env, filter = filter, ..., stop_on_failure = stop_on_failure, stop_on_warning = stop_on_warning, wrap = wrap)
     42: test_package_dir(package = package, test_path = test_path, filter = filter, reporter = reporter, ..., stop_on_failure = stop_on_failure, stop_on_warning = stop_on_warning, wrap = wrap)
     43: test_check("tree.interpreter")
     An irrecoverable exception occurred. R is aborting now ...
Flavor: r-devel-linux-x86_64-fedora-gcc

Version: 0.1.0
Check: re-building of vignette outputs
Result: WARN
    Error(s) in re-building vignettes:
    --- re-building ‘MDI.Rmd’ using rmarkdown
    
     *** caught segfault ***
    address 0xfffffffc097a5ff8, cause 'memory not mapped'
    
    Traceback:
     1: tidyRFCpp_ranger(rfobj, trainX, trainY, inbag.counts)
     2: tidyRF.ranger(rfobj, Boston[, -14], Boston[, 14])
     3: tidyRF(rfobj, Boston[, -14], Boston[, 14])
     4: eval(expr, envir, enclos)
     5: eval(expr, envir, enclos)
     6: withVisible(eval(expr, envir, enclos))
     7: withCallingHandlers(withVisible(eval(expr, envir, enclos)), warning = wHandler, error = eHandler, message = mHandler)
     8: handle(ev <- withCallingHandlers(withVisible(eval(expr, envir, enclos)), warning = wHandler, error = eHandler, message = mHandler))
     9: timing_fn(handle(ev <- withCallingHandlers(withVisible(eval(expr, envir, enclos)), warning = wHandler, error = eHandler, message = mHandler)))
    10: evaluate_call(expr, parsed$src[[i]], envir = envir, enclos = enclos, debug = debug, last = i == length(out), use_try = stop_on_error != 2L, keep_warning = keep_warning, keep_message = keep_message, output_handler = output_handler, include_timing = include_timing)
    11: evaluate::evaluate(...)
    12: evaluate(code, envir = env, new_device = FALSE, keep_warning = !isFALSE(options$warning), keep_message = !isFALSE(options$message), stop_on_error = if (options$error && options$include) 0L else 2L, output_handler = knit_handlers(options$render, options))
    13: in_dir(input_dir(), evaluate(code, envir = env, new_device = FALSE, keep_warning = !isFALSE(options$warning), keep_message = !isFALSE(options$message), stop_on_error = if (options$error && options$include) 0L else 2L, output_handler = knit_handlers(options$render, options)))
    14: block_exec(params)
    15: call_block(x)
    16: process_group.block(group)
    17: process_group(group)
    18: withCallingHandlers(if (tangle) process_tangle(group) else process_group(group), error = function(e) { setwd(wd) cat(res, sep = "\n", file = output %n% "") message("Quitting from lines ", paste(current_lines(i), collapse = "-"), " (", knit_concord$get("infile"), ") ") })
    19: process_file(text, output)
    20: knitr::knit(knit_input, knit_output, envir = envir, quiet = quiet)
    21: rmarkdown::render(file, encoding = encoding, quiet = quiet, envir = globalenv(), output_dir = getwd(), ...)
    22: vweave_rmarkdown(...)
    23: engine$weave(file, quiet = quiet, encoding = enc)
    24: doTryCatch(return(expr), name, parentenv, handler)
    25: tryCatchOne(expr, names, parentenv, handlers[[1L]])
    26: tryCatchList(expr, classes, parentenv, handlers)
    27: 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) } outputs <- c(outputs, output)}, error = function(e) { thisOK <<- FALSE fails <<- c(fails, file) message(gettextf("Error: processing vignette '%s' failed with diagnostics:\n%s", file, conditionMessage(e)))})
    28: tools:::buildVignettes(dir = "/data/gannet/ripley/R/packages/tests-devel/tree.interpreter.Rcheck/vign_test/tree.interpreter", ser_elibs = "/tmp/Rtmp0peOzD/file1d383e5a2e78.rds")
    An irrecoverable exception occurred. R is aborting now ...
Flavor: r-devel-linux-x86_64-fedora-gcc

Version: 0.1.0
Check: running examples for arch ‘i386’
Result: ERROR
    Running examples in 'tree.interpreter-Ex.R' failed
    The error most likely occurred in:
    
    > ### Name: MDITree
    > ### Title: Mean Decrease in Impurity
    > ### Aliases: MDITree MDI
    >
    > ### ** Examples
    >
    > library(ranger)
    > rfobj <- ranger(Species ~ ., iris, keep.inbag=TRUE)
    > tidy.RF <- tidyRF(rfobj, iris[, -5], iris[, 5])
    > MDITree(tidy.RF, 1, iris[, -5], iris[, 5])
    
    error: Cube::subcube(): indices out of bounds or incorrectly used
    Error in featureContribTreeCpp(tidy.RF, tree - 1, X) :
     Cube::subcube(): indices out of bounds or incorrectly used
    Calls: MDITree -> featureContribTree -> featureContribTreeCpp
    Execution halted
Flavors: r-devel-windows-ix86+x86_64, r-devel-windows-ix86+x86_64-gcc8, r-release-windows-ix86+x86_64, r-oldrel-windows-ix86+x86_64

Version: 0.1.0
Check: running examples for arch ‘x64’
Result: ERROR
    Running examples in 'tree.interpreter-Ex.R' failed
    The error most likely occurred in:
    
    > ### Name: MDITree
    > ### Title: Mean Decrease in Impurity
    > ### Aliases: MDITree MDI
    >
    > ### ** Examples
    >
    > library(ranger)
    > rfobj <- ranger(Species ~ ., iris, keep.inbag=TRUE)
    > tidy.RF <- tidyRF(rfobj, iris[, -5], iris[, 5])
Flavors: r-devel-windows-ix86+x86_64, r-devel-windows-ix86+x86_64-gcc8, r-release-windows-ix86+x86_64, r-oldrel-windows-ix86+x86_64

Version: 0.1.0
Check: running tests for arch ‘i386’
Result: ERROR
     Running 'testthat.R' [9s]
    Running the tests in 'tests/testthat.R' failed.
    Complete output:
     > library(testthat)
     > library(tree.interpreter)
     >
     > test_check("tree.interpreter")
    
     error: Cube::subcube(): indices out of bounds or incorrectly used
     -- 1. Error: MDI works for ranger & classification tree (@test-MDI-class.R#16)
     Cube::subcube(): indices out of bounds or incorrectly used
     Backtrace:
     1. tree.interpreter::MDI(tidy.RF, iris[, -5], iris[, 5])
     3. base::lapply(...)
     4. tree.interpreter:::FUN(X[[i]], ...)
     5. tree.interpreter::MDITree(tidy.RF, tree, trainX, trainY)
     6. tree.interpreter::featureContribTree(tidy.RF, tree, X.inbag)
     7. tree.interpreter:::featureContribTreeCpp(tidy.RF, tree - 1, X)
    
    
     error: Cube::subcube(): indices out of bounds or incorrectly used
     -- 2. Error: MDIoob works for ranger & classification tree (@test-MDI-class.R#59
     Cube::subcube(): indices out of bounds or incorrectly used
     Backtrace:
     1. tree.interpreter::MDIoob(tidy.RF, iris[, -5], iris[, 5])
     3. base::lapply(...)
     4. tree.interpreter:::FUN(X[[i]], ...)
     5. tree.interpreter::MDIoobTree(tidy.RF, tree, trainX, trainY)
     6. tree.interpreter::featureContribTree(tidy.RF, tree, X.oob)
     7. tree.interpreter:::featureContribTreeCpp(tidy.RF, tree - 1, X)
    
    
     error: Cube::subcube(): indices out of bounds or incorrectly used
     -- 3. Error: MDI works for ranger & regression tree (@test-MDI-reg.R#10) ------
     Cube::subcube(): indices out of bounds or incorrectly used
     Backtrace:
     1. tree.interpreter::MDITree(...)
     2. tree.interpreter::featureContribTree(tidy.RF, tree, X.inbag)
     3. tree.interpreter:::featureContribTreeCpp(tidy.RF, tree - 1, X)
    
    
     error: Cube::subcube(): indices out of bounds or incorrectly used
     -- 4. Error: MDIoob works for ranger & regression tree (@test-MDI-reg.R#54) ---
     Cube::subcube(): indices out of bounds or incorrectly used
     Backtrace:
     1. tree.interpreter::MDIoobTree(...)
     2. tree.interpreter::featureContribTree(tidy.RF, tree, X.oob)
     3. tree.interpreter:::featureContribTreeCpp(tidy.RF, tree - 1, X)
    
    
     error: Cube::subcube(): indices out of bounds or incorrectly used
     -- 5. Error: featureContrib works for ranger & classification tree (@test-featur
     Cube::subcube(): indices out of bounds or incorrectly used
     Backtrace:
     1. tree.interpreter::featureContrib(tidy.RF, iris[-trainID, -5])
     3. base::lapply(...)
     4. tree.interpreter:::FUN(X[[i]], ...)
     5. tree.interpreter::featureContribTree(tidy.RF, tree, X)
     6. tree.interpreter:::featureContribTreeCpp(tidy.RF, tree - 1, X)
    
    
     error: Cube::subcube(): indices out of bounds or incorrectly used
     -- 6. Error: featureContrib works for ranger & regression tree (@test-featureCon
     Cube::subcube(): indices out of bounds or incorrectly used
     Backtrace:
     1. tree.interpreter::featureContrib(tidy.RF, mtcars[-trainID, -1])
     3. base::lapply(...)
     4. tree.interpreter:::FUN(X[[i]], ...)
     5. tree.interpreter::featureContribTree(tidy.RF, tree, X)
     6. tree.interpreter:::featureContribTreeCpp(tidy.RF, tree - 1, X)
    
    
     error: Cube::subcube(): indices out of bounds or incorrectly used
     -- 7. Error: featureContrib retains order of features for ranger (@test-featureC
     Cube::subcube(): indices out of bounds or incorrectly used
     Backtrace:
     1. tree.interpreter::featureContrib(tidy.RF, dummy[, -(3:4)])
     3. base::lapply(...)
     4. tree.interpreter:::FUN(X[[i]], ...)
     5. tree.interpreter::featureContribTree(tidy.RF, tree, X)
     6. tree.interpreter:::featureContribTreeCpp(tidy.RF, tree - 1, X)
    
     -- 8. Failure: tidyRF works for ranger & classification tree (@test-tidyRF.R#17)
     min(sapply(tidy.RF$node.sizes, min)) is not more than 1. Difference: -1
    
     -- 9. Failure: tidyRF works for ranger & regression tree (@test-tidyRF.R#49) --
     min(sapply(tidy.RF$node.sizes, min)) is not more than 1. Difference: -1
    
     -- 10. Failure: tidyRF works for ranger when keep.inbag = FALSE (@test-tidyRF.R#
     min(sapply(tidy.RF$node.sizes, min)) is not more than 1. Difference: -1
    
     == testthat results ===========================================================
     [ OK: 94 | SKIPPED: 0 | WARNINGS: 0 | FAILED: 10 ]
     1. Error: MDI works for ranger & classification tree (@test-MDI-class.R#16)
     2. Error: MDIoob works for ranger & classification tree (@test-MDI-class.R#59)
     3. Error: MDI works for ranger & regression tree (@test-MDI-reg.R#10)
     4. Error: MDIoob works for ranger & regression tree (@test-MDI-reg.R#54)
     5. Error: featureContrib works for ranger & classification tree (@test-featureContrib-class.R#10)
     6. Error: featureContrib works for ranger & regression tree (@test-featureContrib-reg.R#10)
     7. Error: featureContrib retains order of features for ranger (@test-featureContrib-reg.R#40)
     8. Failure: tidyRF works for ranger & classification tree (@test-tidyRF.R#17)
     9. Failure: tidyRF works for ranger & regression tree (@test-tidyRF.R#49)
     10. Failure: tidyRF works for ranger when keep.inbag = FALSE (@test-tidyRF.R#82)
    
     Error: testthat unit tests failed
     Execution halted
Flavor: r-devel-windows-ix86+x86_64

Version: 0.1.0
Check: running tests for arch ‘x64’
Result: ERROR
     Running 'testthat.R' [5s]
    Running the tests in 'tests/testthat.R' failed.
    Complete output:
     > library(testthat)
     > library(tree.interpreter)
     >
     > test_check("tree.interpreter")
Flavor: r-devel-windows-ix86+x86_64

Version: 0.1.0
Check: re-building of vignette outputs
Result: WARN
    Error(s) in re-building vignettes:
    --- re-building 'MDI.Rmd' using rmarkdown
Flavors: r-devel-windows-ix86+x86_64, r-devel-windows-ix86+x86_64-gcc8, r-release-windows-ix86+x86_64

Version: 0.1.0
Check: running tests for arch ‘i386’
Result: ERROR
     Running 'testthat.R' [8s]
    Running the tests in 'tests/testthat.R' failed.
    Complete output:
     > library(testthat)
     > library(tree.interpreter)
     >
     > test_check("tree.interpreter")
    
     error: Cube::subcube(): indices out of bounds or incorrectly used
     -- 1. Error: MDI works for ranger & classification tree (@test-MDI-class.R#16)
     Cube::subcube(): indices out of bounds or incorrectly used
     Backtrace:
     1. tree.interpreter::MDI(tidy.RF, iris[, -5], iris[, 5])
     3. base::lapply(...)
     4. tree.interpreter:::FUN(X[[i]], ...)
     5. tree.interpreter::MDITree(tidy.RF, tree, trainX, trainY)
     6. tree.interpreter::featureContribTree(tidy.RF, tree, X.inbag)
     7. tree.interpreter:::featureContribTreeCpp(tidy.RF, tree - 1, X)
    
    
     error: Cube::subcube(): indices out of bounds or incorrectly used
     -- 2. Error: MDIoob works for ranger & classification tree (@test-MDI-class.R#59
     Cube::subcube(): indices out of bounds or incorrectly used
     Backtrace:
     1. tree.interpreter::MDIoob(tidy.RF, iris[, -5], iris[, 5])
     3. base::lapply(...)
     4. tree.interpreter:::FUN(X[[i]], ...)
     5. tree.interpreter::MDIoobTree(tidy.RF, tree, trainX, trainY)
     6. tree.interpreter::featureContribTree(tidy.RF, tree, X.oob)
     7. tree.interpreter:::featureContribTreeCpp(tidy.RF, tree - 1, X)
    
    
     error: Cube::subcube(): indices out of bounds or incorrectly used
     -- 3. Error: MDI works for ranger & regression tree (@test-MDI-reg.R#10) ------
     Cube::subcube(): indices out of bounds or incorrectly used
     Backtrace:
     1. tree.interpreter::MDITree(...)
     2. tree.interpreter::featureContribTree(tidy.RF, tree, X.inbag)
     3. tree.interpreter:::featureContribTreeCpp(tidy.RF, tree - 1, X)
    
    
     error: Cube::subcube(): indices out of bounds or incorrectly used
     -- 4. Error: MDIoob works for ranger & regression tree (@test-MDI-reg.R#54) ---
     Cube::subcube(): indices out of bounds or incorrectly used
     Backtrace:
     1. tree.interpreter::MDIoobTree(...)
     2. tree.interpreter::featureContribTree(tidy.RF, tree, X.oob)
     3. tree.interpreter:::featureContribTreeCpp(tidy.RF, tree - 1, X)
    
    
     error: Cube::subcube(): indices out of bounds or incorrectly used
     -- 5. Error: featureContrib works for ranger & classification tree (@test-featur
     Cube::subcube(): indices out of bounds or incorrectly used
     Backtrace:
     1. tree.interpreter::featureContrib(tidy.RF, iris[-trainID, -5])
     3. base::lapply(...)
     4. tree.interpreter:::FUN(X[[i]], ...)
     5. tree.interpreter::featureContribTree(tidy.RF, tree, X)
     6. tree.interpreter:::featureContribTreeCpp(tidy.RF, tree - 1, X)
    
    
     error: Cube::subcube(): indices out of bounds or incorrectly used
     -- 6. Error: featureContrib works for ranger & regression tree (@test-featureCon
     Cube::subcube(): indices out of bounds or incorrectly used
     Backtrace:
     1. tree.interpreter::featureContrib(tidy.RF, mtcars[-trainID, -1])
     3. base::lapply(...)
     4. tree.interpreter:::FUN(X[[i]], ...)
     5. tree.interpreter::featureContribTree(tidy.RF, tree, X)
     6. tree.interpreter:::featureContribTreeCpp(tidy.RF, tree - 1, X)
    
    
     error: Cube::subcube(): indices out of bounds or incorrectly used
     -- 7. Error: featureContrib retains order of features for ranger (@test-featureC
     Cube::subcube(): indices out of bounds or incorrectly used
     Backtrace:
     1. tree.interpreter::featureContrib(tidy.RF, dummy[, -(3:4)])
     3. base::lapply(...)
     4. tree.interpreter:::FUN(X[[i]], ...)
     5. tree.interpreter::featureContribTree(tidy.RF, tree, X)
     6. tree.interpreter:::featureContribTreeCpp(tidy.RF, tree - 1, X)
    
     -- 8. Failure: tidyRF works for ranger & classification tree (@test-tidyRF.R#17)
     min(sapply(tidy.RF$node.sizes, min)) is not more than 1. Difference: -1
    
     -- 9. Failure: tidyRF works for ranger & regression tree (@test-tidyRF.R#49) --
     min(sapply(tidy.RF$node.sizes, min)) is not more than 1. Difference: -1
    
     -- 10. Failure: tidyRF works for ranger when keep.inbag = FALSE (@test-tidyRF.R#
     min(sapply(tidy.RF$node.sizes, min)) is not more than 1. Difference: -1
    
     == testthat results ===========================================================
     [ OK: 94 | SKIPPED: 0 | WARNINGS: 0 | FAILED: 10 ]
     1. Error: MDI works for ranger & classification tree (@test-MDI-class.R#16)
     2. Error: MDIoob works for ranger & classification tree (@test-MDI-class.R#59)
     3. Error: MDI works for ranger & regression tree (@test-MDI-reg.R#10)
     4. Error: MDIoob works for ranger & regression tree (@test-MDI-reg.R#54)
     5. Error: featureContrib works for ranger & classification tree (@test-featureContrib-class.R#10)
     6. Error: featureContrib works for ranger & regression tree (@test-featureContrib-reg.R#10)
     7. Error: featureContrib retains order of features for ranger (@test-featureContrib-reg.R#40)
     8. Failure: tidyRF works for ranger & classification tree (@test-tidyRF.R#17)
     9. Failure: tidyRF works for ranger & regression tree (@test-tidyRF.R#49)
     10. Failure: tidyRF works for ranger when keep.inbag = FALSE (@test-tidyRF.R#82)
    
     Error: testthat unit tests failed
     Execution halted
Flavors: r-devel-windows-ix86+x86_64-gcc8, r-oldrel-windows-ix86+x86_64

Version: 0.1.0
Check: running tests for arch ‘x64’
Result: ERROR
     Running 'testthat.R' [3s]
    Running the tests in 'tests/testthat.R' failed.
    Complete output:
     > library(testthat)
     > library(tree.interpreter)
     >
     > test_check("tree.interpreter")
Flavor: r-devel-windows-ix86+x86_64-gcc8

Version: 0.1.0
Check: examples
Result: ERROR
    Running examples in ‘tree.interpreter-Ex.R’ failed
    The error most likely occurred in:
    
    > base::assign(".ptime", proc.time(), pos = "CheckExEnv")
    > ### Name: MDITree
    > ### Title: Mean Decrease in Impurity
    > ### Aliases: MDITree MDI
    >
    > ### ** Examples
    >
    > library(ranger)
    > rfobj <- ranger(Species ~ ., iris, keep.inbag=TRUE)
    > tidy.RF <- tidyRF(rfobj, iris[, -5], iris[, 5])
    
     *** caught segfault ***
    address 0x559824edced8, cause 'memory not mapped'
    
    Traceback:
     1: tidyRFCpp_ranger(rfobj, trainX, trainY, inbag.counts)
     2: tidyRF.ranger(rfobj, iris[, -5], iris[, 5])
     3: tidyRF(rfobj, iris[, -5], iris[, 5])
    An irrecoverable exception occurred. R is aborting now ...
    Segmentation fault
Flavor: r-patched-linux-x86_64

Version: 0.1.0
Check: tests
Result: ERROR
     Running ‘testthat.R’ [3s/3s]
    Running the tests in ‘tests/testthat.R’ failed.
    Complete output:
     > library(testthat)
     > library(tree.interpreter)
     >
     > test_check("tree.interpreter")
    
     *** caught segfault ***
     address 0x5627a1ed2358, cause 'memory not mapped'
    
     Traceback:
     1: tidyRFCpp_ranger(rfobj, trainX, trainY, inbag.counts)
     2: tidyRF.ranger(rfobj, iris[, -5], iris[, 5])
     3: tidyRF(rfobj, iris[, -5], iris[, 5])
     4: eval(code, test_env)
     5: eval(code, test_env)
     6: withCallingHandlers({ eval(code, test_env) if (!handled && !is.null(test)) { skip_empty() }}, expectation = handle_expectation, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error)
     7: doTryCatch(return(expr), name, parentenv, handler)
     8: tryCatchOne(expr, names, parentenv, handlers[[1L]])
     9: tryCatchList(expr, names[-nh], parentenv, handlers[-nh])
     10: doTryCatch(return(expr), name, parentenv, handler)
     11: tryCatchOne(tryCatchList(expr, names[-nh], parentenv, handlers[-nh]), names[nh], parentenv, handlers[[nh]])
     12: tryCatchList(expr, classes, parentenv, handlers)
     13: tryCatch(withCallingHandlers({ eval(code, test_env) if (!handled && !is.null(test)) { skip_empty() }}, expectation = handle_expectation, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error), error = handle_fatal, skip = function(e) { })
     14: test_code(desc, code, env = parent.frame())
     15: test_that("MDI works for ranger & classification tree", { set.seed(42L) rfobj <- ranger(Species ~ ., iris, keep.inbag = TRUE, importance = "impurity") tidy.RF <- tidyRF(rfobj, iris[, -5], iris[, 5]) iris.MDITree <- MDITree(tidy.RF, 1, iris[, -5], iris[, 5]) expect_equal(dim(iris.MDITree), c(ncol(iris) - 1, nlevels(iris$Species))) expect_equal(dimnames(iris.MDITree), list(names(iris[, -5]), levels(iris$Species))) iris.MDI <- MDI(tidy.RF, iris[, -5], iris[, 5]) expect_equal(dim(iris.MDI), c(ncol(iris) - 1, nlevels(iris$Species))) expect_equal(dimnames(iris.MDI), list(names(iris[, -5]), levels(iris$Species))) expect_equal(as.vector(rowSums(iris.MDI)), as.vector(ranger::importance(rfobj)/sum(tidy.RF$inbag.counts[[1]])))})
     16: eval(code, test_env)
     17: eval(code, test_env)
     18: withCallingHandlers({ eval(code, test_env) if (!handled && !is.null(test)) { skip_empty() }}, expectation = handle_expectation, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error)
     19: doTryCatch(return(expr), name, parentenv, handler)
     20: tryCatchOne(expr, names, parentenv, handlers[[1L]])
     21: tryCatchList(expr, names[-nh], parentenv, handlers[-nh])
     22: doTryCatch(return(expr), name, parentenv, handler)
     23: tryCatchOne(tryCatchList(expr, names[-nh], parentenv, handlers[-nh]), names[nh], parentenv, handlers[[nh]])
     24: tryCatchList(expr, classes, parentenv, handlers)
     25: tryCatch(withCallingHandlers({ eval(code, test_env) if (!handled && !is.null(test)) { skip_empty() }}, expectation = handle_expectation, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error), error = handle_fatal, skip = function(e) { })
     26: test_code(NULL, exprs, env)
     27: source_file(path, new.env(parent = env), chdir = TRUE, wrap = wrap)
     28: force(code)
     29: doWithOneRestart(return(expr), restart)
     30: withOneRestart(expr, restarts[[1L]])
     31: withRestarts(testthat_abort_reporter = function() NULL, force(code))
     32: with_reporter(reporter = reporter, start_end_reporter = start_end_reporter, { reporter$start_file(basename(path)) lister$start_file(basename(path)) source_file(path, new.env(parent = env), chdir = TRUE, wrap = wrap) reporter$.end_context() reporter$end_file() })
     33: FUN(X[[i]], ...)
     34: lapply(paths, test_file, env = env, reporter = current_reporter, start_end_reporter = FALSE, load_helpers = FALSE, wrap = wrap)
     35: force(code)
     36: doWithOneRestart(return(expr), restart)
     37: withOneRestart(expr, restarts[[1L]])
     38: withRestarts(testthat_abort_reporter = function() NULL, force(code))
     39: with_reporter(reporter = current_reporter, results <- lapply(paths, test_file, env = env, reporter = current_reporter, start_end_reporter = FALSE, load_helpers = FALSE, wrap = wrap))
     40: test_files(paths, reporter = reporter, env = env, stop_on_failure = stop_on_failure, stop_on_warning = stop_on_warning, wrap = wrap)
     41: test_dir(path = test_path, reporter = reporter, env = env, filter = filter, ..., stop_on_failure = stop_on_failure, stop_on_warning = stop_on_warning, wrap = wrap)
     42: test_package_dir(package = package, test_path = test_path, filter = filter, reporter = reporter, ..., stop_on_failure = stop_on_failure, stop_on_warning = stop_on_warning, wrap = wrap)
     43: test_check("tree.interpreter")
     An irrecoverable exception occurred. R is aborting now ...
     Segmentation fault
Flavor: r-patched-linux-x86_64

Version: 0.1.0
Check: re-building of vignette outputs
Result: WARN
    Error(s) in re-building vignettes:
     ...
    --- re-building ‘MDI.Rmd’ using rmarkdown
    
     *** caught segfault ***
    address 0x564052a38c78, cause 'memory not mapped'
    
    Traceback:
     1: tidyRFCpp_ranger(rfobj, trainX, trainY, inbag.counts)
     2: tidyRF.ranger(rfobj, Boston[, -14], Boston[, 14])
     3: tidyRF(rfobj, Boston[, -14], Boston[, 14])
     4: eval(expr, envir, enclos)
     5: eval(expr, envir, enclos)
     6: withVisible(eval(expr, envir, enclos))
     7: withCallingHandlers(withVisible(eval(expr, envir, enclos)), warning = wHandler, error = eHandler, message = mHandler)
     8: handle(ev <- withCallingHandlers(withVisible(eval(expr, envir, enclos)), warning = wHandler, error = eHandler, message = mHandler))
     9: timing_fn(handle(ev <- withCallingHandlers(withVisible(eval(expr, envir, enclos)), warning = wHandler, error = eHandler, message = mHandler)))
    10: evaluate_call(expr, parsed$src[[i]], envir = envir, enclos = enclos, debug = debug, last = i == length(out), use_try = stop_on_error != 2L, keep_warning = keep_warning, keep_message = keep_message, output_handler = output_handler, include_timing = include_timing)
    11: evaluate::evaluate(...)
    12: evaluate(code, envir = env, new_device = FALSE, keep_warning = !isFALSE(options$warning), keep_message = !isFALSE(options$message), stop_on_error = if (options$error && options$include) 0L else 2L, output_handler = knit_handlers(options$render, options))
    13: in_dir(input_dir(), evaluate(code, envir = env, new_device = FALSE, keep_warning = !isFALSE(options$warning), keep_message = !isFALSE(options$message), stop_on_error = if (options$error && options$include) 0L else 2L, output_handler = knit_handlers(options$render, options)))
    14: block_exec(params)
    15: call_block(x)
    16: process_group.block(group)
    17: process_group(group)
    18: withCallingHandlers(if (tangle) process_tangle(group) else process_group(group), error = function(e) { setwd(wd) cat(res, sep = "\n", file = output %n% "") message("Quitting from lines ", paste(current_lines(i), collapse = "-"), " (", knit_concord$get("infile"), ") ") })
    19: process_file(text, output)
    20: knitr::knit(knit_input, knit_output, envir = envir, quiet = quiet)
    21: rmarkdown::render(file, encoding = encoding, quiet = quiet, envir = globalenv(), output_dir = getwd(), ...)
    22: vweave_rmarkdown(...)
    23: engine$weave(file, quiet = quiet, encoding = enc)
    24: doTryCatch(return(expr), name, parentenv, handler)
    25: tryCatchOne(expr, names, parentenv, handlers[[1L]])
    26: tryCatchList(expr, classes, parentenv, handlers)
    27: 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) } outputs <- c(outputs, output)}, error = function(e) { thisOK <<- FALSE fails <<- c(fails, file) message(gettextf("Error: processing vignette '%s' failed with diagnostics:\n%s", file, conditionMessage(e)))})
    28: tools:::buildVignettes(dir = "/home/hornik/tmp/R.check/r-patched-gcc/Work/PKGS/tree.interpreter.Rcheck/vign_test/tree.interpreter", ser_elibs = "/tmp/RtmptADZD2/file273e6fbf09fd.rds")
    An irrecoverable exception occurred. R is aborting now ...
    Segmentation fault
Flavor: r-patched-linux-x86_64

Version: 0.1.0
Check: examples
Result: ERROR
    Running examples in ‘tree.interpreter-Ex.R’ failed
    The error most likely occurred in:
    
    > ### Name: MDITree
    > ### Title: Mean Decrease in Impurity
    > ### Aliases: MDITree MDI
    >
    > ### ** Examples
    >
    > library(ranger)
    > rfobj <- ranger(Species ~ ., iris, keep.inbag=TRUE)
    > tidy.RF <- tidyRF(rfobj, iris[, -5], iris[, 5])
    > MDITree(tidy.RF, 1, iris[, -5], iris[, 5])
    
    error: Cube::subcube(): indices out of bounds or incorrectly used
    Error in featureContribTreeCpp(tidy.RF, tree - 1, X) :
     Cube::subcube(): indices out of bounds or incorrectly used
    Calls: MDITree -> featureContribTree -> featureContribTreeCpp
    Execution halted
Flavor: r-patched-solaris-x86

Version: 0.1.0
Check: tests
Result: ERROR
     Running ‘testthat.R’ [18s/17s]
    Running the tests in ‘tests/testthat.R’ failed.
    Complete output:
     > library(testthat)
     > library(tree.interpreter)
     >
     > test_check("tree.interpreter")
    
     error: Cube::subcube(): indices out of bounds or incorrectly used
     ── 1. Error: MDI works for ranger & classification tree (@test-MDI-class.R#16)
     Cube::subcube(): indices out of bounds or incorrectly used
     Backtrace:
     1. tree.interpreter::MDI(tidy.RF, iris[, -5], iris[, 5])
     3. base::lapply(...)
     4. tree.interpreter:::FUN(X[[i]], ...)
     5. tree.interpreter::MDITree(tidy.RF, tree, trainX, trainY)
     6. tree.interpreter::featureContribTree(tidy.RF, tree, X.inbag)
     7. tree.interpreter:::featureContribTreeCpp(tidy.RF, tree - 1, X)
    
    
     error: Cube::subcube(): indices out of bounds or incorrectly used
     ── 2. Error: MDIoob works for ranger & classification tree (@test-MDI-class.R#59
     Cube::subcube(): indices out of bounds or incorrectly used
     Backtrace:
     1. tree.interpreter::MDIoob(tidy.RF, iris[, -5], iris[, 5])
     3. base::lapply(...)
     4. tree.interpreter:::FUN(X[[i]], ...)
     5. tree.interpreter::MDIoobTree(tidy.RF, tree, trainX, trainY)
     6. tree.interpreter::featureContribTree(tidy.RF, tree, X.oob)
     7. tree.interpreter:::featureContribTreeCpp(tidy.RF, tree - 1, X)
    
    
     error: Cube::subcube(): indices out of bounds or incorrectly used
     ── 3. Error: MDI works for ranger & regression tree (@test-MDI-reg.R#10) ──────
     Cube::subcube(): indices out of bounds or incorrectly used
     Backtrace:
     1. tree.interpreter::MDITree(...)
     2. tree.interpreter::featureContribTree(tidy.RF, tree, X.inbag)
     3. tree.interpreter:::featureContribTreeCpp(tidy.RF, tree - 1, X)
    
    
     error: Cube::subcube(): indices out of bounds or incorrectly used
     ── 4. Error: MDIoob works for ranger & regression tree (@test-MDI-reg.R#54) ───
     Cube::subcube(): indices out of bounds or incorrectly used
     Backtrace:
     1. tree.interpreter::MDIoobTree(...)
     2. tree.interpreter::featureContribTree(tidy.RF, tree, X.oob)
     3. tree.interpreter:::featureContribTreeCpp(tidy.RF, tree - 1, X)
    
    
     error: Cube::subcube(): indices out of bounds or incorrectly used
     ── 5. Error: featureContrib works for ranger & classification tree (@test-featur
     Cube::subcube(): indices out of bounds or incorrectly used
     Backtrace:
     1. tree.interpreter::featureContrib(tidy.RF, iris[-trainID, -5])
     3. base::lapply(...)
     4. tree.interpreter:::FUN(X[[i]], ...)
     5. tree.interpreter::featureContribTree(tidy.RF, tree, X)
     6. tree.interpreter:::featureContribTreeCpp(tidy.RF, tree - 1, X)
    
    
     error: Cube::subcube(): indices out of bounds or incorrectly used
     ── 6. Error: featureContrib works for ranger & regression tree (@test-featureCon
     Cube::subcube(): indices out of bounds or incorrectly used
     Backtrace:
     1. tree.interpreter::featureContrib(tidy.RF, mtcars[-trainID, -1])
     3. base::lapply(...)
     4. tree.interpreter:::FUN(X[[i]], ...)
     5. tree.interpreter::featureContribTree(tidy.RF, tree, X)
     6. tree.interpreter:::featureContribTreeCpp(tidy.RF, tree - 1, X)
    
    
     error: Cube::subcube(): indices out of bounds or incorrectly used
     ── 7. Error: featureContrib retains order of features for ranger (@test-featureC
     Cube::subcube(): indices out of bounds or incorrectly used
     Backtrace:
     1. tree.interpreter::featureContrib(tidy.RF, dummy[, -(3:4)])
     3. base::lapply(...)
     4. tree.interpreter:::FUN(X[[i]], ...)
     5. tree.interpreter::featureContribTree(tidy.RF, tree, X)
     6. tree.interpreter:::featureContribTreeCpp(tidy.RF, tree - 1, X)
    
     ── 8. Failure: tidyRF works for ranger & classification tree (@test-tidyRF.R#17)
     min(sapply(tidy.RF$node.sizes, min)) is not more than 1. Difference: -1
    
     ── 9. Failure: tidyRF works for ranger & regression tree (@test-tidyRF.R#49) ──
     min(sapply(tidy.RF$node.sizes, min)) is not more than 1. Difference: -1
    
     ── 10. Failure: tidyRF works for ranger when keep.inbag = FALSE (@test-tidyRF.R#
     min(sapply(tidy.RF$node.sizes, min)) is not more than 1. Difference: -1
    
     ══ testthat results ═══════════════════════════════════════════════════════════
     [ OK: 94 | SKIPPED: 0 | WARNINGS: 0 | FAILED: 10 ]
     1. Error: MDI works for ranger & classification tree (@test-MDI-class.R#16)
     2. Error: MDIoob works for ranger & classification tree (@test-MDI-class.R#59)
     3. Error: MDI works for ranger & regression tree (@test-MDI-reg.R#10)
     4. Error: MDIoob works for ranger & regression tree (@test-MDI-reg.R#54)
     5. Error: featureContrib works for ranger & classification tree (@test-featureContrib-class.R#10)
     6. Error: featureContrib works for ranger & regression tree (@test-featureContrib-reg.R#10)
     7. Error: featureContrib retains order of features for ranger (@test-featureContrib-reg.R#40)
     8. Failure: tidyRF works for ranger & classification tree (@test-tidyRF.R#17)
     9. Failure: tidyRF works for ranger & regression tree (@test-tidyRF.R#49)
     10. Failure: tidyRF works for ranger when keep.inbag = FALSE (@test-tidyRF.R#82)
    
     Error: testthat unit tests failed
     Execution halted
Flavor: r-patched-solaris-x86

Version: 0.1.0
Check: re-building of vignette outputs
Result: WARN
    Error(s) in re-building vignettes:
     ...
    --- re-building ‘MDI.Rmd’ using rmarkdown
    Warning in engine$weave(file, quiet = quiet, encoding = enc) :
     Pandoc (>= 1.12.3) and/or pandoc-citeproc not available. Falling back to R Markdown v1.
    
    error: Cube::subcube(): indices out of bounds or incorrectly used
    Quitting from lines 87-100 (MDI.Rmd)
    Error: processing vignette 'MDI.Rmd' failed with diagnostics:
    Cube::subcube(): indices out of bounds or incorrectly used
    --- failed re-building ‘MDI.Rmd’
    
    SUMMARY: processing the following file failed:
     ‘MDI.Rmd’
    
    Error: Vignette re-building failed.
    Execution halted
Flavor: r-patched-solaris-x86

Version: 0.1.0
Check: examples
Result: ERROR
    Running examples in ‘tree.interpreter-Ex.R’ failed
    The error most likely occurred in:
    
    > base::assign(".ptime", proc.time(), pos = "CheckExEnv")
    > ### Name: MDITree
    > ### Title: Mean Decrease in Impurity
    > ### Aliases: MDITree MDI
    >
    > ### ** Examples
    >
    > library(ranger)
    > rfobj <- ranger(Species ~ ., iris, keep.inbag=TRUE)
    > tidy.RF <- tidyRF(rfobj, iris[, -5], iris[, 5])
    
     *** caught segfault ***
    address 0x5619274847c8, cause 'memory not mapped'
    
    Traceback:
     1: tidyRFCpp_ranger(rfobj, trainX, trainY, inbag.counts)
     2: tidyRF.ranger(rfobj, iris[, -5], iris[, 5])
     3: tidyRF(rfobj, iris[, -5], iris[, 5])
    An irrecoverable exception occurred. R is aborting now ...
    Segmentation fault
Flavor: r-release-linux-x86_64

Version: 0.1.0
Check: tests
Result: ERROR
     Running ‘testthat.R’ [3s/3s]
    Running the tests in ‘tests/testthat.R’ failed.
    Complete output:
     > library(testthat)
     > library(tree.interpreter)
     >
     > test_check("tree.interpreter")
    
     *** caught segfault ***
     address 0x5645e6e292b8, cause 'memory not mapped'
    
     Traceback:
     1: tidyRFCpp_ranger(rfobj, trainX, trainY, inbag.counts)
     2: tidyRF.ranger(rfobj, iris[, -5], iris[, 5])
     3: tidyRF(rfobj, iris[, -5], iris[, 5])
     4: eval(code, test_env)
     5: eval(code, test_env)
     6: withCallingHandlers({ eval(code, test_env) if (!handled && !is.null(test)) { skip_empty() }}, expectation = handle_expectation, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error)
     7: doTryCatch(return(expr), name, parentenv, handler)
     8: tryCatchOne(expr, names, parentenv, handlers[[1L]])
     9: tryCatchList(expr, names[-nh], parentenv, handlers[-nh])
     10: doTryCatch(return(expr), name, parentenv, handler)
     11: tryCatchOne(tryCatchList(expr, names[-nh], parentenv, handlers[-nh]), names[nh], parentenv, handlers[[nh]])
     12: tryCatchList(expr, classes, parentenv, handlers)
     13: tryCatch(withCallingHandlers({ eval(code, test_env) if (!handled && !is.null(test)) { skip_empty() }}, expectation = handle_expectation, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error), error = handle_fatal, skip = function(e) { })
     14: test_code(desc, code, env = parent.frame())
     15: test_that("MDI works for ranger & classification tree", { set.seed(42L) rfobj <- ranger(Species ~ ., iris, keep.inbag = TRUE, importance = "impurity") tidy.RF <- tidyRF(rfobj, iris[, -5], iris[, 5]) iris.MDITree <- MDITree(tidy.RF, 1, iris[, -5], iris[, 5]) expect_equal(dim(iris.MDITree), c(ncol(iris) - 1, nlevels(iris$Species))) expect_equal(dimnames(iris.MDITree), list(names(iris[, -5]), levels(iris$Species))) iris.MDI <- MDI(tidy.RF, iris[, -5], iris[, 5]) expect_equal(dim(iris.MDI), c(ncol(iris) - 1, nlevels(iris$Species))) expect_equal(dimnames(iris.MDI), list(names(iris[, -5]), levels(iris$Species))) expect_equal(as.vector(rowSums(iris.MDI)), as.vector(ranger::importance(rfobj)/sum(tidy.RF$inbag.counts[[1]])))})
     16: eval(code, test_env)
     17: eval(code, test_env)
     18: withCallingHandlers({ eval(code, test_env) if (!handled && !is.null(test)) { skip_empty() }}, expectation = handle_expectation, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error)
     19: doTryCatch(return(expr), name, parentenv, handler)
     20: tryCatchOne(expr, names, parentenv, handlers[[1L]])
     21: tryCatchList(expr, names[-nh], parentenv, handlers[-nh])
     22: doTryCatch(return(expr), name, parentenv, handler)
     23: tryCatchOne(tryCatchList(expr, names[-nh], parentenv, handlers[-nh]), names[nh], parentenv, handlers[[nh]])
     24: tryCatchList(expr, classes, parentenv, handlers)
     25: tryCatch(withCallingHandlers({ eval(code, test_env) if (!handled && !is.null(test)) { skip_empty() }}, expectation = handle_expectation, skip = handle_skip, warning = handle_warning, message = handle_message, error = handle_error), error = handle_fatal, skip = function(e) { })
     26: test_code(NULL, exprs, env)
     27: source_file(path, new.env(parent = env), chdir = TRUE, wrap = wrap)
     28: force(code)
     29: doWithOneRestart(return(expr), restart)
     30: withOneRestart(expr, restarts[[1L]])
     31: withRestarts(testthat_abort_reporter = function() NULL, force(code))
     32: with_reporter(reporter = reporter, start_end_reporter = start_end_reporter, { reporter$start_file(basename(path)) lister$start_file(basename(path)) source_file(path, new.env(parent = env), chdir = TRUE, wrap = wrap) reporter$.end_context() reporter$end_file() })
     33: FUN(X[[i]], ...)
     34: lapply(paths, test_file, env = env, reporter = current_reporter, start_end_reporter = FALSE, load_helpers = FALSE, wrap = wrap)
     35: force(code)
     36: doWithOneRestart(return(expr), restart)
     37: withOneRestart(expr, restarts[[1L]])
     38: withRestarts(testthat_abort_reporter = function() NULL, force(code))
     39: with_reporter(reporter = current_reporter, results <- lapply(paths, test_file, env = env, reporter = current_reporter, start_end_reporter = FALSE, load_helpers = FALSE, wrap = wrap))
     40: test_files(paths, reporter = reporter, env = env, stop_on_failure = stop_on_failure, stop_on_warning = stop_on_warning, wrap = wrap)
     41: test_dir(path = test_path, reporter = reporter, env = env, filter = filter, ..., stop_on_failure = stop_on_failure, stop_on_warning = stop_on_warning, wrap = wrap)
     42: test_package_dir(package = package, test_path = test_path, filter = filter, reporter = reporter, ..., stop_on_failure = stop_on_failure, stop_on_warning = stop_on_warning, wrap = wrap)
     43: test_check("tree.interpreter")
     An irrecoverable exception occurred. R is aborting now ...
     Segmentation fault
Flavor: r-release-linux-x86_64

Version: 0.1.0
Check: re-building of vignette outputs
Result: WARN
    Error(s) in re-building vignettes:
     ...
    --- re-building ‘MDI.Rmd’ using rmarkdown
    
     *** caught segfault ***
    address 0x5592181ac588, cause 'memory not mapped'
    
    Traceback:
     1: tidyRFCpp_ranger(rfobj, trainX, trainY, inbag.counts)
     2: tidyRF.ranger(rfobj, Boston[, -14], Boston[, 14])
     3: tidyRF(rfobj, Boston[, -14], Boston[, 14])
     4: eval(expr, envir, enclos)
     5: eval(expr, envir, enclos)
     6: withVisible(eval(expr, envir, enclos))
     7: withCallingHandlers(withVisible(eval(expr, envir, enclos)), warning = wHandler, error = eHandler, message = mHandler)
     8: handle(ev <- withCallingHandlers(withVisible(eval(expr, envir, enclos)), warning = wHandler, error = eHandler, message = mHandler))
     9: timing_fn(handle(ev <- withCallingHandlers(withVisible(eval(expr, envir, enclos)), warning = wHandler, error = eHandler, message = mHandler)))
    10: evaluate_call(expr, parsed$src[[i]], envir = envir, enclos = enclos, debug = debug, last = i == length(out), use_try = stop_on_error != 2L, keep_warning = keep_warning, keep_message = keep_message, output_handler = output_handler, include_timing = include_timing)
    11: evaluate::evaluate(...)
    12: evaluate(code, envir = env, new_device = FALSE, keep_warning = !isFALSE(options$warning), keep_message = !isFALSE(options$message), stop_on_error = if (options$error && options$include) 0L else 2L, output_handler = knit_handlers(options$render, options))
    13: in_dir(input_dir(), evaluate(code, envir = env, new_device = FALSE, keep_warning = !isFALSE(options$warning), keep_message = !isFALSE(options$message), stop_on_error = if (options$error && options$include) 0L else 2L, output_handler = knit_handlers(options$render, options)))
    14: block_exec(params)
    15: call_block(x)
    16: process_group.block(group)
    17: process_group(group)
    18: withCallingHandlers(if (tangle) process_tangle(group) else process_group(group), error = function(e) { setwd(wd) cat(res, sep = "\n", file = output %n% "") message("Quitting from lines ", paste(current_lines(i), collapse = "-"), " (", knit_concord$get("infile"), ") ") })
    19: process_file(text, output)
    20: knitr::knit(knit_input, knit_output, envir = envir, quiet = quiet)
    21: rmarkdown::render(file, encoding = encoding, quiet = quiet, envir = globalenv(), output_dir = getwd(), ...)
    22: vweave_rmarkdown(...)
    23: engine$weave(file, quiet = quiet, encoding = enc)
    24: doTryCatch(return(expr), name, parentenv, handler)
    25: tryCatchOne(expr, names, parentenv, handlers[[1L]])
    26: tryCatchList(expr, classes, parentenv, handlers)
    27: 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) } outputs <- c(outputs, output)}, error = function(e) { thisOK <<- FALSE fails <<- c(fails, file) message(gettextf("Error: processing vignette '%s' failed with diagnostics:\n%s", file, conditionMessage(e)))})
    28: tools:::buildVignettes(dir = "/home/hornik/tmp/R.check/r-release-gcc/Work/PKGS/tree.interpreter.Rcheck/vign_test/tree.interpreter", ser_elibs = "/tmp/RtmpF2MSKg/file31b462821769.rds")
    An irrecoverable exception occurred. R is aborting now ...
    Segmentation fault
Flavor: r-release-linux-x86_64

Version: 0.1.0
Check: running tests for arch ‘i386’
Result: ERROR
     Running 'testthat.R' [7s]
    Running the tests in 'tests/testthat.R' failed.
    Complete output:
     > library(testthat)
     > library(tree.interpreter)
     >
     > test_check("tree.interpreter")
    
     error: Cube::subcube(): indices out of bounds or incorrectly used
     -- 1. Error: MDI works for ranger & classification tree (@test-MDI-class.R#16)
     Cube::subcube(): indices out of bounds or incorrectly used
     Backtrace:
     1. tree.interpreter::MDI(tidy.RF, iris[, -5], iris[, 5])
     3. base::lapply(...)
     4. tree.interpreter:::FUN(X[[i]], ...)
     5. tree.interpreter::MDITree(tidy.RF, tree, trainX, trainY)
     6. tree.interpreter::featureContribTree(tidy.RF, tree, X.inbag)
     7. tree.interpreter:::featureContribTreeCpp(tidy.RF, tree - 1, X)
    
    
     error: Cube::subcube(): indices out of bounds or incorrectly used
     -- 2. Error: MDIoob works for ranger & classification tree (@test-MDI-class.R#59
     Cube::subcube(): indices out of bounds or incorrectly used
     Backtrace:
     1. tree.interpreter::MDIoob(tidy.RF, iris[, -5], iris[, 5])
     3. base::lapply(...)
     4. tree.interpreter:::FUN(X[[i]], ...)
     5. tree.interpreter::MDIoobTree(tidy.RF, tree, trainX, trainY)
     6. tree.interpreter::featureContribTree(tidy.RF, tree, X.oob)
     7. tree.interpreter:::featureContribTreeCpp(tidy.RF, tree - 1, X)
    
    
     error: Cube::subcube(): indices out of bounds or incorrectly used
     -- 3. Error: MDI works for ranger & regression tree (@test-MDI-reg.R#10) ------
     Cube::subcube(): indices out of bounds or incorrectly used
     Backtrace:
     1. tree.interpreter::MDITree(...)
     2. tree.interpreter::featureContribTree(tidy.RF, tree, X.inbag)
     3. tree.interpreter:::featureContribTreeCpp(tidy.RF, tree - 1, X)
    
    
     error: Cube::subcube(): indices out of bounds or incorrectly used
     -- 4. Error: MDIoob works for ranger & regression tree (@test-MDI-reg.R#54) ---
     Cube::subcube(): indices out of bounds or incorrectly used
     Backtrace:
     1. tree.interpreter::MDIoobTree(...)
     2. tree.interpreter::featureContribTree(tidy.RF, tree, X.oob)
     3. tree.interpreter:::featureContribTreeCpp(tidy.RF, tree - 1, X)
    
    
     error: Cube::subcube(): indices out of bounds or incorrectly used
     -- 5. Error: featureContrib works for ranger & classification tree (@test-featur
     Cube::subcube(): indices out of bounds or incorrectly used
     Backtrace:
     1. tree.interpreter::featureContrib(tidy.RF, iris[-trainID, -5])
     3. base::lapply(...)
     4. tree.interpreter:::FUN(X[[i]], ...)
     5. tree.interpreter::featureContribTree(tidy.RF, tree, X)
     6. tree.interpreter:::featureContribTreeCpp(tidy.RF, tree - 1, X)
    
    
     error: Cube::subcube(): indices out of bounds or incorrectly used
     -- 6. Error: featureContrib works for ranger & regression tree (@test-featureCon
     Cube::subcube(): indices out of bounds or incorrectly used
     Backtrace:
     1. tree.interpreter::featureContrib(tidy.RF, mtcars[-trainID, -1])
     3. base::lapply(...)
     4. tree.interpreter:::FUN(X[[i]], ...)
     5. tree.interpreter::featureContribTree(tidy.RF, tree, X)
     6. tree.interpreter:::featureContribTreeCpp(tidy.RF, tree - 1, X)
    
    
     error: Cube::subcube(): indices out of bounds or incorrectly used
     -- 7. Error: featureContrib retains order of features for ranger (@test-featureC
     Cube::subcube(): indices out of bounds or incorrectly used
     Backtrace:
     1. tree.interpreter::featureContrib(tidy.RF, dummy[, -(3:4)])
     3. base::lapply(...)
     4. tree.interpreter:::FUN(X[[i]], ...)
     5. tree.interpreter::featureContribTree(tidy.RF, tree, X)
     6. tree.interpreter:::featureContribTreeCpp(tidy.RF, tree - 1, X)
    
     -- 8. Failure: tidyRF works for ranger & classification tree (@test-tidyRF.R#17)
     min(sapply(tidy.RF$node.sizes, min)) is not more than 1. Difference: -1
    
     -- 9. Failure: tidyRF works for ranger & regression tree (@test-tidyRF.R#49) --
     min(sapply(tidy.RF$node.sizes, min)) is not more than 1. Difference: -1
    
     -- 10. Failure: tidyRF works for ranger when keep.inbag = FALSE (@test-tidyRF.R#
     min(sapply(tidy.RF$node.sizes, min)) is not more than 1. Difference: -1
    
     == testthat results ===========================================================
     [ OK: 94 | SKIPPED: 0 | WARNINGS: 0 | FAILED: 10 ]
     1. Error: MDI works for ranger & classification tree (@test-MDI-class.R#16)
     2. Error: MDIoob works for ranger & classification tree (@test-MDI-class.R#59)
     3. Error: MDI works for ranger & regression tree (@test-MDI-reg.R#10)
     4. Error: MDIoob works for ranger & regression tree (@test-MDI-reg.R#54)
     5. Error: featureContrib works for ranger & classification tree (@test-featureContrib-class.R#10)
     6. Error: featureContrib works for ranger & regression tree (@test-featureContrib-reg.R#10)
     7. Error: featureContrib retains order of features for ranger (@test-featureContrib-reg.R#40)
     8. Failure: tidyRF works for ranger & classification tree (@test-tidyRF.R#17)
     9. Failure: tidyRF works for ranger & regression tree (@test-tidyRF.R#49)
     10. Failure: tidyRF works for ranger when keep.inbag = FALSE (@test-tidyRF.R#82)
    
     Error: testthat unit tests failed
     Execution halted
Flavor: r-release-windows-ix86+x86_64

Version: 0.1.0
Check: running tests for arch ‘x64’
Result: ERROR
     Running 'testthat.R' [4s]
    Running the tests in 'tests/testthat.R' failed.
    Complete output:
     > library(testthat)
     > library(tree.interpreter)
     >
     > test_check("tree.interpreter")
Flavors: r-release-windows-ix86+x86_64, r-oldrel-windows-ix86+x86_64

Version: 0.1.0
Check: re-building of vignette outputs
Result: WARN
    Error in re-building vignettes:
     ...
Flavor: r-oldrel-windows-ix86+x86_64