alexchwong / SpliceWiz

SpliceWiz is an R package for exploring differential alternative splicing events in splice-aware alignment BAM files.
Other
16 stars 8 forks source link

Mention STAR under `SystemRequirements:` #52

Open HenrikBengtsson opened 1 year ago

HenrikBengtsson commented 1 year ago

Hello, I'm running reverse dependency checks on matrixStats and get errors on STAR not being found when your vignettes are checked (see below).

Would you update the SystemRequirements: to mention that STAR is (optionally?) needed?

* checking re-building of vignette outputs ... ERROR
Error(s) in re-building vignettes:
  ...
--- re-building ‘SW_Cookbook.Rmd’ using rmarkdown
which: no STAR in (/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/alice/bin)
which: no STAR in (/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/alice/bin)
--- finished re-building ‘SW_Cookbook.Rmd’

--- re-building ‘SW_QuickStart.Rmd’ using rmarkdown

Quitting from lines 458-459 [unnamed-chunk-22] (SW_QuickStart.Rmd)
Error: processing vignette 'SW_QuickStart.Rmd' failed with diagnostics:
ℹ In argument: `rpath = unname(bfcrpath(x, rids = rids))`.
Caused by error:
! `rpath` must be size 4 or 1, not 2.
--- failed re-building ‘SW_QuickStart.Rmd’

SUMMARY: processing the following file failed:
  ‘SW_QuickStart.Rmd’

Error: Vignette re-building failed.
Execution halted
alexchwong commented 1 year ago
--- re-building ‘SW_Cookbook.Rmd’ using rmarkdown
which: no STAR in (/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/alice/bin)
which: no STAR in (/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/alice/bin)
--- finished re-building ‘SW_Cookbook.Rmd’

STAR_version() should not trigger any error. The vignette builds fine on Bioconductor and STAR is not installed on their system (see https://bioconductor.org/packages/release/bioc/vignettes/SpliceWiz/inst/doc/SW_Cookbook.html).

What version of SpliceWiz are you using?

In any case, STAR is highly optional and we feel its inclusion as a "requirement" would be highly misleading... definitely building the vignettes and passing all checks does not require STAR to be installed.

HenrikBengtsson commented 1 year ago

Sorry for the radio silence; I had zero time to debug this further, but rest assure that I'm R CMD check --as-cran here via the revdepcheck package, so the results are from a fresh, vanilla R environment. This checks with whatever package versions were available on CRAN/Bioconductor at the time. When I ran these tests, it tested SpliceWiz 1.4.0.

Here are all the packages that were involved when running those checks;

$ cat revdep/checks/SpliceWiz/old/libraries.txt 
Library: /c4/home/henrik/repositories/matrixStats/revdep/library/matrixStats/old
matrixStats (1.0.0)

Library: /c4/home/henrik/repositories/matrixStats/revdep/library/SpliceWiz
abind                  (1.4-5)
annotate               (1.80.0)
AnnotationDbi          (1.64.0)
AnnotationHub          (3.10.0)
anytime                (0.3.9)
askpass                (1.2.0)
assertthat             (0.2.1)
base64enc              (0.1-3)
BH                     (1.81.0-1)
Biobase                (2.62.0)
BiocFileCache          (2.10.1)
BiocGenerics           (0.48.0)
BiocIO                 (1.12.0)
BiocManager            (1.30.22)
BiocParallel           (1.36.0)
BiocVersion            (3.18.0)
Biostrings             (2.70.1)
bit                    (4.0.5)
bit64                  (4.0.5)
bitops                 (1.0-7)
blob                   (1.2.4)
brio                   (1.1.3)
BSgenome               (1.70.0)
bslib                  (0.5.1)
ca                     (0.71.1)
cachem                 (1.0.8)
callr                  (3.7.3)
cli                    (3.6.1)
cluster                (2.1.4)
codetools              (0.2-19)
colorspace             (2.1-0)
commonmark             (1.9.0)
cowplot                (1.1.1)
cpp11                  (0.4.6)
crayon                 (1.5.2)
crosstalk              (1.2.0)
curl                   (5.1.0)
data.table             (1.14.8)
DBI                    (1.1.3)
dbplyr                 (2.4.0)
DelayedArray           (0.28.0)
DelayedMatrixStats     (1.24.0)
dendextend             (1.17.1)
desc                   (1.4.2)
DESeq2                 (1.42.0)
diffobj                (0.3.5)
digest                 (0.6.33)
DoubleExpSeq           (1.1)
dplyr                  (1.1.3)
DT                     (0.30)
edgeR                  (4.0.1)
egg                    (0.4.5)
ellipsis               (0.3.2)
evaluate               (0.23)
ExperimentHub          (2.10.0)
fansi                  (1.0.5)
farver                 (2.1.1)
fastmap                (1.1.1)
fastmatch              (1.1-4)
fgsea                  (1.28.0)
filelock               (1.0.2)
fontawesome            (0.5.2)
foreach                (1.5.2)
formatR                (1.14)
fs                     (1.6.3)
fst                    (0.9.8)
fstcore                (0.9.14)
futile.logger          (1.4.3)
futile.options         (1.0.1)
gclus                  (1.3.2)
genefilter             (1.84.0)
generics               (0.1.3)
GenomeInfoDb           (1.38.0)
GenomeInfoDbData       (1.2.11)
GenomicAlignments      (1.38.0)
GenomicRanges          (1.54.1)
ggplot2                (3.4.4)
glue                   (1.6.2)
GO.db                  (3.18.0)
gridExtra              (2.3)
gtable                 (0.3.4)
HDF5Array              (1.30.0)
heatmaply              (1.5.0)
highr                  (0.10)
hms                    (1.1.3)
htmltools              (0.5.6.1)
htmlwidgets            (1.6.2)
httpuv                 (1.6.12)
httr                   (1.4.7)
interactiveDisplayBase (1.40.0)
IRanges                (2.36.0)
isoband                (0.2.7)
iterators              (1.0.14)
jquerylib              (0.1.4)
jsonlite               (1.8.7)
KEGGREST               (1.42.0)
knitr                  (1.45)
labeling               (0.4.3)
lambda.r               (1.2.4)
later                  (1.3.1)
lattice                (0.22-5)
lazyeval               (0.2.2)
lifecycle              (1.0.3)
limma                  (3.58.1)
locfit                 (1.5-9.8)
magrittr               (2.0.3)
MASS                   (7.3-60)
Matrix                 (1.6-1.1)
MatrixGenerics         (1.14.0)
memoise                (2.0.1)
mgcv                   (1.9-0)
mime                   (0.12)
munsell                (0.5.0)
nlme                   (3.1-163)
numDeriv               (2016.8-1.1)
NxtIRFdata             (1.8.0)
ompBAM                 (1.6.0)
openssl                (2.1.1)
patchwork              (1.1.3)
permute                (0.9-7)
pheatmap               (1.0.12)
pillar                 (1.9.0)
pkgbuild               (1.4.2)
pkgconfig              (2.0.3)
pkgload                (1.3.3)
plogr                  (0.2.0)
plotly                 (4.10.3)
plyr                   (1.8.9)
png                    (0.1-8)
praise                 (1.0.0)
prettyunits            (1.2.0)
processx               (3.8.2)
progress               (1.2.2)
promises               (1.2.1)
ps                     (1.7.5)
purrr                  (1.0.2)
qap                    (0.1-2)
R.methodsS3            (1.8.2)
R.oo                   (1.25.0)
R.utils                (2.12.2)
R6                     (2.5.1)
rappdirs               (0.3.3)
RColorBrewer           (1.1-3)
Rcpp                   (1.0.11)
RcppArmadillo          (0.12.6.6.0)
RcppProgress           (0.4.2)
RCurl                  (1.98-1.12)
registry               (0.5-1)
rematch2               (2.1.2)
reshape2               (1.4.4)
restfulr               (0.0.15)
rhandsontable          (0.3.8)
rhdf5                  (2.46.0)
rhdf5filters           (1.14.0)
Rhdf5lib               (1.24.0)
Rhtslib                (2.4.0)
rjson                  (0.2.21)
rlang                  (1.1.1)
rmarkdown              (2.25)
rprojroot              (2.0.3)
Rsamtools              (2.18.0)
RSQLite                (2.3.2)
Rsubread               (2.16.0)
rtracklayer            (1.62.0)
rvest                  (1.0.3)
S4Arrays               (1.2.0)
S4Vectors              (0.40.1)
sass                   (0.4.7)
scales                 (1.2.1)
selectr                (0.4-2)
seriation              (1.5.1)
shiny                  (1.7.5.1)
shinydashboard         (0.7.2)
shinyFiles             (0.9.3)
shinyWidgets           (0.8.0)
snow                   (0.4-4)
sourcetools            (0.1.7-1)
SparseArray            (1.2.0)
sparseMatrixStats      (1.14.0)
statmod                (1.5.0)
stringi                (1.7.12)
stringr                (1.5.0)
SummarizedExperiment   (1.32.0)
survival               (3.5-7)
sys                    (3.4.2)
testthat               (3.2.0)
tibble                 (3.2.1)
tidyr                  (1.3.0)
tidyselect             (1.2.0)
tinytex                (0.48)
TSP                    (1.2-4)
utf8                   (1.2.4)
vctrs                  (0.6.4)
vegan                  (2.6-4)
viridis                (0.6.4)
viridisLite            (0.4.2)
waldo                  (0.5.1)
webshot                (0.5.5)
withr                  (2.5.2)
xfun                   (0.41)
XML                    (3.99-0.14)
xml2                   (1.3.5)
xtable                 (1.8-4)
XVector                (0.42.0)
yaml                   (2.3.7)
zlibbioc               (1.48.0)
alexchwong commented 1 year ago

Can you provide me a way to reproduce this on my end? Vignettes successfully build on github actions as well as all Bioconductor servers.

SpliceWiz checks for STAR by calling system2("which", ...) inside a tryCatch ... I can only assume that there are specific conflicts of this with regard to how revdepcheck is calling R cmd check?

HenrikBengtsson commented 1 year ago

In your GitHub Actions, you're checking with --no-vignettes;

https://github.com/alexchwong/SpliceWiz/blob/7f570427466c7fa68f26c53e67d34bb668c7b751/.github/workflows/check-bioc.yml#L224-L229

Dropping that might reproduce the above error.

In my revdep checks of matrixStats, I'm running with:

Sys.setenv(R_REVDEPCHECK_CHECK_ARGS = "--no-manual")  ## this drops --no-vignettes, which otherwise is the default
revdepcheck::revdep_report(".", all = TRUE)