On 04/07/2021 5:26 p.m., Cyril Lagger wrote:
Hi all,
I am trying to submit our package scDiffCom (
https://github.com/CyrilLagger/scDiffCom) to CRAN. However, it does not
pass the windows automatic checks for some unclear reason to me. Any help
would be really appreciated!
Basically, the output from R-CMD-check is fine locally and for the github
actions I specified, but not for the automatic windows tests. Please see
below:
------------
1)
no ERRORs, no WARNINGs, no NOTEs when running devtools:check() locally
(windows 10, R 4.1.0)
That's the windows release version, not devel.
2)
no ERRORs, no WARNINGs, no NOTEs when running github-actions
<https://github.com/CyrilLagger/scDiffCom/blob/master/.github/workflows/check-standard.yaml>
for windows-latest (release), macOS-latest (release), ubuntu-20.04
(release), ubuntu-20.04 (devel)
You didn't test windows-devel.
3)
1 ERROR when running devtools:check_win_devel: *Running the tests in
'tests/testthat.R' failed.* However, testthat.Rout.fail is not informative
to me, it only contains:
That's a Windows devel run. That's what you haven't done locally.
library(testthat)
library(scDiffCom)
test_check("scDiffCom")
Loading required package: SeuratObject
4)
2 ERRORs when running devtools:check_win_release. As follows:
** running tests for arch 'i386' ... [5s] ERROR
Running 'spelling.R' [0s]
Running 'testthat.R' [4s]
Running the tests in 'tests/testthat.R' failed.
Complete output:
> library(testthat)
> library(scDiffCom)
>
> test_check("scDiffCom")
Loading required package: SeuratObject
== Failed tests
================================================================
-- Error (test-everything.R:171:1): (code run outside of
`test_that()`) --------
Error: error in load action .__A__.1 for package RcppAnnoy:
loadModule(module = "AnnoyAngular", what = TRUE, env = ns, loadNow =
TRUE): Unable to load module "AnnoyAngular": bad binding access
Backtrace:
x
1. +-base::lapply(...) test-everything.R:171:0
2. | \-scDiffCom:::FUN(X[[i]], ...)
3. | \-scDiffCom:::extract_analysis_inputs(...) test-everything.R:174:4
4. | \-scDiffCom:::extract_seurat_inputs(...)
5. \-base::loadNamespace(x)
6. +-base::namespaceImportFrom(...)
7. | \-base::asNamespace(ns)
8. \-base::loadNamespace(j <- i[[1L]], c(lib.loc, .libPaths()),
versionCheck = vI[[j]])
9. \-methods::cacheMetaData(ns, TRUE, ns)
10. \-methods:::.doLoadActions(where, attach)
[ FAIL 1 | WARN 0 | SKIP 0 | PASS 6 ]
Error: Test failures
Execution halted
** running tests for arch 'x64' ... [5s] ERROR
Running 'spelling.R' [0s]
Running 'testthat.R' [5s]
Running the tests in 'tests/testthat.R' failed.
Complete output:
> library(testthat)
> library(scDiffCom)
>
> test_check("scDiffCom")
Loading required package: SeuratObject
-----------
Since I have no error locally on my machine, I don't know what I could
change for the automatic tests to work. Also, I don't understand why
the github-action for windows-latest (release) works but not
devtools:check_win_release().
You say check_win_devel() above.
By the way, I installed R devel on my machine in addition to R 4.1.0,
but it turns out I cannot test our package installation because it has
Bioconductor dependencies and "Bioconductor does not yet build and
check packages for R version 4.2" as reported here
<https://github.com/r-hub/rhub/issues/471>. The exact same error
actually also occurs when I run devtools:check_rhub(). It does not
seem to be related to the failure of testthat I reported above, but I
thought it might be useful to mention it.
Yes, seems related. If you're depending on a package that won't build,
your tests will fail.
Perhaps you can reduce your dependence to Suggests, which will give a
note on the failure to load, but no more.
I don't know if this is under your control, but I believe R-devel will
not support i386. (Or is it the last version to do so? I forget where
I saw the news.)
Duncan Murdoch
______________________________________________
R-package-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-package-devel