Package 'pkgmeta'

Title: Find details about R packages on CRAN or github
Description: Finds meta data for all packages on CRAN that match a given author and packages contained in specified github repositories.
Authors: Rob Hyndman [aut, cre] (ORCID: <https://orcid.org/0000-0002-2140-5352>)
Maintainer: Rob Hyndman <[email protected]>
License: GPL (>= 3)
Version: 0.1.0
Built: 2026-10-31 23:45:29 UTC
Source: https://github.com/robjhyndman/pkgmeta

Help Index


Return meta data on CRAN and github packages

Description

Find meta data for all packages on CRAN that match a given author and all packages contained in a vector of github repositories and return as a tibble. Meta data on packages that are both on CRAN and github will be combined into a single row. Where meta data clash, the CRAN version is preferred when prefer_cran is TRUE, otherwise the github version is preferred.

Usage

get_meta(
  cran_authors = NULL,
  include_downloads = FALSE,
  start = "2000-01-01",
  end = Sys.Date(),
  cran_packages = NULL,
  github_repos = NULL,
  prefer_cran = TRUE
)

Arguments

cran_authors

Character vector to find in CRAN author names

include_downloads

Should total CRAN downloads since start be added to the tibble?

start

Start date for download statistics. Ignored if include_downloads is FALSE.

end

End date for download statistics. Ignored if include_downloads is FALSE.

cran_packages

Character vector of CRAN packages. Ignored if cran_authors is provided.

github_repos

Character vector of github repos

prefer_cran

When a package is both on CRAN and github, which information should be preferenced?

Caching and parallelism

Results are cached on disk for the rest of the day, so repeated calls (including from new R sessions) are nearly instant. The cache lives in tools::R_user_dir("pkgmeta", "cache"); set options(pkgmeta.cache_dir = tempdir()) to use a per-session cache instead. Web requests are made by up to 8 parallel worker processes; use options(pkgmeta.cores = 1) to turn this off.

Examples

get_meta(cran_authors = "Hyndman")
get_meta(github_repos = c("robjhyndman/forecast", "earowang/hts"))
get_meta(cran_authors = "Emi Tanaka", github_repos = c("numbats/yowie", "numbats/monash"))