Caching makes styler faster on repeated styling. It does not cache input
but output code. That means if you style code that already complies to a
style guide and you have previously styled that code, it will be quicker.
Code is cached by expression and the cache is shared across all APIs (e.g.
style_text() and Addin.
styler by default uses caching, via the {R.cache} package. You will be
asked you to let it create a permanent cache on your file system that styler
will use in case it is not set that up already for another tool that
uses {R.cache}. We encourage users to let {R.cache} create a permanent
directory for caching, because otherwise, the cache is lost at restart of R.
Note that if you have never authorized {R.cache} to create the cache in a
permanent directory, it will build the cache in a temporary directory. To
create a permanent cache, just open an interactive R session and type
cache_info(). You can see under Location: if a permanent directory is
used and if not, {R.cache} will ask you to create one the first time you
use {R.cache} in an R session.
The cache is specific to a version of styler by default, because different versions potentially format code differently. This means after upgrading styler or a style guide you use, the cache will be re-built.
See cache_info(),
cache_activate(), cache_clear() for utilities to manage the cache. Since
we leverage {R.cache} to manage the cache, you can also use any {R.cache}
functionality to manipulate it.
If you want to set up caching in a CI/CD pipeline, we suggest to set the
{R.cache} root path to a directory for which you have the cache enabled.
The former can be done with R.cache::setCacheRootPath("/path/to/cache"),
the latter can often be set in config files of CI/CD tools, e.g. see the
the Travis documentation on caching.