[R] Persistent storage between package invocations

Hadley Wickham hadley at rice.edu
Wed Mar 16 14:00:17 CET 2011


> No.  First, please use path.expand("~") for this, and it does not
> necessarily mean the home directory (and in principle it might not expand at
> all).  In practice I think it will always be *a* home directory, but on
> Windows there may be more than one (and watch out for local/roaming profile
> differences).

Ok - I did remember that something like path.expand existed, I just
couldn't find it.  (And I always get confused by the difference
between normalizePath and path.expand).

> Second, it need not be writeable, and so many package authors write rubbish
> in my home directory that I usually arrange it not be writeable to R test
> processes.

So at a minimum I need to check if the "home" directory is writeable,
and fail gracefully if not.

What about using the registry on windows?  Does R provide any
convenience functions for adding/accessing entries?

> If you want something writeable across processes, use dirname(tempdir()) .

I was really looking for options to be persistent between instances -
i.e. so you decide once, and not need to be asked again. In a similar
way, it would be nice if you could choose a CRAN mirror once and then
not be asked again - and not need to know anything about how to set
options during startup.

Hadley

-- 
Assistant Professor / Dobelman Family Junior Chair
Department of Statistics / Rice University
http://had.co.nz/



More information about the R-help mailing list