From mtmorgan at fhcrc.org  Sun Jun  1 01:20:38 2014
From: mtmorgan at fhcrc.org (Martin Morgan)
Date: Sat, 31 May 2014 16:20:38 -0700
Subject: [Rd] R CMD check for the R code from vignettes
In-Reply-To: <CANROs4c=x7BNDWJ7ObS5pB36+NBGzVmTmN7-94t8T+dowcEA5A@mail.gmail.com>
References: <CANROs4dyoXEUEzouGTsL9sHCMM8RcjYWw9584SUAEYfGntPrFg@mail.gmail.com>	<538885F3.8020807@gmail.com>	<CANROs4eect+qAvXTLEzPhM=X2Eg5R0T-DCUBO6=VDfBFVJNCuQ@mail.gmail.com>	<CADwqtCN2XixFy0H43BeFMU7R_p+sQCaOHBU5W6tXn7Ng7pP1pA@mail.gmail.com>
	<CANROs4c=x7BNDWJ7ObS5pB36+NBGzVmTmN7-94t8T+dowcEA5A@mail.gmail.com>
Message-ID: <538A63C6.5030201@fhcrc.org>

On 05/31/2014 03:52 PM, Yihui Xie wrote:
> Note the test has been done once in weave, since R CMD check will try
> to rebuild vignettes. The problem is whether the related tools in R
> should change their tangle utilities so we can **repeat** the test,
> and it seems the answer is "no" in my eyes.
>
> Regards,
> Yihui
> --
> Yihui Xie <xieyihui at gmail.com>
> Web: http://yihui.name
>
>
> On Sat, May 31, 2014 at 4:54 PM, Gabriel Becker <gmbecker at ucdavis.edu> wrote:
>>
>>
>>
>> On Fri, May 30, 2014 at 9:22 PM, Yihui Xie <xie at yihui.name> wrote:
>>>
>>> Hi Kevin,
>>>
>>>
>>> I tend to adopt Henrik's idea, i.e., to provide vignette
>>> engines that just ignore tangle. At the moment, it seems R CMD check

It is very useful, pedagogically and when reproducing analyses, to be able to 
source() the tangled .R code into an R session, analogous to running example 
code with example(). The documentation for ?Stangle does read

      (Code inside '\Sexpr{}' statements is ignored by 'Stangle'.)

So my 'vote' (recognizing that I don't have one of those) is to incorporate 
\Sexpr{} expressions into the tangled code, or to continue to flag use of Sexpr 
with side effects as errors (indirectly, by source()ing the tangled code), 
rather than writing engines that ignore tangle.

It is very valuable to all parties to write a vignette with code that is fully 
evaluated; otherwise, it is too easy for bit rot to seep in, or to 'fake' it in 
a way that seems innocent but is misleading.

Martin Morgan

>>> is comfortable with vignettes that do not have corresponding R
>>> scripts, and I hope these R scripts will not become mandatory in the
>>> future.
>>
>>
>> I'm not sure this is the right approach. This would essentially make the
>> test optional based on decisions by the package author. I'm not arguing in
>> favor if this particular test, but if package authors are able to turn a
>> test off then the test loses quite a bit of it's value.
>>
>> I think that R CMD check has done a great deal for the R community by
>> presenting a uniform, minimum "barrier to entry" for R packages. Allowing
>> package developers to alter the tests it does (other than the obvious case
>> of their own unit tests) would remove that.
>>
>> That having been said, it seems to me that tangle-like utilities should have
>> the option of extracting inline code, and that during R CMD check that
>> option should *always* be turned on.  That would solve the problem in
>> question while retaining the test would it not?
>>
>> ~G
>
> ______________________________________________
> R-devel at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel
>


-- 
Computational Biology / Fred Hutchinson Cancer Research Center
1100 Fairview Ave. N.
PO Box 19024 Seattle, WA 98109

Location: Arnold Building M1 B861
Phone: (206) 667-2793



[Rd] R CMD check for the R code from vignettes
Martin Morgan