Running ‘testthat.R’ [82s/122s]
Running the tests in ‘tests/testthat.R’ failed.
Complete output:
  > library(testthat)
  > 
  > # Machine Learning
  > library(tidymodels)
  ── Attaching packages ────────────────────────────────────── tidymodels 1.0.0 ──
  ✔ broom        1.0.4     ✔ recipes      1.0.5
  ✔ dials        1.1.0     ✔ rsample      1.1.1
  ✔ dplyr        1.1.0     ✔ tibble       3.2.0
  ✔ ggplot2      3.4.1     ✔ tidyr        1.3.0
  ✔ infer        1.0.4     ✔ tune         1.0.1
  ✔ modeldata    1.1.0     ✔ workflows    1.1.3
  ✔ parsnip      1.0.4     ✔ workflowsets 1.0.0
  ✔ purrr        1.0.1     ✔ yardstick    1.1.0
  ── Conflicts ───────────────────────────────────────── tidymodels_conflicts() ──
  ✖ purrr::discard() masks scales::discard()
  ✖ dplyr::filter()  masks stats::filter()
  ✖ purrr::is_null() masks testthat::is_null()
  ✖ dplyr::lag()     masks stats::lag()
  ✖ tidyr::matches() masks rsample::matches(), dplyr::matches(), testthat::matches()
  ✖ recipes::step()  masks stats::step()
  • Search for functions across packages at https://www.tidymodels.org/find/
  > library(modeltime)
  > library(modeltime.ensemble)
  Loading required package: modeltime.resample
  > library(modeltime.resample)
  > 
  > # Model dependencies
  > library(xgboost)
  
  Attaching package: 'xgboost'
  
  The following object is masked from 'package:dplyr':
  
      slice
  
  > library(earth)
  Loading required package: Formula
  Loading required package: plotmo
  Loading required package: plotrix
  
  Attaching package: 'plotrix'
  
  The following object is masked from 'package:scales':
  
      rescale
  
  Loading required package: TeachingDemos
  > library(glmnet)
  Loading required package: Matrix
  
  Attaching package: 'Matrix'
  
  The following objects are masked from 'package:tidyr':
  
      expand, pack, unpack
  
  Loaded glmnet 4.1-6
  > 
  > # Core Packages
  > library(tidyverse)
  ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
  ✔ forcats   1.0.0     ✔ readr     2.1.4
  ✔ lubridate 1.9.2     ✔ stringr   1.5.0
  ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
  ✖ readr::col_factor()    masks scales::col_factor()
  ✖ purrr::discard()       masks scales::discard()
  ✖ readr::edition_get()   masks testthat::edition_get()
  ✖ Matrix::expand()       masks tidyr::expand()
  ✖ dplyr::filter()        masks stats::filter()
  ✖ stringr::fixed()       masks recipes::fixed()
  ✖ purrr::is_null()       masks testthat::is_null()
  ✖ dplyr::lag()           masks stats::lag()
  ✖ readr::local_edition() masks testthat::local_edition()
  ✖ tidyr::matches()       masks rsample::matches(), dplyr::matches(), testthat::matches()
  ✖ Matrix::pack()         masks tidyr::pack()
  ✖ xgboost::slice()       masks dplyr::slice()
  ✖ readr::spec()          masks yardstick::spec()
  ✖ Matrix::unpack()       masks tidyr::unpack()
  ℹ Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors
  > library(timetk)
  > library(lubridate)
  > 
  > test_check("modeltime.ensemble")
  ── Modeltime Ensemble ───────────────────────────────────────────
  Ensemble of 3 Models (WEIGHTED)
  
  # Modeltime Table
  # A tibble: 3 × 4
    .model_id .model     .model_desc             .loadings
        <int> <list>     <chr>                       <dbl>
  1         1 <workflow> ARIMA(0,1,1)(0,1,1)[12]     0.5  
  2         2 <workflow> PROPHET                     0.333
  3         3 <workflow> GLMNET                      0.167
  [ FAIL 5 | WARN 8 | SKIP 4 | PASS 28 ]
  
  ══ Skipped tests ═══════════════════════════════════════════════════════════════
  • On CRAN (4)
  
  ══ Failed tests ════════════════════════════════════════════════════════════════
  ── Error ('test-ensemble_average.R:17:1'): (code run outside of `test_that()`) ──
  Error in `vectbl_assign(x[[j]], i, recycled_value[[j]])`: DLL requires the use of native symbols
  Backtrace:
       ▆
    1. ├─... %>% fit(training(m750_splits)) at test-ensemble_average.R:17:0
    2. ├─generics::fit(., training(m750_splits))
    3. ├─workflows::add_recipe(., recipe = recipe(value ~ date, data = training(m750_splits)))
    4. │ └─workflows:::add_action(x, action, "recipe")
    5. │   └─workflows:::validate_is_workflow(x, call = call)
    6. │     └─workflows:::is_workflow(x)
    7. ├─workflows::add_model(...)
    8. │ └─workflows:::new_action_model(spec, formula)
    9. │   └─workflows:::is_model_spec(spec)
   10. ├─arima_reg(seasonal_period = 12) %>% set_engine("auto_arima")
   11. ├─parsnip::set_engine(., "auto_arima")
   12. └─modeltime::arima_reg(seasonal_period = 12)
   13.   └─parsnip::new_model_spec(...)
   14.     └─parsnip::spec_is_possible(spec = out)
   15.       ├─dplyr::full_join(...)
   16.       └─dplyr:::full_join.data.frame(...)
   17.         └─dplyr:::join_mutate(...)
   18.           ├─base::`[<-`(`*tmp*`, new_rows, merge, value = `<tibble[,3]>`)
   19.           └─tibble:::`[<-.tbl_df`(`*tmp*`, new_rows, merge, value = `<tibble[,3]>`)
   20.             └─tibble:::tbl_subassign(x, i, j, value, i_arg, j_arg, substitute(value))
   21.               └─tibble:::tbl_subassign_row(xj, i, value, i_arg, value_arg, call)
   22.                 ├─base::withCallingHandlers(...)
   23.                 └─tibble:::vectbl_assign(x[[j]], i, recycled_value[[j]])
  ── Error ('test-nested-ensembles.R:33:5'): Nested Ensembles Work - sequential ──
  Error in `vectbl_assign(x[[j]], i, recycled_value[[j]])`: DLL requires the use of native symbols
  Backtrace:
       ▆
    1. ├─... %>% add_recipe(rec_prophet) at test-nested-ensembles.R:33:4
    2. ├─workflows::add_recipe(., rec_prophet)
    3. │ └─workflows:::add_action(x, action, "recipe")
    4. │   └─workflows:::validate_is_workflow(x, call = call)
    5. │     └─workflows:::is_workflow(x)
    6. ├─workflows::add_model(...)
    7. │ └─workflows:::new_action_model(spec, formula)
    8. │   └─workflows:::is_model_spec(spec)
    9. ├─prophet_reg("regression", seasonality_yearly = TRUE) %>% ...
   10. ├─parsnip::set_engine(., "prophet")
   11. └─modeltime::prophet_reg("regression", seasonality_yearly = TRUE)
   12.   └─parsnip::new_model_spec(...)
   13.     └─parsnip::spec_is_possible(spec = out)
   14.       ├─dplyr::full_join(...)
   15.       └─dplyr:::full_join.data.frame(...)
   16.         └─dplyr:::join_mutate(...)
   17.           ├─base::`[<-`(`*tmp*`, new_rows, merge, value = `<tibble[,3]>`)
   18.           └─tibble:::`[<-.tbl_df`(`*tmp*`, new_rows, merge, value = `<tibble[,3]>`)
   19.             └─tibble:::tbl_subassign(x, i, j, value, i_arg, j_arg, substitute(value))
   20.               └─tibble:::tbl_subassign_row(xj, i, value, i_arg, value_arg, call)
   21.                 ├─base::withCallingHandlers(...)
   22.                 └─tibble:::vectbl_assign(x[[j]], i, recycled_value[[j]])
  ── Error ('test-panel-data.R:16:1'): (code run outside of `test_that()`) ───────
  Error in `vectbl_assign(x[[j]], i, recycled_value[[j]])`: DLL requires the use of native symbols
  Backtrace:
       ▆
    1. ├─... %>% fit(data_set) at test-panel-data.R:16:0
    2. ├─generics::fit(., data_set)
    3. ├─workflows::add_recipe(., recipe_spec)
    4. │ └─workflows:::add_action(x, action, "recipe")
    5. │   └─workflows:::validate_is_workflow(x, call = call)
    6. │     └─workflows:::is_workflow(x)
    7. ├─workflows::add_model(...)
    8. │ └─workflows:::new_action_model(spec, formula)
    9. │   └─workflows:::is_model_spec(spec)
   10. ├─... %>% set_engine("prophet_xgboost")
   11. ├─parsnip::set_engine(., "prophet_xgboost")
   12. └─modeltime::prophet_boost(...)
   13.   └─parsnip::new_model_spec(...)
   14.     └─parsnip::spec_is_possible(spec = out)
   15.       ├─dplyr::full_join(...)
   16.       └─dplyr:::full_join.data.frame(...)
   17.         └─dplyr:::join_mutate(...)
   18.           ├─base::`[<-`(`*tmp*`, new_rows, merge, value = `<tibble[,3]>`)
   19.           └─tibble:::`[<-.tbl_df`(`*tmp*`, new_rows, merge, value = `<tibble[,3]>`)
   20.             └─tibble:::tbl_subassign(x, i, j, value, i_arg, j_arg, substitute(value))
   21.               └─tibble:::tbl_subassign_row(xj, i, value, i_arg, value_arg, call)
   22.                 ├─base::withCallingHandlers(...)
   23.                 └─tibble:::vectbl_assign(x[[j]], i, recycled_value[[j]])
  ── Error ('test-recursive.R:55:5'): recursive ensemble 1 - single / recipe / parsnip ──
  Error in `dplyr::filter(., .model_desc == "ACTUAL" | .key == "prediction")`: ℹ In argument: `.model_desc == "ACTUAL" | .key == "prediction"`.
  Caused by error:
  ! object '.key' not found
  Backtrace:
       ▆
    1. ├─modeltime_table(recursive_ensemble) %>% ... at test-recursive.R:55:4
    2. ├─modeltime::modeltime_forecast(...)
    3. ├─modeltime:::modeltime_forecast.mdl_time_tbl(...)
    4. │ └─ret %>% ...
    5. ├─dplyr::filter(., .model_desc == "ACTUAL" | .key == "prediction")
    6. ├─dplyr:::filter.data.frame(., .model_desc == "ACTUAL" | .key == "prediction")
    7. │ └─dplyr:::filter_rows(.data, dots, by)
    8. │   └─dplyr:::filter_eval(dots, mask = mask, error_call = error_call)
    9. │     ├─base::withCallingHandlers(...)
   10. │     └─mask$eval_all_filter(dots, env_filter)
   11. │       └─dplyr (local) eval()
   12. └─base::.handleSimpleError(`<fn>`, "object '.key' not found", base::quote(NULL))
   13.   └─dplyr (local) h(simpleError(msg, call))
   14.     └─rlang::abort(message, class = error_class, parent = parent, call = error_call)
  ── Error ('test-recursive.R:184:5'): recursive ensemble 2 - panel / function / parsnip + workflow ──
  Error in `dplyr::filter(., .model_desc == "ACTUAL" | .key == "prediction")`: ℹ In argument: `.model_desc == "ACTUAL" | .key == "prediction"`.
  Caused by error:
  ! object '.key' not found
  Backtrace:
       ▆
    1. ├─modeltime_table(recursive_ensemble_panel) %>% ... at test-recursive.R:184:4
    2. ├─modeltime::modeltime_forecast(...)
    3. ├─modeltime:::modeltime_forecast.mdl_time_tbl(...)
    4. │ └─ret %>% ...
    5. ├─dplyr::filter(., .model_desc == "ACTUAL" | .key == "prediction")
    6. ├─dplyr:::filter.data.frame(., .model_desc == "ACTUAL" | .key == "prediction")
    7. │ └─dplyr:::filter_rows(.data, dots, by)
    8. │   └─dplyr:::filter_eval(dots, mask = mask, error_call = error_call)
    9. │     ├─base::withCallingHandlers(...)
   10. │     └─mask$eval_all_filter(dots, env_filter)
   11. │       └─dplyr (local) eval()
   12. └─base::.handleSimpleError(`<fn>`, "object '.key' not found", base::quote(NULL))
   13.   └─dplyr (local) h(simpleError(msg, call))
   14.     └─rlang::abort(message, class = error_class, parent = parent, call = error_call)
  
  [ FAIL 5 | WARN 8 | SKIP 4 | PASS 28 ]
  Error: Test failures
  Execution halted