[Rd] Vignettes with long compute time

Duncan Murdoch murdoch@dunc@n @end|ng |rom gm@||@com
Mon Mar 11 17:12:55 CET 2024


On 11/03/2024 11:43 a.m., Therneau, Terry M., Ph.D. via R-devel wrote:
> Is there a way to include the compiled version of a vignette in the doc directory but mark
> it to NOT be rerun by CRAN?   I think I remember that this is possible, but have forgotton
> how.   (It might even be a false memory.)

You could use a method similar to the testthat::skip_on_cran() approach. 
  Have the long running chunks only run conditional on having a special 
environment variable present.  This would be a little easier with knitr 
than with Sweave, since there you can use expressions for the chunk 
options, but you could always write the code something like this:

   if (Sys.getenv("RUN_SLOW_CHUNKS", 0)) {

     ... the slow code goes here ...

   } else
     cat("This chunk takes several hours to compute.  If you want to run
          it, set the environment variable RUN_SLOW_CHUNKS to 1.\n")

Duncan Murdoch

> 
> Terry T.
> 
> Background:  Beth Atkinson and I are splitting out many of the vignettes from the survival
> package into a separate package survivalVignettes.  There are a few reasons
> 
>    1. Some vignettes use packages outside of the base + recommended set; psueodovalues for
> instance are normally used as input to a subsequent GEE model.    Since survival is itself
> a recommended package, it can't legally host the pseudo.Rnw vignette.
>    2. The set of vignettes for survival is large, and likely to get larger.    It makes
> sense to slim down the size of the package itself.
>    3. It allows us to use Rmd.  (Again, survival can't use anything outside of base +
> recommended).
>    4. We have a couple of 'optional' vignettes that talk about edge cases, useful to some
> people but not worth the size cost of cluttering up the main package.
> 
> The current submission fails due to one vignette in group 4 which takes a looong time to
> run.  This vignette in particular is talking about compute time, and illustrates a cases
> where an O(n^2) case arises.   As sentence that warns the use "of you do this it will take
> hours to run" is a perfect case for a pdf that should not be recreated by R CMD check.
>



More information about the R-devel mailing list