knitr::opts_chunk$set( collapse = TRUE, comment = "#>", warning = FALSE, message = FALSE, echo = FALSE )
The data in this table stems from our querying https://cran.r-project.org/incoming/. We update it every hour. See below for a description of each folder meaning.
library(dplyr) standard_folders <- c( "pretest", "inspect", "recheck", "pending", "publish", "newbies", "waiting" ) cran_raw <- cransays::take_snapshot() cran_incoming <- cran_raw |> arrange(subfolder, howlongago) |> filter(subfolder != "archive") |> mutate( folder = ifelse(subfolder %in% standard_folders, subfolder, "human"), subfolder = ifelse(subfolder %in% standard_folders, NA, subfolder) ) cran_incoming |> select(package, version, snapshot_time, folder, subfolder, submission_time) |> arrange(package, version) |> write.csv( paste0("cran-incoming-v5-", format(Sys.time(), "%Y%m%dT%H%M%S"), ".csv"), row.names = FALSE, quote = FALSE )
library(reactable) colours <- c( "pretest" = "#F8F3BA", "inspect" = "#F8F3BA", "human" = "#F1D9A1", "recheck" = "#E5CADB", "publish" = "#A5D6C8" ) cran_incoming |> dplyr::select(package, version, submission_time, folder, subfolder) |> reactable( columns = list( folder = colDef(style = function(value) { val <- as.character(value) if (val %in% names(colours)) { list(background = colours[[val]]) } else { list() } }), submission_time = colDef(cell = function(value, index) { prettyunits::time_ago(value) }) ), defaultSorted = list("submission_time" = "desc"), filterable = TRUE, defaultPageSize = 50 )
Your package will be stored in a different folder depending on its current state in the review process. The exact meaning of each folder is detailed in articles from the R Journal in 2018 and 2019, and updated by a 2019 mailing list post (and confirmed in 2022):
subfolder
) for further inspection.This information is (approximately) summarised in the following diagram by Hadley Wickham, available in the cran-stages Github repository:
knitr::include_graphics("cran-diagram.png")
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.