Can't you do it as, e.g. write.table() writes files: Simply require a filename from the user, then you are on the save side. And in your examples / tests, write to some tempfile().

Best,
Uwe Ligges



On 25.08.2017 21:11, Jenny Bryan wrote:
I can't comment on the specific intersection of your plans and CRAN's rules, but
note that you might want to check out the rappdirs package (already on CRAN
and imported by some other packages) as a possible helper for whatever you
decide to do.

https://cran.r-project.org/package=rappdirs

-- Jenny

On Aug 25, 2017, at 8:42 AM, Barbara Lerner <bler...@mtholyoke.edu> wrote:

We are working on a package that collects provenance as an R script
executes, saving the provenance to the file system.  In reading the
rules for submitting packages to CRAN, there is this rule:
Packages should not write in the users’ home filespace, nor anywhere
else on the file system apart from the R session’s temporary directory
(or during installation in the location pointed to by |TMPDIR|: and
such usage should be cleaned up). Installing into the system’s R
installation (e.g., scripts to its bin directory) is not allowed.
Limited exceptions may be allowed in interactive sessions if the
package obtains confirmation from the user.
To use our package, the R programmer calls a function that has an
optional parameter to specify where the provenance is saved.  I have a
few questions about whether this approach will pass CRAN or some other
alternatives we have considered.

1. Currently, we save to the user's file space and provide an optional
parameter to save the provenance somewhere else.  Is this acceptable?

2. A second alternative would be to have the default location be the R
session's temporary directory.  To save in the user's file space, the
user would need to provide a value for the optional parameter mention in
#1.

3. A third alternative would be to do the same as #2 and also ask the
user to confirm that they want to save the provenance before actually
writing to the filesystem.

4. A fourth alternative would be to save the provenance in a database,
which might or might not be on the user's computer.

I would appreciate advice on which of these options is likely to pass
CRAN's rules.  Our package will be of little use if the provenance is
not saved somewhere.

Thanks for any advice.

Barbara

--
<http://www.getpostbox.com>Barbara Lerner
Associate Professor
Computer Science Department
Mount Holyoke College

<http://www.getpostbox.com><http://www.getpostbox.com>

        [[alternative HTML version deleted]]

______________________________________________
R-package-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-package-devel

______________________________________________
R-package-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-package-devel


______________________________________________
R-package-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-package-devel

Reply via email to