software-review
software-review copied to clipboard
fwildclusterboot submission
Submitting Author Name: Alexander Fischer Submitting Author Github Handle: @s3alfisc Other Package Authors Github handles: (comma separated, delete if none) @droodman Repository: https://github.com/s3alfisc/fwildclusterboot/tree/master Version submitted: 0.9.1 (in ropensci branch) Submission type: Stats Badge grade: silver Editor: @helske Reviewers: @meghapsimatrix, @markean
Due date for @meghapsimatrix: 2023-04-17Due date for @markean: 2023-05-29 Archive: TBD Version accepted: TBD Language: en
- Paste the full DESCRIPTION file inside a code block below:
Package: fwildclusterboot
Title: Fast Wild Cluster Bootstrap Inference for Linear Models
Version: 0.13.2
Authors@R: c(
person("Alexander", "Fischer", , "[email protected]", role = c("aut", "cre")),
person("David", "Roodman", role = "aut"),
person("Achim", "Zeileis", role = "ctb",
comment = "Author of included sandwich fragments"),
person("Nathaniel", "Graham", role = "ctb",
comment = "Contributor to included sandwich fragments"),
person("Susanne", "Koell", role = "ctb",
comment = "Contributor to included sandwich fragments"),
person("Laurent", "Berge", role = "ctb",
comment = "Author of included fixest fragments"),
person("Sebastian", "Krantz", role = "ctb")
)
Description: Implementation of fast algorithms for wild cluster bootstrap
inference developed in 'Roodman et al' (2019, 'STATA' Journal,
<doi:10.1177/1536867X19830877>) and 'MacKinnon et al' (2022), which
makes it feasible to quickly calculate bootstrap test statistics based
on a large number of bootstrap draws even for large samples. Multiple
bootstrap types as described in 'MacKinnon, Nielsen & Webb' (2022) are
supported. Further, 'multiway' clustering, regression weights,
bootstrap weights, fixed effects and 'subcluster' bootstrapping are
supported. Further, both restricted ('WCR') and unrestricted ('WCU')
bootstrap are supported. Methods are provided for a variety of fitted
models, including 'lm()', 'feols()' (from package 'fixest') and
'felm()' (from package 'lfe'). Additionally implements a
'heteroskedasticity-robust' ('HC1') wild bootstrap. Last, the package
provides an R binding to 'WildBootTests.jl', which provides additional
speed gains and functionality, including the 'WRE' bootstrap for
instrumental variable models (based on models of type 'ivreg()' from
package 'ivreg') and hypotheses with q > 1.
License: GPL-3
URL: https://s3alfisc.github.io/fwildclusterboot/
BugReports: https://github.com/s3alfisc/fwildclusterboot/issues/
Imports:
collapse,
dqrng,
dreamerr,
Formula,
generics,
gtools,
JuliaConnectoR,
MASS,
Matrix,
Rcpp,
rlang,
summclust
Suggests:
bench,
broom,
clubSandwich,
covr,
data.table,
fabricatr,
fixest,
gt,
ivreg,
knitr,
lfe,
lmtest,
modelsummary,
rmarkdown,
sandwich,
testthat (>= 3.0.0),
tibble
LinkingTo:
Rcpp,
RcppArmadillo,
RcppEigen
VignetteBuilder:
knitr
Config/testthat/edition: 3
Encoding: UTF-8
Language: en-US
LazyData: true
Roxygen: list(markdown = TRUE, roclets = c ("namespace", "rd",
"srr::srr_stats_roclet"))
RoxygenNote: 7.2.1
SystemRequirements: Version Requirements to run the wild bootstrap through
Julia - Julia (>= 1.8), WildBootTests.jl (>=0.9). Julia is
downloadable via the official Julia website
(https://julialang.org/downloads/), WildBootTests.jl via Julia's
package manager (https://docs.julialang.org/en/v1/stdlib/Pkg/) or its
github repository (https://github.com/droodman/WildBootTests.jl)
Pre-submission Inquiry
- [x] A pre-submission inquiry has been approved in #542
General Information
-
Who is the target audience and what are scientific applications of this package? The target audience is academic social scientists (economics, political science, sociology). fwildclusterboot should be used whenever regression errors are "clustered" into few groups, in which case inference based on asymptotic approximations might fail.
-
Paste your responses to our General Standard G1.1 here, describing whether your software is:
- The first implementation of a novel algorithm; or
- The first implementation within R of an algorithm which has previously been implemented in other languages or contexts; or
- An improvement on other implementations of similar algorithms in R.
fwildclusterboot is the first R-implementation of the 'fast' wild cluster bootstrap algorithm outlined in Roodman et al (2019, Stata Journal) and implemented in Stata via the boottest package. Recently, @droodman has also ported the algorithm to Julia. Besides implementing the "fast & wild" algorithm in native R, fwildclusterboot also allows to call WildBootTests.jl via the JuliaConnectoR package. The "fast" algorithm is significantly faster than any other R-implementations of the wild cluster bootstrap to date (e.g. see here).
- (If applicable) Does your package comply with our guidance around Ethics, Data Privacy and Human Subjects Research?
Yes.
Badging
- What grade of badge are you aiming for? (bronze, silver, gold)
At a minimal level, I strive for a silver badge.
- If aiming for silver or gold, describe which of the four aspects listed in the Guide for Authors chapter the package fulfils (at least one aspect for silver; three for gold)
- Compliance with a good number of standards; 2) I strive for compliance with all standards regarding a) documentation and b) testing.
Technical checks
Confirm each of the following by checking the box.
- [x] I have read the rOpenSci packaging guide.
- [x] I have read the author guide and I expect to maintain this package for at least 2 years or have another maintainer identified.
- [x] I/we have read the Statistical Software Peer Review Guide for Authors.
- [x] I/we have run
autotestchecks on the package, and ensured no tests fail. - [x] The
srr_stats_pre_submit()function confirms this package may be submitted. - [ ] The
pkgcheck()function confirms this package may be submitted - alternatively, please explain reasons for any checks which your package is unable to pass.
pkgcheck::pkgcheck() currently fails on my machine with the following error message: "Error in normalizePath(path.expand(path), winslash, mustWork).: path[1]="C:/.../fwildclusterboot/NA" The system cannot find the specified file. It also fails on github-actions on the ropensci branch.
Also, note that the CMD checks currently fail on github actions as the gtools package has been orphaned - I am monitoring the situation, but it looks like the package will not be removed from CRAN.
This package:
- [x] does not violate the Terms of Service of any service it interacts with.
- [x] has a CRAN and OSI accepted license.
- [x] contains a README with instructions for installing the development version.
Publication options
- [x] Do you intend for this package to go on CRAN? The package is already on CRAN. In case major changes are suggested during the review, I would consider integrating them into a successor package (e.g. 'fwildclusterboot2').
- [ ] Do you intend for this package to go on Bioconductor?
Code of conduct
- [x] I agree to abide by rOpenSci's Code of Conduct during the review process and in maintaining my package should it be accepted.
Thanks for submitting to rOpenSci, our editors and @ropensci-review-bot will reply soon. Type @ropensci-review-bot help for help.
Error (500). The editorcheck service is currently unavailable
@ropensci-review-bot check package
Thanks, about to send the query.
Error (500). The editorcheck service is currently unavailable
Hi @emilyriederer, is it possible that the editor check bot fails because I have submitted the package via a side-branch? @mpadge mentioned in the pre-submission that some of the automated tools might fail in this case, but suggested to nevertheless submit via a non default branch for testing purposes.
Looks like @mpadge beat me to this but it appears we have our answer. Marc, I assume we shall wait to proceed until this issue is closed? Thanks!
Thanks @emilyriederer, because of this submission we now have an ability to process packages with non-default review branches. You (or indeed @s3alfisc) may call check package at any time. (But I've noted to @s3alfisc elsewhere that R CMD check currently fails on his package because our check systems don't have Julia installed.)
Thanks @mpadge - it looks like I have some work to do :) I will trigger check page once I believe I have managed to align the package with all pkgcheck requirements!
@ropensci-review-bot check package
Thanks, about to send the query.
:rocket:
Editor check started
:wave:
Checks for fwildclusterboot (v0.10)
git hash: 274030f8
- :heavy_check_mark: Package is already on CRAN.
- :heavy_check_mark: has a 'codemeta.json' file.
- :heavy_check_mark: has a 'contributing' file.
- :heavy_check_mark: uses 'roxygen2'.
- :heavy_check_mark: 'DESCRIPTION' has a URL field.
- :heavy_check_mark: 'DESCRIPTION' has a BugReports field.
- :heavy_check_mark: Package has at least one HTML vignette
- :heavy_multiplication_x: These functions do not have examples: [check_mboottest_args_plus, check_r_lean, cpp_get_nb_threads, eigenMapMatMult, model_matrix, nobs.boottest, teststat].
- :heavy_multiplication_x: Function names are duplicated in other packages
- :heavy_check_mark: Package has continuous integration checks.
- :heavy_multiplication_x: Package coverage failed
- :heavy_multiplication_x: R CMD check found 1 error.
- :heavy_check_mark: R CMD check found no warnings.
Important: All failing checks above must be addressed prior to proceeding
Package License: GPL-3
1. rOpenSci Statistical Standards (srr package)
This package is in the following category:
- Regression and Supervised Learning
:heavy_check_mark: All applicable standards [v0.1.0] have been documented in this package (70 complied with; 46 N/A standards)
Click to see the report of author-reported standards compliance of the package with links to associated lines of code, which can be re-generated locally by running the srr_report() function from within a local clone of the repository.
2. Package Dependencies
Details of Package Dependency Usage (click to open)
The table below tallies all function calls to all packages ('ncalls'), both internal (r-base + recommended, along with the package itself), and external (imported and suggested packages). 'NA' values indicate packages to which no identified calls to R functions could be found. Note that these results are generated by an automated code-tagging system which may not be entirely accurate.
| type | package | ncalls |
|---|---|---|
| internal | base | 385 |
| internal | fwildclusterboot | 104 |
| internal | stats | 80 |
| internal | utils | 8 |
| internal | graphics | 3 |
| internal | compiler | 1 |
| imports | collapse | 14 |
| imports | dreamerr | 10 |
| imports | generics | 5 |
| imports | dqrng | 5 |
| imports | Matrix | 3 |
| imports | Matrix.utils | 3 |
| imports | JuliaConnectoR | 1 |
| imports | Formula | NA |
| imports | Rcpp | NA |
| suggests | fabricatr | 6 |
| suggests | fixest | NA |
| suggests | lfe | NA |
| suggests | ivreg | NA |
| suggests | clubSandwich | NA |
| suggests | sandwich | NA |
| suggests | lmtest | NA |
| suggests | data.table | NA |
| suggests | covr | NA |
| suggests | knitr | NA |
| suggests | rmarkdown | NA |
| suggests | broom | NA |
| suggests | modelsummary | NA |
| suggests | bench | NA |
| suggests | testthat | NA |
| suggests | tibble | NA |
| linking_to | Rcpp | NA |
| linking_to | RcppArmadillo | NA |
| linking_to | RcppEigen | NA |
Click below for tallies of functions used in each package. Locations of each call within this package may be generated locally by running 's <- pkgstats::pkgstats(<path/to/repo>)', and examining the 'external_calls' table.
base
length (36), call (31), list (28), c (16), lapply (13), vapply (13), as.vector (11), names (11), t (11), drop (10), stop (10), unique (10), rep (9), ifelse (8), paste0 (8), data.frame (7), match.call (7), which (7), as.matrix (6), ncol (6), nrow (6), replace (6), sqrt (6), mode (5), seq_along (5), vector (5), as.numeric (4), for (4), is.null (4), mean (4), Reduce (4), sample (4), sum (4), switch (4), tcrossprod (4), abs (3), col (3), colnames (3), environment (3), q (3), as.integer (2), attr (2), crossprod (2), getOption (2), if (2), loadedNamespaces (2), min (2), norm (2), paste (2), Recall (2), solve (2), suppressWarnings (2), append (1), as.character (1), as.factor (1), cbind (1), class (1), do.call (1), exp (1), integer (1), is.na (1), is.numeric (1), logical (1), max (1), message (1), sample.int (1), seq (1), sort (1), Sys.getenv (1), try (1), unlist (1)
fwildclusterboot
get_ssc_julia (8), check_set_full_enumeration (7), set_seed (7), teststat (6), boot_algo_julia (5), crosstab (4), get_cluster (4), model_matrix (4), boot_algo2 (3), cpp_get_nb_threads (3), eigenMapMatMult (3), get_bootstrap_pvalue (3), get_ssc (3), demean_fe (2), gtools_permutations (2), preprocess2.felm (2), preprocess2.fixest (2), preprocess2.lm (2), transform_fe (2), boottest (1), boottest.felm (1), boottest.fixest (1), boottest.ivreg (1), boottest.lm (1), check_boottest_args_plus (1), check_mboottest_args_plus (1), check_params_in_model (1), check_r_lean (1), check_set_nthreads (1), confint.boottest (1), crosstab4 (1), get_seed (1), get_start_vals (1), getBoottest_boot_algo (1), getBoottest_nthreads (1), glance.boottest (1), invert_p_val (1), mboottest (1), mboottest.felm (1), mboottest.fixest (1), mboottest.lm (1), model_matrix.felm (1), model_matrix.lm (1), nobs.boottest (1), nobs.mboottest (1), p_val_null2 (1), p_val_null2_x (1), p_val_null2_x_sign_level (1), preprocess2.ivreg (1), to_integer (1), wildboottestHC (1)
stats
weights (24), model.matrix (12), formula (8), coef (6), na.omit (6), model.frame (5), nobs (4), aggregate (3), model.response (3), na.exclude (3), reformulate (2), na.action (1), na.pass (1), rlnorm (1), update (1)
collapse
fsum (7), GRP (4), qF (3)
dreamerr
validate_dots (10)
utils
data (7), combn (1)
fabricatr
draw_binary (2), draw_normal_icc (2), draw_ordered (1), fabricate (1)
dqrng
dqsample (4), dqset.seed (1)
generics
tidy (4), glance (1)
graphics
abline (3)
Matrix
t (2), Diagonal (1)
Matrix.utils
aggregate.Matrix (3)
compiler
cmpfun (1)
JuliaConnectoR
juliaImport (1)
NOTE: Some imported packages appear to have no associated function calls; please ensure with author that these 'Imports' are listed appropriately.
3. Statistical Properties
This package features some noteworthy statistical properties which may need to be clarified by a handling editor prior to progressing.
Details of statistical properties (click to open)
The package has:
- code in C++ (8% in 2 files) and R (92% in 28 files)
- 2 authors
- 2 vignettes
- 1 internal data file
- 9 imported packages
- 33 exported functions (median 8 lines of code)
- 121 non-exported functions in R (median 26 lines of code)
- 13 R functions (median 17 lines of code)
Statistical properties of package structure as distributional percentiles in relation to all current CRAN packages The following terminology is used:
loc= "Lines of Code"fn= "function"exp/not_exp= exported / not exported
All parameters are explained as tooltips in the locally-rendered HTML version of this report generated by the checks_to_markdown() function
The final measure (fn_call_network_size) is the total number of calls between functions (in R), or more abstract relationships between code objects in other languages. Values are flagged as "noteworthy" when they lie in the upper or lower 5th percentile.
| measure | value | percentile | noteworthy |
|---|---|---|---|
| files_R | 28 | 88.2 | |
| files_src | 2 | 79.1 | |
| files_vignettes | 2 | 85.7 | |
| files_tests | 17 | 95.3 | |
| loc_R | 3873 | 93.2 | |
| loc_src | 325 | 37.1 | |
| loc_vignettes | 436 | 74.7 | |
| loc_tests | 5291 | 98.3 | TRUE |
| num_vignettes | 2 | 89.2 | |
| data_size_total | 14024 | 72.7 | |
| data_size_median | 14024 | 81.0 | |
| n_fns_r | 154 | 85.7 | |
| n_fns_r_exported | 33 | 80.4 | |
| n_fns_r_not_exported | 121 | 87.1 | |
| n_fns_src | 13 | 35.0 | |
| n_fns_per_file_r | 3 | 55.2 | |
| n_fns_per_file_src | 6 | 61.3 | |
| num_params_per_fn | 2 | 11.9 | |
| loc_per_fn_r | 23 | 66.0 | |
| loc_per_fn_r_exp | 8 | 16.3 | |
| loc_per_fn_r_not_exp | 26 | 73.5 | |
| loc_per_fn_src | 17 | 59.6 | |
| rel_whitespace_R | 18 | 92.7 | |
| rel_whitespace_src | 30 | 48.8 | |
| rel_whitespace_vignettes | 43 | 83.2 | |
| rel_whitespace_tests | 11 | 96.1 | TRUE |
| doclines_per_fn_exp | 29 | 31.0 | |
| doclines_per_fn_not_exp | 0 | 0.0 | TRUE |
| fn_call_network_size | 132 | 83.4 |
3a. Network visualisation
Click to see the interactive network visualisation of calls between objects in package
4. goodpractice and other checks
Details of goodpractice checks (click to open)
3a. Continuous Integration Badges
GitHub Workflow Results
| id | name | conclusion | sha | run_number | date |
|---|---|---|---|---|---|
| 2828472276 | pages build and deployment | success | b71a32 | 155 | 2022-08-09 |
| 2827237407 | pkgcheck | failure | 274030 | 24 | 2022-08-09 |
| 2862000970 | pkgdown | failure | 85eba8 | 101 | 2022-08-15 |
| 2862000975 | R-CMD-check | failure | 85eba8 | 458 | 2022-08-15 |
| 2862000968 | test-coverage | failure | 85eba8 | 435 | 2022-08-15 |
3b. goodpractice results
R CMD check with rcmdcheck
R CMD check generated the following error:
- checking tests ...
Running ‘testthat.R’
ERROR
Running the tests in ‘tests/testthat.R’ failed.
Last 13 lines of output:
▆
- ├─fwildclusterboot::boottest(...) at test_fixest_sugar.R:44:2
- └─fwildclusterboot:::boottest.fixest(...)
- └─fwildclusterboot:::preprocess2.fixest(...)
-
└─fwildclusterboot:::get_cluster(...) -
├─stats::model.frame(clustid_fml, cluster_tmp, na.action = na.pass) -
└─stats::model.frame.default(clustid_fml, cluster_tmp, na.action = na.pass) -
├─base::as.data.frame(data) -
└─base::as.data.frame.default(data)
── Error (test_multicollinearity.R:16:3): test multicollinearity ───────────────
Error in feols(Y ~ X1 + X2, data = data): could not find function "feols"
[ FAIL 2 | WARN 4 | SKIP 15 | PASS 59 ] Error: Test failures Execution halted
R CMD check generated the following notes:
- checking installed package size ... NOTE installed size is 7.0Mb sub-directories of 1Mb or more: libs 5.9Mb
- checking R code for possible problems ... NOTE mboottest.lm: no visible binding for global variable ‘teststat_boot’ Undefined global functions or variables: teststat_boot
R CMD check generated the following test_fail:
-
library(testthat)
library(fwildclusterboot)
test_check("fwildclusterboot") The Julia environment variable 'JULIA_BINDIR' could not be found.Therefore, all tests that involve 'WildBootTests.jl' will be skipped.
Error in i(treatment, ideology1) : could not find function "i" test_tidy.R, q = 1 skipped as 'JULIA_BINDIR' not found. test_tidy.R, q > 1 skipped as 'JULIA_BINDIR' not found. Loading required namespace: data.table test-error_warning.R with q = 1 skipped as JULIA_BINDIR not found. test-error_warning.R with q > 1 skipped as JULIA_BINDIR not found. Loading required package: Matrix Error in post1 | SEclusters : operations are possible only for numeric, logical or complex types Error in post1 | 0 | 0 | SEclusters : operations are possible only for numeric, logical or complex types Error in post1 | Utility_state : operations are possible only for numeric, logical or complex types Error in post1 | SEclusters : operations are possible only for numeric, logical or complex types Error in post1 | 0 | 0 | SEclusters : operations are possible only for numeric, logical or complex types Error in post1 | Utility_state : operations are possible only for numeric, logical or complex types Error in post1 | SEclusters : operations are possible only for numeric, logical or complex types Error in post1 | 0 | 0 | SEclusters : operations are possible only for numeric, logical or complex types Error in post1 | Utility_state : operations are possible only for numeric, logical or complex types test-global_vars.R skipped as JULIA_BINDR not found. test-method_equivalence.R I skipped as JULIA_BINDR not found. test-method_equivalence.R II skipped as JULIA_BINDR not found. test-r-vs-julia.R skipped as JULIA_BINDIR not found. test-seed.R skipped as JULIA_BINDR not found. test-tstat_equivalence.R I skipped as JULIA_BINDR not found. test-tstat_equivalence.R II skipped as JULIA_BINDR not found. test-stat_equivalence.R III skipped as JULIA_BINDR not found. Error in Q1_immigration + Q2_defense : non-numeric argument to binary operator Error in Q1_immigration + Q2_defense : non-numeric argument to binary operator [ FAIL 2 | WARN 4 | SKIP 15 | PASS 59 ]
══ Skipped tests ═══════════════════════════════════════════════════════════════ • empty test (15)
══ Warnings ════════════════════════════════════════════════════════════════════
── Warning (test-uncategorized.R:44:3): uncategorized tests ────────────────────
There are only 64 unique draws from the rademacher distribution for 6 bootstrap clusters. Therefore, B = 64 with full enumeration. Consider using webb weights instead.
Further, note that under full enumeration and with B = 64 bootstrap draws, only 2^(#clusters - 1) = 32 distinct t-statistics and p-values can be computed. For a
more thorough discussion, see Webb Reworking wild bootstrap based inference for clustered errors (2013).
Backtrace:
- fwildclusterboot::boottest(...) at test-uncategorized.R:44:2
- fwildclusterboot:::boottest.fixest(...)
- fwildclusterboot:::check_set_full_enumeration(...)
── Warning (test-uncategorized.R:52:3): uncategorized tests ────────────────────
There are only 64 unique draws from the rademacher distribution for 6 bootstrap clusters. Therefore, B = 64 with full enumeration. Consider using webb weights instead.
Further, note that under full enumeration and with B = 64 bootstrap draws, only 2^(#clusters - 1) = 32 distinct t-statistics and p-values can be computed. For a
more thorough discussion, see Webb
Reworking wild bootstrap based inference for clustered errors(2013). Backtrace: - fwildclusterboot::boottest(...) at test-uncategorized.R:52:2
- fwildclusterboot:::boottest.fixest(...)
- fwildclusterboot:::check_set_full_enumeration(...)
── Warning (test-uncategorized.R:60:3): uncategorized tests ────────────────────
There are only 64 unique draws from the rademacher distribution for 6 bootstrap clusters. Therefore, B = 64 with full enumeration. Consider using webb weights instead.
Further, note that under full enumeration and with B = 64 bootstrap draws, only 2^(#clusters - 1) = 32 distinct t-statistics and p-values can be computed. For a
more thorough discussion, see Webb
Reworking wild bootstrap based inference for clustered errors(2013). Backtrace: - fwildclusterboot::boottest(...) at test-uncategorized.R:60:2
- fwildclusterboot:::boottest.fixest(...)
- fwildclusterboot:::check_set_full_enumeration(...)
── Warning (test-uncategorized.R:68:3): uncategorized tests ────────────────────
There are only 64 unique draws from the rademacher distribution for 6 bootstrap clusters. Therefore, B = 64 with full enumeration. Consider using webb weights instead.
Further, note that under full enumeration and with B = 64 bootstrap draws, only 2^(#clusters - 1) = 32 distinct t-statistics and p-values can be computed. For a
more thorough discussion, see Webb
Reworking wild bootstrap based inference for clustered errors(2013). Backtrace: - fwildclusterboot::boottest(...) at test-uncategorized.R:68:2
- fwildclusterboot:::boottest.fixest(...)
- fwildclusterboot:::check_set_full_enumeration(...)
══ Failed tests ════════════════════════════════════════════════════════════════
── Error (test_fixest_sugar.R:44:3): test fixest formula sugar ─────────────────
Error in as.data.frame.default(data): cannot coerce class '"try-error"' to a data.frame
Backtrace:
▆
- ├─fwildclusterboot::boottest(...) at test_fixest_sugar.R:44:2
- └─fwildclusterboot:::boottest.fixest(...)
- └─fwildclusterboot:::preprocess2.fixest(...)
-
└─fwildclusterboot:::get_cluster(...) -
├─stats::model.frame(clustid_fml, cluster_tmp, na.action = na.pass) -
└─stats::model.frame.default(clustid_fml, cluster_tmp, na.action = na.pass) -
├─base::as.data.frame(data) -
└─base::as.data.frame.default(data)
── Error (test_multicollinearity.R:16:3): test multicollinearity ───────────────
Error in feols(Y ~ X1 + X2, data = data): could not find function "feols"
[ FAIL 2 | WARN 4 | SKIP 15 | PASS 59 ] Error: Test failures Execution halted
R CMD check generated the following check_fails:
- rcmdcheck_undefined_globals
- rcmdcheck_tests_pass
- rcmdcheck_reasonable_installed_size
Test coverage with covr
ERROR: Test Coverage Failed
Cyclocomplexity with cyclocomp
The following functions have cyclocomplexity >= 15:
| function | cyclocomplexity |
|---|---|
| get_cluster | 45 |
| gtools_permutations | 34 |
| boot_algo_julia | 20 |
| boot_algo2 | 17 |
| getBoottest_nthreads | 16 |
| check_boottest_args_plus | 15 |
Static code analyses with lintr
lintr found the following 35 potential issues:
| message | number of times |
|---|---|
| Avoid library() and require() calls in packages | 12 |
| Lines should not be more than 80 characters. | 23 |
5. Other Checks
Details of other checks (click to open)
:heavy_multiplication_x: The following 2 function names are duplicated in other packages:
-
model_matrixfrom bayesbr, hardhat, mcmcsae, modelr, ZIprop
-
pvalfrom CIPerm, dostats, dostats, GUIDE, learnstats, molic, mosaic, overlapptest, RPtests, timereg
Package Versions
| package | version |
|---|---|
| pkgstats | 0.1.1.20 |
| pkgcheck | 0.1.0.3 |
| srr | 0.0.1.176 |
Editor-in-Chief Instructions:
Processing may not proceed until the items marked with :heavy_multiplication_x: have been resolved.
Hi, I wanted to give some feedback on the state of the package:
- Over the last weeks, I have integrated new bootstrap variants to the package as recently suggested in MacKinnon, Nielsen & Webb. The new variants seem to perform even better than "old" variants implemented in
fwildclusterbootand are also relatively fast to compute. - I have spent quite some time on trying to make the package compliant with all
pkgchecks- unfortunately, I still fail to run the entire process locally, so please apologize if it will take me one or two more attempts to fully align the package. When runningpkgcheck::pkgcheck(), I usually get the following errorError in normalizePath(path.expand(path), winslash, mustWork) : path[1]="C:\Users\...\fwildclusterboot/NA": The system cannot find the file specified. I also cannot get thepkgcheckgithub action to run withfwildclusterboot. For another package of mine, thepkgcheckaction runs flawlessly . - As suggested by @mpadge , I have added a clause that will prohibit that unit tests will run if Julia is not installed. Unfortunately, this has affected the CI statistics of the package by disabling any Julia based testing on CI. I am currently investigating this - the computed coverage of 56% does not look very good & is quite a bit higher when adding all tests against Julia (it should be around 85%).
@ropensci-review-bot check package
Thanks, about to send the query.
:rocket:
Editor check started
:wave:
Checks for fwildclusterboot (v0.11)
git hash: 00c38b8d
- :heavy_check_mark: Package is already on CRAN.
- :heavy_check_mark: has a 'codemeta.json' file.
- :heavy_check_mark: has a 'contributing' file.
- :heavy_multiplication_x: The following functions have no documented return values: [boot_ssc, pval, teststat]
- :heavy_check_mark: uses 'roxygen2'.
- :heavy_check_mark: 'DESCRIPTION' has a URL field.
- :heavy_check_mark: 'DESCRIPTION' has a BugReports field.
- :heavy_check_mark: Package has at least one HTML vignette
- :heavy_check_mark: All functions have examples.
- :heavy_multiplication_x: Function names are duplicated in other packages
- :heavy_check_mark: Package has continuous integration checks.
- :heavy_multiplication_x: Package coverage failed
- :heavy_multiplication_x: R CMD check found 1 error.
- :heavy_check_mark: R CMD check found no warnings.
Important: All failing checks above must be addressed prior to proceeding
Package License: GPL-3
1. rOpenSci Statistical Standards (srr package)
This package is in the following category:
- Regression and Supervised Learning
:heavy_check_mark: All applicable standards [v0.1.0] have been documented in this package (70 complied with; 46 N/A standards)
Click to see the report of author-reported standards compliance of the package with links to associated lines of code, which can be re-generated locally by running the srr_report() function from within a local clone of the repository.
2. Package Dependencies
Details of Package Dependency Usage (click to open)
The table below tallies all function calls to all packages ('ncalls'), both internal (r-base + recommended, along with the package itself), and external (imported and suggested packages). 'NA' values indicate packages to which no identified calls to R functions could be found. Note that these results are generated by an automated code-tagging system which may not be entirely accurate.
| type | package | ncalls |
|---|---|---|
| internal | base | 441 |
| internal | fwildclusterboot | 113 |
| internal | stats | 83 |
| internal | utils | 8 |
| internal | graphics | 3 |
| internal | compiler | 1 |
| imports | collapse | 14 |
| imports | dreamerr | 10 |
| imports | generics | 5 |
| imports | dqrng | 5 |
| imports | MASS | 4 |
| imports | Matrix | 3 |
| imports | Matrix.utils | 3 |
| imports | JuliaConnectoR | 1 |
| imports | summclust | 1 |
| imports | sandwich | 1 |
| imports | Formula | NA |
| imports | Rcpp | NA |
| suggests | fabricatr | 6 |
| suggests | fixest | NA |
| suggests | lfe | NA |
| suggests | ivreg | NA |
| suggests | clubSandwich | NA |
| suggests | lmtest | NA |
| suggests | data.table | NA |
| suggests | covr | NA |
| suggests | knitr | NA |
| suggests | rmarkdown | NA |
| suggests | broom | NA |
| suggests | modelsummary | NA |
| suggests | bench | NA |
| suggests | testthat | NA |
| suggests | tibble | NA |
| linking_to | Rcpp | NA |
| linking_to | RcppArmadillo | NA |
| linking_to | RcppEigen | NA |
Click below for tallies of functions used in each package. Locations of each call within this package may be generated locally by running 's <- pkgstats::pkgstats(<path/to/repo>)', and examining the 'external_calls' table.
base
length (40), call (31), list (30), lapply (20), c (16), t (15), vapply (13), as.vector (12), drop (12), names (12), unique (12), stop (10), ifelse (9), Reduce (9), rep (9), paste0 (8), which (8), data.frame (7), match.call (7), mode (7), nrow (7), sqrt (7), vector (7), as.matrix (6), for (6), ncol (6), replace (6), switch (6), seq_along (5), as.numeric (4), crossprod (4), is.null (4), mean (4), sample (4), solve (4), sum (4), tcrossprod (4), abs (3), col (3), colnames (3), environment (3), q (3), as.factor (2), as.integer (2), attr (2), dim (2), getOption (2), if (2), loadedNamespaces (2), matrix (2), min (2), norm (2), paste (2), Recall (2), split (2), suppressWarnings (2), append (1), as.character (1), cbind (1), class (1), colSums (1), diag (1), do.call (1), eval (1), exp (1), integer (1), is.na (1), is.numeric (1), logical (1), max (1), message (1), row (1), sample.int (1), seq (1), sort (1), Sys.getenv (1), try (1), tryCatch (1), unlist (1)
fwildclusterboot
get_ssc_julia (8), check_set_full_enumeration (7), set_seed (7), teststat (6), boot_algo_julia (5), crosstab (4), get_bootstrap_pvalue (4), get_cluster (4), model_matrix (4), boot_algo2 (3), cpp_get_nb_threads (3), eigenMapMatMult (3), get_ssc (3), get_weights (3), matrix_split (3), demean_fe (2), get_scores (2), gtools_permutations (2), preprocess2.felm (2), preprocess2.fixest (2), preprocess2.lm (2), transform_fe (2), boot_algo3 (1), boottest (1), boottest.felm (1), boottest.fixest (1), boottest.ivreg (1), boottest.lm (1), check_boot_algo3 (1), check_boottest_args_plus (1), check_mboottest_args_plus (1), check_params_in_model (1), check_r_lean (1), check_set_nthreads (1), confint.boottest (1), crosstab4 (1), get_seed (1), get_start_vals (1), getBoottest_boot_algo (1), getBoottest_nthreads (1), glance.boottest (1), invert_p_val (1), is_juliaconnector_prepared (1), mboottest (1), mboottest.felm (1), mboottest.fixest (1), mboottest.lm (1), model_matrix.felm (1), p_val_null2 (1), p_val_null2_x (1), p_val_null2_x_sign_level (1), preprocess2.ivreg (1), to_integer (1), wildboottestHC (1)
stats
weights (25), model.matrix (12), formula (8), coef (6), na.omit (6), model.frame (5), nobs (4), aggregate (3), model.response (3), na.exclude (3), reformulate (2), vcov (2), na.action (1), na.pass (1), rlnorm (1), update (1)
collapse
fsum (7), GRP (4), qF (3)
dreamerr
validate_dots (10)
utils
data (7), combn (1)
fabricatr
draw_binary (2), draw_normal_icc (2), draw_ordered (1), fabricate (1)
dqrng
dqsample (4), dqset.seed (1)
generics
tidy (4), glance (1)
MASS
ginv (4)
graphics
abline (3)
Matrix
t (2), Diagonal (1)
Matrix.utils
aggregate.Matrix (3)
compiler
cmpfun (1)
JuliaConnectoR
juliaImport (1)
sandwich
vcovCL (1)
summclust
vcov_CR3J (1)
NOTE: Some imported packages appear to have no associated function calls; please ensure with author that these 'Imports' are listed appropriately.
3. Statistical Properties
This package features some noteworthy statistical properties which may need to be clarified by a handling editor prior to progressing.
Details of statistical properties (click to open)
The package has:
- code in C++ (7% in 3 files) and R (93% in 32 files)
- 2 authors
- 3 vignettes
- 1 internal data file
- 12 imported packages
- 28 exported functions (median 9 lines of code)
- 140 non-exported functions in R (median 24 lines of code)
- 14 R functions (median 14 lines of code)
Statistical properties of package structure as distributional percentiles in relation to all current CRAN packages The following terminology is used:
loc= "Lines of Code"fn= "function"exp/not_exp= exported / not exported
All parameters are explained as tooltips in the locally-rendered HTML version of this report generated by the checks_to_markdown() function
The final measure (fn_call_network_size) is the total number of calls between functions (in R), or more abstract relationships between code objects in other languages. Values are flagged as "noteworthy" when they lie in the upper or lower 5th percentile.
| measure | value | percentile | noteworthy |
|---|---|---|---|
| files_R | 32 | 90.5 | |
| files_src | 3 | 84.3 | |
| files_vignettes | 3 | 92.4 | |
| files_tests | 17 | 95.3 | |
| loc_R | 4252 | 94.1 | |
| loc_src | 341 | 37.9 | |
| loc_vignettes | 496 | 77.9 | |
| loc_tests | 5516 | 98.5 | TRUE |
| num_vignettes | 3 | 94.2 | |
| data_size_total | 14024 | 72.7 | |
| data_size_median | 14024 | 81.0 | |
| n_fns_r | 168 | 87.0 | |
| n_fns_r_exported | 28 | 76.4 | |
| n_fns_r_not_exported | 140 | 89.2 | |
| n_fns_src | 14 | 36.7 | |
| n_fns_per_file_r | 3 | 53.1 | |
| n_fns_per_file_src | 5 | 47.8 | |
| num_params_per_fn | 2 | 11.9 | |
| loc_per_fn_r | 23 | 66.0 | |
| loc_per_fn_r_exp | 9 | 19.2 | |
| loc_per_fn_r_not_exp | 24 | 70.4 | |
| loc_per_fn_src | 14 | 46.6 | |
| rel_whitespace_R | 19 | 94.1 | |
| rel_whitespace_src | 33 | 52.2 | |
| rel_whitespace_vignettes | 41 | 84.9 | |
| rel_whitespace_tests | 12 | 96.6 | TRUE |
| doclines_per_fn_exp | 30 | 32.9 | |
| doclines_per_fn_not_exp | 0 | 0.0 | TRUE |
| fn_call_network_size | 141 | 84.4 |
3a. Network visualisation
Click to see the interactive network visualisation of calls between objects in package
4. goodpractice and other checks
Details of goodpractice checks (click to open)
3a. Continuous Integration Badges
GitHub Workflow Results
| id | name | conclusion | sha | run_number | date |
|---|---|---|---|---|---|
| 2899111163 | pages build and deployment | success | de3182 | 176 | 2022-08-21 |
| 2921823435 | pkgcheck | failure | 00c38b | 41 | 2022-08-24 |
| 2899087820 | pkgdown | success | aba1d7 | 124 | 2022-08-21 |
| 2921823433 | R-CMD-check | success | 00c38b | 484 | 2022-08-24 |
| 2899015892 | test-coverage | success | aba1d7 | 457 | 2022-08-21 |
3b. goodpractice results
R CMD check with rcmdcheck
R CMD check generated the following error:
- checking tests ...
Running ‘testthat.R’
ERROR
Running the tests in ‘tests/testthat.R’ failed.
Last 13 lines of output:
- ├─fwildclusterboot::boottest(...) at test-new-bootstrap-variants.R:243:2
- └─fwildclusterboot:::boottest.lm(...)
- └─fwildclusterboot:::boot_algo_julia(...)
-
└─JuliaConnectoR::juliaEval("using WildBootTests") -
└─JuliaConnectoR::juliaCall("RConnector.mainevalcmd", expr) -
├─base::tryCatch(...) -
│ └─base (local) tryCatchList(expr, classes, parentenv, handlers) -
│ └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) -
│ └─base (local) doTryCatch(return(expr), name, parentenv, handler) -
└─JuliaConnectoR:::doCallJulia(funName, jlargs) -
└─JuliaConnectoR:::handleCallbacksAndOutput()
[ FAIL 1 | WARN 6 | SKIP 14 | PASS 75 ] Error: Test failures Execution halted
R CMD check generated the following notes:
- checking installed package size ... NOTE installed size is 7.5Mb sub-directories of 1Mb or more: libs 6.5Mb
- checking R code for possible problems ... NOTE boot_algo3: no visible binding for '<<-' assignment to ‘beta_2g_tilde’
R CMD check generated the following test_fail:
-
library(testthat)
library(fwildclusterboot)
test_check("fwildclusterboot") Loading required namespace: fixest The variable 'X2' has been removed because of collinearity (see $collin.var). The Julia environment variable 'JULIA_BINDIR' could not be found.Therefore, all tests that involve 'WildBootTests.jl' will be skipped.
test_tidy.R, q = 1 skipped as 'JULIA_BINDIR' not found. The Julia environment variable 'JULIA_BINDIR' could not be found.Therefore, all tests that involve 'WildBootTests.jl' will be skipped.
test_tidy.R, q > 1 skipped as 'JULIA_BINDIR' not found. Loading required namespace: data.table The Julia environment variable 'JULIA_BINDIR' could not be found.Therefore, all tests that involve 'WildBootTests.jl' will be skipped.
test-error_warning.R with q = 1 skipped as JULIA_BINDIR not found. Loading required namespace: ivreg Loading required namespace: clubSandwich The Julia environment variable 'JULIA_BINDIR' could not be found.Therefore, all tests that involve 'WildBootTests.jl' will be skipped.
test-error_warning.R with q > 1 skipped as JULIA_BINDIR not found. Error in post1 | SEclusters : operations are possible only for numeric, logical or complex types Error in post1 | 0 | 0 | SEclusters : operations are possible only for numeric, logical or complex types Error in post1 | Utility_state : operations are possible only for numeric, logical or complex types Error in post1 | SEclusters : operations are possible only for numeric, logical or complex types Error in post1 | 0 | 0 | SEclusters : operations are possible only for numeric, logical or complex types Error in post1 | Utility_state : operations are possible only for numeric, logical or complex types Error in post1 | SEclusters : operations are possible only for numeric, logical or complex types Error in post1 | 0 | 0 | SEclusters : operations are possible only for numeric, logical or complex types Error in post1 | Utility_state : operations are possible only for numeric, logical or complex types The Julia environment variable 'JULIA_BINDIR' could not be found.Therefore, all tests that involve 'WildBootTests.jl' will be skipped.
The Julia environment variable 'JULIA_BINDIR' could not be found.Therefore, all tests that involve 'WildBootTests.jl' will be skipped.
test-global_vars.R skipped as JULIA_BINDR not found. The Julia environment variable 'JULIA_BINDIR' could not be found.Therefore, all tests that involve 'WildBootTests.jl' will be skipped.
test-method_equivalence.R I skipped as JULIA_BINDR not found. The Julia environment variable 'JULIA_BINDIR' could not be found.Therefore, all tests that involve 'WildBootTests.jl' will be skipped.
test-method_equivalence.R II skipped as JULIA_BINDR not found. Starting Julia ... test-r-vs-julia.R skipped as JULIA_BINDIR not found. The Julia environment variable 'JULIA_BINDIR' could not be found.Therefore, all tests that involve 'WildBootTests.jl' will be skipped.
test-seed.R skipped as JULIA_BINDR not found. The Julia environment variable 'JULIA_BINDIR' could not be found.Therefore, all tests that involve 'WildBootTests.jl' will be skipped.
test-tstat_equivalence.R I skipped as JULIA_BINDR not found. The Julia environment variable 'JULIA_BINDIR' could not be found.Therefore, all tests that involve 'WildBootTests.jl' will be skipped.
test-tstat_equivalence.R II skipped as JULIA_BINDR not found. The Julia environment variable 'JULIA_BINDIR' could not be found.Therefore, all tests that involve 'WildBootTests.jl' will be skipped.
test-stat_equivalence.R III skipped as JULIA_BINDR not found. Error in Q1_immigration + Q2_defense : non-numeric argument to binary operator Error in Q1_immigration + Q2_defense : non-numeric argument to binary operator [ FAIL 1 | WARN 6 | SKIP 14 | PASS 75 ]
══ Skipped tests ═══════════════════════════════════════════════════════════════ • empty test (14)
══ Warnings ════════════════════════════════════════════════════════════════════ ── Warning (test_multicollinearity.R:17:3): test multicollinearity ───────────── the matrix is either rank-deficient or indefinite Backtrace:
- lfe::felm(Y ~ X1 + X2, data = data) at test_multicollinearity.R:17:2
- lfe:::felm.mm(...)
- lfe:::newols(...)
- lfe:::cholx(cp)
- base::chol.default(mat, pivot = TRUE, tol = tol)
── Warning (test-new-bootstrap-variants.R:243:3): variants 31 R vs Julia ───────
There are only 1024 unique draws from the rademacher distribution for 10 bootstrap clusters. Therefore, B = 1024 with full enumeration. Consider using webb weights instead.
Further, note that under full enumeration and with B = 1024 bootstrap draws, only 2^(#clusters - 1) = 512 distinct t-statistics and p-values can be computed. For a
more thorough discussion, see Webb
Reworking wild bootstrap based inference for clustered errors(2013). Backtrace: - fwildclusterboot::boottest(...) at test-new-bootstrap-variants.R:243:2
- fwildclusterboot:::boottest.lm(...)
- fwildclusterboot:::check_set_full_enumeration(...)
── Warning (test-uncategorized.R:45:3): uncategorized tests ────────────────────
There are only 64 unique draws from the rademacher distribution for 6 bootstrap clusters. Therefore, B = 64 with full enumeration. Consider using webb weights instead.
Further, note that under full enumeration and with B = 64 bootstrap draws, only 2^(#clusters - 1) = 32 distinct t-statistics and p-values can be computed. For a
more thorough discussion, see Webb
Reworking wild bootstrap based inference for clustered errors(2013). Backtrace: - fwildclusterboot::boottest(...) at test-uncategorized.R:45:2
- fwildclusterboot:::boottest.fixest(...)
- fwildclusterboot:::check_set_full_enumeration(...)
── Warning (test-uncategorized.R:53:3): uncategorized tests ────────────────────
There are only 64 unique draws from the rademacher distribution for 6 bootstrap clusters. Therefore, B = 64 with full enumeration. Consider using webb weights instead.
Further, note that under full enumeration and with B = 64 bootstrap draws, only 2^(#clusters - 1) = 32 distinct t-statistics and p-values can be computed. For a
more thorough discussion, see Webb
Reworking wild bootstrap based inference for clustered errors(2013). Backtrace: - fwildclusterboot::boottest(...) at test-uncategorized.R:53:2
- fwildclusterboot:::boottest.fixest(...)
- fwildclusterboot:::check_set_full_enumeration(...)
── Warning (test-uncategorized.R:61:3): uncategorized tests ────────────────────
There are only 64 unique draws from the rademacher distribution for 6 bootstrap clusters. Therefore, B = 64 with full enumeration. Consider using webb weights instead.
Further, note that under full enumeration and with B = 64 bootstrap draws, only 2^(#clusters - 1) = 32 distinct t-statistics and p-values can be computed. For a
more thorough discussion, see Webb
Reworking wild bootstrap based inference for clustered errors(2013). Backtrace: - fwildclusterboot::boottest(...) at test-uncategorized.R:61:2
- fwildclusterboot:::boottest.fixest(...)
- fwildclusterboot:::check_set_full_enumeration(...)
── Warning (test-uncategorized.R:69:3): uncategorized tests ────────────────────
There are only 64 unique draws from the rademacher distribution for 6 bootstrap clusters. Therefore, B = 64 with full enumeration. Consider using webb weights instead.
Further, note that under full enumeration and with B = 64 bootstrap draws, only 2^(#clusters - 1) = 32 distinct t-statistics and p-values can be computed. For a
more thorough discussion, see Webb
Reworking wild bootstrap based inference for clustered errors(2013). Backtrace: - fwildclusterboot::boottest(...) at test-uncategorized.R:69:2
- fwildclusterboot:::boottest.fixest(...)
- fwildclusterboot:::check_set_full_enumeration(...)
══ Failed tests ════════════════════════════════════════════════════════════════ ── Error (test-new-bootstrap-variants.R:243:3): variants 31 R vs Julia ───────── Error: Evaluation in Julia failed. Original Julia error message: LoadError: ArgumentError: Package WildBootTests not found in current path.
- Run
import Pkg; Pkg.add("WildBootTests")to install the WildBootTests package. Stacktrace: [1] macro expansion @ ./loading.jl:1163 [inlined] [2] macro expansion @ ./lock.jl:223 [inlined] [3] require(into::Module, mod::Symbol) @ Base ./loading.jl:1144 [4] eval @ ./boot.jl:368 [inlined] [5] include_string(mapexpr::typeof(identity), mod::Module, code::String, filename::String) @ Base ./loading.jl:1428 [6] include_string (repeats 2 times) @ ./loading.jl:1438 [inlined] [7] mainevalcmd(str::String) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/evaluating.jl:150 [8] invokelatest(::Any, ::Any, ::Vararg{Any}; kwargs::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}) @ Base ./essentials.jl:729 [9] invokelatest(::Any, ::Any, ::Vararg{Any}) @ Base ./essentials.jl:726 [10] evaluate!(call::Main.RConnector.Call, communicator::Main.RConnector.CommunicatoR{Sockets.TCPSocket}) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/evaluating.jl:67 [11] evaluate_checked!(call::Main.RConnector.Call, communicator::Main.RConnector.CommunicatoR{Sockets.TCPSocket}) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/evaluating.jl:55 [12] serve_repl(sock::Sockets.TCPSocket) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/communicating.jl:185 [13] serve(port_hint::Int64; multiclient::Bool, portfile::String) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/communicating.jl:152 [14] top-level scope @ /usr/local/lib/R/site-library/JuliaConnectoR/Julia/main.jl:23 [15] include(mod::Module, _path::String) @ Base ./Base.jl:419 [16] exec_options(opts::Base.JLOptions) @ Base ./client.jl:303 [17] _start() @ Base ./client.jl:522 in expression starting at string:1 Backtrace: ▆- ├─fwildclusterboot::boottest(...) at test-new-bootstrap-variants.R:243:2
- └─fwildclusterboot:::boottest.lm(...)
- └─fwildclusterboot:::boot_algo_julia(...)
-
└─JuliaConnectoR::juliaEval("using WildBootTests") -
└─JuliaConnectoR::juliaCall("RConnector.mainevalcmd", expr) -
├─base::tryCatch(...) -
│ └─base (local) tryCatchList(expr, classes, parentenv, handlers) -
│ └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) -
│ └─base (local) doTryCatch(return(expr), name, parentenv, handler)
-
└─JuliaConnectoR:::doCallJulia(funName, jlargs) -
└─JuliaConnectoR:::handleCallbacksAndOutput()
[ FAIL 1 | WARN 6 | SKIP 14 | PASS 75 ] Error: Test failures Execution halted
R CMD check generated the following check_fails:
- rcmdcheck_tests_pass
- rcmdcheck_reasonable_installed_size
Test coverage with covr
ERROR: Test Coverage Failed
Cyclocomplexity with cyclocomp
The following functions have cyclocomplexity >= 15:
| function | cyclocomplexity |
|---|---|
| get_cluster | 45 |
| gtools_permutations | 34 |
| boot_algo3 | 23 |
| boot_algo_julia | 21 |
| getBoottest_nthreads | 16 |
| check_boottest_args_plus | 15 |
Static code analyses with lintr
lintr found the following 33 potential issues:
| message | number of times |
|---|---|
| Avoid library() and require() calls in packages | 13 |
| Lines should not be more than 80 characters. | 20 |
5. Other Checks
Details of other checks (click to open)
:heavy_multiplication_x: The following function name is duplicated in other packages:
-
pvalfrom CIPerm, dostats, dostats, GUIDE, learnstats, molic, mosaic, overlapptest, RPtests, timereg
Package Versions
| package | version |
|---|---|
| pkgstats | 0.1.1.20 |
| pkgcheck | 0.1.0.9 |
| srr | 0.0.1.178 |
Editor-in-Chief Instructions:
Processing may not proceed until the items marked with :heavy_multiplication_x: have been resolved.
I just ran the pkgcheck action in my own repo, and - even though the pkgcheck still complained about my compliance with standards - it finished! This of course means that from now on, I will be able to test in my own repo and can stop polluting this space 😄
@ropensci-review-bot check package
Thanks, about to send the query.
:rocket:
Editor check started
:wave:
Checks for fwildclusterboot (v0.11.2)
git hash: 94019e7e
- :heavy_check_mark: Package is already on CRAN.
- :heavy_check_mark: has a 'codemeta.json' file.
- :heavy_check_mark: has a 'contributing' file.
- :heavy_multiplication_x: The following function has no documented return value: [sunab]
- :heavy_check_mark: uses 'roxygen2'.
- :heavy_check_mark: 'DESCRIPTION' has a URL field.
- :heavy_check_mark: 'DESCRIPTION' has a BugReports field.
- :heavy_check_mark: Package has at least one HTML vignette
- :heavy_multiplication_x: These functions do not have examples: [sunab].
- :heavy_check_mark: Package has continuous integration checks.
- :heavy_multiplication_x: Package coverage failed
- :heavy_multiplication_x: R CMD check found 1 error.
- :heavy_multiplication_x: R CMD check found 2 warnings.
- :eyes: Function names are duplicated in other packages
Important: All failing checks above must be addressed prior to proceeding
(Checks marked with :eyes: may be optionally addressed.)
Package License: GPL-3
1. rOpenSci Statistical Standards (srr package)
This package is in the following category:
- Regression and Supervised Learning
:heavy_check_mark: All applicable standards [v0.1.0] have been documented in this package (70 complied with; 46 N/A standards)
Click to see the report of author-reported standards compliance of the package with links to associated lines of code, which can be re-generated locally by running the srr_report() function from within a local clone of the repository.
2. Package Dependencies
Details of Package Dependency Usage (click to open)
The table below tallies all function calls to all packages ('ncalls'), both internal (r-base + recommended, along with the package itself), and external (imported and suggested packages). 'NA' values indicate packages to which no identified calls to R functions could be found. Note that these results are generated by an automated code-tagging system which may not be entirely accurate.
| type | package | ncalls |
|---|---|---|
| internal | base | 516 |
| internal | fwildclusterboot | 128 |
| internal | stats | 84 |
| internal | utils | 9 |
| internal | graphics | 3 |
| internal | compiler | 1 |
| imports | collapse | 14 |
| imports | dreamerr | 10 |
| imports | generics | 5 |
| imports | dqrng | 5 |
| imports | MASS | 4 |
| imports | Matrix | 3 |
| imports | Matrix.utils | 3 |
| imports | JuliaConnectoR | 1 |
| imports | summclust | 1 |
| imports | sandwich | 1 |
| imports | Formula | NA |
| imports | Rcpp | NA |
| suggests | fabricatr | 6 |
| suggests | fixest | NA |
| suggests | lfe | NA |
| suggests | ivreg | NA |
| suggests | clubSandwich | NA |
| suggests | lmtest | NA |
| suggests | data.table | NA |
| suggests | covr | NA |
| suggests | knitr | NA |
| suggests | rmarkdown | NA |
| suggests | broom | NA |
| suggests | modelsummary | NA |
| suggests | bench | NA |
| suggests | testthat | NA |
| suggests | tibble | NA |
| suggests | did2s | NA |
| linking_to | Rcpp | NA |
| linking_to | RcppArmadillo | NA |
| linking_to | RcppEigen | NA |
Click below for tallies of functions used in each package. Locations of each call within this package may be generated locally by running 's <- pkgstats::pkgstats(<path/to/repo>)', and examining the 'external_calls' table.
base
length (44), list (34), call (31), c (22), lapply (22), names (18), t (15), unique (15), drop (13), vapply (13), as.vector (12), paste0 (12), data.frame (10), rep (10), stop (10), ifelse (9), mode (9), Reduce (9), vector (9), which (9), for (8), nrow (8), sqrt (8), match.call (7), as.matrix (6), ncol (6), replace (6), sum (6), switch (6), is.null (5), matrix (5), seq_along (5), as.numeric (4), crossprod (4), gsub (4), mean (4), sample (4), solve (4), tcrossprod (4), abs (3), col (3), colnames (3), colSums (3), environment (3), getOption (3), if (3), min (3), paste (3), q (3), unlist (3), as.factor (2), as.integer (2), attr (2), cbind (2), grepl (2), loadedNamespaces (2), max (2), norm (2), Recall (2), return (2), sign (2), split (2), sprintf (2), substr (2), suppressWarnings (2), Sys.getenv (2), append (1), as.character (1), class (1), diag (1), dim (1), do.call (1), eval (1), exp (1), integer (1), is.na (1), is.numeric (1), isTRUE (1), logical (1), message (1), nchar (1), row (1), sample.int (1), sapply (1), seq (1), sort (1), tryCatch (1)
fwildclusterboot
format_message (8), get_ssc_julia (8), check_set_full_enumeration (7), set_seed (7), teststat (6), boot_algo_julia (5), crosstab (4), get_bootstrap_pvalue (4), get_cluster (4), boot_algo2 (3), cpp_get_nb_threads (3), eigenMapMatMult (3), get_ssc (3), get_weights (3), model_matrix (3), process_R (3), boottest (2), demean_fe (2), get_scores (2), gtools_permutations (2), matrix_split (2), preprocess2.felm (2), preprocess2.fixest (2), preprocess2.lm (2), transform_fe (2), boot_aggregate (1), boot_algo3 (1), boot_algo3_crv1 (1), boot_algo3_crv3 (1), boottest.felm (1), boottest.fixest (1), boottest.ivreg (1), boottest.lm (1), check_boot_algo3 (1), check_boottest_args_plus (1), check_engine_btype (1), check_mboottest_args_plus (1), check_params_in_model (1), check_r_lean (1), check_set_nthreads (1), confint.boottest (1), crosstab4 (1), format_alert (1), format_error (1), format_warning (1), get_c_all_boot_cpp (1), get_se_all_boot_cpp (1), get_seed (1), get_start_vals (1), getBoottest_engine (1), getBoottest_nthreads (1), glance.boottest (1), invert_p_val (1), is_juliaconnector_prepared (1), manipulate_object (1), p_val_null2 (1), p_val_null2_x (1), p_val_null2_x_sign_level (1), preprocess2.ivreg (1), to_integer (1), wildboottestHC (1)
stats
weights (24), model.matrix (13), formula (8), coef (7), na.omit (6), model.frame (5), nobs (4), aggregate (3), model.response (3), na.exclude (3), reformulate (2), vcov (2), na.action (1), na.pass (1), rlnorm (1), update (1)
collapse
fsum (7), GRP (4), qF (3)
dreamerr
validate_dots (10)
utils
data (7), combn (1), txtProgressBar (1)
fabricatr
draw_binary (2), draw_normal_icc (2), draw_ordered (1), fabricate (1)
dqrng
dqsample (4), dqset.seed (1)
generics
tidy (4), glance (1)
MASS
ginv (4)
graphics
abline (3)
Matrix
t (2), Diagonal (1)
Matrix.utils
aggregate.Matrix (3)
compiler
cmpfun (1)
JuliaConnectoR
juliaImport (1)
sandwich
vcovCL (1)
summclust
vcov_CR3J (1)
NOTE: Some imported packages appear to have no associated function calls; please ensure with author that these 'Imports' are listed appropriately.
3. Statistical Properties
This package features some noteworthy statistical properties which may need to be clarified by a handling editor prior to progressing.
Details of statistical properties (click to open)
The package has:
- code in C++ (10% in 4 files) and R (90% in 34 files)
- 2 authors
- 3 vignettes
- 1 internal data file
- 12 imported packages
- 34 exported functions (median 9 lines of code)
- 168 non-exported functions in R (median 20 lines of code)
- 21 R functions (median 17 lines of code)
Statistical properties of package structure as distributional percentiles in relation to all current CRAN packages The following terminology is used:
loc= "Lines of Code"fn= "function"exp/not_exp= exported / not exported
All parameters are explained as tooltips in the locally-rendered HTML version of this report generated by the checks_to_markdown() function
The final measure (fn_call_network_size) is the total number of calls between functions (in R), or more abstract relationships between code objects in other languages. Values are flagged as "noteworthy" when they lie in the upper or lower 5th percentile.
| measure | value | percentile | noteworthy |
|---|---|---|---|
| files_R | 34 | 91.4 | |
| files_src | 4 | 87.0 | |
| files_vignettes | 3 | 92.4 | |
| files_tests | 18 | 95.7 | |
| loc_R | 4677 | 94.8 | |
| loc_src | 500 | 46.8 | |
| loc_vignettes | 586 | 81.7 | |
| loc_tests | 5821 | 98.6 | TRUE |
| num_vignettes | 3 | 94.2 | |
| data_size_total | 14024 | 72.7 | |
| data_size_median | 14024 | 81.0 | |
| n_fns_r | 202 | 89.9 | |
| n_fns_r_exported | 34 | 81.0 | |
| n_fns_r_not_exported | 168 | 91.5 | |
| n_fns_src | 21 | 47.2 | |
| n_fns_per_file_r | 3 | 55.2 | |
| n_fns_per_file_src | 5 | 53.2 | |
| num_params_per_fn | 2 | 11.9 | |
| loc_per_fn_r | 18 | 54.7 | |
| loc_per_fn_r_exp | 9 | 19.2 | |
| loc_per_fn_r_not_exp | 20 | 63.0 | |
| loc_per_fn_src | 17 | 59.6 | |
| rel_whitespace_R | 20 | 95.3 | TRUE |
| rel_whitespace_src | 30 | 58.7 | |
| rel_whitespace_vignettes | 35 | 84.9 | |
| rel_whitespace_tests | 13 | 97.2 | TRUE |
| doclines_per_fn_exp | 31 | 34.8 | |
| doclines_per_fn_not_exp | 0 | 0.0 | TRUE |
| fn_call_network_size | 181 | 87.5 |
3a. Network visualisation
Click to see the interactive network visualisation of calls between objects in package
4. goodpractice and other checks
Details of goodpractice checks (click to open)
3a. Continuous Integration Badges
GitHub Workflow Results
| id | name | conclusion | sha | run_number | date |
|---|---|---|---|---|---|
| 3118455761 | pages build and deployment | success | e98a12 | 189 | 2022-09-24 |
| 3118431180 | pkgcheck | NA | ee479f | 93 | 2022-09-24 |
| 3118431181 | pkgdown | success | ee479f | 138 | 2022-09-24 |
| 3118431178 | R-CMD-check | success | ee479f | 542 | 2022-09-24 |
| 3118431179 | test-coverage | success | ee479f | 478 | 2022-09-24 |
3b. goodpractice results
R CMD check with rcmdcheck
R CMD check generated the following error:
- checking tests ... Running ‘testthat.R’ ERROR Running the tests in ‘tests/testthat.R’ failed. Last 13 lines of output: 4. ├─fwildclusterboot::boottest(...) 5. └─fwildclusterboot:::boottest.ivreg(...) 6. └─fwildclusterboot:::set_seed(...) 7. └─JuliaConnectoR::juliaEval("using StableRNGs") 8. └─JuliaConnectoR::juliaCall("RConnector.mainevalcmd", expr) 9. ├─base::tryCatch(...) 10. │ └─base (local) tryCatchList(expr, classes, parentenv, handlers) 11. │ └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 12. │ └─base (local) doTryCatch(return(expr), name, parentenv, handler) 13. └─JuliaConnectoR:::doCallJulia(funName, jlargs) 14. └─JuliaConnectoR:::handleCallbacksAndOutput()
[ FAIL 16 | WARN 11 | SKIP 0 | PASS 414 ] Error: Test failures Execution halted
R CMD check generated the following warnings:
- checking dependencies in R code ... WARNING '::' or ':::' import not declared from: ‘rstudioapi’ 'loadNamespace' or 'requireNamespace' call not declared from: ‘rstudioapi’
- checking S3 generic/method consistency ... WARNING tidy: function(x, ...) tidy.boottest: function(object, ...)
tidy: function(x, ...) tidy.mboottest: function(object, ...)
See section ‘Generic functions and methods’ in the ‘Writing R Extensions’ manual.
R CMD check generated the following notes:
- checking installed package size ... NOTE installed size is 8.8Mb sub-directories of 1Mb or more: libs 7.7Mb
- checking R code for possible problems ... NOTE .wrap_message_line: no visible global function definition for ‘.bold’ .wrap_message_line: no visible global function definition for ‘.italic’ .wrap_message_line: no visible global function definition for ‘.blue’ Undefined global functions or variables: .blue .bold .italic
R CMD check generated the following test_fail:
-
library(testthat)
library(fwildclusterboot)
test_check("fwildclusterboot") Loading required namespace: fixest The variable 'X2' has been removed because of collinearity (see $collin.var). Starting Julia ... Loading required namespace: data.table R Variables 'log_income::17.2069212919256:Q1_immigration::3' and 'log_income::18.0802367820713:Q1_immigration::3' have been removed because of collinearity (see $collin.var). NOTE: 2 fixed-effect singletons were removed (2 observations). WildBootTests.jl Loading required namespace: ivreg Part 1: Full enumeration Tests (deterministic) start ols/wls type: rademacher p-val: two-tailed null imposed: TRUE rademacher two-tailed TRUE type: rademacher p-val: equal-tailed null imposed: TRUE rademacher equal-tailed TRUE type: rademacher p-val: > null imposed: TRUE rademacher
TRUE
type: rademacher p-val: < null imposed: TRUE
rademacher
<
TRUE
julia connector prepared? TRUEPart 1: Full enumeration Tests (deterministic)
start ols/wls
type: rademacher p-val: two-tailed null imposed: TRUE
rademacher
two-tailed
TRUE
Variance contained negative values in the diagonal and was 'fixed' (a la Cameron, Gelbach & Miller 2011).
Variance contained negative values in the diagonal and was 'fixed' (a la Cameron, Gelbach & Miller 2011).
Variance contained negative values in the diagonal and was 'fixed' (a la Cameron, Gelbach & Miller 2011).
Variance contained negative values in the diagonal and was 'fixed' (a la Cameron, Gelbach & Miller 2011).
boottest()
boottest()
start ols/wls
Part 1: Large B Tests
start ols/wls
type: rademacher p-val: two-tailed null imposed: TRUE
rademacher
two-tailed
TRUE
The Julia environment variable 'JULIA_BINDIR' could not be found.Therefore, all tests that involve 'WildBootTests.jl' will be skipped.
julia connector prepared? TRUE
The Julia environment variable 'JULIA_BINDIR' could not be found.Therefore, all tests that involve 'WildBootTests.jl' will be skipped.
julia connector prepared? TRUE
The Julia environment variable 'JULIA_BINDIR' could not be found.Therefore, all tests that involve 'WildBootTests.jl' will be skipped.
julia connector prepared? TRUE
[ FAIL 16 | WARN 11 | SKIP 0 | PASS 414 ]
══ Warnings ════════════════════════════════════════════════════════════════════
── Warning (test_tidy.R:22:5): test tidiers with q = 1 ─────────────────────────
There are only 1024 unique draws from the rademacher distribution for 10 bootstrap clusters. Therefore, B = 1024 with full enumeration. Consider using webb weights instead.
Further, note that under full enumeration and with B = 1024 bootstrap draws, only 2^(#clusters - 1) = 512 distinct t-statistics and p-values can be computed. For a
more thorough discussion, see Webb Reworking wild bootstrap based inference for clustered errors (2013).
Backtrace:
- fwildclusterboot::boottest(...) at test_tidy.R:22:4
- fwildclusterboot:::boottest.lm(...)
- fwildclusterboot:::check_set_full_enumeration(...)
── Warning (test_tidy.R:28:5): test tidiers with q = 1 ─────────────────────────
There are only 1024 unique draws from the rademacher distribution for 10 bootstrap clusters. Therefore, B = 1024 with full enumeration. Consider using webb weights instead.
Further, note that under full enumeration and with B = 1024 bootstrap draws, only 2^(#clusters - 1) = 512 distinct t-statistics and p-values can be computed. For a
more thorough discussion, see Webb
Reworking wild bootstrap based inference for clustered errors(2013). Backtrace: - fwildclusterboot::boottest(...) at test_tidy.R:28:4
- fwildclusterboot:::boottest.lm(...)
- fwildclusterboot:::check_set_full_enumeration(...) ── Warning (test-error_warning.R:1208:9): errors and warnings q = 1 ──────────── Currently, boottest() calculates confidence intervals for one-sided hypotheses only for engine = 'WildBootTests.jl'. Backtrace:
- testthat::expect_error(...) at test-error_warning.R:1208:8
- fwildclusterboot:::boottest.fixest(...)
- fwildclusterboot:::r_algo_checks(...) ── Warning (test-error_warning.R:1220:9): errors and warnings q = 1 ──────────── Currently, boottest() calculates confidence intervals for one-sided hypotheses only for engine = 'WildBootTests.jl'. Backtrace:
- testthat::expect_error(...) at test-error_warning.R:1220:8
- fwildclusterboot:::boottest.felm(...)
- fwildclusterboot:::r_algo_checks(...) ── Warning (test-method_equivalence.R:135:5): Do different, but equivalent ways to specify linear models lead to equivalent results? ── Negative eigenvalues set to zero in multiway clustered variance matrix. See felm(...,psdef=FALSE) Backtrace:
- lfe::felm(...) at test-method_equivalence.R:135:4
- lfe:::felm.mm(...)
- lfe:::newols(...) ── Warning (test-method_equivalence.R:160:5): Do different, but equivalent ways to specify linear models lead to equivalent results? ── Negative eigenvalues set to zero in multiway clustered variance matrix. See felm(...,psdef=FALSE) Backtrace:
- lfe::felm(...) at test-method_equivalence.R:160:4
- lfe:::felm.mm(...)
- lfe:::newols(...) ── Warning (test-method_equivalence.R:167:5): Do different, but equivalent ways to specify linear models lead to equivalent results? ── Negative eigenvalues set to zero in multiway clustered variance matrix. See felm(...,psdef=FALSE) Backtrace:
- lfe::felm(...) at test-method_equivalence.R:167:4
- lfe:::felm.mm(...)
- lfe:::newols(...)
── Warning (test-uncategorized.R:45:3): uncategorized tests ────────────────────
There are only 64 unique draws from the rademacher distribution for 6 bootstrap clusters. Therefore, B = 64 with full enumeration. Consider using webb weights instead.
Further, note that under full enumeration and with B = 64 bootstrap draws, only 2^(#clusters - 1) = 32 distinct t-statistics and p-values can be computed. For a
more thorough discussion, see Webb
Reworking wild bootstrap based inference for clustered errors(2013). Backtrace: - fwildclusterboot::boottest(...) at test-uncategorized.R:45:2
- fwildclusterboot:::boottest.fixest(...)
- fwildclusterboot:::check_set_full_enumeration(...)
── Warning (test-uncategorized.R:53:3): uncategorized tests ────────────────────
There are only 64 unique draws from the rademacher distribution for 6 bootstrap clusters. Therefore, B = 64 with full enumeration. Consider using webb weights instead.
Further, note that under full enumeration and with B = 64 bootstrap draws, only 2^(#clusters - 1) = 32 distinct t-statistics and p-values can be computed. For a
more thorough discussion, see Webb
Reworking wild bootstrap based inference for clustered errors(2013). Backtrace: - fwildclusterboot::boottest(...) at test-uncategorized.R:53:2
- fwildclusterboot:::boottest.fixest(...)
- fwildclusterboot:::check_set_full_enumeration(...)
── Warning (test-uncategorized.R:61:3): uncategorized tests ────────────────────
There are only 64 unique draws from the rademacher distribution for 6 bootstrap clusters. Therefore, B = 64 with full enumeration. Consider using webb weights instead.
Further, note that under full enumeration and with B = 64 bootstrap draws, only 2^(#clusters - 1) = 32 distinct t-statistics and p-values can be computed. For a
more thorough discussion, see Webb
Reworking wild bootstrap based inference for clustered errors(2013). Backtrace: - fwildclusterboot::boottest(...) at test-uncategorized.R:61:2
- fwildclusterboot:::boottest.fixest(...)
- fwildclusterboot:::check_set_full_enumeration(...)
── Warning (test-uncategorized.R:69:3): uncategorized tests ────────────────────
There are only 64 unique draws from the rademacher distribution for 6 bootstrap clusters. Therefore, B = 64 with full enumeration. Consider using webb weights instead.
Further, note that under full enumeration and with B = 64 bootstrap draws, only 2^(#clusters - 1) = 32 distinct t-statistics and p-values can be computed. For a
more thorough discussion, see Webb
Reworking wild bootstrap based inference for clustered errors(2013). Backtrace: - fwildclusterboot::boottest(...) at test-uncategorized.R:69:2
- fwildclusterboot:::boottest.fixest(...)
- fwildclusterboot:::check_set_full_enumeration(...)
══ Failed tests ════════════════════════════════════════════════════════════════ ── Error (test_tidy.R:35:5): test tidiers with q = 1 ─────────────────────────── Error: Evaluation in Julia failed. Original Julia error message: LoadError: ArgumentError: Package StableRNGs not found in current path.
- Run
import Pkg; Pkg.add("StableRNGs")to install the StableRNGs package. Stacktrace: [1] macro expansion @ ./loading.jl:1163 [inlined] [2] macro expansion @ ./lock.jl:223 [inlined] [3] require(into::Module, mod::Symbol) @ Base ./loading.jl:1144 [4] eval @ ./boot.jl:368 [inlined] [5] include_string(mapexpr::typeof(identity), mod::Module, code::String, filename::String) @ Base ./loading.jl:1428 [6] include_string (repeats 2 times) @ ./loading.jl:1438 [inlined] [7] mainevalcmd(str::String) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/evaluating.jl:150 [8] invokelatest(::Any, ::Any, ::Vararg{Any}; kwargs::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}) @ Base ./essentials.jl:729 [9] invokelatest(::Any, ::Any, ::Vararg{Any}) @ Base ./essentials.jl:726 [10] evaluate!(call::Main.RConnector.Call, communicator::Main.RConnector.CommunicatoR{Sockets.TCPSocket}) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/evaluating.jl:67 [11] evaluate_checked!(call::Main.RConnector.Call, communicator::Main.RConnector.CommunicatoR{Sockets.TCPSocket}) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/evaluating.jl:55 [12] serve_repl(sock::Sockets.TCPSocket) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/communicating.jl:185 [13] serve(port_hint::Int64; multiclient::Bool, portfile::String) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/communicating.jl:152 [14] top-level scope @ /usr/local/lib/R/site-library/JuliaConnectoR/Julia/main.jl:23 [15] include(mod::Module, _path::String) @ Base ./Base.jl:419 [16] exec_options(opts::Base.JLOptions) @ Base ./client.jl:303 [17] _start() @ Base ./client.jl:522 in expression starting at string:1 Backtrace: ▆- ├─fwildclusterboot::boottest(...) at test_tidy.R:35:4
- └─fwildclusterboot:::boottest.lm(...)
- └─fwildclusterboot:::set_seed(seed = seed, engine = engine, type = type)
-
└─JuliaConnectoR::juliaEval("using StableRNGs") -
└─JuliaConnectoR::juliaCall("RConnector.mainevalcmd", expr) -
├─base::tryCatch(...) -
│ └─base (local) tryCatchList(expr, classes, parentenv, handlers) -
│ └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) -
│ └─base (local) doTryCatch(return(expr), name, parentenv, handler)
-
└─JuliaConnectoR:::doCallJulia(funName, jlargs) -
└─JuliaConnectoR:::handleCallbacksAndOutput()
── Error (test_tidy.R:82:3): test tidiers with q > 1 ─────────────────────────── Error: Evaluation in Julia failed. Original Julia error message: LoadError: ArgumentError: Package StableRNGs not found in current path.
- Run
import Pkg; Pkg.add("StableRNGs")to install the StableRNGs package. Stacktrace: [1] macro expansion @ ./loading.jl:1163 [inlined] [2] macro expansion @ ./lock.jl:223 [inlined] [3] require(into::Module, mod::Symbol) @ Base ./loading.jl:1144 [4] eval @ ./boot.jl:368 [inlined] [5] include_string(mapexpr::typeof(identity), mod::Module, code::String, filename::String) @ Base ./loading.jl:1428 [6] include_string (repeats 2 times) @ ./loading.jl:1438 [inlined] [7] mainevalcmd(str::String) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/evaluating.jl:150 [8] invokelatest(::Any, ::Any, ::Vararg{Any}; kwargs::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}) @ Base ./essentials.jl:729 [9] invokelatest(::Any, ::Any, ::Vararg{Any}) @ Base ./essentials.jl:726 [10] evaluate!(call::Main.RConnector.Call, communicator::Main.RConnector.CommunicatoR{Sockets.TCPSocket}) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/evaluating.jl:67 [11] evaluate_checked!(call::Main.RConnector.Call, communicator::Main.RConnector.CommunicatoR{Sockets.TCPSocket}) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/evaluating.jl:55 [12] serve_repl(sock::Sockets.TCPSocket) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/communicating.jl:185 [13] serve(port_hint::Int64; multiclient::Bool, portfile::String) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/communicating.jl:152 [14] top-level scope @ /usr/local/lib/R/site-library/JuliaConnectoR/Julia/main.jl:23 [15] include(mod::Module, _path::String) @ Base ./Base.jl:419 [16] exec_options(opts::Base.JLOptions) @ Base ./client.jl:303 [17] _start() @ Base ./client.jl:522 in expression starting at string:1 Backtrace: ▆- ├─fwildclusterboot::mboottest(...) at test_tidy.R:82:2
- └─fwildclusterboot:::mboottest.lm(...)
- └─fwildclusterboot:::set_seed(...)
-
└─JuliaConnectoR::juliaEval("using StableRNGs") -
└─JuliaConnectoR::juliaCall("RConnector.mainevalcmd", expr) -
├─base::tryCatch(...) -
│ └─base (local) tryCatchList(expr, classes, parentenv, handlers) -
│ └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) -
│ └─base (local) doTryCatch(return(expr), name, parentenv, handler)
-
└─JuliaConnectoR:::doCallJulia(funName, jlargs) -
└─JuliaConnectoR:::handleCallbacksAndOutput()
── Failure (test-error_warning.R:625:7): errors and warnings q = 1 ─────────────
boottest(...) did not throw the expected message.
── Failure (test-error_warning.R:638:9): errors and warnings q = 1 ─────────────
boottest(...) did not throw the expected message.
── Failure (test-error_warning.R:650:9): errors and warnings q = 1 ─────────────
boottest(...) did not throw the expected message.
── Error (test-error_warning.R:246:9): errors and warnings q = 1 ───────────────
Error: Evaluation in Julia failed.
Original Julia error message:
LoadError: ArgumentError: Package StableRNGs not found in current path.
- Run
import Pkg; Pkg.add("StableRNGs")to install the StableRNGs package. Stacktrace: [1] macro expansion @ ./loading.jl:1163 [inlined] [2] macro expansion @ ./lock.jl:223 [inlined] [3] require(into::Module, mod::Symbol) @ Base ./loading.jl:1144 [4] eval @ ./boot.jl:368 [inlined] [5] include_string(mapexpr::typeof(identity), mod::Module, code::String, filename::String) @ Base ./loading.jl:1428 [6] include_string (repeats 2 times) @ ./loading.jl:1438 [inlined] [7] mainevalcmd(str::String) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/evaluating.jl:150 [8] invokelatest(::Any, ::Any, ::Vararg{Any}; kwargs::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}) @ Base ./essentials.jl:729 [9] invokelatest(::Any, ::Any, ::Vararg{Any}) @ Base ./essentials.jl:726 [10] evaluate!(call::Main.RConnector.Call, communicator::Main.RConnector.CommunicatoR{Sockets.TCPSocket}) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/evaluating.jl:67 [11] evaluate_checked!(call::Main.RConnector.Call, communicator::Main.RConnector.CommunicatoR{Sockets.TCPSocket}) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/evaluating.jl:55 [12] serve_repl(sock::Sockets.TCPSocket) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/communicating.jl:185 [13] serve(port_hint::Int64; multiclient::Bool, portfile::String) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/communicating.jl:152 [14] top-level scope @ /usr/local/lib/R/site-library/JuliaConnectoR/Julia/main.jl:23 [15] include(mod::Module, _path::String) @ Base ./Base.jl:419 [16] exec_options(opts::Base.JLOptions) @ Base ./client.jl:303 [17] _start() @ Base ./client.jl:522 in expression starting at string:1 Backtrace: ▆- ├─base::suppressWarnings(...) at test-error_warning.R:246:8
- │ └─base::withCallingHandlers(...)
- ├─testthat::expect_warning(...)
- │ └─testthat:::expect_condition_matching(...)
- │ └─testthat:::quasi_capture(...)
- │ ├─testthat (local) .capture(...)
- │ │ └─base::withCallingHandlers(...)
- │ └─rlang::eval_bare(quo_get_expr(.quo), quo_get_env(.quo))
- ├─fwildclusterboot::boottest(...)
- └─fwildclusterboot:::boottest.lm(...)
- └─fwildclusterboot:::set_seed(seed = seed, engine = engine, type = type)
-
└─JuliaConnectoR::juliaEval("using StableRNGs") -
└─JuliaConnectoR::juliaCall("RConnector.mainevalcmd", expr) -
├─base::tryCatch(...) -
│ └─base (local) tryCatchList(expr, classes, parentenv, handlers) -
│ └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) -
│ └─base (local) doTryCatch(return(expr), name, parentenv, handler) -
└─JuliaConnectoR:::doCallJulia(funName, jlargs) -
└─JuliaConnectoR:::handleCallbacksAndOutput()
── Error (test-error_warning.R:1509:5): error warning IV/WRE and q > 1 ───────── Error: Evaluation in Julia failed. Original Julia error message: LoadError: ArgumentError: Package StableRNGs not found in current path.
- Run
import Pkg; Pkg.add("StableRNGs")to install the StableRNGs package. Stacktrace: [1] macro expansion @ ./loading.jl:1163 [inlined] [2] macro expansion @ ./lock.jl:223 [inlined] [3] require(into::Module, mod::Symbol) @ Base ./loading.jl:1144 [4] eval @ ./boot.jl:368 [inlined] [5] include_string(mapexpr::typeof(identity), mod::Module, code::String, filename::String) @ Base ./loading.jl:1428 [6] include_string (repeats 2 times) @ ./loading.jl:1438 [inlined] [7] mainevalcmd(str::String) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/evaluating.jl:150 [8] invokelatest(::Any, ::Any, ::Vararg{Any}; kwargs::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}) @ Base ./essentials.jl:729 [9] invokelatest(::Any, ::Any, ::Vararg{Any}) @ Base ./essentials.jl:726 [10] evaluate!(call::Main.RConnector.Call, communicator::Main.RConnector.CommunicatoR{Sockets.TCPSocket}) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/evaluating.jl:67 [11] evaluate_checked!(call::Main.RConnector.Call, communicator::Main.RConnector.CommunicatoR{Sockets.TCPSocket}) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/evaluating.jl:55 [12] serve_repl(sock::Sockets.TCPSocket) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/communicating.jl:185 [13] serve(port_hint::Int64; multiclient::Bool, portfile::String) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/communicating.jl:152 [14] top-level scope @ /usr/local/lib/R/site-library/JuliaConnectoR/Julia/main.jl:23 [15] include(mod::Module, _path::String) @ Base ./Base.jl:419 [16] exec_options(opts::Base.JLOptions) @ Base ./client.jl:303 [17] _start() @ Base ./client.jl:522 in expression starting at string:1 Backtrace: ▆- ├─testthat::expect_warning(...) at test-error_warning.R:1509:4
- │ └─testthat:::expect_condition_matching(...)
- │ └─testthat:::quasi_capture(...)
- │ ├─testthat (local) .capture(...)
- │ │ └─base::withCallingHandlers(...)
- │ └─rlang::eval_bare(quo_get_expr(.quo), quo_get_env(.quo))
- ├─base::suppressMessages(...)
- │ └─base::withCallingHandlers(...)
- ├─fwildclusterboot::boottest(...)
- └─fwildclusterboot:::boottest.ivreg(...)
- └─fwildclusterboot:::set_seed(...)
-
└─JuliaConnectoR::juliaEval("using StableRNGs") -
└─JuliaConnectoR::juliaCall("RConnector.mainevalcmd", expr) -
├─base::tryCatch(...) -
│ └─base (local) tryCatchList(expr, classes, parentenv, handlers) -
│ └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) -
│ └─base (local) doTryCatch(return(expr), name, parentenv, handler) -
└─JuliaConnectoR:::doCallJulia(funName, jlargs) -
└─JuliaConnectoR:::handleCallbacksAndOutput()
── Error (test-full-enumeration.R:295:13): test full enumeration cases: r and julia ── Error: Evaluation in Julia failed. Original Julia error message: LoadError: ArgumentError: Package StableRNGs not found in current path.
- Run
import Pkg; Pkg.add("StableRNGs")to install the StableRNGs package. Stacktrace: [1] macro expansion @ ./loading.jl:1163 [inlined] [2] macro expansion @ ./lock.jl:223 [inlined] [3] require(into::Module, mod::Symbol) @ Base ./loading.jl:1144 [4] eval @ ./boot.jl:368 [inlined] [5] include_string(mapexpr::typeof(identity), mod::Module, code::String, filename::String) @ Base ./loading.jl:1428 [6] include_string (repeats 2 times) @ ./loading.jl:1438 [inlined] [7] mainevalcmd(str::String) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/evaluating.jl:150 [8] invokelatest(::Any, ::Any, ::Vararg{Any}; kwargs::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}) @ Base ./essentials.jl:729 [9] invokelatest(::Any, ::Any, ::Vararg{Any}) @ Base ./essentials.jl:726 [10] evaluate!(call::Main.RConnector.Call, communicator::Main.RConnector.CommunicatoR{Sockets.TCPSocket}) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/evaluating.jl:67 [11] evaluate_checked!(call::Main.RConnector.Call, communicator::Main.RConnector.CommunicatoR{Sockets.TCPSocket}) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/evaluating.jl:55 [12] serve_repl(sock::Sockets.TCPSocket) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/communicating.jl:185 [13] serve(port_hint::Int64; multiclient::Bool, portfile::String) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/communicating.jl:152 [14] top-level scope @ /usr/local/lib/R/site-library/JuliaConnectoR/Julia/main.jl:23 [15] include(mod::Module, _path::String) @ Base ./Base.jl:419 [16] exec_options(opts::Base.JLOptions) @ Base ./client.jl:303 [17] _start() @ Base ./client.jl:522 in expression starting at string:1 Backtrace: ▆- ├─base::suppressWarnings(...) at test-full-enumeration.R:295:12
- │ └─base::withCallingHandlers(...)
- ├─fwildclusterboot::boottest(...)
- └─fwildclusterboot:::boottest.lm(...)
- └─fwildclusterboot:::set_seed(seed = seed, engine = engine, type = type)
-
└─JuliaConnectoR::juliaEval("using StableRNGs") -
└─JuliaConnectoR::juliaCall("RConnector.mainevalcmd", expr) -
├─base::tryCatch(...) -
│ └─base (local) tryCatchList(expr, classes, parentenv, handlers)
-
│ └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) -
│ └─base (local) doTryCatch(return(expr), name, parentenv, handler) -
└─JuliaConnectoR:::doCallJulia(funName, jlargs) -
└─JuliaConnectoR:::handleCallbacksAndOutput()
── Error (test-global_vars.R:18:5): global engine ────────────────────────────── Error: Evaluation in Julia failed. Original Julia error message: LoadError: ArgumentError: Package StableRNGs not found in current path.
- Run
import Pkg; Pkg.add("StableRNGs")to install the StableRNGs package. Stacktrace: [1] macro expansion @ ./loading.jl:1163 [inlined] [2] macro expansion @ ./lock.jl:223 [inlined] [3] require(into::Module, mod::Symbol) @ Base ./loading.jl:1144 [4] eval @ ./boot.jl:368 [inlined] [5] include_string(mapexpr::typeof(identity), mod::Module, code::String, filename::String) @ Base ./loading.jl:1428 [6] include_string (repeats 2 times) @ ./loading.jl:1438 [inlined] [7] mainevalcmd(str::String) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/evaluating.jl:150 [8] invokelatest(::Any, ::Any, ::Vararg{Any}; kwargs::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}) @ Base ./essentials.jl:729 [9] invokelatest(::Any, ::Any, ::Vararg{Any}) @ Base ./essentials.jl:726 [10] evaluate!(call::Main.RConnector.Call, communicator::Main.RConnector.CommunicatoR{Sockets.TCPSocket}) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/evaluating.jl:67 [11] evaluate_checked!(call::Main.RConnector.Call, communicator::Main.RConnector.CommunicatoR{Sockets.TCPSocket}) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/evaluating.jl:55 [12] serve_repl(sock::Sockets.TCPSocket) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/communicating.jl:185 [13] serve(port_hint::Int64; multiclient::Bool, portfile::String) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/communicating.jl:152 [14] top-level scope @ /usr/local/lib/R/site-library/JuliaConnectoR/Julia/main.jl:23 [15] include(mod::Module, _path::String) @ Base ./Base.jl:419 [16] exec_options(opts::Base.JLOptions) @ Base ./client.jl:303 [17] _start() @ Base ./client.jl:522 in expression starting at string:1 Backtrace: ▆- ├─base::suppressWarnings(...) at test-global_vars.R:18:4
- │ └─base::withCallingHandlers(...)
- ├─fwildclusterboot::boottest(...)
- └─fwildclusterboot:::boottest.lm(...)
- └─fwildclusterboot:::set_seed(seed = seed, engine = engine, type = type)
-
└─JuliaConnectoR::juliaEval("using StableRNGs") -
└─JuliaConnectoR::juliaCall("RConnector.mainevalcmd", expr) -
├─base::tryCatch(...) -
│ └─base (local) tryCatchList(expr, classes, parentenv, handlers)
-
│ └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) -
│ └─base (local) doTryCatch(return(expr), name, parentenv, handler) -
└─JuliaConnectoR:::doCallJulia(funName, jlargs) -
└─JuliaConnectoR:::handleCallbacksAndOutput()
── Error (test-method_equivalence.R:1227:5): Do different, but equivalent ways to specify linear models lead to equivalent results? ── Error: Evaluation in Julia failed. Original Julia error message: LoadError: ArgumentError: Package StableRNGs not found in current path.
- Run
import Pkg; Pkg.add("StableRNGs")to install the StableRNGs package. Stacktrace: [1] macro expansion @ ./loading.jl:1163 [inlined] [2] macro expansion @ ./lock.jl:223 [inlined] [3] require(into::Module, mod::Symbol) @ Base ./loading.jl:1144 [4] eval @ ./boot.jl:368 [inlined] [5] include_string(mapexpr::typeof(identity), mod::Module, code::String, filename::String) @ Base ./loading.jl:1428 [6] include_string (repeats 2 times) @ ./loading.jl:1438 [inlined] [7] mainevalcmd(str::String) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/evaluating.jl:150 [8] invokelatest(::Any, ::Any, ::Vararg{Any}; kwargs::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}) @ Base ./essentials.jl:729 [9] invokelatest(::Any, ::Any, ::Vararg{Any}) @ Base ./essentials.jl:726 [10] evaluate!(call::Main.RConnector.Call, communicator::Main.RConnector.CommunicatoR{Sockets.TCPSocket}) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/evaluating.jl:67 [11] evaluate_checked!(call::Main.RConnector.Call, communicator::Main.RConnector.CommunicatoR{Sockets.TCPSocket}) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/evaluating.jl:55 [12] serve_repl(sock::Sockets.TCPSocket) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/communicating.jl:185 [13] serve(port_hint::Int64; multiclient::Bool, portfile::String) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/communicating.jl:152 [14] top-level scope @ /usr/local/lib/R/site-library/JuliaConnectoR/Julia/main.jl:23 [15] include(mod::Module, _path::String) @ Base ./Base.jl:419 [16] exec_options(opts::Base.JLOptions) @ Base ./client.jl:303 [17] _start() @ Base ./client.jl:522 in expression starting at string:1 Backtrace: ▆- └─fwildclusterboot (local) create_models(clustid = "group_id1") at test-method_equivalence.R:1227:4
- ├─base::assign(...) at test-method_equivalence.R:187:8
- ├─base::suppressWarnings(...)
- │ └─base::withCallingHandlers(...)
- ├─fwildclusterboot::boottest(...)
- └─fwildclusterboot:::boottest.lm(...)
-
└─fwildclusterboot:::set_seed(seed = seed, engine = engine, type = type) -
└─JuliaConnectoR::juliaEval("using StableRNGs") -
└─JuliaConnectoR::juliaCall("RConnector.mainevalcmd", expr)
-
├─base::tryCatch(...) -
│ └─base (local) tryCatchList(expr, classes, parentenv, handlers) -
│ └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) -
│ └─base (local) doTryCatch(return(expr), name, parentenv, handler) -
└─JuliaConnectoR:::doCallJulia(funName, jlargs) -
└─JuliaConnectoR:::handleCallbacksAndOutput()
── Error (test-new-bootstrap-variants.R:271:5): variants 31 R vs Julia ───────── Error: Evaluation in Julia failed. Original Julia error message: LoadError: ArgumentError: Package StableRNGs not found in current path.
- Run
import Pkg; Pkg.add("StableRNGs")to install the StableRNGs package. Stacktrace: [1] macro expansion @ ./loading.jl:1163 [inlined] [2] macro expansion @ ./lock.jl:223 [inlined] [3] require(into::Module, mod::Symbol) @ Base ./loading.jl:1144 [4] eval @ ./boot.jl:368 [inlined] [5] include_string(mapexpr::typeof(identity), mod::Module, code::String, filename::String) @ Base ./loading.jl:1428 [6] include_string (repeats 2 times) @ ./loading.jl:1438 [inlined] [7] mainevalcmd(str::String) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/evaluating.jl:150 [8] invokelatest(::Any, ::Any, ::Vararg{Any}; kwargs::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}) @ Base ./essentials.jl:729 [9] invokelatest(::Any, ::Any, ::Vararg{Any}) @ Base ./essentials.jl:726 [10] evaluate!(call::Main.RConnector.Call, communicator::Main.RConnector.CommunicatoR{Sockets.TCPSocket}) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/evaluating.jl:67 [11] evaluate_checked!(call::Main.RConnector.Call, communicator::Main.RConnector.CommunicatoR{Sockets.TCPSocket}) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/evaluating.jl:55 [12] serve_repl(sock::Sockets.TCPSocket) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/communicating.jl:185 [13] serve(port_hint::Int64; multiclient::Bool, portfile::String) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/communicating.jl:152 [14] top-level scope @ /usr/local/lib/R/site-library/JuliaConnectoR/Julia/main.jl:23 [15] include(mod::Module, _path::String) @ Base ./Base.jl:419 [16] exec_options(opts::Base.JLOptions) @ Base ./client.jl:303 [17] _start() @ Base ./client.jl:522 in expression starting at string:1 Backtrace: ▆- ├─fwildclusterboot::boottest(...) at test-new-bootstrap-variants.R:271:4
- └─fwildclusterboot:::boottest.lm(...)
- └─fwildclusterboot:::set_seed(seed = seed, engine = engine, type = type)
-
└─JuliaConnectoR::juliaEval("using StableRNGs") -
└─JuliaConnectoR::juliaCall("RConnector.mainevalcmd", expr) -
├─base::tryCatch(...) -
│ └─base (local) tryCatchList(expr, classes, parentenv, handlers) -
│ └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) -
│ └─base (local) doTryCatch(return(expr), name, parentenv, handler)
-
└─JuliaConnectoR:::doCallJulia(funName, jlargs) -
└─JuliaConnectoR:::handleCallbacksAndOutput()
── Error (test-r-vs-julia.R:86:15): test r against Julia I: stochastic tests ─── Error: Evaluation in Julia failed. Original Julia error message: LoadError: ArgumentError: Package StableRNGs not found in current path.
- Run
import Pkg; Pkg.add("StableRNGs")to install the StableRNGs package. Stacktrace: [1] macro expansion @ ./loading.jl:1163 [inlined] [2] macro expansion @ ./lock.jl:223 [inlined] [3] require(into::Module, mod::Symbol) @ Base ./loading.jl:1144 [4] eval @ ./boot.jl:368 [inlined] [5] include_string(mapexpr::typeof(identity), mod::Module, code::String, filename::String) @ Base ./loading.jl:1428 [6] include_string (repeats 2 times) @ ./loading.jl:1438 [inlined] [7] mainevalcmd(str::String) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/evaluating.jl:150 [8] invokelatest(::Any, ::Any, ::Vararg{Any}; kwargs::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}) @ Base ./essentials.jl:729 [9] invokelatest(::Any, ::Any, ::Vararg{Any}) @ Base ./essentials.jl:726 [10] evaluate!(call::Main.RConnector.Call, communicator::Main.RConnector.CommunicatoR{Sockets.TCPSocket}) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/evaluating.jl:67 [11] evaluate_checked!(call::Main.RConnector.Call, communicator::Main.RConnector.CommunicatoR{Sockets.TCPSocket}) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/evaluating.jl:55 [12] serve_repl(sock::Sockets.TCPSocket) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/communicating.jl:185 [13] serve(port_hint::Int64; multiclient::Bool, portfile::String) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/communicating.jl:152 [14] top-level scope @ /usr/local/lib/R/site-library/JuliaConnectoR/Julia/main.jl:23 [15] include(mod::Module, _path::String) @ Base ./Base.jl:419 [16] exec_options(opts::Base.JLOptions) @ Base ./client.jl:303 [17] _start() @ Base ./client.jl:522 in expression starting at string:1 Backtrace: ▆- ├─base::suppressWarnings(...) at test-r-vs-julia.R:86:14
- │ └─base::withCallingHandlers(...)
- ├─fwildclusterboot::boottest(...)
- └─fwildclusterboot:::boottest.lm(...)
- └─fwildclusterboot:::set_seed(seed = seed, engine = engine, type = type)
-
└─JuliaConnectoR::juliaEval("using StableRNGs") -
└─JuliaConnectoR::juliaCall("RConnector.mainevalcmd", expr) -
├─base::tryCatch(...) -
│ └─base (local) tryCatchList(expr, classes, parentenv, handlers)
-
│ └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) -
│ └─base (local) doTryCatch(return(expr), name, parentenv, handler) -
└─JuliaConnectoR:::doCallJulia(funName, jlargs) -
└─JuliaConnectoR:::handleCallbacksAndOutput()
── Error (test-seed.R:31:7): seed works for OLS ──────────────────────────────── Error: Evaluation in Julia failed. Original Julia error message: LoadError: ArgumentError: Package StableRNGs not found in current path.
- Run
import Pkg; Pkg.add("StableRNGs")to install the StableRNGs package. Stacktrace: [1] macro expansion @ ./loading.jl:1163 [inlined] [2] macro expansion @ ./lock.jl:223 [inlined] [3] require(into::Module, mod::Symbol) @ Base ./loading.jl:1144 [4] eval @ ./boot.jl:368 [inlined] [5] include_string(mapexpr::typeof(identity), mod::Module, code::String, filename::String) @ Base ./loading.jl:1428 [6] include_string (repeats 2 times) @ ./loading.jl:1438 [inlined] [7] mainevalcmd(str::String) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/evaluating.jl:150 [8] invokelatest(::Any, ::Any, ::Vararg{Any}; kwargs::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}) @ Base ./essentials.jl:729 [9] invokelatest(::Any, ::Any, ::Vararg{Any}) @ Base ./essentials.jl:726 [10] evaluate!(call::Main.RConnector.Call, communicator::Main.RConnector.CommunicatoR{Sockets.TCPSocket}) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/evaluating.jl:67 [11] evaluate_checked!(call::Main.RConnector.Call, communicator::Main.RConnector.CommunicatoR{Sockets.TCPSocket}) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/evaluating.jl:55 [12] serve_repl(sock::Sockets.TCPSocket) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/communicating.jl:185 [13] serve(port_hint::Int64; multiclient::Bool, portfile::String) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/communicating.jl:152 [14] top-level scope @ /usr/local/lib/R/site-library/JuliaConnectoR/Julia/main.jl:23 [15] include(mod::Module, _path::String) @ Base ./Base.jl:419 [16] exec_options(opts::Base.JLOptions) @ Base ./client.jl:303 [17] _start() @ Base ./client.jl:522 in expression starting at string:1 Backtrace: ▆- ├─base::suppressMessages(...) at test-seed.R:31:6
- │ └─base::withCallingHandlers(...)
- ├─fwildclusterboot::boottest(...)
- └─fwildclusterboot:::boottest.lm(...)
- └─fwildclusterboot:::set_seed(seed = seed, engine = engine, type = type)
-
└─JuliaConnectoR::juliaEval("using StableRNGs") -
└─JuliaConnectoR::juliaCall("RConnector.mainevalcmd", expr) -
├─base::tryCatch(...) -
│ └─base (local) tryCatchList(expr, classes, parentenv, handlers)
-
│ └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) -
│ └─base (local) doTryCatch(return(expr), name, parentenv, handler) -
└─JuliaConnectoR:::doCallJulia(funName, jlargs) -
└─JuliaConnectoR:::handleCallbacksAndOutput()
── Error (test-tstat_equivalence.R:428:19): t-stat equivalence OLS - WildBootTests ── Error: Evaluation in Julia failed. Original Julia error message: LoadError: ArgumentError: Package StableRNGs not found in current path.
- Run
import Pkg; Pkg.add("StableRNGs")to install the StableRNGs package. Stacktrace: [1] macro expansion @ ./loading.jl:1163 [inlined] [2] macro expansion @ ./lock.jl:223 [inlined] [3] require(into::Module, mod::Symbol) @ Base ./loading.jl:1144 [4] eval @ ./boot.jl:368 [inlined] [5] include_string(mapexpr::typeof(identity), mod::Module, code::String, filename::String) @ Base ./loading.jl:1428 [6] include_string (repeats 2 times) @ ./loading.jl:1438 [inlined] [7] mainevalcmd(str::String) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/evaluating.jl:150 [8] invokelatest(::Any, ::Any, ::Vararg{Any}; kwargs::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}) @ Base ./essentials.jl:729 [9] invokelatest(::Any, ::Any, ::Vararg{Any}) @ Base ./essentials.jl:726 [10] evaluate!(call::Main.RConnector.Call, communicator::Main.RConnector.CommunicatoR{Sockets.TCPSocket}) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/evaluating.jl:67 [11] evaluate_checked!(call::Main.RConnector.Call, communicator::Main.RConnector.CommunicatoR{Sockets.TCPSocket}) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/evaluating.jl:55 [12] serve_repl(sock::Sockets.TCPSocket) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/communicating.jl:185 [13] serve(port_hint::Int64; multiclient::Bool, portfile::String) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/communicating.jl:152 [14] top-level scope @ /usr/local/lib/R/site-library/JuliaConnectoR/Julia/main.jl:23 [15] include(mod::Module, _path::String) @ Base ./Base.jl:419 [16] exec_options(opts::Base.JLOptions) @ Base ./client.jl:303 [17] _start() @ Base ./client.jl:522 in expression starting at string:1 Backtrace: ▆- ├─base::suppressWarnings(...) at test-tstat_equivalence.R:428:18
- │ └─base::withCallingHandlers(...)
- ├─fwildclusterboot::boottest(...)
- └─fwildclusterboot:::boottest.lm(...)
- └─fwildclusterboot:::set_seed(seed = seed, engine = engine, type = type)
-
└─JuliaConnectoR::juliaEval("using StableRNGs") -
└─JuliaConnectoR::juliaCall("RConnector.mainevalcmd", expr) -
├─base::tryCatch(...) -
│ └─base (local) tryCatchList(expr, classes, parentenv, handlers)
-
│ └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) -
│ └─base (local) doTryCatch(return(expr), name, parentenv, handler) -
└─JuliaConnectoR:::doCallJulia(funName, jlargs) -
└─JuliaConnectoR:::handleCallbacksAndOutput()
── Error (test-tstat_equivalence.R:882:5): t-stat equivalence OLS q > 1 ──────── Error: Evaluation in Julia failed. Original Julia error message: LoadError: ArgumentError: Package StableRNGs not found in current path.
- Run
import Pkg; Pkg.add("StableRNGs")to install the StableRNGs package. Stacktrace: [1] macro expansion @ ./loading.jl:1163 [inlined] [2] macro expansion @ ./lock.jl:223 [inlined] [3] require(into::Module, mod::Symbol) @ Base ./loading.jl:1144 [4] eval @ ./boot.jl:368 [inlined] [5] include_string(mapexpr::typeof(identity), mod::Module, code::String, filename::String) @ Base ./loading.jl:1428 [6] include_string (repeats 2 times) @ ./loading.jl:1438 [inlined] [7] mainevalcmd(str::String) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/evaluating.jl:150 [8] invokelatest(::Any, ::Any, ::Vararg{Any}; kwargs::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}) @ Base ./essentials.jl:729 [9] invokelatest(::Any, ::Any, ::Vararg{Any}) @ Base ./essentials.jl:726 [10] evaluate!(call::Main.RConnector.Call, communicator::Main.RConnector.CommunicatoR{Sockets.TCPSocket}) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/evaluating.jl:67 [11] evaluate_checked!(call::Main.RConnector.Call, communicator::Main.RConnector.CommunicatoR{Sockets.TCPSocket}) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/evaluating.jl:55 [12] serve_repl(sock::Sockets.TCPSocket) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/communicating.jl:185 [13] serve(port_hint::Int64; multiclient::Bool, portfile::String) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/communicating.jl:152 [14] top-level scope @ /usr/local/lib/R/site-library/JuliaConnectoR/Julia/main.jl:23 [15] include(mod::Module, _path::String) @ Base ./Base.jl:419 [16] exec_options(opts::Base.JLOptions) @ Base ./client.jl:303 [17] _start() @ Base ./client.jl:522 in expression starting at string:1 Backtrace: ▆- └─fwildclusterboot (local) wald_test(run_this_test = TRUE) at test-tstat_equivalence.R:882:4
- ├─base::suppressWarnings(...) at test-tstat_equivalence.R:671:8
- │ └─base::withCallingHandlers(...)
- ├─fwildclusterboot::mboottest(...)
- └─fwildclusterboot:::mboottest.lm(...)
-
└─fwildclusterboot:::set_seed(...) -
└─JuliaConnectoR::juliaEval("using StableRNGs") -
└─JuliaConnectoR::juliaCall("RConnector.mainevalcmd", expr) -
├─base::tryCatch(...)
-
│ └─base (local) tryCatchList(expr, classes, parentenv, handlers) -
│ └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) -
│ └─base (local) doTryCatch(return(expr), name, parentenv, handler) -
└─JuliaConnectoR:::doCallJulia(funName, jlargs) -
└─JuliaConnectoR:::handleCallbacksAndOutput()
── Error (test-tstat_equivalence.R:966:5): t-stat equivalence IV ─────────────── Error: Evaluation in Julia failed. Original Julia error message: LoadError: ArgumentError: Package StableRNGs not found in current path.
- Run
import Pkg; Pkg.add("StableRNGs")to install the StableRNGs package. Stacktrace: [1] macro expansion @ ./loading.jl:1163 [inlined] [2] macro expansion @ ./lock.jl:223 [inlined] [3] require(into::Module, mod::Symbol) @ Base ./loading.jl:1144 [4] eval @ ./boot.jl:368 [inlined] [5] include_string(mapexpr::typeof(identity), mod::Module, code::String, filename::String) @ Base ./loading.jl:1428 [6] include_string (repeats 2 times) @ ./loading.jl:1438 [inlined] [7] mainevalcmd(str::String) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/evaluating.jl:150 [8] invokelatest(::Any, ::Any, ::Vararg{Any}; kwargs::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}) @ Base ./essentials.jl:729 [9] invokelatest(::Any, ::Any, ::Vararg{Any}) @ Base ./essentials.jl:726 [10] evaluate!(call::Main.RConnector.Call, communicator::Main.RConnector.CommunicatoR{Sockets.TCPSocket}) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/evaluating.jl:67 [11] evaluate_checked!(call::Main.RConnector.Call, communicator::Main.RConnector.CommunicatoR{Sockets.TCPSocket}) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/evaluating.jl:55 [12] serve_repl(sock::Sockets.TCPSocket) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/communicating.jl:185 [13] serve(port_hint::Int64; multiclient::Bool, portfile::String) @ Main.RConnector /usr/local/lib/R/site-library/JuliaConnectoR/Julia/communicating.jl:152 [14] top-level scope @ /usr/local/lib/R/site-library/JuliaConnectoR/Julia/main.jl:23 [15] include(mod::Module, _path::String) @ Base ./Base.jl:419 [16] exec_options(opts::Base.JLOptions) @ Base ./client.jl:303 [17] _start() @ Base ./client.jl:522 in expression starting at string:1 Backtrace: ▆- └─fwildclusterboot (local) iv_test(run_this_test = TRUE) at test-tstat_equivalence.R:966:4
- ├─base::suppressWarnings(...) at test-tstat_equivalence.R:931:8
- │ └─base::withCallingHandlers(...)
- ├─fwildclusterboot::boottest(...)
- └─fwildclusterboot:::boottest.ivreg(...)
-
└─fwildclusterboot:::set_seed(...) -
└─JuliaConnectoR::juliaEval("using StableRNGs") -
└─JuliaConnectoR::juliaCall("RConnector.mainevalcmd", expr) -
├─base::tryCatch(...)
-
│ └─base (local) tryCatchList(expr, classes, parentenv, handlers) -
│ └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) -
│ └─base (local) doTryCatch(return(expr), name, parentenv, handler) -
└─JuliaConnectoR:::doCallJulia(funName, jlargs) -
└─JuliaConnectoR:::handleCallbacksAndOutput()
[ FAIL 16 | WARN 11 | SKIP 0 | PASS 414 ] Error: Test failures Execution halted
R CMD check generated the following check_fails:
- rcmdcheck_undeclared_imports
- rcmdcheck_undeclared_loadnamespace_requirenamespace
- rcmdcheck_undefined_globals
- rcmdcheck_tests_pass
- rcmdcheck_reasonable_installed_size
Test coverage with covr
ERROR: Test Coverage Failed
Cyclocomplexity with cyclocomp
The following functions have cyclocomplexity >= 15:
| function | cyclocomplexity |
|---|---|
| get_cluster | 35 |
| gtools_permutations | 34 |
| boot_algo3 | 24 |
| boot_aggregate | 22 |
| boot_algo_julia | 21 |
| getBoottest_nthreads | 16 |
| boottest.fixest | 15 |
| boottest.lm | 15 |
| check_boottest_args_plus | 15 |
Static code analyses with lintr
lintr found the following 70 potential issues:
| message | number of times |
|---|---|
| Avoid library() and require() calls in packages | 13 |
| Avoid using sapply, consider vapply instead, that's type safe | 1 |
| Lines should not be more than 80 characters. | 11 |
| Use <-, not =, for assignment. | 45 |
5. Other Checks
Details of other checks (click to open)
:heavy_multiplication_x: The following 2 function names are duplicated in other packages:
-
format_messagefrom insight
-
pvalfrom CIPerm, dostats, dostats, GUIDE, learnstats, molic, mosaic, overlapptest, RPtests, timereg
Package Versions
| package | version |
|---|---|
| pkgstats | 0.1.1.44 |
| pkgcheck | 0.1.0.24 |
| srr | 0.0.1.180 |
Editor-in-Chief Instructions:
Processing may not proceed until the items marked with :heavy_multiplication_x: have been resolved.
Dear @s3alfisc
Today starts my rotation as EiC and I'm reviewing the status of current open reviews.
Thanks a lot for your efforts in meeting our standards. Where are we standing now? Do you feel ready for me to resume the review process? The next step would be to re-run checks and then look for a handling editor.
Hi @maurolepore - thanks for reaching out - I was actually about to do the same this weekend! Unfortunately, I never got the pkgcheck to run properly, neither on my local machine nor on github actions. But I have not really tried in a while (I had given up at some point) - so I'll try once again and if I cannot get it to run locally, is it ok if I trigger the workflow bot one more time? One complication is that I am running unit tests against WildBootTests.jl, and in order to run the pkgcheck workflows, I'd have to skip those tests, which would lead to a drop in test coverage to around 65%.
Actually, pkgcheck is now running on my local machine - so I'll respond to it's feedback, update all standards based on a few new features, and will notify you once everything is done!
I've run the pkgcheck action, with the following results:
- the pkgcheck coverage test fails, as
pkgcheckdoes not run some tests that my local github actions CI runs (coverage is at 89% running all tests, codecov link) - installation on ubuntu-lastest fails. No problems on older versions of ubuntu via github actions.
- The following functions are used in other packages: pval, error_message - which I think should be fine?
I'll start the bot to confirm all of this later today & then you can decide if you think everything is good enough to proceed, @maurolepore ?
@ropensci-review-bot check package
Thanks, about to send the query.
:rocket:
Editor check started
:wave: