question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

R packages from sources other than CRAN

See original GitHub issue

How to deal with R package sources other than CRAN?

Most R packages are using CRAN as source, which serves as a good quality gate as CRAN does check the package and also does some lifecycle management if required. (Option A)

There are also some R packages which are created directly from github archives https://github.com/*/$pkg/{archive, releases}/*.{zip, tar.gz}. There is no additional CRAN which does checks, it is all up to the repo contributors their CI and the conda package maintainer to bring a “good” version to conda-forge. (Option B)

Currently around 1200 packages are built from CRAN and around 15 are built from github:

  • rg cran feedstocks -g "**/r-*/*/meta.yaml" --files-with-matches | wc -l
  • rg cran feedstocks -g "**/r-*/*/meta.yaml" --files-without-match | wc -l

There is now a package [0] with some unique functionality following a changing API, that was packaged via CRAN but is now outdated and not working anymore. New releases are all done via a drat repo. Releasing again to CRAN seems not to happen [1] “Option A” and getting their releases tagged in the repo also seems not to happen [2], which would enable “Option B”.

The drat repo is owned by the same github project as package source code repo. And it is so more or less as reliable as the source code repo itself or as to what I refer to as “Option B”.

For more details and how a change looks like, see also https://github.com/conda-forge/r-aws.s3-feedstock/pull/3

Possible options here I see here:

  1. Sources other than CRAN should be the exception, but are fine.
  2. There is no general rule for switching sources to other than CRAN, it requires negotiation with at least two recipe maintainers.
  3. Packages that follow a somehow fast changing API can be packaged from sources other than CRAN.
  4. Drat is fine for the aws.* packages, but we don’t decide anything else now.

Tagging the R package maintainers to get notified: @johanneskoester, @bgruening, @daler, @jdblischak, @cbrueffer

What do you think?

Thanks

Daniel

[0] https://github.com/conda-forge/r-aws.s3-feedstock [1] https://github.com/cloudyr/aws.s3/issues/239 [2] https://github.com/cloudyr/aws.s3/issues/257

Issue Analytics

  • State:closed
  • Created 5 years ago
  • Comments:10 (9 by maintainers)

github_iconTop GitHub Comments

1reaction
dbastcommented, Nov 4, 2018

@jdblischak Sounds good. Thanks!

0reactions
dbastcommented, Dec 12, 2018

Thanks for the reminder. Closing.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Using repositories other than CRAN with miniCRAN
This vignette contains some examples of how to refer to different package repositories, including CRAN, alternative mirrors of CRAN, R-Forge ...
Read more >
The Comprehensive Guide to Installing R Packages from ...
While CRAN is still by far the most popular repository for R packages, you will find quite a lot of packages that are...
Read more >
4 Package structure and state
Package development workflows make much more sense if you understand the five states an R package can be in: source; bundled; binary; installed;...
Read more >
How to INSTALL R PACKAGES? [CRAN, GitHub ... - R Coder
View the source code of R package functions · Call the name of the function in console. · Press Ctrl + Left Click...
Read more >
How to Download & Install R Packages - DataCamp
Find an introduction to R packages. Based on the 11 most frequently asked questions about R. See how you can download & install...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found