Martin et al, I have submitted a patch on bugzilla which fixes all of the examples I could easily find which were not already writing only to temporary files or switching to a temp directory before writing files to the working directory. https://bugs.r-project.org/bugzilla/show_bug.cgi?id=17403
Passes make check-devel so the examples run and the packages that were modified pass check. Best, ~G On Tue, Apr 3, 2018 at 2:37 AM, Martin Maechler <maech...@stat.math.ethz.ch> wrote: > >>>>> Henrik Bengtsson <henrik.bengts...@gmail.com> > >>>>> on Fri, 30 Mar 2018 10:14:04 -0700 writes: > > > So, the proposal would then be to write to tempdir(), > > correct? If so, I see three alternatives: > > > 1. explicitly use file.path(tempdir(), filename), or > > tempfile() everywhere. > > I think it should clearly be '1.', > as both '2.' and '3.' would need new functionality in R. > > Ideally we'd get the patch within a day or two, so we can safely > apply it also to R 3.5.0 alpha (before it turns beta!). > > I think the 'eval.path' argument to example() is a nice idea, > but also changing its default to tempdir() is definitely out of > the question for R 3.5.0. > > Martin > > > > 2. wrap example code in a withTempDir({ ... }) call. > > > 3. Add an 'eval.path' (*) argument to example() and make > > it default to eval.path = tempdir(). This would probably > > be backward compatible and keep the code example clean. > > The downside is when a user runs an example and can't > > locate produced files. (*) or 'wd', 'workdir', ... > > > /Henrik > > > On Fri, Mar 30, 2018 at 9:25 AM, Uwe Ligges > > <lig...@statistik.tu-dortmund.de> wrote: > >> > >> > >> On 30.03.2018 00:08, Duncan Murdoch wrote: > >>> > >>> On 29/03/2018 5:23 PM, Hadley Wickham wrote: > >>>> > >>>> Hi all, > >>>> > >>>> Given the recent CRAN push to prevent examples writing > >>>> to the working directory, is there any interest in > >>>> fixing base R examples that write to the working > >>>> directory? A few candidates are the graphics devices, > >>>> file.create(), writeBin(), writeChar(), write(), and > >>>> saveRDS(). I'm sure there are many more. > >>>> > >>>> One way to catch these naughty examples would be to > >>>> search for unlink() in examples: e.g., > >>>> > >>>> https://github.com/wch/r-source/search?utf8=✓&q=unlink+ > extension%3ARd&type= > <https://github.com/wch/r-source/search?utf8=%E2%9C%93&q=unlink+extension%3ARd&type=> > . > >>>> Of course, simply cleaning up after yourself is not > >>>> sufficient because if those files existed before the > >>>> examples were run, the examples will destroy them. > >>>> > >>> > >>> Why not put together a patch that fixes these? This > >>> doesn't seem to be something that needs discussion, > >>> fixing the bad examples would be a good idea. > >> > >> > >> Seconded. CRAN would not accept these base packages, > >> hence we should urgently give better examples. > >> > >> Best, Uwe > >> > >> > >> > >>> Duncan Murdoch > >>> > >>> ______________________________________________ > >>> R-devel@r-project.org mailing list > >>> https://stat.ethz.ch/mailman/listinfo/r-devel > >> > >> > >> ______________________________________________ > >> R-devel@r-project.org mailing list > >> https://stat.ethz.ch/mailman/listinfo/r-devel > > > ______________________________________________ > > R-devel@r-project.org mailing list > > https://stat.ethz.ch/mailman/listinfo/r-devel > > ______________________________________________ > R-devel@r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-devel > -- Gabriel Becker, Ph.D Scientist Bioinformatics and Computational Biology Genentech Research [[alternative HTML version deleted]] ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel