R
Automatic R runtime dependencies
R libraries currently provide metadata indicating runtime requirements on
other libraries in a DESCRIPTION
file. Using RPM’s file attributes and
dependency generator support, these requirements can be added to packages
automatically. These will use namespaced Provides
of R(packageName) =
packageVersion
, where packageName
is the importable name of the package,
and packageVersion
is the upstream version (note: upstream versions are
often sanitized for Fedora since RPM cannot use dashes in versions.)
R library metadata includes Depends
and Imports
which will be mapped to
Requires
. Metadata that specifies Enhances
will be mapped directly to
Enhances.
Metadata that specifies Suggests
will not be mapped to anything by
default. Oftentimes, suggested libraries are used to indicate dependencies
that are needed at build time only. Packagers who wish to include any actual
runtime Suggests
may opt in to adding them using a (TBD) flag or just
continue to add Suggests
manually.
This change provides a standard Provided name for R packages. This change helps users of R packages by providing the original version value (as opposed to the sanitized one for RPM.) This change reduces the amount of work packagers need to do keeping (R package) dependencies correct.