mirror of
https://github.com/agdamsbo/REDCapCAST.git
synced 2024-11-22 05:20:23 +01:00
new version 2023.12.1 with two bug fixes and a new wrapper function
This commit is contained in:
parent
085aa9de62
commit
31c6994ce3
@ -1,3 +1,5 @@
|
||||
^renv$
|
||||
^renv\.lock$
|
||||
^.*\.Rproj$
|
||||
^\.Rproj\.user$
|
||||
^data-raw$
|
||||
|
10
.Rprofile
Normal file
10
.Rprofile
Normal file
@ -0,0 +1,10 @@
|
||||
options(
|
||||
renv.settings.snapshot.type = "explicit",
|
||||
renv.config.auto.snapshot = TRUE,
|
||||
renv.config.pak.enabled = TRUE
|
||||
)
|
||||
source("renv/activate.R")
|
||||
|
||||
if (interactive()) {
|
||||
suppressMessages(require(usethis))
|
||||
}
|
14
DESCRIPTION
14
DESCRIPTION
@ -1,6 +1,6 @@
|
||||
Package: REDCapCAST
|
||||
Title: REDCap Castellated Data Handling
|
||||
Version: 23.6.2
|
||||
Version: 23.12.1
|
||||
Authors@R: c(
|
||||
person("Andreas Gammelgaard", "Damsbo", email = "agdamsbo@clin.au.dk", role = c("aut", "cre"),
|
||||
comment = c(ORCID = "0000-0002-7559-1154")),
|
||||
@ -32,7 +32,12 @@ Suggests:
|
||||
knitr,
|
||||
rmarkdown,
|
||||
gt,
|
||||
keyring
|
||||
usethis,
|
||||
pak,
|
||||
ggplot2,
|
||||
roxygen2,
|
||||
rhub,
|
||||
devtools
|
||||
License: GPL (>= 3)
|
||||
Encoding: UTF-8
|
||||
LazyData: true
|
||||
@ -43,12 +48,15 @@ Imports:
|
||||
dplyr,
|
||||
REDCapR,
|
||||
tidyr,
|
||||
tidyselect
|
||||
tidyselect,
|
||||
keyring,
|
||||
purrr
|
||||
Collate:
|
||||
'utils.r'
|
||||
'process_user_input.r'
|
||||
'REDCap_split.r'
|
||||
'ds2dd.R'
|
||||
'easy_redcap.R'
|
||||
'read_redcap_tables.R'
|
||||
'redcap_wider.R'
|
||||
'redcapcast_data.R'
|
||||
|
@ -4,7 +4,9 @@ export(REDCap_split)
|
||||
export(clean_redcap_name)
|
||||
export(d2w)
|
||||
export(ds2dd)
|
||||
export(easy_redcap)
|
||||
export(focused_metadata)
|
||||
export(get_api_key)
|
||||
export(match_fields_to_form)
|
||||
export(read_redcap_tables)
|
||||
export(redcap_wider)
|
||||
@ -14,5 +16,10 @@ export(strsplitx)
|
||||
importFrom(REDCapR,redcap_event_instruments)
|
||||
importFrom(REDCapR,redcap_metadata_read)
|
||||
importFrom(REDCapR,redcap_read)
|
||||
importFrom(dplyr,left_join)
|
||||
importFrom(keyring,key_get)
|
||||
importFrom(keyring,key_list)
|
||||
importFrom(keyring,key_set)
|
||||
importFrom(purrr,reduce)
|
||||
importFrom(tidyr,pivot_wider)
|
||||
importFrom(tidyselect,all_of)
|
||||
|
10
NEWS.md
10
NEWS.md
@ -1,3 +1,13 @@
|
||||
# REDCapCAST 23.12.1
|
||||
|
||||
One new function to ease secure dataset retrieval and a few bug fixes.
|
||||
|
||||
### Functions
|
||||
|
||||
* New: `easy_redcap()` function to ease the retrieval of a dataset with `read_redcap_tables()` with `keyring`-package based key storage, which handles secure API set, storage and retrieval. Relies on a small helper function, `get_api_key()`, which wraps relevant `keyring`-functions. Includes option to cast the data in a wide format with flag `widen.data`.
|
||||
* Fix: `REDCap_split()`: when using this function on its own, supplying a data set with check boxes would fail if metadata is supplied as a tibble. Metadata is now converted to data.frame. Fixed.
|
||||
* Fix: `read_redcap_tables()`: fixed bug when supplying events.
|
||||
|
||||
# REDCapCAST 23.6.2
|
||||
|
||||
This version marks the introduction of a few helper functions to handle database creation.
|
||||
|
59
R/easy_redcap.R
Normal file
59
R/easy_redcap.R
Normal file
@ -0,0 +1,59 @@
|
||||
|
||||
#' Retrieve project API key if stored, if not, set and retrieve
|
||||
#'
|
||||
#' @param key.name character vector of key name
|
||||
#'
|
||||
#' @return character vector
|
||||
#' @importFrom keyring key_list key_get key_set
|
||||
#' @export
|
||||
get_api_key <- function(key.name) {
|
||||
if (key.name %in% keyring::key_list()$service) {
|
||||
keyring::key_get(service = key.name)
|
||||
} else {
|
||||
keyring::key_set(service = key.name, prompt = "Write REDCap API key:")
|
||||
keyring::key_get(service = key.name)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
#' Secure API key storage and data acquisition in one
|
||||
#'
|
||||
#' @param project.name The name of the current project (for key storage with
|
||||
#' `keyring::key_set()`)
|
||||
#' @param widen.data argument to widen the exported data
|
||||
#' @param ... arguments passed on to `REDCapCAST::read_redcap_tables()`
|
||||
#'
|
||||
#' @return data.frame or list depending on widen.data
|
||||
#' @importFrom purrr reduce
|
||||
#' @importFrom dplyr left_join
|
||||
#' @export
|
||||
easy_redcap <- function(project.name, widen.data = TRUE, ...) {
|
||||
project.name <- "ENIGMA"
|
||||
|
||||
key <- get_api_key(key.name = paste0(project.name, "_REDCAP_API"))
|
||||
|
||||
out <- read_redcap_tables(
|
||||
token = key,
|
||||
...
|
||||
)
|
||||
|
||||
all_names <- out |>
|
||||
lapply(names) |>
|
||||
Reduce(c, x = _) |>
|
||||
unique()
|
||||
|
||||
if (widen.data) {
|
||||
if (!any(c("redcap_event_name", "redcap_repeat_instrument") %in%
|
||||
all_names)) {
|
||||
if (length(out) == 1) {
|
||||
out <- out[[1]]
|
||||
} else {
|
||||
out <- out |> purrr::reduce(dplyr::left_join)
|
||||
}
|
||||
} else {
|
||||
out <- out |> redcap_wider()
|
||||
}
|
||||
}
|
||||
|
||||
out
|
||||
}
|
@ -55,7 +55,7 @@ read_redcap_tables <- function(uri,
|
||||
if (!is.null(events)){
|
||||
event_test <- events %in% unique(arm_event_inst$data$unique_event_name)
|
||||
|
||||
if (any(!forms_test)){
|
||||
if (any(!event_test)){
|
||||
stop("Not all supplied event names are valid")
|
||||
}
|
||||
}
|
||||
|
@ -144,6 +144,8 @@ sanitize_split <- function(l,
|
||||
#'
|
||||
match_fields_to_form <- function(metadata, vars_in_data) {
|
||||
|
||||
metadata <- data.frame(metadata)
|
||||
|
||||
field_form_name <- grepl(".*([Ff]ield|[Ff]orm)[._][Nn]ame$",names(metadata))
|
||||
field_type <- grepl(".*[Ff]ield[._][Tt]ype$",names(metadata))
|
||||
|
||||
|
@ -1,13 +1,18 @@
|
||||
results$cran_summary()
|
||||
For a CRAN submission we recommend that you fix all NOTEs, WARNINGs and ERRORs.
|
||||
## Test environments
|
||||
- R-hub windows-x86_64-devel (r-devel)
|
||||
- R-hub ubuntu-gcc-release (r-release)
|
||||
- R-hub fedora-clang-devel (r-devel)
|
||||
|
||||
## R CMD check results
|
||||
❯ On windows-x86_64-devel (r-devel)
|
||||
checking CRAN incoming feasibility ... [15s] NOTE
|
||||
Maintainer: 'Andreas Gammelgaard Damsbo <agdamsbo@clin.au.dk>'
|
||||
|
||||
Found the following (possibly) invalid URLs:
|
||||
URL: https://github.com/SpectrumHealthResearch/REDCapRITS (moved to https://github.com/pegeler/REDCapRITS)
|
||||
From: DESCRIPTION
|
||||
README.md
|
||||
Status: 200
|
||||
Message: OK
|
||||
|
||||
❯ On windows-x86_64-devel (r-devel)
|
||||
checking for non-standard things in the check directory ... NOTE
|
||||
Found the following files/directories:
|
||||
''NULL''
|
||||
|
||||
❯ On windows-x86_64-devel (r-devel)
|
||||
@ -15,8 +20,30 @@ For a CRAN submission we recommend that you fix all NOTEs, WARNINGs and ERRORs.
|
||||
Found the following files/directories:
|
||||
'lastMiKTeXException'
|
||||
|
||||
❯ On ubuntu-gcc-release (r-release)
|
||||
checking CRAN incoming feasibility ... [8s/51s] NOTE
|
||||
Maintainer: ‘Andreas Gammelgaard Damsbo <agdamsbo@clin.au.dk>’
|
||||
|
||||
Found the following (possibly) invalid URLs:
|
||||
URL: https://github.com/SpectrumHealthResearch/REDCapRITS (moved to https://github.com/pegeler/REDCapRITS)
|
||||
From: DESCRIPTION
|
||||
README.md
|
||||
Status: 200
|
||||
Message: OK
|
||||
|
||||
❯ On ubuntu-gcc-release (r-release), fedora-clang-devel (r-devel)
|
||||
checking HTML version of manual ... NOTE
|
||||
Skipping checking HTML validation: no command 'tidy' found
|
||||
|
||||
0 errors ✔ | 0 warnings ✔ | 3 notes ✖
|
||||
❯ On fedora-clang-devel (r-devel)
|
||||
checking CRAN incoming feasibility ... [9s/57s] NOTE
|
||||
Maintainer: ‘Andreas Gammelgaard Damsbo <agdamsbo@clin.au.dk>’
|
||||
|
||||
Found the following (possibly) invalid URLs:
|
||||
URL: https://github.com/SpectrumHealthResearch/REDCapRITS (moved to https://github.com/pegeler/REDCapRITS)
|
||||
From: DESCRIPTION
|
||||
README.md
|
||||
Status: 200
|
||||
Message: OK
|
||||
|
||||
0 errors ✔ | 0 warnings ✔ | 6 notes ✖
|
||||
|
22
man/easy_redcap.Rd
Normal file
22
man/easy_redcap.Rd
Normal file
@ -0,0 +1,22 @@
|
||||
% Generated by roxygen2: do not edit by hand
|
||||
% Please edit documentation in R/easy_redcap.R
|
||||
\name{easy_redcap}
|
||||
\alias{easy_redcap}
|
||||
\title{Secure API key storage and data acquisition in one}
|
||||
\usage{
|
||||
easy_redcap(project.name, widen.data = TRUE, ...)
|
||||
}
|
||||
\arguments{
|
||||
\item{project.name}{The name of the current project (for key storage with
|
||||
`keyring::key_set()`)}
|
||||
|
||||
\item{widen.data}{argument to widen the exported data}
|
||||
|
||||
\item{...}{arguments passed on to `REDCapCAST::read_redcap_tables()`}
|
||||
}
|
||||
\value{
|
||||
data.frame or list depending on widen.data
|
||||
}
|
||||
\description{
|
||||
Secure API key storage and data acquisition in one
|
||||
}
|
17
man/get_api_key.Rd
Normal file
17
man/get_api_key.Rd
Normal file
@ -0,0 +1,17 @@
|
||||
% Generated by roxygen2: do not edit by hand
|
||||
% Please edit documentation in R/easy_redcap.R
|
||||
\name{get_api_key}
|
||||
\alias{get_api_key}
|
||||
\title{Retrieve project API key if stored, if not, set and retrieve}
|
||||
\usage{
|
||||
get_api_key(key.name)
|
||||
}
|
||||
\arguments{
|
||||
\item{key.name}{character vector of key name}
|
||||
}
|
||||
\value{
|
||||
character vector
|
||||
}
|
||||
\description{
|
||||
Retrieve project API key if stored, if not, set and retrieve
|
||||
}
|
634
renv.lock
Normal file
634
renv.lock
Normal file
@ -0,0 +1,634 @@
|
||||
{
|
||||
"R": {
|
||||
"Version": "4.3.1",
|
||||
"Repositories": [
|
||||
{
|
||||
"Name": "CRAN",
|
||||
"URL": "https://cloud.r-project.org"
|
||||
}
|
||||
]
|
||||
},
|
||||
"Packages": {
|
||||
"R6": {
|
||||
"Package": "R6",
|
||||
"Version": "2.5.1",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Requirements": [
|
||||
"R"
|
||||
],
|
||||
"Hash": "470851b6d5d0ac559e9d01bb352b4021"
|
||||
},
|
||||
"REDCapR": {
|
||||
"Package": "REDCapR",
|
||||
"Version": "1.1.0",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Requirements": [
|
||||
"R",
|
||||
"checkmate",
|
||||
"dplyr",
|
||||
"httr",
|
||||
"jsonlite",
|
||||
"magrittr",
|
||||
"methods",
|
||||
"readr",
|
||||
"rlang",
|
||||
"tibble",
|
||||
"tidyr"
|
||||
],
|
||||
"Hash": "e76c401b631961c865b89bb5a4ea3b97"
|
||||
},
|
||||
"askpass": {
|
||||
"Package": "askpass",
|
||||
"Version": "1.2.0",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Requirements": [
|
||||
"sys"
|
||||
],
|
||||
"Hash": "cad6cf7f1d5f6e906700b9d3e718c796"
|
||||
},
|
||||
"assertthat": {
|
||||
"Package": "assertthat",
|
||||
"Version": "0.2.1",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Requirements": [
|
||||
"tools"
|
||||
],
|
||||
"Hash": "50c838a310445e954bc13f26f26a6ecf"
|
||||
},
|
||||
"backports": {
|
||||
"Package": "backports",
|
||||
"Version": "1.4.1",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Requirements": [
|
||||
"R"
|
||||
],
|
||||
"Hash": "c39fbec8a30d23e721980b8afb31984c"
|
||||
},
|
||||
"bit": {
|
||||
"Package": "bit",
|
||||
"Version": "4.0.5",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Requirements": [
|
||||
"R"
|
||||
],
|
||||
"Hash": "d242abec29412ce988848d0294b208fd"
|
||||
},
|
||||
"bit64": {
|
||||
"Package": "bit64",
|
||||
"Version": "4.0.5",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Requirements": [
|
||||
"R",
|
||||
"bit",
|
||||
"methods",
|
||||
"stats",
|
||||
"utils"
|
||||
],
|
||||
"Hash": "9fe98599ca456d6552421db0d6772d8f"
|
||||
},
|
||||
"checkmate": {
|
||||
"Package": "checkmate",
|
||||
"Version": "2.3.1",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Requirements": [
|
||||
"R",
|
||||
"backports",
|
||||
"utils"
|
||||
],
|
||||
"Hash": "c01cab1cb0f9125211a6fc99d540e315"
|
||||
},
|
||||
"cli": {
|
||||
"Package": "cli",
|
||||
"Version": "3.6.2",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Requirements": [
|
||||
"R",
|
||||
"utils"
|
||||
],
|
||||
"Hash": "1216ac65ac55ec0058a6f75d7ca0fd52"
|
||||
},
|
||||
"clipr": {
|
||||
"Package": "clipr",
|
||||
"Version": "0.8.0",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Requirements": [
|
||||
"utils"
|
||||
],
|
||||
"Hash": "3f038e5ac7f41d4ac41ce658c85e3042"
|
||||
},
|
||||
"cpp11": {
|
||||
"Package": "cpp11",
|
||||
"Version": "0.4.7",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Requirements": [
|
||||
"R"
|
||||
],
|
||||
"Hash": "5a295d7d963cc5035284dcdbaf334f4e"
|
||||
},
|
||||
"crayon": {
|
||||
"Package": "crayon",
|
||||
"Version": "1.5.2",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Requirements": [
|
||||
"grDevices",
|
||||
"methods",
|
||||
"utils"
|
||||
],
|
||||
"Hash": "e8a1e41acf02548751f45c718d55aa6a"
|
||||
},
|
||||
"curl": {
|
||||
"Package": "curl",
|
||||
"Version": "5.2.0",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Requirements": [
|
||||
"R"
|
||||
],
|
||||
"Hash": "ce88d13c0b10fe88a37d9c59dba2d7f9"
|
||||
},
|
||||
"dplyr": {
|
||||
"Package": "dplyr",
|
||||
"Version": "1.1.4",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Requirements": [
|
||||
"R",
|
||||
"R6",
|
||||
"cli",
|
||||
"generics",
|
||||
"glue",
|
||||
"lifecycle",
|
||||
"magrittr",
|
||||
"methods",
|
||||
"pillar",
|
||||
"rlang",
|
||||
"tibble",
|
||||
"tidyselect",
|
||||
"utils",
|
||||
"vctrs"
|
||||
],
|
||||
"Hash": "fedd9d00c2944ff00a0e2696ccf048ec"
|
||||
},
|
||||
"fansi": {
|
||||
"Package": "fansi",
|
||||
"Version": "1.0.6",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Requirements": [
|
||||
"R",
|
||||
"grDevices",
|
||||
"utils"
|
||||
],
|
||||
"Hash": "962174cf2aeb5b9eea581522286a911f"
|
||||
},
|
||||
"filelock": {
|
||||
"Package": "filelock",
|
||||
"Version": "1.0.3",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Requirements": [
|
||||
"R"
|
||||
],
|
||||
"Hash": "192053c276525c8495ccfd523aa8f2d1"
|
||||
},
|
||||
"generics": {
|
||||
"Package": "generics",
|
||||
"Version": "0.1.3",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Requirements": [
|
||||
"R",
|
||||
"methods"
|
||||
],
|
||||
"Hash": "15e9634c0fcd294799e9b2e929ed1b86"
|
||||
},
|
||||
"glue": {
|
||||
"Package": "glue",
|
||||
"Version": "1.6.2",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Requirements": [
|
||||
"R",
|
||||
"methods"
|
||||
],
|
||||
"Hash": "4f2596dfb05dac67b9dc558e5c6fba2e"
|
||||
},
|
||||
"hms": {
|
||||
"Package": "hms",
|
||||
"Version": "1.1.3",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Requirements": [
|
||||
"lifecycle",
|
||||
"methods",
|
||||
"pkgconfig",
|
||||
"rlang",
|
||||
"vctrs"
|
||||
],
|
||||
"Hash": "b59377caa7ed00fa41808342002138f9"
|
||||
},
|
||||
"httr": {
|
||||
"Package": "httr",
|
||||
"Version": "1.4.7",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Requirements": [
|
||||
"R",
|
||||
"R6",
|
||||
"curl",
|
||||
"jsonlite",
|
||||
"mime",
|
||||
"openssl"
|
||||
],
|
||||
"Hash": "ac107251d9d9fd72f0ca8049988f1d7f"
|
||||
},
|
||||
"jsonlite": {
|
||||
"Package": "jsonlite",
|
||||
"Version": "1.8.8",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Requirements": [
|
||||
"methods"
|
||||
],
|
||||
"Hash": "e1b9c55281c5adc4dd113652d9e26768"
|
||||
},
|
||||
"keyring": {
|
||||
"Package": "keyring",
|
||||
"Version": "1.3.2",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Requirements": [
|
||||
"R",
|
||||
"R6",
|
||||
"askpass",
|
||||
"assertthat",
|
||||
"filelock",
|
||||
"openssl",
|
||||
"rappdirs",
|
||||
"sodium",
|
||||
"tools",
|
||||
"utils",
|
||||
"yaml"
|
||||
],
|
||||
"Hash": "5cd8cfb2e90c57110b7dd1785c599aba"
|
||||
},
|
||||
"lifecycle": {
|
||||
"Package": "lifecycle",
|
||||
"Version": "1.0.4",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Requirements": [
|
||||
"R",
|
||||
"cli",
|
||||
"glue",
|
||||
"rlang"
|
||||
],
|
||||
"Hash": "b8552d117e1b808b09a832f589b79035"
|
||||
},
|
||||
"magrittr": {
|
||||
"Package": "magrittr",
|
||||
"Version": "2.0.3",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Requirements": [
|
||||
"R"
|
||||
],
|
||||
"Hash": "7ce2733a9826b3aeb1775d56fd305472"
|
||||
},
|
||||
"mime": {
|
||||
"Package": "mime",
|
||||
"Version": "0.12",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Requirements": [
|
||||
"tools"
|
||||
],
|
||||
"Hash": "18e9c28c1d3ca1560ce30658b22ce104"
|
||||
},
|
||||
"openssl": {
|
||||
"Package": "openssl",
|
||||
"Version": "2.1.1",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Requirements": [
|
||||
"askpass"
|
||||
],
|
||||
"Hash": "2a0dc8c6adfb6f032e4d4af82d258ab5"
|
||||
},
|
||||
"pillar": {
|
||||
"Package": "pillar",
|
||||
"Version": "1.9.0",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Requirements": [
|
||||
"cli",
|
||||
"fansi",
|
||||
"glue",
|
||||
"lifecycle",
|
||||
"rlang",
|
||||
"utf8",
|
||||
"utils",
|
||||
"vctrs"
|
||||
],
|
||||
"Hash": "15da5a8412f317beeee6175fbc76f4bb"
|
||||
},
|
||||
"pkgconfig": {
|
||||
"Package": "pkgconfig",
|
||||
"Version": "2.0.3",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Requirements": [
|
||||
"utils"
|
||||
],
|
||||
"Hash": "01f28d4278f15c76cddbea05899c5d6f"
|
||||
},
|
||||
"prettyunits": {
|
||||
"Package": "prettyunits",
|
||||
"Version": "1.2.0",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Requirements": [
|
||||
"R"
|
||||
],
|
||||
"Hash": "6b01fc98b1e86c4f705ce9dcfd2f57c7"
|
||||
},
|
||||
"progress": {
|
||||
"Package": "progress",
|
||||
"Version": "1.2.3",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Requirements": [
|
||||
"R",
|
||||
"R6",
|
||||
"crayon",
|
||||
"hms",
|
||||
"prettyunits"
|
||||
],
|
||||
"Hash": "f4625e061cb2865f111b47ff163a5ca6"
|
||||
},
|
||||
"purrr": {
|
||||
"Package": "purrr",
|
||||
"Version": "1.0.2",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Requirements": [
|
||||
"R",
|
||||
"cli",
|
||||
"lifecycle",
|
||||
"magrittr",
|
||||
"rlang",
|
||||
"vctrs"
|
||||
],
|
||||
"Hash": "1cba04a4e9414bdefc9dcaa99649a8dc"
|
||||
},
|
||||
"rappdirs": {
|
||||
"Package": "rappdirs",
|
||||
"Version": "0.3.3",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Requirements": [
|
||||
"R"
|
||||
],
|
||||
"Hash": "5e3c5dc0b071b21fa128676560dbe94d"
|
||||
},
|
||||
"readr": {
|
||||
"Package": "readr",
|
||||
"Version": "2.1.4",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Requirements": [
|
||||
"R",
|
||||
"R6",
|
||||
"cli",
|
||||
"clipr",
|
||||
"cpp11",
|
||||
"crayon",
|
||||
"hms",
|
||||
"lifecycle",
|
||||
"methods",
|
||||
"rlang",
|
||||
"tibble",
|
||||
"tzdb",
|
||||
"utils",
|
||||
"vroom"
|
||||
],
|
||||
"Hash": "b5047343b3825f37ad9d3b5d89aa1078"
|
||||
},
|
||||
"renv": {
|
||||
"Package": "renv",
|
||||
"Version": "1.0.3",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Requirements": [
|
||||
"utils"
|
||||
],
|
||||
"Hash": "41b847654f567341725473431dd0d5ab"
|
||||
},
|
||||
"rlang": {
|
||||
"Package": "rlang",
|
||||
"Version": "1.1.2",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Requirements": [
|
||||
"R",
|
||||
"utils"
|
||||
],
|
||||
"Hash": "50a6dbdc522936ca35afc5e2082ea91b"
|
||||
},
|
||||
"sodium": {
|
||||
"Package": "sodium",
|
||||
"Version": "1.3.1",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Hash": "dd86d6fd2a01d4eb3777dfdee7076d56"
|
||||
},
|
||||
"stringi": {
|
||||
"Package": "stringi",
|
||||
"Version": "1.8.3",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Requirements": [
|
||||
"R",
|
||||
"stats",
|
||||
"tools",
|
||||
"utils"
|
||||
],
|
||||
"Hash": "058aebddea264f4c99401515182e656a"
|
||||
},
|
||||
"stringr": {
|
||||
"Package": "stringr",
|
||||
"Version": "1.5.1",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Requirements": [
|
||||
"R",
|
||||
"cli",
|
||||
"glue",
|
||||
"lifecycle",
|
||||
"magrittr",
|
||||
"rlang",
|
||||
"stringi",
|
||||
"vctrs"
|
||||
],
|
||||
"Hash": "960e2ae9e09656611e0b8214ad543207"
|
||||
},
|
||||
"sys": {
|
||||
"Package": "sys",
|
||||
"Version": "3.4.2",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Hash": "3a1be13d68d47a8cd0bfd74739ca1555"
|
||||
},
|
||||
"tibble": {
|
||||
"Package": "tibble",
|
||||
"Version": "3.2.1",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Requirements": [
|
||||
"R",
|
||||
"fansi",
|
||||
"lifecycle",
|
||||
"magrittr",
|
||||
"methods",
|
||||
"pillar",
|
||||
"pkgconfig",
|
||||
"rlang",
|
||||
"utils",
|
||||
"vctrs"
|
||||
],
|
||||
"Hash": "a84e2cc86d07289b3b6f5069df7a004c"
|
||||
},
|
||||
"tidyr": {
|
||||
"Package": "tidyr",
|
||||
"Version": "1.3.0",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Requirements": [
|
||||
"R",
|
||||
"cli",
|
||||
"cpp11",
|
||||
"dplyr",
|
||||
"glue",
|
||||
"lifecycle",
|
||||
"magrittr",
|
||||
"purrr",
|
||||
"rlang",
|
||||
"stringr",
|
||||
"tibble",
|
||||
"tidyselect",
|
||||
"utils",
|
||||
"vctrs"
|
||||
],
|
||||
"Hash": "e47debdc7ce599b070c8e78e8ac0cfcf"
|
||||
},
|
||||
"tidyselect": {
|
||||
"Package": "tidyselect",
|
||||
"Version": "1.2.0",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Requirements": [
|
||||
"R",
|
||||
"cli",
|
||||
"glue",
|
||||
"lifecycle",
|
||||
"rlang",
|
||||
"vctrs",
|
||||
"withr"
|
||||
],
|
||||
"Hash": "79540e5fcd9e0435af547d885f184fd5"
|
||||
},
|
||||
"tzdb": {
|
||||
"Package": "tzdb",
|
||||
"Version": "0.4.0",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Requirements": [
|
||||
"R",
|
||||
"cpp11"
|
||||
],
|
||||
"Hash": "f561504ec2897f4d46f0c7657e488ae1"
|
||||
},
|
||||
"utf8": {
|
||||
"Package": "utf8",
|
||||
"Version": "1.2.4",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Requirements": [
|
||||
"R"
|
||||
],
|
||||
"Hash": "62b65c52671e6665f803ff02954446e9"
|
||||
},
|
||||
"vctrs": {
|
||||
"Package": "vctrs",
|
||||
"Version": "0.6.5",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Requirements": [
|
||||
"R",
|
||||
"cli",
|
||||
"glue",
|
||||
"lifecycle",
|
||||
"rlang"
|
||||
],
|
||||
"Hash": "c03fa420630029418f7e6da3667aac4a"
|
||||
},
|
||||
"vroom": {
|
||||
"Package": "vroom",
|
||||
"Version": "1.6.5",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Requirements": [
|
||||
"R",
|
||||
"bit64",
|
||||
"cli",
|
||||
"cpp11",
|
||||
"crayon",
|
||||
"glue",
|
||||
"hms",
|
||||
"lifecycle",
|
||||
"methods",
|
||||
"progress",
|
||||
"rlang",
|
||||
"stats",
|
||||
"tibble",
|
||||
"tidyselect",
|
||||
"tzdb",
|
||||
"vctrs",
|
||||
"withr"
|
||||
],
|
||||
"Hash": "390f9315bc0025be03012054103d227c"
|
||||
},
|
||||
"withr": {
|
||||
"Package": "withr",
|
||||
"Version": "2.5.2",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Requirements": [
|
||||
"R",
|
||||
"grDevices",
|
||||
"graphics",
|
||||
"stats"
|
||||
],
|
||||
"Hash": "4b25e70111b7d644322e9513f403a272"
|
||||
},
|
||||
"yaml": {
|
||||
"Package": "yaml",
|
||||
"Version": "2.3.8",
|
||||
"Source": "Repository",
|
||||
"Repository": "CRAN",
|
||||
"Hash": "29240487a071f535f5e5d5a323b7afbd"
|
||||
}
|
||||
}
|
||||
}
|
7
renv/.gitignore
vendored
Normal file
7
renv/.gitignore
vendored
Normal file
@ -0,0 +1,7 @@
|
||||
library/
|
||||
local/
|
||||
cellar/
|
||||
lock/
|
||||
python/
|
||||
sandbox/
|
||||
staging/
|
1180
renv/activate.R
Normal file
1180
renv/activate.R
Normal file
File diff suppressed because it is too large
Load Diff
19
renv/settings.json
Normal file
19
renv/settings.json
Normal file
@ -0,0 +1,19 @@
|
||||
{
|
||||
"bioconductor.version": null,
|
||||
"external.libraries": [],
|
||||
"ignored.packages": [],
|
||||
"package.dependency.fields": [
|
||||
"Imports",
|
||||
"Depends",
|
||||
"LinkingTo"
|
||||
],
|
||||
"ppm.enabled": null,
|
||||
"ppm.ignored.urls": [],
|
||||
"r.version": null,
|
||||
"snapshot.type": "explicit",
|
||||
"use.cache": true,
|
||||
"vcs.ignore.cellar": true,
|
||||
"vcs.ignore.library": true,
|
||||
"vcs.ignore.local": true,
|
||||
"vcs.manage.ignores": true
|
||||
}
|
25
tests/spelling.Rout.save
Normal file
25
tests/spelling.Rout.save
Normal file
@ -0,0 +1,25 @@
|
||||
|
||||
R version 3.4.1 (2017-06-30) -- "Single Candle"
|
||||
Copyright (C) 2017 The R Foundation for Statistical Computing
|
||||
Platform: x86_64-apple-darwin15.6.0 (64-bit)
|
||||
|
||||
R is free software and comes with ABSOLUTELY NO WARRANTY.
|
||||
You are welcome to redistribute it under certain conditions.
|
||||
Type 'license()' or 'licence()' for distribution details.
|
||||
|
||||
R is a collaborative project with many contributors.
|
||||
Type 'contributors()' for more information and
|
||||
'citation()' on how to cite R or R packages in publications.
|
||||
|
||||
Type 'demo()' for some demos, 'help()' for on-line help, or
|
||||
'help.start()' for an HTML browser interface to help.
|
||||
Type 'q()' to quit R.
|
||||
|
||||
> if(requireNamespace('spelling', quietly = TRUE))
|
||||
+ spelling::spell_check_test(vignettes = TRUE, error = FALSE,
|
||||
+ skip_on_cran = TRUE)
|
||||
All Done!
|
||||
>
|
||||
> proc.time()
|
||||
user system elapsed
|
||||
0.372 0.039 0.408
|
Loading…
Reference in New Issue
Block a user