Code Monkey home page Code Monkey logo

biocthis's Introduction

biocthis

Lifecycle: stable Bioc release status Bioc devel status Bioc downloads rank Bioc support Bioc history Bioc last commit Bioc dependencies Codecov test coverage R build status GitHub issues GitHub pulls

biocthis is an R package that expands usethis with Bioconductor-friendly templates. These templates will help you quickly create an R package that either has Bioconductor dependencies or that you are thinking of submitting to Bioconductor one day. biocthis has functions that can also enhance your current R packages that either are already distributed by Bioconductor or have Bioconductor dependencies. biocthis also includes a Bioconductor-friendly GitHub Actions workflow for your R package(s).

Note that biocthis is not a Bioconductor-core package and as such it is not a Bioconductor official package. It was made by and for Leonardo Collado-Torres so he could more easily maintain and create Bioconductor packages as listed at lcolladotor.github.io/pkgs/. Hopefully biocthis will be helpful for you too.

Installation instructions

Get the latest stable R release from CRAN. Then install biocthis from Bioconductor using the following code:

if (!requireNamespace("BiocManager", quietly = TRUE)) {
    install.packages("BiocManager")
}

BiocManager::install("biocthis")

And the development version from GitHub with:

BiocManager::install("lcolladotor/biocthis")

Example

Here is how you can use biocthis to create a new Bioconductor-friendly R package (illustrated using a temporary directory):

## Load biocthis
library("biocthis")

## Create an example package for illustrative purposes.
## Note: you do not need to run this for your own package!
pkgdir <- biocthis_example_pkg()
#> ✔ Creating '/var/folders/9f/82m1lr2n1fv1mk91plf2l_dr0000gn/T/Rtmp4fYodr/biocthisexample/'
#> ✔ Setting active project to '/private/var/folders/9f/82m1lr2n1fv1mk91plf2l_dr0000gn/T/Rtmp4fYodr/biocthisexample'
#> ✔ Creating 'R/'
#> ✔ Writing 'DESCRIPTION'
#> Package: biocthisexample
#> Title: What the Package Does (One Line, Title Case)
#> Version: 0.0.0.9000
#> Authors@R (parsed):
#>     * First Last <[email protected]> [aut, cre] (YOUR-ORCID-ID)
#> Description: What the package does (one paragraph).
#> License: `use_mit_license()`, `use_gpl3_license()` or friends to pick a
#>     license
#> Encoding: UTF-8
#> Roxygen: list(markdown = TRUE)
#> RoxygenNote: 7.2.1
#> ✔ Writing 'NAMESPACE'
#> ✔ Setting active project to '<no active project>'
#> ✔ Setting active project to '/private/var/folders/9f/82m1lr2n1fv1mk91plf2l_dr0000gn/T/Rtmp4fYodr/biocthisexample'

## Create the bioc templates
biocthis::use_bioc_pkg_templates()
#> ✔ Creating 'dev/'
#> ✔ Adding '^dev$' to '.Rbuildignore'
#> ✔ Writing 'dev/01_create_pkg.R'
#> ✔ Writing 'dev/02_git_github_setup.R'
#> ✔ Writing 'dev/03_core_files.R'
#> ✔ Writing 'dev/04_update.R'

The template dev scripts include comments and steps you can follow for making your Bioconductor-friendly R package or updating a current package. In particular, you might want to use a Bioconductor-friendly GitHub Actions workflow. If this is your first time seeings this words, we highly recommend that you watch Jim Hester’s rstudio::conf(2020) talk on this subject.

## Create a GitHub Actions workflow that is Bioconductor-friendly
biocthis::use_bioc_github_action()
#> ✔ Creating '.github/'
#> ✔ Adding '^\\.github$' to '.Rbuildignore'
#> ✔ Adding '*.html' to '.github/.gitignore'
#> ✔ Creating '.github/workflows/'
#> ✔ Writing '.github/workflows/check-bioc.yml'
## Alternatively, use the general GitHub Actions workflow maintained by
## r-lib/actions
usethis::use_github_action("check-standard")
#> ✔ Saving 'r-lib/actions/examples/check-standard.yaml@v2' to '.github/workflows/check-standard.yaml'
#> • Learn more at <https://github.com/r-lib/actions/blob/v2/examples/README.md>.

Citation

Below is the citation output from using citation('biocthis') in R. Please run this yourself to check for any updates on how to cite biocthis.

print(citation("biocthis"), bibtex = TRUE)
#> 
#> To cite package 'biocthis' in publications use:
#> 
#>   Collado-Torres L (2022). _Automate package and project setup for
#>   Bioconductor packages_. doi:10.18129/B9.bioc.biocthis
#>   <https://doi.org/10.18129/B9.bioc.biocthis>,
#>   https://github.com/lcolladotor/biocthisbiocthis - R package version
#>   1.9.1, <http://www.bioconductor.org/packages/biocthis>.
#> 
#> A BibTeX entry for LaTeX users is
#> 
#>   @Manual{,
#>     title = {Automate package and project setup for Bioconductor packages},
#>     author = {Leonardo Collado-Torres},
#>     year = {2022},
#>     url = {http://www.bioconductor.org/packages/biocthis},
#>     note = {https://github.com/lcolladotor/biocthisbiocthis - R package version 1.9.1},
#>     doi = {10.18129/B9.bioc.biocthis},
#>   }
#> 
#>   Collado-Torres L (2022). "Automate package and project setup for
#>   Bioconductor packages." _bioRxiv_. doi:10.1101/TODO
#>   <https://doi.org/10.1101/TODO>,
#>   <https://www.biorxiv.org/content/10.1101/TODO>.
#> 
#> A BibTeX entry for LaTeX users is
#> 
#>   @Article{,
#>     title = {Automate package and project setup for Bioconductor packages},
#>     author = {Leonardo Collado-Torres},
#>     year = {2022},
#>     journal = {bioRxiv},
#>     doi = {10.1101/TODO},
#>     url = {https://www.biorxiv.org/content/10.1101/TODO},
#>   }

Please note that the biocthis was only made possible thanks to many other R and bioinformatics software authors, which are cited either in the vignettes and/or the paper(s) describing this package.

Code of Conduct

Please note that the biocthis project is released with a Contributor Code of Conduct. By contributing to this project, you agree to abide by its terms.

Development tools

For more details, check the dev directory.

This package was developed using biocthis.

biocthis's People

Contributors

ben-laufer avatar gbrsales avatar grst avatar jwokaty avatar kayla-morrell avatar kevinrue avatar lcolladotor avatar link-ny avatar mfansler avatar milanmlft avatar nturaga avatar takkoona avatar xec-cm avatar zeehio avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

biocthis's Issues

Future intentions for package

Hello @lcolladotor - Hope you are doing well!

I've been continuing my work on some new functions for the Hubs, one of which would create a skeleton of a package for data submitted to the Hubs. Previously I was working on a branch of AnnotationHubData to create a package from scratch, without the use of usethis. Since then, @mtmorgan has directed me to your biocthis package as it has some helpful functionality to create a Bioconductor style package.

I have two forks in my personal GitHub, one of AnnotationHubData where I've been working on the new functions and one of biocthis where I've made some slight modifications to use_bioc_description() to accommodate AH and EH type packages.

We were hoping we could discuss with you a bit about what your intentions might be with biocthis. We think it would be a great addition to Bioconductor, as it would be useful not only for our Hub purposes but for other developers as well. Let us know what your thoughts are, we would be more than happy to discuss further with you and/or answer any questions you may have.

Best,
Kayla

[BUG] `biocthis::use_bioc_github_action()` creates invalid call to `BiocManager::install`

Hi,

biocthis::use_bioc_github_action() creates a GHA config files which contains the following lines:

      - name: Set BiocVersion
        run: |
          BiocManager::install(version = "RELEASE_3_11", ask = FALSE)
        shell: Rscript {0}

This causes an error when run on GitHub and is not a valid version number as defined in ?BiocManager::install

SessionInfo
#> R version 4.0.2 (2020-06-22)
#> Platform: x86_64-w64-mingw32/x64 (64-bit)
#> Running under: Windows 10 x64 (build 19041)
#> 
#> Matrix products: default
#> 
#> locale:
#> [1] LC_COLLATE=German_Germany.1252  LC_CTYPE=German_Germany.1252   
#> [3] LC_MONETARY=German_Germany.1252 LC_NUMERIC=C                   
#> [5] LC_TIME=German_Germany.1252    
#> 
#> attached base packages:
#> [1] stats     graphics  grDevices utils     datasets  methods   base     
#> 
#> other attached packages:
#> [1] biocthis_0.99.1
#> 
#> loaded via a namespace (and not attached):
#>  [1] knitr_1.30       magrittr_1.5     usethis_1.6.3    rlang_0.4.8     
#>  [5] stringr_1.4.0    styler_1.3.2     highr_0.8        tools_4.0.2     
#>  [9] xfun_0.18        htmltools_0.5.0  ellipsis_0.3.1   yaml_2.2.1      
#> [13] digest_0.6.26    tibble_3.0.4     lifecycle_0.2.0  crayon_1.3.4    
#> [17] purrr_0.3.4      vctrs_0.3.4      fs_1.5.0         glue_1.4.2      
#> [21] evaluate_0.14    rmarkdown_2.4    stringi_1.5.3    compiler_4.0.2  
#> [25] pillar_1.4.6     backports_1.1.10 pkgconfig_2.0.3

Translate course and intro documentation to Spanish

Translate to Spanish the short workshop #51 and other intro level materials to help increase access to these technologies to Spanish-speaking individuals. This will help increase diversity of our user base and stimulate use of these analytical technologies in other parts of the world.

[BUG] Can't compile source packages on Windows with devel bioc-check

Hi!

Thank you so much for your work on an incredibly useful package. As a Bioconductor package maintainer, biocthis really helps me carry out checks on my package.

I have been having an issue when I use a bioc-check workflow on my package with the devel versions of R and Bioconductor created with use_bioc_github_action(biocdocker = "devel"). Everything works fine on macOS and Linux, but the Windows workflow fails when installing the dependencies for my package. Because this is devel, I get the message that the following packages are only available in source form and may need compilation:

Screenshot 2024-04-17 at 11 47 20 AM

Everything seems to download fine, and even some packages compile and install properly, including: zlibbioc, S4Vectors, BiocParallel, Rhtslib, XVector, S4Arrays, Biostrings, GenomicRanges, DelayedArray, Rsamtools, GenomicAlignments, InteractionSet, and AnnotationHub. However, once the workflow gets to rtracklayer, compilation fails:

Screenshot 2024-04-17 at 11 54 36 AM

This then prevents other packages with a dependency on rtracklayer to fail, and the workflow exits and cannot go on to check my package.

I am not sure if this is an rtracklayer issue or a compiler issue, but any guidance on how to try to get these dependency installs working in this workflow would be very much appreciated.

Here I have attached the full logs from the Windows action run as well as the Linux and macOS for reference.
0_ubuntu-latest (devel).txt
1_macOS-latest (devel).txt
2_windows-latest (devel).txt
Please let me know if there is any other helpful information I can provide to work through this.

Thank you so much!

Best,
Nicole

[BUG] Unexpected?? differences in Bioc builder report and github actions

Using the GH actions setup (and some customization based on packages, etc) supplied by {biocthis} and running, I expected mostly similar output as what is observed on the Bioconductor build reports for an already accepted package. However, that isn't what I've experienced. There are warnings and notes in the GH actions that I don't see on the Bioconductor build report. I'm not sure how much this is to be expected (hence the "unexpected??" in the subject of this issue).

Context

I wanted to suggest some changes to a maintainer / author of an already accepted Bioconductor package, SDAMS. And I wanted to have GH actions for it so I would know if I'm introducing anything weird that might cause the Bioconductor builds to error out before they accept the changes. {biocthis} GH actions setup seemed like the easiest, quickest way to get that going.

However, the current build reports on Bioconductor release and devel show no issues with this package.

My github actions, even though they are now completing, show some issues with the package, specifically the Rnw vignette.

Any insight you can provide on these differences would be awesome to help me understand whats going on.

`docker/build-push-action@v1` not launching

I'm using the GHA yaml produced by biocthis::use_bioc_github_action(). I modified it after initially generating it with the default settings so that it would build and push the container to DockerHub.

I've done the following:

  • Set DOCKER_USERNAME and DOCKER_PASSWORD as GH Secrets in my repo.
  • Set run_docker: 'true'
  • Created the orthogene repo manually on DockerHub here (though I haven't made any pushes to it yet).
  • Experimented with removing the !contains(github.event.head_commit.message, '/nodocker') condition.
  • Tried changing to v2 of the GHA using: uses: docker/build-push-action@v2.

All of these had the same outcome (the DockerHub push section of the workflow wasn't run).

https://github.com/neurogenomics/orthogene/runs/3987203006?check_suite_focus=true

Screenshot 2021-10-24 at 00 22 33

Here is the yaml workflow file I'm using:
https://github.com/neurogenomics/orthogene/blob/main/.github/workflows/check-bioc.yml

Do you know what might be going on here?

Many thanks in advance,
Brian

R session information

Session info ──────────────────────────────────────────────────────────────────
 setting  value                       
 version  R version 4.1.0 (2021-05-18)
 os       macOS Big Sur 11.4          
 system   x86_64, darwin17.0          
 ui       RStudio                     
 language (EN)                        
 collate  en_GB.UTF-8                 
 ctype    en_GB.UTF-8                 
 tz       America/New_York            
 date     2021-10-24Packages ──────────────────────────────────────────────────────────────────────
 package          * version        date       lib source        
 abind              1.4-5          2016-07-21 [1] CRAN (R 4.1.0)
 askpass            1.1            2019-01-13 [1] CRAN (R 4.1.0)
 assertthat         0.2.1          2019-03-21 [1] CRAN (R 4.1.0)
 babelgene          21.4           2021-04-26 [1] CRAN (R 4.1.0)
 backports          1.2.1          2020-12-09 [1] CRAN (R 4.1.0)
 badger             0.1.0          2021-04-21 [1] CRAN (R 4.1.0)
 BiocManager        1.30.16        2021-06-15 [1] CRAN (R 4.1.0)
 BiocStyle        * 2.21.4         2021-10-12 [1] Bioconductor  
 biocthis         * 1.3.8          2021-08-10 [1] Bioconductor  
 bitops             1.0-7          2021-04-24 [1] CRAN (R 4.1.0)
 bookdown           0.24           2021-09-02 [1] CRAN (R 4.1.0)
 broom              0.7.9          2021-07-27 [1] CRAN (R 4.1.0)
 bslib              0.3.1          2021-10-06 [1] CRAN (R 4.1.0)
 cachem             1.0.6          2021-08-19 [1] CRAN (R 4.1.0)
 callr              3.7.0          2021-04-20 [1] CRAN (R 4.1.0)
 car                3.0-11         2021-06-27 [1] CRAN (R 4.1.0)
 carData            3.0-4          2020-05-22 [1] CRAN (R 4.1.0)
 cellranger         1.1.0          2016-07-27 [1] CRAN (R 4.1.0)
 cli                3.0.1          2021-07-17 [1] CRAN (R 4.1.0)
 colorspace         2.0-2          2021-06-24 [1] CRAN (R 4.1.0)
 crayon             1.4.1          2021-02-08 [1] CRAN (R 4.1.0)
 credentials        1.3.1          2021-07-25 [1] CRAN (R 4.1.0)
 curl               4.3.2          2021-06-23 [1] CRAN (R 4.1.0)
 data.table         1.14.2         2021-09-27 [1] CRAN (R 4.1.0)
 DBI                1.1.1          2021-01-15 [1] CRAN (R 4.1.0)
 desc               1.4.0          2021-09-28 [1] CRAN (R 4.1.0)
 devtools           2.4.2          2021-06-07 [1] CRAN (R 4.1.0)
 digest             0.6.28         2021-09-23 [1] CRAN (R 4.1.0)
 dlstats            0.1.4          2021-04-23 [1] CRAN (R 4.1.0)
 downlit            0.2.1          2020-11-04 [1] CRAN (R 4.1.0)
 dplyr              1.0.7          2021-06-18 [1] CRAN (R 4.1.0)
 ellipsis           0.3.2          2021-04-29 [1] CRAN (R 4.1.0)
 evaluate           0.14           2019-05-28 [1] CRAN (R 4.1.0)
 fansi              0.5.0          2021-05-25 [1] CRAN (R 4.1.0)
 farver             2.1.0          2021-02-28 [1] CRAN (R 4.1.0)
 fastmap            1.1.0          2021-01-25 [1] CRAN (R 4.1.0)
 forcats            0.5.1          2021-01-27 [1] CRAN (R 4.1.0)
 foreign            0.8-81         2020-12-22 [1] CRAN (R 4.1.0)
 fs                 1.5.0          2020-07-31 [1] CRAN (R 4.1.0)
 generics           0.1.0          2020-10-31 [1] CRAN (R 4.1.0)
 GenomeInfoDbData   1.2.7          2021-10-20 [1] Bioconductor  
 gert               1.4.1          2021-09-16 [1] CRAN (R 4.1.0)
 ggplot2            3.3.5          2021-06-25 [1] CRAN (R 4.1.0)
 ggpubr             0.4.0          2020-06-27 [1] CRAN (R 4.1.0)
 ggsignif           0.6.3          2021-09-09 [1] CRAN (R 4.1.0)
 gh                 1.3.0          2021-04-30 [1] CRAN (R 4.1.0)
 gitcreds           0.1.1          2020-12-04 [1] CRAN (R 4.1.0)
 glue               1.4.2          2020-08-27 [1] CRAN (R 4.1.0)
 gprofiler2         0.2.1          2021-08-23 [1] CRAN (R 4.1.0)
 grr                0.9.5          2016-08-26 [1] CRAN (R 4.1.0)
 gtable             0.3.0          2019-03-25 [1] CRAN (R 4.1.0)
 haven              2.4.3          2021-08-04 [1] CRAN (R 4.1.0)
 hms                1.1.1          2021-09-26 [1] CRAN (R 4.1.0)
 homologene         1.4.68.19.3.27 2019-03-28 [1] CRAN (R 4.1.0)
 htmltools          0.5.2          2021-08-25 [1] CRAN (R 4.1.0)
 htmlwidgets        1.5.4          2021-09-08 [1] CRAN (R 4.1.0)
 httr               1.4.2          2020-07-20 [1] CRAN (R 4.1.0)
 jquerylib          0.1.4          2021-04-26 [1] CRAN (R 4.1.0)
 jsonlite           1.7.2          2020-12-09 [1] CRAN (R 4.1.0)
 knitr              1.36           2021-09-29 [1] CRAN (R 4.1.0)
 labeling           0.4.2          2020-10-20 [1] CRAN (R 4.1.0)
 lattice            0.20-45        2021-09-22 [1] CRAN (R 4.1.0)
 lazyeval           0.2.2          2019-03-15 [1] CRAN (R 4.1.0)
 lifecycle          1.0.1          2021-09-24 [1] CRAN (R 4.1.0)
 magrittr           2.0.1          2020-11-17 [1] CRAN (R 4.1.0)
 Matrix             1.3-4          2021-06-01 [1] CRAN (R 4.1.0)
 Matrix.utils       0.9.8          2020-02-26 [1] CRAN (R 4.1.0)
 memoise            2.0.0          2021-01-26 [1] CRAN (R 4.1.0)
 munsell            0.5.0          2018-06-12 [1] CRAN (R 4.1.0)
 openssl            1.4.5          2021-09-02 [1] CRAN (R 4.1.0)
 openxlsx           4.2.4          2021-06-16 [1] CRAN (R 4.1.0)
 orthogene        * 0.99.8         2021-10-21 [1] Bioconductor  
 patchwork          1.1.1          2020-12-17 [1] CRAN (R 4.1.0)
 pillar             1.6.4          2021-10-18 [1] CRAN (R 4.1.0)
 pkgbuild           1.2.0          2020-12-15 [1] CRAN (R 4.1.0)
 pkgconfig          2.0.3          2019-09-22 [1] CRAN (R 4.1.0)
 pkgdown            1.6.1          2020-09-12 [1] CRAN (R 4.1.0)
 pkgload            1.2.3          2021-10-13 [1] CRAN (R 4.1.0)
 plotly             4.10.0         2021-10-09 [1] CRAN (R 4.1.0)
 prettyunits        1.1.1          2020-01-24 [1] CRAN (R 4.1.0)
 processx           3.5.2          2021-04-30 [1] CRAN (R 4.1.0)
 ps                 1.6.0          2021-02-28 [1] CRAN (R 4.1.0)
 purrr              0.3.4          2020-04-17 [1] CRAN (R 4.1.0)
 R.cache            0.15.0         2021-04-30 [1] CRAN (R 4.1.0)
 R.methodsS3        1.8.1          2020-08-26 [1] CRAN (R 4.1.0)
 R.oo               1.24.0         2020-08-26 [1] CRAN (R 4.1.0)
 R.utils            2.11.0         2021-09-26 [1] CRAN (R 4.1.0)
 R6                 2.5.1          2021-08-19 [1] CRAN (R 4.1.0)
 ragg               1.1.3          2021-06-09 [1] CRAN (R 4.1.0)
 RColorBrewer       1.1-2          2014-12-07 [1] CRAN (R 4.1.0)
 Rcpp               1.0.7          2021-07-07 [1] CRAN (R 4.1.0)
 RCurl              1.98-1.5       2021-09-17 [1] CRAN (R 4.1.0)
 readxl             1.3.1          2019-03-13 [1] CRAN (R 4.1.0)
 rematch2           2.1.2          2020-05-01 [1] CRAN (R 4.1.0)
 remotes            2.4.1          2021-09-29 [1] CRAN (R 4.1.0)
 rio                0.5.27         2021-06-21 [1] CRAN (R 4.1.0)
 rlang              0.4.12         2021-10-18 [1] CRAN (R 4.1.0)
 rmarkdown          2.11           2021-09-14 [1] CRAN (R 4.1.0)
 rprojroot          2.0.2          2020-11-15 [1] CRAN (R 4.1.0)
 rstatix            0.7.0          2021-02-13 [1] CRAN (R 4.1.0)
 rstudioapi         0.13           2020-11-12 [1] CRAN (R 4.1.0)
 rvcheck            0.2.1          2021-10-22 [1] CRAN (R 4.1.0)
 sass               0.4.0          2021-05-12 [1] CRAN (R 4.1.0)
 scales             1.1.1          2020-05-11 [1] CRAN (R 4.1.0)
 sessioninfo        1.1.1          2018-11-05 [1] CRAN (R 4.1.0)
 stringi            1.7.5          2021-10-04 [1] CRAN (R 4.1.0)
 stringr            1.4.0          2019-02-10 [1] CRAN (R 4.1.0)
 styler             1.6.2          2021-09-23 [1] CRAN (R 4.1.0)
 sys                3.4            2020-07-23 [1] CRAN (R 4.1.0)
 systemfonts        1.0.3          2021-10-13 [1] CRAN (R 4.1.0)
 testthat           3.1.0          2021-10-04 [1] CRAN (R 4.1.0)
 textshaping        0.3.6          2021-10-13 [1] CRAN (R 4.1.0)
 tibble             3.1.5          2021-09-30 [1] CRAN (R 4.1.0)
 tidyr              1.1.4          2021-09-27 [1] CRAN (R 4.1.0)
 tidyselect         1.1.1          2021-04-30 [1] CRAN (R 4.1.0)
 usethis            2.1.0          2021-10-16 [1] CRAN (R 4.1.0)
 utf8               1.2.2          2021-07-24 [1] CRAN (R 4.1.0)
 vctrs              0.3.8          2021-04-29 [1] CRAN (R 4.1.0)
 viridisLite        0.4.0          2021-04-13 [1] CRAN (R 4.1.0)
 whisker            0.4            2019-08-28 [1] CRAN (R 4.1.0)
 withr              2.4.2          2021-04-18 [1] CRAN (R 4.1.0)
 xfun               0.27           2021-10-18 [1] CRAN (R 4.1.0)
 xml2               1.3.2          2020-04-23 [1] CRAN (R 4.1.0)
 yaml               2.2.1          2020-02-01 [1] CRAN (R 4.1.0)
 yulab.utils        0.0.4          2021-10-09 [1] CRAN (R 4.1.0)
 zip                2.2.0          2021-05-31 [1] CRAN (R 4.1.0)

[1] /Library/Frameworks/R.framework/Versions/4.1/Resources/library

The output of sessioninfo::session_info() includes relevant GitHub installation information and other details that are missed by sessionInfo().

Advice for Mac OS & Bioc devel `there is no package called ‘RSQLite`

Hello,

Thanks for your GitHub actions workflow, it's been very useful, we've been using it successfully for the last few months.

We've now updated to using the current biocthis action version with Bioc devel and have an issue. Was wondering if you might have any advice?

For Mac OSX we're getting a lot of packages (AnnotationDbi, GO.db, org.Hs.eg.db, genefilter) not installing due to there is no package called ‘RSQLite here.

I haven't worked with R devel before so not sure, but is it because there's no RSQlite r-devel for Mac here https://cran.rstudio.com/web/packages/RSQLite/index.html

If so is there any recommended way to handle that in the action?

[Feature Request] Add 'covr_coverage_type' parameter to biocthis::use_bioc_github_action()

Is the feature request related to a problem?

Currently, the biocthis::use_bioc_github_action() function in the 'biocthis' package calculates coverage using the 'tests' option. This means that code coverage is determined solely based on the package's tests, neglecting other crucial components like vignettes and examples. As a result, users do not have the flexibility to choose a more comprehensive coverage calculation that includes all relevant parts of the package.

Describe the solution

I propose adding a new parameter named 'covr_coverage_type' to the biocthis::use_bioc_github_action() function. This parameter will be of type character(1) and will allow users to specify the desired code coverage type. The possible options for 'covr_coverage_type' would be:

'tests': Calculate coverage based on tests only (current behavior).
'vignettes': Calculate coverage based on vignettes only.
'examples': Calculate coverage based on examples only.
'all': Calculate coverage based on tests, vignettes, and examples.

By introducing this parameter, users will have the flexibility to choose the specific components for which they want to calculate code coverage. The default value for 'covr_coverage_type' will be 'all'.

Describe any alternatives considered

One alternative could be to have separate functions for calculating coverage for each component (e.g., use_bioc_github_action_for_tests(), use_bioc_github_action_for_vignettes(), etc.). However, this approach might lead to code duplication and maintenance overhead. Therefore, a single function with a parameter to control coverage type is a more elegant solution.

Question: BIOCVERSIONNUM environment variable?

Hi Leo,

Thanks for this package, I just set up GHA for plyranges and everything seems to work pretty seamlessly!

I was curious how the environment variable gets set for the windows and macos. On a current PR the jobs seems to be unable to install Bioc because the environment variable is empty.

Context

Provide some context for your bug report or feature request. This could be the:

Any ideas why this didn't work?

More in depth guide for the /dev scripts for making new R/Bioconductor packages

While the scripts in /dev are useful for people interested in making a new package, the code comments are not the most comprehensive. To compliment these scripts, we plan to create a more in depth guide (vignette) which is linked to from the /dev scripts. There we will be able to explain caveats, background, and things to be aware of.

The goal is not to reproduce https://contributions.bioconductor.org/develop-overview.html. The goal is to explain each of the functions used and have a single place for documenting them instead of referring users to different help pages / guides (vignettes) where they can get lost in all the information.

Right now the /dev scripts are useful, but feel a bit like a black box for new users based on my impression from short courses using these scripts.

Recognise both master and main branches

Context

thanks so much for this really helpful package!

I'm trying to use it to get GitHub Actions to work for my Bioc package orthogene using the following:

biocthis::use_bioc_github_action()

GitHub now defaults to calling the 'master' branch the 'main' branch. I manually added the following OR statements (||) throughout, but It would be great to have the function generate this automatically. You can see my edited yaml here.

Example:

...
...
...
- name: Test coverage
        if: (github.ref == 'refs/heads/master' || github.ref == 'refs/heads/main') && env.run_covr == 'true' && runner.os == 'Linux'
        run: |
          covr::codecov()
        shell: Rscript {0}
...
...
...

R session information

Session info ──────────────────────────────────────────────────────────────────
 setting  value                       
 version  R version 4.1.0 (2021-05-18)
 os       macOS Big Sur 11.4          
 system   x86_64, darwin17.0          
 ui       RStudio                     
 language (EN)                        
 collate  en_GB.UTF-8                 
 ctype    en_GB.UTF-8                 
 tz       America/New_York            
 date     2021-10-24Packages ──────────────────────────────────────────────────────────────────────
 package          * version        date       lib source        
 abind              1.4-5          2016-07-21 [1] CRAN (R 4.1.0)
 askpass            1.1            2019-01-13 [1] CRAN (R 4.1.0)
 assertthat         0.2.1          2019-03-21 [1] CRAN (R 4.1.0)
 babelgene          21.4           2021-04-26 [1] CRAN (R 4.1.0)
 backports          1.2.1          2020-12-09 [1] CRAN (R 4.1.0)
 badger             0.1.0          2021-04-21 [1] CRAN (R 4.1.0)
 BiocManager        1.30.16        2021-06-15 [1] CRAN (R 4.1.0)
 BiocStyle        * 2.21.4         2021-10-12 [1] Bioconductor  
 biocthis         * 1.3.8          2021-08-10 [1] Bioconductor  
 bitops             1.0-7          2021-04-24 [1] CRAN (R 4.1.0)
 bookdown           0.24           2021-09-02 [1] CRAN (R 4.1.0)
 broom              0.7.9          2021-07-27 [1] CRAN (R 4.1.0)
 bslib              0.3.1          2021-10-06 [1] CRAN (R 4.1.0)
 cachem             1.0.6          2021-08-19 [1] CRAN (R 4.1.0)
 callr              3.7.0          2021-04-20 [1] CRAN (R 4.1.0)
 car                3.0-11         2021-06-27 [1] CRAN (R 4.1.0)
 carData            3.0-4          2020-05-22 [1] CRAN (R 4.1.0)
 cellranger         1.1.0          2016-07-27 [1] CRAN (R 4.1.0)
 cli                3.0.1          2021-07-17 [1] CRAN (R 4.1.0)
 colorspace         2.0-2          2021-06-24 [1] CRAN (R 4.1.0)
 crayon             1.4.1          2021-02-08 [1] CRAN (R 4.1.0)
 credentials        1.3.1          2021-07-25 [1] CRAN (R 4.1.0)
 curl               4.3.2          2021-06-23 [1] CRAN (R 4.1.0)
 data.table         1.14.2         2021-09-27 [1] CRAN (R 4.1.0)
 DBI                1.1.1          2021-01-15 [1] CRAN (R 4.1.0)
 desc               1.4.0          2021-09-28 [1] CRAN (R 4.1.0)
 devtools           2.4.2          2021-06-07 [1] CRAN (R 4.1.0)
 digest             0.6.28         2021-09-23 [1] CRAN (R 4.1.0)
 dlstats            0.1.4          2021-04-23 [1] CRAN (R 4.1.0)
 downlit            0.2.1          2020-11-04 [1] CRAN (R 4.1.0)
 dplyr              1.0.7          2021-06-18 [1] CRAN (R 4.1.0)
 ellipsis           0.3.2          2021-04-29 [1] CRAN (R 4.1.0)
 evaluate           0.14           2019-05-28 [1] CRAN (R 4.1.0)
 fansi              0.5.0          2021-05-25 [1] CRAN (R 4.1.0)
 farver             2.1.0          2021-02-28 [1] CRAN (R 4.1.0)
 fastmap            1.1.0          2021-01-25 [1] CRAN (R 4.1.0)
 forcats            0.5.1          2021-01-27 [1] CRAN (R 4.1.0)
 foreign            0.8-81         2020-12-22 [1] CRAN (R 4.1.0)
 fs                 1.5.0          2020-07-31 [1] CRAN (R 4.1.0)
 generics           0.1.0          2020-10-31 [1] CRAN (R 4.1.0)
 GenomeInfoDbData   1.2.7          2021-10-20 [1] Bioconductor  
 gert               1.4.1          2021-09-16 [1] CRAN (R 4.1.0)
 ggplot2            3.3.5          2021-06-25 [1] CRAN (R 4.1.0)
 ggpubr             0.4.0          2020-06-27 [1] CRAN (R 4.1.0)
 ggsignif           0.6.3          2021-09-09 [1] CRAN (R 4.1.0)
 gh                 1.3.0          2021-04-30 [1] CRAN (R 4.1.0)
 gitcreds           0.1.1          2020-12-04 [1] CRAN (R 4.1.0)
 glue               1.4.2          2020-08-27 [1] CRAN (R 4.1.0)
 gprofiler2         0.2.1          2021-08-23 [1] CRAN (R 4.1.0)
 grr                0.9.5          2016-08-26 [1] CRAN (R 4.1.0)
 gtable             0.3.0          2019-03-25 [1] CRAN (R 4.1.0)
 haven              2.4.3          2021-08-04 [1] CRAN (R 4.1.0)
 hms                1.1.1          2021-09-26 [1] CRAN (R 4.1.0)
 homologene         1.4.68.19.3.27 2019-03-28 [1] CRAN (R 4.1.0)
 htmltools          0.5.2          2021-08-25 [1] CRAN (R 4.1.0)
 htmlwidgets        1.5.4          2021-09-08 [1] CRAN (R 4.1.0)
 httr               1.4.2          2020-07-20 [1] CRAN (R 4.1.0)
 jquerylib          0.1.4          2021-04-26 [1] CRAN (R 4.1.0)
 jsonlite           1.7.2          2020-12-09 [1] CRAN (R 4.1.0)
 knitr              1.36           2021-09-29 [1] CRAN (R 4.1.0)
 labeling           0.4.2          2020-10-20 [1] CRAN (R 4.1.0)
 lattice            0.20-45        2021-09-22 [1] CRAN (R 4.1.0)
 lazyeval           0.2.2          2019-03-15 [1] CRAN (R 4.1.0)
 lifecycle          1.0.1          2021-09-24 [1] CRAN (R 4.1.0)
 magrittr           2.0.1          2020-11-17 [1] CRAN (R 4.1.0)
 Matrix             1.3-4          2021-06-01 [1] CRAN (R 4.1.0)
 Matrix.utils       0.9.8          2020-02-26 [1] CRAN (R 4.1.0)
 memoise            2.0.0          2021-01-26 [1] CRAN (R 4.1.0)
 munsell            0.5.0          2018-06-12 [1] CRAN (R 4.1.0)
 openssl            1.4.5          2021-09-02 [1] CRAN (R 4.1.0)
 openxlsx           4.2.4          2021-06-16 [1] CRAN (R 4.1.0)
 orthogene        * 0.99.8         2021-10-21 [1] Bioconductor  
 patchwork          1.1.1          2020-12-17 [1] CRAN (R 4.1.0)
 pillar             1.6.4          2021-10-18 [1] CRAN (R 4.1.0)
 pkgbuild           1.2.0          2020-12-15 [1] CRAN (R 4.1.0)
 pkgconfig          2.0.3          2019-09-22 [1] CRAN (R 4.1.0)
 pkgdown            1.6.1          2020-09-12 [1] CRAN (R 4.1.0)
 pkgload            1.2.3          2021-10-13 [1] CRAN (R 4.1.0)
 plotly             4.10.0         2021-10-09 [1] CRAN (R 4.1.0)
 prettyunits        1.1.1          2020-01-24 [1] CRAN (R 4.1.0)
 processx           3.5.2          2021-04-30 [1] CRAN (R 4.1.0)
 ps                 1.6.0          2021-02-28 [1] CRAN (R 4.1.0)
 purrr              0.3.4          2020-04-17 [1] CRAN (R 4.1.0)
 R.cache            0.15.0         2021-04-30 [1] CRAN (R 4.1.0)
 R.methodsS3        1.8.1          2020-08-26 [1] CRAN (R 4.1.0)
 R.oo               1.24.0         2020-08-26 [1] CRAN (R 4.1.0)
 R.utils            2.11.0         2021-09-26 [1] CRAN (R 4.1.0)
 R6                 2.5.1          2021-08-19 [1] CRAN (R 4.1.0)
 ragg               1.1.3          2021-06-09 [1] CRAN (R 4.1.0)
 RColorBrewer       1.1-2          2014-12-07 [1] CRAN (R 4.1.0)
 Rcpp               1.0.7          2021-07-07 [1] CRAN (R 4.1.0)
 RCurl              1.98-1.5       2021-09-17 [1] CRAN (R 4.1.0)
 readxl             1.3.1          2019-03-13 [1] CRAN (R 4.1.0)
 rematch2           2.1.2          2020-05-01 [1] CRAN (R 4.1.0)
 remotes            2.4.1          2021-09-29 [1] CRAN (R 4.1.0)
 rio                0.5.27         2021-06-21 [1] CRAN (R 4.1.0)
 rlang              0.4.12         2021-10-18 [1] CRAN (R 4.1.0)
 rmarkdown          2.11           2021-09-14 [1] CRAN (R 4.1.0)
 rprojroot          2.0.2          2020-11-15 [1] CRAN (R 4.1.0)
 rstatix            0.7.0          2021-02-13 [1] CRAN (R 4.1.0)
 rstudioapi         0.13           2020-11-12 [1] CRAN (R 4.1.0)
 rvcheck            0.2.1          2021-10-22 [1] CRAN (R 4.1.0)
 sass               0.4.0          2021-05-12 [1] CRAN (R 4.1.0)
 scales             1.1.1          2020-05-11 [1] CRAN (R 4.1.0)
 sessioninfo        1.1.1          2018-11-05 [1] CRAN (R 4.1.0)
 stringi            1.7.5          2021-10-04 [1] CRAN (R 4.1.0)
 stringr            1.4.0          2019-02-10 [1] CRAN (R 4.1.0)
 styler             1.6.2          2021-09-23 [1] CRAN (R 4.1.0)
 sys                3.4            2020-07-23 [1] CRAN (R 4.1.0)
 systemfonts        1.0.3          2021-10-13 [1] CRAN (R 4.1.0)
 testthat           3.1.0          2021-10-04 [1] CRAN (R 4.1.0)
 textshaping        0.3.6          2021-10-13 [1] CRAN (R 4.1.0)
 tibble             3.1.5          2021-09-30 [1] CRAN (R 4.1.0)
 tidyr              1.1.4          2021-09-27 [1] CRAN (R 4.1.0)
 tidyselect         1.1.1          2021-04-30 [1] CRAN (R 4.1.0)
 usethis            2.1.0          2021-10-16 [1] CRAN (R 4.1.0)
 utf8               1.2.2          2021-07-24 [1] CRAN (R 4.1.0)
 vctrs              0.3.8          2021-04-29 [1] CRAN (R 4.1.0)
 viridisLite        0.4.0          2021-04-13 [1] CRAN (R 4.1.0)
 whisker            0.4            2019-08-28 [1] CRAN (R 4.1.0)
 withr              2.4.2          2021-04-18 [1] CRAN (R 4.1.0)
 xfun               0.27           2021-10-18 [1] CRAN (R 4.1.0)
 xml2               1.3.2          2020-04-23 [1] CRAN (R 4.1.0)
 yaml               2.2.1          2020-02-01 [1] CRAN (R 4.1.0)
 yulab.utils        0.0.4          2021-10-09 [1] CRAN (R 4.1.0)
 zip                2.2.0          2021-05-31 [1] CRAN (R 4.1.0)

[1] /Library/Frameworks/R.framework/Versions/4.1/Resources/library

[BUG] Deploy action using JamesIves/github-pages-deploy-action

Hi @lcolladotor , I'm not completely sure if this is the right place for this, but I found out there have been some changes to GitHub permissions / authentication affecting the deploy action with JamesIves/github-pages-deploy-action that we had in the OSTA GitHub Actions workflow.

Specifically, the line

uses: JamesIves/github-pages-deploy-action@releases/v3

needs to be updated to v4:

uses: JamesIves/github-pages-deploy-action@releases/v4

to use the latest version where @JamesIves has updated this.

I suspect the fix is in the updated handling of permissions in this release, although I'm not completely sure: https://github.com/JamesIves/github-pages-deploy-action/releases/tag/v4.3.3

Then, to use v4, some of the syntax for the action has also changed, specifically: with: token (lower-case token instead of GITHUB_TOKEN), and also lower-case for with: branch and with: folder. These changes are described in the release notes / migration guide here: JamesIves/github-pages-deploy-action#592

So now my Deploy action looks like this, which seems to be working:

      - name: Deploy 🚀
        if: github.ref == 'refs/heads/main' && runner.os == 'Linux'
        uses: JamesIves/github-pages-deploy-action@releases/v4
        with:
          token: ${{ secrets.GITHUB_TOKEN }}
          branch: gh-pages # The branch the action should deploy to.
          folder: _book # The folder the action should deploy.

vs. the old version that no longer worked:

      - name: Deploy 🚀
        if: github.ref == 'refs/heads/main' && runner.os == 'Linux'
        uses: JamesIves/github-pages-deploy-action@releases/v3
        with:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
          BRANCH: gh-pages # The branch the action should deploy to.
          FOLDER: _book # The folder the action should deploy.

Here is also the error I was getting with v3 previously:

Screen Shot 2022-07-06 at 01 40 02

Also tagging @stephaniehicks for info.

Thank you!!

[BUG] Default RSPM causes workflow to fail.

Describe the bug

The workflow generated using biocthis::use_bioc_github_action.R can fail during the Install Linux system dependencies step due to the default RSPM (https://packagemanager.rstudio.com/cran/__linux__/jammy/latest) is un available right now.

Is it possible to have a more robust source of RSPM as the default?

Provide a minimally reproducible example (reprex)

Sorry, the workflow is created as a private repo, and hence can not share with you. But I am attaching a screen print or the error page.

Screenshot 2023-05-24 at 10 26 12 AM

Here is a screen print for the default RSPM unavailable.
Screenshot 2023-05-24 at 10 26 40 AM

Expected behavior

The workflow will complete successfully.

R Session Information

The workflow is created using biocthis v1.11.1

Additional Context

The default RSPM is specified in this line

- { os: ubuntu-latest, r: '{{rvernum}}', bioc: '{{biocvernum}}', cont: "bioconductor/bioconductor_docker:{{dockerversion}}", rspm: "https://packagemanager.rstudio.com/cran/__linux__/jammy/latest" }

Is the package installed via bioconda?

N/A

Issues with installing Bioc package dependencies in GHA workflow

Hi @lcolladotor , I'm having some difficulties with installation of Bioc package dependencies in the Install dependencies pass 1 / 2 steps in the biocthis::use_bioc_github_action() workflows.

It seems right now the AnVIL package binaries are not yet available for the latest devel version of Bioc (3.18). This is in principle ok, since then the workflow would instead default to installing packages from source directly from Bioc, using the line:

remotes::install_local(dependencies = TRUE, repos = gha_repos, build_vignettes = FALSE, upgrade = TRUE)

or

remotes::install_local(dependencies = TRUE, repos = BiocManager::repositories(), build_vignettes = TRUE, upgrade = TRUE, force = TRUE)

in the Install dependencies pass 1 or Install dependencies pass 2 workflow sections respectively.

However, it seems that right now the GHA builders also cannot access the Bioc repositories directly in this way. I checked that the gha_repos and BiocManager::repositories() variables are defined correctly for Bioc 3.18, and this all looks ok. So I'm not sure why it can't find / install these dependency packages from source directly from Bioc (version 3.18). Do you have any ideas?

Here is an example workflow run where this failed (for SpatialExperiment; see the output for Install dependencies pass 2): https://github.com/drighelli/SpatialExperiment/actions/runs/4893972074/jobs/8737567525

biocthis::use_bioc_github_action - Error in readRDS(dest) : error reading from connection

I'm trying to use the biocthis::use_bioc_github_action() function to set up a BioC-style GitHub Actions workflow for the preciseTAD package. The package builds on ubuntu but fails on macOS and Windows. The error happens at the "Set BiocVersion" stage, "Error in readRDS(dest) : error reading from connection". Example. Any advice? Since this happens on GitHub side, not reporting here, but can move to Bioc support.

Make current documentation more verbose

Several functions in biocthis are sparsely documented and refer users to documentation from other packages such as usethis. This is also noticeable on the main user guide at https://lcolladotor.github.io/biocthis/articles/biocthis.html.

We plan to expand the documentation and be more verbose such that users will have understand biocthis functions without having to go to other sources of documentation. Of course, we will still refer to external sources of documentation such that users can dive into further details if they want to do so. But the main idea should still be documented in biocthis.

[BUG] pkgdown site build fails within Docker containers

pkgdown site step runs into error when using a Docker container.

Issue

This happens because of the recent changes to git regarding security.

Supposedly this has been fixed in regards to some GH actions, but apparently not all. The suggested workaround doesn't work as-is and needs some adjusting:

Screenshot 2022-04-26 at 11 42 50

Solution

I've implement this in my adapted version of Biocthis's GHA workflow, seen here. In the case of my echodata R package, this solution seems to work well.

This involves an extra GHA step beforehand that extracts the R package name from the DESCRIPTION file. This is more robust than assuming that the repository has an identical name as the package itself, which is sometimes not the case due to differences in capitalization or use of "." vs "_". You can see this step here:
https://github.com/RajLabMSSM/echodata/blob/3d4544341de35f9a43fec661671d87515cb7be42/.github/workflows/check-bioc-docker.yml#L325

Other notes

Doesn't seem like Biocthis's GHA checks for itself are catching this error; do you run any GHA within a Docker container? If not, this would be quite helpful to have as it would ensure your workflow templates are running as expected both within and outside of containers.

Best,
Brian

Remove `use_` from exported functions

Many thanks for developing this package! I've been looking for a while for a Bioconductor styler formatter.

I think it would be easier to use if instead of use_bioc_support() would be only bioc_support() and alike. It won't conflict with usethis and will be shorter to read/understand. Alternatively it could use add_, add_bioc_support, add_issue_template`...

Also if you could explain better the differences between the usethis templates and this templates would be easier to adopt it (although having it recommended on the r-lib/actions will surely help).

[FR] Simplify version checking mechanism

Hi Leo, @lcolladotor

I think we can make the bioc_check.yaml file more simple since we are invoking the function
from R to generate the file. We can use the R instance to dictate the version of the docker images.

For example, if the developer runs biocthis::use_bioc_github_action() with a Bioc-devel set-up, the generated
yaml file should use bioconductor/bioconductor_docker:devel.
This will remove the need to create a step to verify the appropriate R version.

https://github.com/lcolladotor/biocthis/blob/master/actions/check-bioc.yml

Also, I think this file should be under some folder like inst/templates/check-bioc.yml.
The code can then use glue or whiskers or whatever package people use nowadays to replace
the Bioconductor version in the yaml file after doing system.file(..., package = "biocthis")

(Related to #8)

Best,
Marcel

Add multilingual support for the dev scripts

The 4 /dev scripts generated by https://lcolladotor.github.io/biocthis/reference/use_bioc_pkg_templates.html currently only have comments in English. It should be feasible using templates to add multilingual support for these scripts. We will first focus on Spanish given Leonardo's access to students in LCG-UNAM and LCG-EJ-UNAM in Mexico as well as through CDSB.

These scripts are the main priority as they provide the basic structure for guiding R users into making their first R/Bioconductor packages. While the extended documentation from #45 will only be available in English, having the initial comments available in Spanish (and possibly other languages) will help with one of the main missions of biocthis: help turn R users into R package developers. That is, lower the entry barrier for new R/Bioconductor developers.

[BUG] CSS template for pkgdown website

Context

Caveat: new "non-standard" directory, see #21

https://community-bioc.slack.com/archives/C35G93GJH/p1661497933425919

Hi, everyone. Does anyone have examples of pretty pkgdown documentation websites for Bioc packages?
All of my Bioc packages have documentation websites that I create and automatically update thanks to the GHA workflow provided by {biocthis}. However, I think the default UI could be better.
I am looking for inspirational examples and suggestions (e.g., themes, fonts, etc). An example of a documentation website I find pretty is the pkgdown website: https://pkgdown.r-lib.org/

Code

https://gist.github.com/kevinrue/4e0de8bc0635009e7e6bc3ddfe7ddaa9

Store those contents in pkgdown/extra.css, in the repository of an R/Bioconductor package on GitHub.

Small reproducible example

R session information

Remember to include your full R session information.

options(width = 120)
sessioninfo::session_info()

The output of sessioninfo::session_info() includes relevant GitHub installation information and other details that are missed by sessionInfo().

[Feature Request] Add "shiny_support" parameter to the use_bioc_github_action function

Is the feature request related to a problem?

Currently, the use_bioc_github_action function in the biocthis package simplifies the creation of Dockerfiles for Bioconductor repositories. However, this function does not support generating Dockerfiles specifically tailored for Shiny applications.

Describe the solution

I request the addition of a new parameter called "shiny_support" (or a similar name) to the use_bioc_github_action function in the biocthis package. This parameter should be optional, with a default value of FALSE. When set to TRUE, the function should generate a Dockerfile that is specifically adapted for Shiny applications, based on the bioconductor/shiny:dev image. This would greatly simplify the Dockerfile creation process for Shiny applications in Bioconductor repositories.

Describe any alternatives considered

As an alternative, users can manually create a Dockerfile for their Shiny applications based on the bioconductor/shiny:dev image. However, this requires additional knowledge and development time. Adding the "shiny_support" parameter to the use_bioc_github_action function would streamline this process and be more convenient for users aiming to deploy Shiny applications in Bioconductor.

Additional context

NA

Thank you very much for considering the feature request. If you find it a valuable addition, I am willing to prepare a Pull Request (PR) with the proposed changes.

[BUG] GitHub Action fails installing Linux dependencies

Not sure this is the right place to file this, but I figured that others who use this feature might search here for a solution.

Context

I configured GitHub Actions with biocthis::use_bioc_github_action() on a prospective Bioconductor package I am working on. I had an example in a function's documentation that used the GenomicFeatures::makeTxDbFromUCSC() method, which internally uses the RMariaDB package.

Code

Because of the RMariaDB dependency, I included

DESCRIPTION

Suggests: RMariaDB

When running the Linux version of the GitHub action, the code

remotes::system_requirements("ubuntu", "20.04")

subsequently includes libmysqlclient-dev and mysql-server.

GitHub Action Fails

The GitHub Action fails to install the mysql-server dependency on the Linux image (see error in log).

The specific complaint appears related to configuring mysql-server:

dpkg: error processing package mysql-server-8.0 (--configure):
  installed mysql-server-8.0 package post-installation script subprocess returned error exit status 1
dpkg: dependency problems prevent configuration of mysql-server:
  mysql-server depends on mysql-server-8.0; however:
    Package mysql-server-8.0 is not configured yet.
dpkg: error processing package mysql-server (--configure):
  dependency problems - leaving unconfigured

Workaround

Avoid dependencies that require mysql-server. That may not be possible for some, but fortunately in my case I could write a different example that avoided the RMariaDB dependency.

Discussion

I expect properly solving this would involve making the dependencies installation step more robust. That is, one can't simply rely on throwing them at apt-get install -y and expect them to work. However, this might involve a lot edge case handling (e.g., catching particular packages) which I don't think could be justified unless there was demand from end users.

Implement unit tests

We will follow the recommendations from r-lib/usethis#1856 and implement unit tests specific to biocthis for all functions including those that emulate the functionality from usethis but for Bioconductor-friendly templates.

[FR] Improve `check-bioc.yml` action

Hello!

I really like the work you put into creating check-bioc.yml and I used it as the basis to create my own GitHub Actions. Thank you for this amazing resource! However, I think the file is a bit complex to be understood and modified by novice users.

Here I present you some suggestions to improve on it. You can see an example of a GitHub Action of mine in production with the suggestions that follow.

Please let me know what do you think! Again, thank you for your amazing work :)

Branches to run on

First of all, I think all branches should be run on GitHubActions (with possible exceptions like github-pages). As an R/Bioconductor package developer, I have development branches to which I always want to run in GitHub Actions. So, instead of:

on:
push:
branches:
- master
- 'RELEASE_*'
pull_request:
branches:
- master
- 'RELEASE_*'

We could have:

on:
  push:
    branches-ignore:
      - gh-pages
  pull_request:
    branches-ignore:
      - gh-pages

Windows, Mac and Linux builds

I would argue that check-bioc.yml's complexity narrows down to code redundancy largely due to testing the Linux build in a Docker image separately from Windows and Mac. Also, this also means that we have to wait for the Linux version to finish testing before running the build in Windows and Mac.

As such, maybe it would be best to remove the Docker part (an alternative would be to test Windows/Mac in Docker images, but GitHub Actions does not support this as far as I know).

Build in both bioc-release and bioc-devel

I always like to know if there are issues with the code I am writing in both the release and development version of Bioconductor. This way, we know if something is going to break in a specific version of Bioconductor beforehand. My matrix configuration is like so:

matrix:
        config:
          - {os: windows-latest, biocversion: "release"}
          - {os: windows-latest, biocversion: "devel"}
          - {os: macOS-latest,   biocversion: "release"}
          - {os: macOS-latest,   biocversion: "devel"}
          - {os: ubuntu-latest,  biocversion: "release"}
          - {os: ubuntu-latest,  biocversion: "devel"}

To find the R version related with each version of Bioconductor, we can use bash:

      - name: Find R version to run
        run: |
          config="https://bioconductor.org/config.yaml"
          rversion=$(curl ${config} | \
            grep r_version_associated_with_${BIOCVERSION} | \
            grep -o "[0-9]*\.[0-9]*\.[0-9]*")
          echo "Using R ${rversion}..."
          echo "::set-output name=rversion::${rversion}"
        shell:
          bash {0}

Ubuntu versions

When defining the Ubuntu version to test on, why is RSPM also defined?

# - {os: ubuntu-16.04, rspm: "https://packagemanager.rstudio.com/cran/__linux__/xenial/latest"}

Although this is fine for specific versions of Ubuntu, a novice may simply update the version without understanding what the RSPM is and get confused with potential failures afterwards. I would suggest to either remove the RSPM variable or to add other Ubuntu versions with their respective RSPM values.

Also, I would suggest to put here - {os: ubuntu-latest}.

[BUG] Add non standard directories and files to a .gitignore

We try to have the minimum basic package structure. It seems like in creation at least a dev folder with various templates/functions gets created. This should not be in a cloned copy of the repo and users would be asked to remove / .gitignore when submitting to Bioconductor. When these directories get created can it automatically be added to a .gitignore for a user. I'm not sure if there are other directories and files but noticed it in a recent submission.

Create video guide for biocthis

We want to create a collection of short videos (likely shared on YouTube) demonstrating how to use the different features in biocthis. We will collate these videos into a new user guide (a new vignette) and link to it as part of the default documentation for new web applications.

Some of these videos will be inspired by actual use cases we hear from our users using their own open source R/Bioconductor packages.

This will be an evolving process as new videos will have to be made to reflect new features added to biocthis.

GitHub Actions error: invalid graphics state

I am just getting started with GitHub Actions. I have a repo that works fine with Travis and the R-CMD-check workflow from usethis::use_github_actions(). The only modification I made is adding r-lib/actions/setup-tinytex because TeX was required. I also tried biocthis::use_bioc_github_action() and it keeps failing at the "Deploy package" stage with error "invalid graphics state". Any idea why that may be happening? The code is identical to what is in Bioconductor, so it should be valid I assume.

You can see the full log here: https://github.com/igordot/copynumber/runs/880048326

[BUG] Github action fails when building vignettes requering LaTeX

I have created a Github action using use_bioc_github_action. This package includes Sweave vignette sources which are build to pdf files using knitr. More specifically, the discussed package is this one: https://github.com/AlmaasLab/micInt. The actions for all three platforms fails due to lack of pdf building utilities on the machines as this extract shows:
E> --- re-building ‘ccrepe.Rnw’ using knitr E> Warning in has_utility("pdfcrop") : E> pdfcrop not installed or not in PATH E> Warning in has_utility("ghostscript") : not installed or not in PATH E> Warning in system2(command, args, env = env, stdout = outfile, stderr = errfile, : E> error in running command E> Warning in system2(command, args, env = env, stdout = outfile, stderr = errfile, : E> error in running command E> Error: processing vignette 'ccrepe.Rnw' failed with diagnostics: E> Running 'texi2dvi' on 'ccrepe.tex' failed. E> Messages: E> sh: 1: /usr/bin/texi2dvi: not found E> --- failed re-building ‘ccrepe.Rnw’

Hence, for the actions to run properly, pdfcrop, ghostscript, a LaTeX distribution (and other packages ?) have to be added as dependencies in the action. I know that for packages with very specific system dependencies the check-bioc.yml must be adopted in each case. However, this building vignette process is a rather general one and many packages would benefit from updating the upstream check-bioc.yml.

Design a 2 day (max 3) workshop / short course

Similar to LieberInstitute/spatialLIBD#68

Develop a long format workshop to teach in 2 days (max 3) the basics of R/Bioconductor package development. This course would explain how to use https://lcolladotor.github.io/biocthis/reference/use_bioc_pkg_templates.html, go over the guide at #45, and explain some of the main concepts from external sources such as https://contributions.bioconductor.org/develop-overview.html and https://r-pkgs.org/. It would also explain what are GitHub actions and the details behind https://lcolladotor.github.io/biocthis/reference/use_bioc_github_action.html. It would also explain the basics of R functions, handling errors, and making your functions more user-friendly.

We might want to learn about the format used by https://carpentries.org/index.html for short courses prior to designing this short course / long workshop. The target audience would be R/Bioconductor users.

[BUG] Vignette building on macOS fails without helpful logs

Context

I’m using the biocthis GH action basically unchanged, and if fails on macOS while trying to build the vignettes, with nothing but the unhelpful and extremely terse message

Error: processing vignette 'Gene-Relevance.Rmd' failed with diagnostics:
polygon edge not found

Since the workflow you generate is extremely complicated, and the error log isn’t helpful, I can’t debug this.

Workflow definition: https://github.com/theislab/destiny/blob/91db4509ce9daaedbcb99d9bc8f5b5e5f63247f2/.github/workflows/check-bioc.yml

Code

IDK what --no-vignettes in your workflow is supposed to mean, as rcmdcheck::rcmdcheck() clearly still tries to build the vignettes.

Unfortunately it does so without showing any warnings or tracebacks.

Where are the vignettes supposed to be built? How do I see the full logs when building them fails?

options(crayon.enabled = TRUE)
rcmdcheck::rcmdcheck(
    args = c("--no-manual", "--no-vignettes", "--timings"),
    build_args = c("--no-manual", "--keep-empty-dirs", "--no-resave-data"),
    error_on = "warning",
    check_dir = "check"
)
── R CMD build ─────────────────────────────────────────────────────────────────
* checking for file ‘.../DESCRIPTION’ ... OK
* preparing ‘destiny’:
* checking DESCRIPTION meta-information ... OK
* cleaning src
* installing the package to build vignettes
* creating vignettes ... ERROR
Error: --- re-building ‘Diffusion-Map-recap.Rmd’ using rmarkdown
--- finished re-building ‘Diffusion-Map-recap.Rmd’
--- re-building ‘Diffusion-Maps.Rmd’ using rmarkdown
--- finished re-building ‘Diffusion-Maps.Rmd’
--- re-building ‘DPT.Rmd’ using rmarkdown
--- finished re-building ‘DPT.Rmd’
--- re-building ‘Gene-Relevance.Rmd’ using rmarkdown
Quitting from lines 119-121 (Gene-Relevance.Rmd) 
Error: Error: processing vignette 'Gene-Relevance.Rmd' failed with diagnostics:
polygon edge not found
--- failed re-building ‘Gene-Relevance.Rmd’
--- re-building ‘Global-Sigma.Rmd’ using rmarkdown
Quitting from lines 38-48 (Global-Sigma.Rmd) 
Error: Error: processing vignette 'Global-Sigma.Rmd' failed with diagnostics:
polygon edge not found
--- failed re-building ‘Global-Sigma.Rmd’
--- re-building ‘tidyverse.Rmd’ using rmarkdown
Quitting from lines 66-68 (tidyverse.Rmd) 
Error: Error: processing vignette 'tidyverse.Rmd' failed with diagnostics:
polygon edge not found
--- failed re-building ‘tidyverse.Rmd’
SUMMARY: processing the following files failed:
  ‘Gene-Relevance.Rmd’ ‘Global-Sigma.Rmd’ ‘tidyverse.Rmd’
Error: Error: Vignette re-building failed.
Execution halted
Error: Error in proc$get_built_file() : Build process failed
Calls: <Anonymous> ... build_package -> with_envvar -> force -> <Anonymous>
Execution halted
Error: Process completed with exit code 1.

Small reproducible example

I’ll make one once you helped me get a proper log from the vignette building process.

R session information

Session info
─ Session info ───────────────────────────────────────────────────────────────────────────────────
 setting  value
 version  R version 4.1.2 (2021-11-01)
 os       Ubuntu 20.04.3 LTS
 system   x86_64, linux-gnu
 ui       X11
 language (EN)
 collate  en_US.UTF-8
 ctype    en_US.UTF-8
 tz       UTC
 date     2022-01-20
 pandoc   2.14.0.3 @ /usr/local/bin/pandoc

─ Packages ───────────────────────────────────────────────────────────────────────────────────────
 package                * version    date (UTC) lib source
 abind                    1.4-5      2016-07-21 [1] RSPM (R 4.1.0)
 AnnotationDbi            1.56.2     2021-11-09 [1] Bioconductor
 AnnotationFilter         1.18.0     2021-10-26 [1] Bioconductor
 AnnotationHub            3.2.0      2021-10-26 [1] Bioconductor
 AnVIL                    1.6.2      2021-12-26 [2] Bioconductor
 askpass                  1.1        2019-01-13 [2] RSPM (R 4.1.0)
 assertthat               0.2.1      2019-03-21 [1] RSPM (R 4.1.0)
 backports                1.4.1      2021-12-13 [1] RSPM (R 4.1.0)
 base                   * 4.1.2      2021-11-01 [3] local
 base64enc                0.1-3      2015-07-28 [1] RSPM (R 4.1.0)
 beachmat                 2.10.0     2021-10-26 [1] Bioconductor
 BH                       1.78.0-0   2021-12-15 [1] RSPM (R 4.1.0)
 Biobase                  2.54.0     2021-10-26 [1] Bioconductor
 BiocCheck                1.30.0     2021-10-26 [1] Bioconductor
 BiocFileCache            2.2.0      2021-10-26 [1] Bioconductor
 BiocGenerics             0.40.0     2021-10-26 [1] Bioconductor
 BiocIO                   1.4.0      2021-10-26 [1] Bioconductor
 BiocManager              1.30.16    2021-06-15 [2] CRAN (R 4.1.2)
 BiocNeighbors            1.12.0     2021-10-26 [1] Bioconductor
 BiocParallel             1.28.3     2021-12-09 [1] Bioconductor
 BiocSingular             1.10.0     2021-10-26 [1] Bioconductor
 BiocVersion              3.14.0     2021-05-19 [2] Bioconductor
 biocViews                1.62.1     2021-11-02 [1] Bioconductor
 biomaRt                  2.50.2     2022-01-13 [1] Bioconductor
 Biostrings               2.62.0     2021-10-26 [1] Bioconductor
 bit                      4.0.4      2020-08-04 [1] RSPM (R 4.1.0)
 bit64                    4.0.5      2020-08-30 [1] RSPM (R 4.1.0)
 bitops                   1.0-7      2021-04-24 [1] RSPM (R 4.1.0)
 blob                     1.2.2      2021-07-23 [1] RSPM (R 4.1.0)
 bluster                  1.4.0      2021-10-26 [1] Bioconductor
 boot                     1.3-28     2021-05-03 [3] CRAN (R 4.1.2)
 brew                     1.0-6      2011-04-13 [2] RSPM (R 4.1.0)
 brio                     1.1.3      2021-11-30 [2] RSPM (R 4.1.0)
 broom                    0.7.11     2022-01-03 [1] RSPM (R 4.1.0)
 bslib                    0.3.1      2021-10-06 [1] RSPM (R 4.1.0)
 cachem                   1.0.6      2021-08-19 [2] RSPM (R 4.1.0)
 callr                    3.7.0      2021-04-20 [2] RSPM (R 4.1.0)
 car                      3.0-12     2021-11-06 [1] RSPM (R 4.1.0)
 carData                  3.0-5      2022-01-06 [1] RSPM (R 4.1.0)
 caret                    6.0-90     2021-10-09 [1] RSPM (R 4.1.0)
 cellranger               1.1.0      2016-07-27 [1] RSPM (R 4.1.0)
 class                    7.3-20     2022-01-13 [3] RSPM (R 4.1.0)
 cli                      3.1.0      2021-10-27 [2] RSPM (R 4.1.0)
 clipr                    0.7.1      2020-10-08 [2] RSPM (R 4.1.0)
 cluster                  2.1.2      2021-04-17 [3] CRAN (R 4.1.2)
 codetools                0.2-18     2020-11-04 [3] CRAN (R 4.1.2)
 colorspace               2.0-2      2021-06-24 [1] RSPM (R 4.1.0)
 commonmark               1.7        2018-12-01 [2] RSPM (R 4.1.0)
 compiler                 4.1.2      2021-11-01 [3] local
 conflicted               1.1.0      2021-11-26 [1] RSPM (R 4.1.0)
 conquer                  1.2.1      2021-11-01 [1] RSPM (R 4.1.0)
 cowplot                  1.1.1      2020-12-30 [1] RSPM (R 4.1.0)
 cpp11                    0.4.2      2021-11-30 [2] RSPM (R 4.1.0)
 crayon                   1.4.2      2021-10-29 [2] RSPM (R 4.1.0)
 credentials              1.3.2      2021-11-29 [2] RSPM (R 4.1.0)
 crosstalk                1.2.0      2021-11-04 [1] RSPM (R 4.1.0)
 curl                     4.3.2      2021-06-23 [2] RSPM (R 4.1.0)
 data.table               1.14.2     2021-09-27 [1] RSPM (R 4.1.0)
 datasets               * 4.1.2      2021-11-01 [3] local
 DBI                      1.1.2      2021-12-20 [1] RSPM (R 4.1.0)
 dbplyr                   2.1.1      2021-04-06 [1] RSPM (R 4.1.0)
 DelayedArray             0.20.0     2021-10-26 [1] Bioconductor
 DelayedMatrixStats       1.16.0     2021-10-26 [1] Bioconductor
 DEoptimR                 1.0-10     2022-01-03 [1] RSPM (R 4.1.0)
 desc                     1.4.0      2021-09-28 [2] RSPM (R 4.1.0)
 destiny                  3.8.0      2022-01-20 [1] local (/__w/destiny/destiny)
 devtools                 2.4.3      2021-11-30 [2] RSPM (R 4.1.0)
 diffobj                  0.3.5      2021-10-05 [2] RSPM (R 4.1.0)
 digest                   0.6.29     2021-12-01 [2] RSPM (R 4.1.0)
 docopt                   0.7.1      2020-06-24 [2] RSPM (R 4.1.2)
 dplyr                    1.0.7      2021-06-18 [2] RSPM (R 4.1.0)
 dqrng                    0.3.0      2021-05-01 [1] RSPM (R 4.1.0)
 DT                       0.20       2021-11-15 [1] RSPM (R 4.1.0)
 dtplyr                   1.2.0      2021-12-05 [1] RSPM (R 4.1.0)
 e1071                    1.7-9      2021-09-16 [1] RSPM (R 4.1.0)
 edgeR                    3.36.0     2021-10-26 [1] Bioconductor
 ellipsis                 0.3.2      2021-04-29 [2] RSPM (R 4.1.0)
 ensembldb                2.18.3     2022-01-13 [1] Bioconductor
 evaluate                 0.14       2019-05-28 [2] RSPM (R 4.1.0)
 ExperimentHub            2.2.0      2021-10-26 [1] Bioconductor
 fansi                    1.0.2      2022-01-14 [2] RSPM (R 4.1.0)
 farver                   2.1.0      2021-02-28 [1] RSPM (R 4.1.0)
 fastmap                  1.1.0      2021-01-25 [2] RSPM (R 4.1.0)
 filelock                 1.0.2      2018-10-05 [1] RSPM (R 4.1.0)
 FNN                      1.1.3      2019-02-15 [1] RSPM (R 4.1.0)
 fontawesome              0.2.2      2021-07-02 [1] RSPM (R 4.1.0)
 forcats                  0.5.1      2021-01-27 [1] RSPM (R 4.1.0)
 foreach                  1.5.1      2020-10-15 [1] RSPM (R 4.1.0)
 foreign                  0.8-82     2022-01-13 [3] RSPM (R 4.1.0)
 formatR                  1.11       2021-06-01 [2] RSPM (R 4.1.0)
 fs                       1.5.2      2021-12-08 [2] RSPM (R 4.1.0)
 futile.logger            1.4.3      2016-07-10 [2] RSPM (R 4.1.0)
 futile.options           1.0.1      2018-04-20 [2] RSPM (R 4.1.0)
 future                   1.23.0     2021-10-31 [1] RSPM (R 4.1.0)
 future.apply             1.8.1      2021-08-10 [1] RSPM (R 4.1.0)
 gargle                   1.2.0      2021-07-02 [1] RSPM (R 4.1.0)
 generics                 0.1.1      2021-10-25 [2] RSPM (R 4.1.0)
 GenomeInfoDb             1.30.0     2021-10-26 [1] Bioconductor
 GenomeInfoDbData         1.2.7      2022-01-20 [1] Bioconductor
 GenomicAlignments        1.30.0     2021-10-26 [1] Bioconductor
 GenomicFeatures          1.46.3     2021-12-30 [1] Bioconductor
 GenomicRanges            1.46.1     2021-11-18 [1] Bioconductor
 gert                     1.5.0      2022-01-03 [2] RSPM (R 4.1.0)
 getopt                   1.20.3     2019-03-22 [1] RSPM (R 4.1.0)
 ggplot.multistats        1.0.0      2019-10-28 [1] RSPM (R 4.1.0)
 ggplot2                  3.3.5      2021-06-25 [1] RSPM (R 4.1.0)
 ggthemes                 4.2.4      2021-01-20 [1] RSPM (R 4.1.0)
 gh                       1.3.0      2021-04-30 [2] RSPM (R 4.1.0)
 gitcreds                 0.1.1      2020-12-04 [2] RSPM (R 4.1.0)
 globals                  0.14.0     2020-11-22 [1] RSPM (R 4.1.0)
 glue                     1.6.0      2021-12-17 [2] RSPM (R 4.1.0)
 googledrive              2.0.0      2021-07-08 [1] RSPM (R 4.1.0)
 googlesheets4            1.0.0      2021-07-21 [1] RSPM (R 4.1.0)
 gower                    0.2.2      2020-06-23 [1] RSPM (R 4.1.0)
 graph                    1.72.0     2021-10-26 [1] Bioconductor
 graphics               * 4.1.2      2021-11-01 [3] local
 grDevices              * 4.1.2      2021-11-01 [3] local
 grid                     4.1.2      2021-11-01 [3] local
 gridExtra                2.3        2017-09-09 [1] RSPM (R 4.1.0)
 gtable                   0.3.0      2019-03-25 [1] RSPM (R 4.1.0)
 haven                    2.4.3      2021-08-04 [1] RSPM (R 4.1.0)
 hexbin                   1.28.2     2021-01-08 [1] RSPM (R 4.1.0)
 highr                    0.9        2021-04-16 [2] RSPM (R 4.1.0)
 hms                      1.1.1      2021-09-26 [1] RSPM (R 4.1.0)
 htmltools                0.5.2      2021-08-25 [1] RSPM (R 4.1.0)
 htmlwidgets              1.5.4      2021-09-08 [1] RSPM (R 4.1.0)
 httpuv                   1.6.5      2022-01-05 [1] RSPM (R 4.1.0)
 httr                     1.4.2      2020-07-20 [2] RSPM (R 4.1.0)
 ids                      1.0.1      2017-05-31 [1] RSPM (R 4.1.0)
 igraph                   1.2.11     2022-01-04 [1] RSPM (R 4.1.0)
 ini                      0.3.1      2018-05-20 [2] RSPM (R 4.1.0)
 interactiveDisplayBase   1.32.0     2021-10-26 [1] Bioconductor
 ipred                    0.9-12     2021-09-15 [1] RSPM (R 4.1.0)
 IRanges                  2.28.0     2021-10-26 [1] Bioconductor
 irlba                    2.3.5      2021-12-06 [1] RSPM (R 4.1.0)
 isoband                  0.2.5      2021-07-13 [1] RSPM (R 4.1.0)
 iterators                1.0.13     2020-10-15 [1] RSPM (R 4.1.0)
 jquerylib                0.1.4      2021-04-26 [1] RSPM (R 4.1.0)
 jsonlite                 1.7.3      2022-01-17 [2] RSPM (R 4.1.0)
 KEGGREST                 1.34.0     2021-10-26 [1] Bioconductor
 KernSmooth               2.23-20    2021-05-03 [3] CRAN (R 4.1.2)
 knitr                    1.37       2021-12-16 [2] RSPM (R 4.1.0)
 knn.covertree            1.0        2019-10-28 [1] RSPM (R 4.1.0)
 labeling                 0.4.2      2020-10-20 [1] RSPM (R 4.1.0)
 laeken                   0.5.2      2021-10-06 [1] RSPM (R 4.1.0)
 lambda.r                 1.2.4      2019-09-18 [2] RSPM (R 4.1.0)
 later                    1.3.0      2021-08-18 [1] RSPM (R 4.1.0)
 lattice                  0.20-45    2021-09-22 [3] CRAN (R 4.1.2)
 lava                     1.6.10     2021-09-02 [1] RSPM (R 4.1.0)
 lazyeval                 0.2.2      2019-03-15 [1] RSPM (R 4.1.0)
 lifecycle                1.0.1      2021-09-24 [2] RSPM (R 4.1.0)
 limma                    3.50.0     2021-10-26 [1] Bioconductor
 listenv                  0.8.0      2019-12-05 [1] RSPM (R 4.1.0)
 littler                  0.3.15     2021-12-03 [2] RSPM (R 4.1.0)
 lme4                     1.1-27.1   2021-06-22 [1] RSPM (R 4.1.0)
 lmtest                   0.9-39     2021-11-07 [1] RSPM (R 4.1.0)
 locfit                   1.5-9.4    2020-03-25 [1] RSPM (R 4.1.0)
 lubridate                1.8.0      2021-10-07 [1] RSPM (R 4.1.0)
 magrittr                 2.0.1      2020-11-17 [2] RSPM (R 4.1.0)
 maptools                 1.1-2      2021-09-07 [1] RSPM (R 4.1.0)
 MASS                     7.3-55     2022-01-13 [3] RSPM (R 4.1.0)
 Matrix                   1.4-0      2021-12-08 [3] RSPM (R 4.1.0)
 MatrixGenerics           1.6.0      2021-10-26 [1] Bioconductor
 MatrixModels             0.5-0      2021-03-02 [1] RSPM (R 4.1.0)
 matrixStats              0.61.0     2021-09-17 [1] RSPM (R 4.1.0)
 memoise                  2.0.1      2021-11-26 [2] RSPM (R 4.1.0)
 metapod                  1.2.0      2021-10-26 [1] Bioconductor
 methods                * 4.1.2      2021-11-01 [3] local
 mgcv                     1.8-38     2021-10-06 [3] CRAN (R 4.1.2)
 mime                     0.12       2021-09-28 [2] RSPM (R 4.1.0)
 minqa                    1.2.4      2014-10-09 [1] RSPM (R 4.1.0)
 ModelMetrics             1.2.2.2    2020-03-17 [1] RSPM (R 4.1.0)
 modelr                   0.1.8      2020-05-19 [1] RSPM (R 4.1.0)
 munsell                  0.5.0      2018-06-12 [1] RSPM (R 4.1.0)
 nlme                     3.1-155    2022-01-13 [3] RSPM (R 4.1.0)
 nloptr                   1.2.2.3    2021-11-02 [1] RSPM (R 4.1.0)
 nnet                     7.3-17     2022-01-13 [3] RSPM (R 4.1.0)
 numDeriv                 2016.8-1.1 2019-06-06 [1] RSPM (R 4.1.0)
 openssl                  1.4.6      2021-12-19 [2] RSPM (R 4.1.0)
 optparse                 1.7.1      2021-10-08 [1] RSPM (R 4.1.0)
 org.Mm.eg.db             3.14.0     2022-01-20 [1] Bioconductor
 parallel                 4.1.2      2021-11-01 [3] local
 parallelly               1.30.0     2021-12-17 [1] RSPM (R 4.1.0)
 pbkrtest                 0.5.1      2021-03-09 [1] RSPM (R 4.1.0)
 pcaMethods               1.86.0     2021-10-26 [1] Bioconductor
 pillar                   1.6.4      2021-10-18 [2] RSPM (R 4.1.0)
 pkgbuild                 1.3.1      2021-12-20 [2] RSPM (R 4.1.0)
 pkgconfig                2.0.3      2019-09-22 [2] RSPM (R 4.1.0)
 pkgload                  1.2.4      2021-11-30 [2] RSPM (R 4.1.0)
 plogr                    0.2.0      2018-03-25 [1] RSPM (R 4.1.0)
 plyr                     1.8.6      2020-03-03 [1] RSPM (R 4.1.0)
 png                      0.1-7      2013-12-03 [1] RSPM (R 4.1.0)
 praise                   1.0.0      2015-08-11 [2] RSPM (R 4.1.0)
 prettyunits              1.1.1      2020-01-24 [2] RSPM (R 4.1.0)
 pROC                     1.18.0     2021-09-03 [1] RSPM (R 4.1.0)
 processx                 3.5.2      2021-04-30 [2] RSPM (R 4.1.0)
 prodlim                  2019.11.13 2019-11-17 [1] RSPM (R 4.1.0)
 progress                 1.2.2      2019-05-16 [1] RSPM (R 4.1.0)
 progressr                0.10.0     2021-12-19 [1] RSPM (R 4.1.0)
 promises                 1.2.0.1    2021-02-11 [1] RSPM (R 4.1.0)
 ProtGenerics             1.26.0     2021-10-26 [1] Bioconductor
 proxy                    0.4-26     2021-06-07 [1] RSPM (R 4.1.0)
 ps                       1.6.0      2021-02-28 [2] RSPM (R 4.1.0)
 purrr                    0.3.4      2020-04-17 [2] RSPM (R 4.1.0)
 quantreg                 5.86       2021-06-06 [1] RSPM (R 4.1.0)
 R6                       2.5.1      2021-08-19 [2] RSPM (R 4.1.0)
 ranger                   0.13.1     2021-07-14 [1] RSPM (R 4.1.0)
 rapiclient               0.1.3      2020-01-17 [2] RSPM (R 4.1.0)
 rappdirs                 0.3.3      2021-01-31 [2] RSPM (R 4.1.0)
 RBGL                     1.70.0     2021-10-26 [1] Bioconductor
 rcmdcheck                1.4.0      2021-09-27 [1] RSPM (R 4.1.0)
 RColorBrewer             1.1-2      2014-12-07 [1] RSPM (R 4.1.0)
 Rcpp                     1.0.8      2022-01-13 [1] RSPM (R 4.1.0)
 RcppArmadillo            0.10.7.5.0 2021-12-17 [1] RSPM (R 4.1.0)
 RcppEigen                0.3.3.9.1  2020-12-17 [1] RSPM (R 4.1.0)
 RcppHNSW                 0.3.0      2020-09-06 [1] RSPM (R 4.1.0)
 RCurl                    1.98-1.5   2021-09-17 [1] RSPM (R 4.1.0)
 readr                    2.1.1      2021-11-30 [1] RSPM (R 4.1.0)
 readxl                   1.3.1      2019-03-13 [1] RSPM (R 4.1.0)
 recipes                  0.1.17     2021-09-27 [1] RSPM (R 4.1.0)
 rematch                  1.0.1      2016-04-21 [1] RSPM (R 4.1.0)
 rematch2                 2.1.2      2020-05-01 [2] RSPM (R 4.1.0)
 remotes                  2.4.2      2021-11-30 [1] RSPM (R 4.1.0)
 repr                     1.1.4      2022-01-04 [1] RSPM (R 4.1.0)
 reprex                   2.0.1      2021-08-05 [1] RSPM (R 4.1.0)
 reshape2                 1.4.4      2020-04-09 [1] RSPM (R 4.1.0)
 restfulr                 0.0.13     2017-08-06 [1] RSPM (R 4.1.0)
 rgl                      0.108.3    2021-11-21 [1] RSPM (R 4.1.0)
 Rhtslib                  1.26.0     2021-10-26 [1] Bioconductor
 rjson                    0.2.21     2022-01-09 [1] RSPM (R 4.1.0)
 rlang                    0.4.12     2021-10-18 [2] RSPM (R 4.1.0)
 rmarkdown                2.11       2021-09-14 [1] RSPM (R 4.1.0)
 robustbase               0.93-9     2021-09-27 [1] RSPM (R 4.1.0)
 roxygen2                 7.1.2      2021-09-08 [2] RSPM (R 4.1.0)
 rpart                    4.1-15     2019-04-12 [3] CRAN (R 4.1.2)
 rprojroot                2.0.2      2020-11-15 [2] RSPM (R 4.1.0)
 Rsamtools                2.10.0     2021-10-26 [1] Bioconductor
 RSpectra                 0.16-0     2019-12-01 [1] RSPM (R 4.1.0)
 RSQLite                  2.2.9      2021-12-06 [1] RSPM (R 4.1.0)
 rstudioapi               0.13       2020-11-12 [2] RSPM (R 4.1.0)
 rsvd                     1.0.5      2021-04-16 [1] RSPM (R 4.1.0)
 rtracklayer              1.54.0     2021-10-26 [1] Bioconductor
 RUnit                    0.4.32     2018-05-18 [1] RSPM (R 4.1.0)
 rversions                2.1.1      2021-05-31 [2] RSPM (R 4.1.0)
 rvest                    1.0.2      2021-10-16 [1] RSPM (R 4.1.0)
 S4Vectors                0.32.3     2021-11-21 [1] Bioconductor
 sass                     0.4.0      2021-05-12 [1] RSPM (R 4.1.0)
 ScaledMatrix             1.2.0      2021-10-26 [1] Bioconductor
 scales                   1.1.1      2020-05-11 [1] RSPM (R 4.1.0)
 scatterplot3d            0.3-41     2018-03-14 [1] RSPM (R 4.1.0)
 scran                    1.22.1     2021-11-14 [1] Bioconductor
 scRNAseq                 2.8.0      2021-10-30 [1] Bioconductor
 scuttle                  1.4.0      2021-10-26 [1] Bioconductor
 selectr                  0.4-2      2019-11-20 [1] RSPM (R 4.1.0)
 sessioninfo              1.2.2      2021-12-06 [2] RSPM (R 4.1.0)
 shiny                    1.7.1      2021-10-02 [1] RSPM (R 4.1.0)
 SingleCellExperiment     1.16.0     2021-10-26 [1] Bioconductor
 sitmo                    2.0.2      2021-10-13 [1] RSPM (R 4.1.0)
 smoother                 1.1        2015-04-16 [1] RSPM (R 4.1.0)
 snow                     0.4-4      2021-10-27 [1] RSPM (R 4.1.0)
 sourcetools              0.1.7      2018-04-25 [1] RSPM (R 4.1.0)
 sp                       1.4-6      2021-11-14 [1] RSPM (R 4.1.0)
 SparseM                  1.81       2021-02-18 [1] RSPM (R 4.1.0)
 sparseMatrixStats        1.6.0      2021-10-26 [1] Bioconductor
 spatial                  7.3-15     2022-01-13 [3] RSPM (R 4.1.0)
 splines                  4.1.2      2021-11-01 [3] local
 SQUAREM                  2021.1     2021-01-13 [1] RSPM (R 4.1.0)
 statmod                  1.4.36     2021-05-10 [1] RSPM (R 4.1.0)
 stats                  * 4.1.2      2021-11-01 [3] local
 stats4                   4.1.2      2021-11-01 [3] local
 stringdist               0.9.8      2021-09-09 [1] RSPM (R 4.1.0)
 stringi                  1.7.6      2021-11-29 [2] RSPM (R 4.1.0)
 stringr                  1.4.0      2019-02-10 [2] RSPM (R 4.1.0)
 SummarizedExperiment     1.24.0     2021-10-26 [1] Bioconductor
 survival                 3.2-13     2021-08-24 [3] CRAN (R 4.1.2)
 sys                      3.4        2020-07-23 [2] RSPM (R 4.1.0)
 tcltk                    4.1.2      2021-11-01 [3] local
 testthat                 3.1.1      2021-12-03 [2] RSPM (R 4.1.0)
 tibble                   3.1.6      2021-11-07 [2] RSPM (R 4.1.0)
 tidyr                    1.1.4      2021-09-27 [2] RSPM (R 4.1.0)
 tidyselect               1.1.1      2021-04-30 [2] RSPM (R 4.1.0)
 tidyverse                1.3.1      2021-04-15 [1] RSPM (R 4.1.0)
 timeDate                 3043.102   2018-02-21 [1] RSPM (R 4.1.0)
 tinytex                  0.36       2021-12-19 [1] RSPM (R 4.1.0)
 tools                    4.1.2      2021-11-01 [3] local
 TTR                      0.24.3     2021-12-12 [1] RSPM (R 4.1.0)
 tzdb                     0.2.0      2021-10-27 [1] RSPM (R 4.1.0)
 usethis                  2.1.5      2021-12-09 [2] RSPM (R 4.1.0)
 utf8                     1.2.2      2021-07-24 [2] RSPM (R 4.1.0)
 utils                  * 4.1.2      2021-11-01 [3] local
 uuid                     1.0-3      2021-11-01 [1] RSPM (R 4.1.0)
 vcd                      1.4-9      2021-10-18 [1] RSPM (R 4.1.0)
 vctrs                    0.3.8      2021-04-29 [2] RSPM (R 4.1.0)
 VIM                      6.1.1      2021-07-22 [1] RSPM (R 4.1.0)
 viridis                  0.6.2      2021-10-13 [1] RSPM (R 4.1.0)
 viridisLite              0.4.0      2021-04-13 [1] RSPM (R 4.1.0)
 vroom                    1.5.7      2021-11-30 [1] RSPM (R 4.1.0)
 waldo                    0.3.1      2021-09-14 [2] RSPM (R 4.1.0)
 whisker                  0.4        2019-08-28 [2] RSPM (R 4.1.0)
 withr                    2.4.3      2021-11-30 [2] RSPM (R 4.1.0)
 xfun                     0.29       2021-12-14 [2] RSPM (R 4.1.0)
 XML                      3.99-0.8   2021-09-17 [1] RSPM (R 4.1.0)
 xml2                     1.3.3      2021-11-30 [2] RSPM (R 4.1.0)
 xopen                    1.0.0      2018-09-17 [2] RSPM (R 4.1.0)
 xtable                   1.8-4      2019-04-21 [1] RSPM (R 4.1.0)
 xts                      0.12.1     2020-09-09 [1] RSPM (R 4.1.0)
 XVector                  0.34.0     2021-10-26 [1] Bioconductor
 yaml                     2.2.1      2020-02-01 [2] RSPM (R 4.1.0)
 zip                      2.2.0      2021-05-31 [2] RSPM (R 4.1.0)
 zlibbioc                 1.40.0     2021-10-26 [1] Bioconductor
 zoo                      1.8-9      2021-03-09 [1] RSPM (R 4.1.0)

 [1] /__w/_temp/Library
 [2] /usr/local/lib/R/site-library
 [3] /usr/local/lib/R/library

──────────────────────────────────────────────────────────────────────────────────────────────────

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.