Package not found in repository

Can't find or install package from CRAN

I am trying to install {disk.frame} and it doesn't seem to be found in the CRAN or CRAN(extras) repo's. It's published in CRAN, as seen in the docs here.

Is there anything I should do to be able to get access to this package?

Attempt at installation:

install.packages("disk.frame")

# Warning in install.packages :
#   package ‘disk.frame’ is not available (for R version 3.5.3)

Setting the repo's

setRepositories()
# --- Please select repositories for use in this session ---


# 1: + CRAN
# 2:   BioC software
# 3:   BioC annotation
# 4:   BioC experiment
# 5: + CRAN (extras)
# 6:   Omegahat
# 7:   R-Forge
# 8:   rforge.net

Checking for {disk.frame}

ap <- available.packages()
"disk.frame" %in% rownames(ap)

# [1]FALSE

Hi there,

You're using 3.5.3 which came out on a specific point in time and is associated with a specific snapshot. CRAN as you linked is based on the latest version of R.

Looking at the package's cran link CRAN - Package disk.frame you will face serious dependency issues trying to install it via github and installing its dependencies. I suggest using a newer version of R or changing to a different version of R and adjusting your snapshot.

If this doesn't make sense/if you have questions let me know :slight_smile:

Thanks so much, this did fix my issue. I am curious though why this snapshot doesn't work when the descriptor says R >= 3.4. Could you explain a bit further on that? What exactly is a snapshot?

1 Like

Every time you open Rstudio or R you should see something like:

R version 4.1.0 (2021-05-18) -- "Camp Pontanezen"

As you can see it specifies my version and a specific date. That becomes a default "point" from which R will try and install packages and try and assist. To keep compiling and keep things reproducible as far as possible there are some default snapshots in place - essentially sets of packages with their respective versions etc that was available at certain times based on the version of R and that date. If this wasn't the case then you could have had serious issues of installing incompatible packages with newer or older versions of R which would lead to extremely complex library management and compiling problems.

The other reason why snapshots are so invaluable is that it gives us a frozen point in time at which we can point and keep things reproducible. When I am programming on a project that ends up in production I can guarantee that everyone who will have to install my library or project will have the identical set of packages with underlying code as I specified the snapshot and thus the respective versions.

If you ever want to get an idea of the snapshot at your disposal I suggest looking here: Home MRAN is not entirely CRAN but based on it similarly and you can specify a version and date and then see which packages with versions were available on that point.

Introduction to renv • renv renv does a lot of this too and you even have the function renv::snapshot() you can look at.

For a lot of people they never have to worry about the above but it is always important to keep in mind when you intend to share your code etc.

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.

If you have a query related to it or one of the replies, start a new topic and refer back with a link.