[R-pkg-devel] is R CMD build --compact-vignettes working as expected?

Ben Bolker bbo|ker @end|ng |rom gm@||@com
Mon Oct 5 19:09:06 CEST 2020


   Am I confused, or doing something wrong, or ... ?

   I have qpdf installed, and am running R CMD build with 
--compact-vignettes, but the PDF in the tarball doesn't seem to be 
compressed despite the fact that the output messages say "compacting 
vignettes ..."


   $ R CMD build --compact-vignettes lme4
* checking for file ‘lme4/DESCRIPTION’ ... OK
* preparing ‘lme4’:
* checking DESCRIPTION meta-information ... OK
* cleaning src
* installing the package to process help pages
* saving partial Rd database
* creating vignettes ... OK
Warning: ‘inst/doc’ files
     ‘lmerperf.html’, ‘lmer.pdf’, ‘PLSvGLS.pdf’, ‘Theory.pdf’
   ignored as vignettes have been rebuilt.
   Run R CMD build with --no-build-vignettes to prevent rebuilding.
* compacting vignettes and other PDF files
* cleaning src
* checking for LF line-endings in source and make files and shell scripts
* checking for empty or unneeded directories
* building ‘lme4_1.1-24.tar.gz’

   The copy of lmer.pdf in the resulting tarball is 900K or so:

$ tar ztvf lme4_1.1-24.tar.gz lme4/inst/doc/lmer.pdf
-rw-r--r-- bolker/bolker 907022 2020-10-05 12:59 lme4/inst/doc/lmer.pdf

   The previously built (and manually compacted) version of lmer.pdf in 
the tarball is 500K:

$ ls -l lme4/inst/doc/lmer.pdf
-rw-r--r-- 1 bolker bolker 495199 Oct  3 22:15 lme4/inst/doc/lmer.pdf

    Is 'R CMD build' confused by the presence of a pre-built PDF in the 
inst/doc directory? Or am I somehow mistaken about how this is supposed 
to work?

    I would just use --no-build-vignettes and submit the tarball with 
the previously built/compressed PDF, but I'm trying to avoid a
"Package has a VignetteBuilder field but no prebuilt vignette index" 
NOTE, which I assume is missing because I built without building 
vignettes ... ?

   As always, enlightenment is welcome.

   cheers
     Ben Bolker



More information about the R-package-devel mailing list