RConsortium / r-repositories-wg

RC Working Group on Repositories
37 stars 8 forks source link

Archived CRAN Packages #8

Open joseph-rickert opened 2 years ago

joseph-rickert commented 2 years ago

R packages are regularly archived because they fail a CRAN check. This happens for new packages (8 in September 2021) as well as mature, useful packages. If the authors do not respond to the problem, then these packages silently disappear.

Occasionally, packages of some significance are retired. For example MLEP, an R package for exploring the maximum likelihood estimates of penetrance parameters, was written up in BMC (https://bmcresnotes.biomedcentral.com/articles/10.1186/1756-0500-5-465). A recent search on CRAN resulted in this: Package ‘MLEP’ was removed from the CRAN repository. Formerly available versions can be obtained from the archive. Archived on 2014-11-30 as maintainer address bounced with a permanent error.

Could the R Consortium maintain a repository to track archived packages and organize a way for the R Community to assist authors who are having trouble correcting errors?

Also, packages are also occasionally retired at the request of the package maintainer. For example, multistate was archived on 2020-04-12. Could the RC assist maintainers in finding members of the community to extend the life of useful packages?

llrs commented 2 years ago

Might be useful to keep in mind the cranberries removed category.

richfitz commented 2 years ago

Via tools/R/QC.R there is this file on CRAN with the full list of reasons for archival, including for packages that have been returned to CRAN, and more than is available via the usual "problems not corrected in time" or ominous "policy violation" statement on the package site: https://cran.r-project.org/src/contrib/PACKAGES.in

llrs commented 2 years ago

Looking at the reasons of archival from that file (Thanks @richfitz!) it seems that most of them are due to maintainers failing to fix the problems on time:

image

The whole analysis I've done is in this post on my blog.

mdsumner commented 2 years ago

CRAN is chaotic on this, I just get mixed messages and no clarity on what the problem is. You become accustomed to a certain pattern, and they don't stick to it. I believe it's internal disagreements and rogue operators but it's impossible to track and my package now has no information on what the problem is, and no email notifications that it would be archived (again). This is after explicit email checks with CRAN, confirmation from them "yes we agree, false positives - you aren't in the manual check queue", then confirmation "it's on CRAN", then "built for windows". Today, silently removed and no information "same errors" - same as what?

This is really toxic and wasteful and silly, and I'm not the only one tired of the gaslighting.

I've seen others get treated similarly, with supposed emails sent that were never seen, and (spiteful) threats of lifetime bans. It's not ok, and only those involved have any idea, and have no recourse for review or sharing experience.

Is this project aiming to get get some improved transparency?

llrs commented 2 years ago

@mdsumner A year and a half ago I created a repository to share experiences with CRAN. You can share your experiences there, both positive and negative: https://github.com/cranchange/cran_histories/discussions/

Some of the experiences there, and others, lead to the creation of a letter. That letter was never sent to the CRAN team (Although it circulated in twitter and reached to R core members): after a meeting with the Linux Foundation which reached out to R Consortium, this working group was created to address some of those concerns.

According to the README this group aims to "collaboratively explore how to support, maintain, and improve the tooling for package distribution, particularly with an eye to meeting new needs (e.g. the demands of regulated submission as experienced by the pharma community) and making sure R is well poised to thrive for the next 20 years."
Recently in an email to CRAN it was described as a working group to "investigate ways to build, maintain, and operate new package repositories for specialized purposes".

We've been meeting monthly since Sept 2021. You can read the minutes of the meetings to see what have been discussed and current/short term aims.