github_user_name   <- "petermeissner"
codecov_user_name  <- github_user_name
travis_user_name   <- github_user_name
appveyor_user_name <- github_user_name
knitr::opts_chunk$set(
  fig.path = "man/figures/README-"
)
options("width"=110)

# get package info
tmp <- packageDescription( "wayback" )
#tmp <- packageDescription( basename(getwd()) )

package_name <- tmp$Package
cat("#", tmp$Title)

Status

AppVeyor build status Codecov

filelist.R   <- list.files("R", recursive = TRUE, pattern="\\.R$", ignore.case = TRUE, full.names = TRUE)
filelist.tests   <- list.files("tests", recursive = TRUE, pattern="\\.R$", ignore.case = TRUE, full.names = TRUE)
filelist.cpp <- list.files("src", recursive = TRUE, pattern="\\.cpp$", ignore.case = TRUE, full.names = TRUE)
lines.R      <- unlist(lapply(filelist.R, readLines))
lines.tests  <- unlist(lapply(filelist.tests, readLines))
lines.cpp    <- unlist(lapply(filelist.cpp, readLines))
length.R     <- length(grep("(^\\s*$)|(^\\s*#)|(^\\s*//)", lines.R,  value = TRUE, invert = TRUE))
length.tests <- length(grep("(^\\s*$)|(^\\s*#)|(^\\s*//)", lines.tests,  value = TRUE, invert = TRUE))
length.cpp   <- length(grep("(^\\s*$)|(^\\s*#)|(^\\s*//)", lines.cpp,  value = TRUE, invert = TRUE))

lines of R code: r length.R, lines of test code: r length.tests

Version

source_files <-
  grep(
    "/R/|/src/|/tests/",
    list.files(recursive = TRUE, full.names = TRUE),
    value = TRUE
  )
last_change <-
  as.character(
    format(max(file.info(source_files)$mtime), tz="UTC")
  )
cat(tmp$Version, "(",last_change,")")

Description

cat(tmp$Description)

License

cat(tmp$License, "<br>")
cat(tmp$Author)

Citation

cat("```r\n")
cat("citation(\"",package_name,"\")", sep = "")
cat("\n```\n")
cat("```r\n")
print_text <- capture.output(print(citation(package_name), style = "text"))
cat(gsub("_", "", print_text))
cat("\n```\n")

BibTeX for citing

cat("```r\n")
cat("BibTeX(citation(\"",package_name,"\"))", sep = "")
cat("\n```\n")
cat("```\n")
cat(as.character(toBibtex(citation(package_name))), sep = "\n")
cat("\n```\n")

Installation

Stable version from CRAN:

cat("```r\n")
cat("install.packages(\"",package_name,"\")", sep = "")
cat("\n```\n")

Package Usage

library(wayback)

The main function of the package is wb_require(). Once {wayback} is installed this function allows to have required packages loaded from a library specified. In addition wb_require() will install packages that are not present but required.

The real core strength and purpose of the package is to install packages and dependencies from a specific point in time. This is provided by the date parameter allowing to go back in time - especially to a point in time where known to have consistent states of packages and dependencies for a given version of R.

suppressPackageStartupMessages(
  wb_require(
    pkg          = "glue", 
    date         = Sys.Date(),
    library_path = "./r_package_library"
  )
)
info <- packageDescription("glue", lib.loc = "./r_package_library")

info$Packaged

Package Use Cases and Scope

Package Maxims and Trade Offs

Other Packages and Frameworks



petermeissner/wayback documentation built on Oct. 3, 2020, 6:01 a.m.