On Sun, 16 Jun 2019 at 05:07, Elliott Sales de Andrade quantum.analyst@gmail.com wrote:
Hi R-interested packagers and others,
Recently, I've been looking at how RPM can automatically determine Provides and Requires [1]. I have since implemented this for R using an R script [2] and some file attributes [3]. Following other languages' Provides, I have namespaced them as R(packageName). It then adds corresponding Requires, Suggests, and Enhances.
Additionally, R package versions commonly contain dashes. In order to work in RPM, these are replaced with dots. For the automated Provides/Requires, I have used the *real* versions instead.
So now the question is how to apply this. I expect there are social concerns, i.e., discussing with the R maintainer, making a Self-contained Change, etc. But for this email, I am mostly concerned with the technical aspects:
- Is R-devel the right place to put the script and RPM attribute file
(all R packages would normally depend on this)?
I believe R-SIG-Fedora is the right place.
- Does this namespacing make sense?
- Are dashes in *namespaced* versions going to be a problem?
- Python had a flag to enable the automatic generator; do we need
this for R, and how was it implemented? 5. I expect this would need a rebuild of all packages to get the dependencies right (because the regular rebuild is unordered); would this need a side tag? Or would leaving it for the normal mass rebuild just be fine? 6. R only has two levels of dependencies (hard-require or suggested, but not installed by default). Thus both build- and runtime-optional packages are in Suggests; do we care about the extra Suggests?
Sometimes these extra Suggests are not satisfiable, but they can be removed after disabling vignette rebuilding. In other cases, Recommends are more appropriate for suggested packages.
Iñaki
[1] https://rpm.org/user_doc/dependency_generators.html [2] https://src.fedoraproject.org/fork/qulogic/rpms/R/blob/autodeps/f/R-deps.R [3] https://src.fedoraproject.org/fork/qulogic/rpms/R/blob/autodeps/f/R.attr