Skip to content

[Bioc-devel] Help Remote Installations

5 messages · Lluís Revilla, Shepherd, Lori, Henrik Bengtsson +1 more

#
Hello,

This is the first time I?m writing to you; I hope I?m doing it correctly
and contacting the right place.

I have the package almost ready to send. *BiocCheck* works well; I have
just one note about the length of a few functions. However, *R CMD check*
gives me a warning about some GitHub packages that I have not listed in the
DESCRIPTION or NAMESPACE. These packages implement methods that can be
optionally selected in my framework, and I?ve documented the installation
steps in the README if someone wants to use them.

Should I leave the warning as is, or is there something I can do to resolve
it?

Thank you.

Best regards,
Francesco
#
Hi Francesco,

You reached the right list.
Congratulations on getting this far, it is not always easy to fix all the R
CMD checks and BiocChecks.

If these packages are optional, they should be used conditionally:
if (requireNamespace("pkg", quietly = TRUE)) {
    pkg::optional_function(...)
}

And be listed on the Suggested field of the DESCRIPTION file.
For more information read the Writing R Extensions section 1.1.3.1
<https://cran.r-project.org/doc/manuals/r-devel/R-exts.html#Suggested-packages>.

However, note that depending on packages not on CRAN is usually not
recommended as the quality and availability is not known by R and
Bioconductor processes.

Best wishes,

Llu?s

On Tue, 13 May 2025 at 16:22, Francesco Cecere <
francesco.cecerengs at gmail.com> wrote:

            

  
  
#
Hello Francesco,

To expand on lluis reply:
packages not on CRAN or Bioconductor are not allowed and strictly enforced on Bioconductor systems so please keep this in mind but agree that it is general practice to put these types of packages in Suggest.


Lori Shepherd - Kern

Bioconductor Core Team

Roswell Park Comprehensive Cancer Center

Department of Biostatistics & Bioinformatics

Elm & Carlton Streets

Buffalo, New York 14263
#
In addition to what's already been said (list them under Suggests), I
encourage you to make those package available via
https://r-universe.dev/, instead of asking users to install them
directly from GitHub (via remotes::install_github(...)). The idea is
that you provide your own only package repository, e.g.
https://ngsFC.r-universe.dev/. With R-universe you, and users, also
get the benefit of automatic testing there and automatic builds of
Windows and macOS package binaries, and more importantly those
packages can be installed using install.packages().

Note that you do not have to be the owner of those GitHub repositories
to make them available on R-universe. You can create your own set of
custom packages you want to provide this way. For example, you can
install Pharmaverse-related packages from
https://pharmaverse.r-universe.dev/. They provide packages from
multiple sources. All they have to do achieve this is to create a
GitHub repo with a special name
https://github.com/pharmaverse/pharmaverse.r-universe.dev/, and then
provide a one JSON file specifying which packages to include and where
those package lives, cf.
https://github.com/pharmaverse/pharmaverse.r-universe.dev/blob/main/packages.json.

Finally, with packages on R-universe, you can list specifying:

Additional_repositories: https://ngsFC.r-universe.dev

'R CMD check' acknowledges 'Additional_repositories' - it's part of
the core R infrastructure. I know there's an idea for
install.packages(..., dependencies = TRUE) to eventually automatically
install from such repositories too. We're not there yet though.

R-universe is great, it's fully operational, is becoming a de-facto
standard, and, I think, is our best option for bringing in non-CRAN,
non-Bioconductor dependencies.

/Henrik

On Wed, May 14, 2025 at 6:45?AM Kern, Lori via Bioc-devel
<bioc-devel at r-project.org> wrote:
#
Thank you all for your suggestions ! They help a lot to improve my package !
Thank you again
Hopefully soon it will reach you !

Francesco

Il giorno mer 14 mag 2025 alle ore 20:47 Henrik Bengtsson <
henrik.bengtsson at gmail.com> ha scritto: