[Bioc-devel] How to deal with external software dependencies

Hervé Pagès hp@ge@@on@g|thub @end|ng |rom gm@||@com
Tue Jan 3 19:06:16 CET 2023


Hi Ran,

First of all, please note that direct calls to external commands via
system() or system2() are not ideal so should only be used when there is no
other alternative. For example, if a CRAN or Bioconductor package already
provides the functionality that you are after, you should use that instead.

Now if your package **absolutely** must rely on external software then you
need to make sure that those requirements are listed in
the SystemRequirements field of the DESCRIPTION file of the package. These
requirements should be "reasonable" requirements, that is, trusted software
only, open source, and relatively easy to install.

Additionally we ask that the package contains an INSTALL file (in the
top-level folder) that provides instructions for installing the external
software on the 3 major OS that we support: Linux, Windows, and Mac. This
will not only help your users get the external software on their machines,
but it will also help us install it on the build machines if it's not
already there.

May I ask what those external tools are?

Thanks,
H.

On Mon, Dec 19, 2022 at 3:13 PM RAN HU <huran using ucla.edu> wrote:

> Hi all,
>
> I am developing a new R package that relies on some external software.
> There are some system calls written in the R function that requires the
> path to those external software tools.
>
> I am not sure what is the best practice to using external software in R
> Bioconductor packages. If the external software paths are required for the
> functions to run successfully, will the package fail the BiocCheck?
>
> Any suggestions would be appreciated and thank you in advance for your
> help!!!
>
> Best,
> Ran
>
>         [[alternative HTML version deleted]]
>
> _______________________________________________
> Bioc-devel using r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/bioc-devel
>

	[[alternative HTML version deleted]]



More information about the Bioc-devel mailing list