Manage Cached Files

Suite of tools for managing cached files, targeting use in other R packages. Uses 'rappdirs' for cross-platform paths. Provides utilities to manage cache directories, including targeting files by path or by key; cached directories can be compressed and uncompressed easily to save disk space.


Project Status: Active - The project has reached a stable, usable state and is being actively developed. cran checks Build Status codecov.io rstudio mirror downloads cran version

hoard - manage cached files

Exposes a single R6 object so that when the package is imported in another package for managing cached files, you don't need to pollute the NAMESPACE with a bunch of functions. (you can always just hoardr::fxn, but with a single object there are other benefits as well [maintaining state, e.g.]).

stable

install.packages("hoardr")

dev version

devtools::install_github("ropensci/hoardr")
library(hoardr)

usage

initialize client

(x <- hoardr::hoard())
#> <hoard> 
#>   path: 
#>   cache path:

set cache path

x$cache_path_set("foobar", type = 'tempdir')
#> [1] "/var/folders/fc/n7g_vrvn0sx_st0p8lxb3ts40000gn/T//RtmpsvaRsk/R/foobar"

make the directory if doesn't exist

x$mkdir()

put a file in the cache

cat("hello world", file = file.path(x$cache_path_get(), "foo.txt"))

list the files

x$list()
#> [1] "/var/folders/fc/n7g_vrvn0sx_st0p8lxb3ts40000gn/T//RtmpsvaRsk/R/foobar/foo.txt"

details

x$details()
#> <cached files>
#>   directory: /var/folders/fc/n7g_vrvn0sx_st0p8lxb3ts40000gn/T//RtmpsvaRsk/R/foobar
#> 
#>   file: /foo.txt
#>   size: 0 mb

delete by file name

x$delete("foo.txt")
x$list()
#> character(0)

todo

see issue 1

Meta

  • Please report any issues or bugs.
  • License: MIT
  • Get citation information for hoardr in R doing citation(package = 'hoardr')
  • Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms.

rofooter

News

hoardr 0.5.2

BUG FIXES

  • Important fix: HoardClient, called by hoardr() function, was storing the cache path in an environment inside the R6 class. If multiple instances of HoardClient exist in the same R session, the cache path for any one then affects all others. Fixed by storing as a private variable int he R6 class instead of in an environment (#14)

hoardr 0.5.0

NEW FEATURES

  • Gains new method on the HoardClient object to check if one or more files exist, returning a data.frame (#10)
  • cache_path_set() method on HoardClient gains new parameter full_path to make the base cache path directly with a full path rather than using the three other parameters (path, type, and prefix) (#12)

hoardr 0.2.0

CHANGES

  • Compliance with CRAN policies about writing to users disk (#6)

MINOR IMPROVEMENTS

  • Improved documentation (#7)

BUG FIXES

  • Change key() and keys() to use file=TRUE (#8)
  • Fix R6 import warning (#5)

hoardr 0.1.0

NEW FEATURES

  • released to CRAN

Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.

install.packages("hoardr")

0.5.2 by Scott Chamberlain, 2 years ago


https://github.com/ropensci/hoardr


Report a bug at https://github.com/ropensci/hoardr/issues


Browse source code at https://github.com/cran/hoardr


Authors: Scott Chamberlain [aut, cre]


Documentation:   PDF Manual  


MIT + file LICENSE license


Imports R6, rappdirs, digest

Suggests roxygen2, testthat, knitr, rmarkdown


Imported by bomrang, crminer, finch, fulltext, getCRUCLdata, pangaear, rcoreoa, rdpla, rdryad, rerddap, rnoaa, scrubr, taxizedb, traits.


See at CRAN