Winston Chang is now the maintainer.
The default value for the hash
argument of memoise()
is now
taken with an indirection in case memoise()
is called at the
top-level of a namespace (r-lib/rlang#1177).
Fixed a bug in has_cache()
that caused it to get the value unnecessarily. (#123)
Memoise now uses caching objects from the cachem package by default. These caches support automatic pruning, so that they won't grow indefinitely. The older-style cache objects in the memoise package are still supported, but we suggest using new-style caches from cachem. (#115)
Name clashes between function arguments and variables defined when memoising no longer occur (@egnha, #43).
Add Google Cloud Storage support via cache_gcs()
(@MarkEdmondson1234, #59)
Add compress
option for non-memory caches (@coolbutuseless, #71).
Use absolute path in cache file system backend, so user can change working directory after using relative path (@xhdong-umd, #51, #65)
Add drop_cache()
to drop the cached result for particular arguments
(@richardkunze, #78)
Suppress messages of aws.s3::head_object
within cache_s3
's cache_has_key
to avoid printing of 404 messages for new keys (@stelsemeyer, #96).
memoise()
gains a cache=
argument to specify an external cache. Two types
of caches are available, cache_s3()
for amazon S3 and
cache_filesystem()
for a file system cache (#25, @danielecook).memoise()
now signals an error if an already memoised function is used as
input (#4, @richierocks).has_cache()
function added which returns a boolean depending on if the
given call is cached or not (#10, @dkesh).memoise
is called. (Otherwise,
the old behavior is invoked, with a warning.) (#14, @krlmlr)parent.frame()
.is.memoised
now checks if the argument is a function.