Skip to content

[Bioc-devel] Bioc_check on devel - Checking R Version dependency warning

3 messages · Ahmed Mohamed, Shepherd, Lori

#
Hi all,

I noticed that bioc_check on devel checks for R version dependency, and
produces a warning to change R dependency to 3.6 (currently set as R >=
3.5.0). Just quickly looking at Bioconductor packages, it seems that at
least half of the packages will have this warning, if tested. It also means
that packages will need to change R dependency each release cycle (and
different R versions for release and devel).

To be honest, I am not fully convinced also on the rationale behind it.
Quoting
http://master.bioconductor.org/packages/devel/bioc/vignettes/BiocCheck/inst/doc/BiocCheck.html#version-checks

"BiocCheck checks to make sure that the R version specified matches the
version currently used by *Bioconductor*. This prevents the package from
being used in earlier versions of R, which is not recommended and is a
frequent cause of user confusion (WARNING)."

Currently, I am using TravisCI to Bioc_check my package on both release and
devel modes, so it is not also possible to change the R version as
suggested in the warning. I wonder if there is a possible work around,
other than looking the other way.

Link to build here:
https://travis-ci.org/ahmohamed/lipidr/jobs/511789232#L5673

Cheers.
Ahmed.
#
Bioconductor has release cycles to ensure that packages are building cleaning and working with dependency at any given time.  The version would not have to be updated each release, it is an indication of the version of R used at the time of submission and to give a base line of what versions were minimally working.


Bioconductor builds packages nightly on release and devel branches. we assume any development will be pushed to the devel branch to ensure if a package functionality changes and packages that depend on it may break that there is some indication of that to give package maintainers an environment to update and adapt, and that there is still the release stable environment of working dependencies.


If your package is already in Bioconductor it is safe to ignore this warning when running the testing environment (or if you feel like disabling it you could use the BiocCheck option --no-check-R-ver)  However,  if your package is in the submission tracker we will generally insist on updating this R version dependency for the reasons stated.  For example, there have been many significant changes to R from 3.5 to 3.6 that effected a lot of packages and required some major changes, we would have no way to test or guarantee that a package can work on a previous version and be able to grab all the correct versions of packages for a past point in time (beside current release/devel).  If you really feel strongly about this you could still submit your package and argue your case to the reviewer - we sometimes make an exception but it is not the norm.


Hope this helps with clarification

Cheers,


Lori Shepherd

Bioconductor Core Team

Roswell Park Cancer Institute

Department of Biostatistics & Bioinformatics

Elm & Carlton Streets

Buffalo, New York 14263
#
Thanks Lori for the clarification. If the purpose of the check is to
capture the R version upon submission to Bioconductor, then it makes sense.
I would suggest a bit of clarification in the docs though. Also, a warning
is not produced when "Depends: R (xxx)" is completely missing in
DESCRIPTION. If my understanding is correct, a warning should also be given
in that case.

For my package, I plan to keep every thing as is in a pre-release version
(0.98.0), and then pump R version upon submission to tracker (v0.99.0),
skipping CI tests for bioc-release. Hope this will be acceptable.

Cheers.
Ahmed.

On Wed, 27 Mar 2019 at 21:23, Shepherd, Lori <Lori.Shepherd at roswellpark.org>
wrote: