Skip to contents

Functions to install, update and synchronize patRoon and its dependencies from various repositories.

Usage

install(
  pkgs = NULL,
  ignorePkgs = NULL,
  origin = NULL,
  lib.loc = NULL,
  ask = TRUE,
  force = FALSE,
  quiet = TRUE
)

update(
  pkgs = NULL,
  ignorePkgs = NULL,
  origin = NULL,
  lib.loc = NULL,
  ask = TRUE,
  quiet = TRUE
)

sync(
  pkgs = NULL,
  ignorePkgs = NULL,
  origin = NULL,
  lib.loc = NULL,
  allDeps = FALSE,
  ask = TRUE,
  quiet = TRUE
)

Arguments

pkgs, ignorePkgs

A character vector with packages to consider/ignore. Execute names(getDirectDeps()) to obtain valid package options. If NULL then all packages are considered/none are ignored. The ignorePkgs argument can also include "big" to exclude large packages (e.g. patRoonDeps), and will override pkgs in case of conflicts.

origin

Where patRoon and its R dependencies are installed from. Valid values are: "patRoonDeps", "runiverse", "regular". If NULL then the default on Windows is "patRoonDeps" and "runiverse" otherwise. See below for more details.

lib.loc

The path to the R library where packages will be installed. Set to NULL for the default R library.

ask

Set to TRUE to ask before proceeding package installations. No effect on non-interactive R sessions.

force

If TRUE then packages will always be installed, even if already present and with the correct version.

quiet

If TRUE the installations are performed more quietly (sets the quiet option to install.packages().

allDeps

Consider all dependencies when synchronizing, including recursive dependencies. This is currently only supported for origin="patRoonDeps". Note that handling of recursive dependencies currently are not influenced by the pkgs and ignorePkgs arguments.

Value

All functions return NULL invisibly.

Details

The installation of patRoon involves installing several dependencies, including R packages not available from common repositories (CRAN, BioConductor) and software outside the R environment. The following three functions automate this process and are used to install and maintain patRoon and its dependencies:

  • install() Installs patRoon and any missing dependencies.

  • update() Like install() and updates outdated packages.

  • sync() Like update() but may also downgrade packages to fully synchronize package versions with the repository.

The R packages are currently sourced from the following repositories (set by the origin argument):

  • "patRoonDeps": a specialized miniCRAN repository contains binary R packages with versions that are automatically tested with patRoon. Currently this is only supported for Windows.

  • "runiverse": an r-universe repository containing the latest versions of patRoon and its dependencies.

  • "regular": the last versions are sourced from regular CRAN/BioConductor repositories and GitHub. The latter means that suitable build tools (e.g. Rtools on windows).

Note that some large R packages, currently patRoonDeps, patRoonExt and MetaCleanData, are always sourced directly from GitHub.

Synchronization with sync() was mainly designed to be used in combination with the patRoonDeps repository, since it contains package versions already tested with patRoon. Doing a synchronization is most commonly used with patRoon bundle installations or when patRoon is installed in a separate R library (i.e. using the lib.loc argument). Furthermore, the allDeps argument should be set to TRUE to ensure all dependencies are synchronized.

Packages that originate from GitHub (even when obtained via patRoonDeps/runiverse) will also be synchronized with update(), since these packages typically involve 'snapshots' with unreliable version information.