Как получить виньет rmarkdown для R-пакета, чтобы избежать предупреждений о CRAN в Solaris и OSX

У меня есть пара R-пакетов на CRAN, которые имеют предупреждения против Solaris (а иногда и OSX), которые связаны с тем, что pandoc не доступен для сборки виньетки. Например, вот результаты ggseas на CRAN и исходный код для виньетки - немного изменились с версии, представленной в CRAN, но не соответствующим образом.

Беглый поиск Google предполагает, что эта проблема распространена. Также легко найти десятки выпусков GitHub для отдельных пакетов, но я не могу найти ничего, что указывало бы на решение. Предположительно, сопровождающие CRAN просто позволяют этому пройти мимо, но это не опрятно, если это случай. Я не люблю отмечать поле, в котором говорится: "Я разрешил все замечания и предупреждения из последнего представления", когда это неверно.

Теперь у некоторых счастливых или опытных людей есть винтовки rmarkdown, которые не вызывают этой проблемы. Например, виньетка tidyr не имеет никаких предупреждений для Solaris и OSX на CRAN. Но я не вижу ничего другого в преамбуле тиджирской виньетки:

---
title: "Tidy data"
output: rmarkdown::html_vignette
vignette: >
  %\VignetteIndexEntry{Tidy data}
  %\VignetteEngine{knitr::rmarkdown}
  %\VignetteEncoding{UTF-8}
---

или в файле DESCRIPTION, который содержит эту строку,

VignetteBuilder: knitr

это отличается от моей виньетки, которая вызывает искры. Вот что я имею:

---
title: "ggseas - seasonal decomposition on the fly"
author: "Peter Ellis"
date: "'r Sys.Date()'"
output: rmarkdown::html_vignette
vignette: >
  %\VignetteIndexEntry{ggseas - seasonal decomposition on the fly}
  %\VignetteEngine{knitr::rmarkdown}
  %\VignetteEncoding{UTF-8}
---

У меня также есть knitr и rmarkdown в "Предложениях" файла DESCRIPTION, что является одним из решений, упомянутых в различных обсуждениях вопросов (часто после этого "но это не исправляет").

Что мне не хватает? В чем секрет предотвращения создания этих предупреждений в CRAN? К сожалению, нелегко поэкспериментировать с этим, поэтому было бы здорово, если бы мы могли получить окончательный ответ здесь для всех людей, обеспокоенных этим.

Редактировать/добавить - полные файлы DESCRIPTION

Хэдли Уикхэм предположил, что проблема, скорее всего, будет в файле DESCRIPTION пакета, а не самой виньетке.

Вот файл ОПИСАНИЕ ggseas, пакет, который генерирует предупреждение:

Package: ggseas
Title: 'stats' for Seasonal Adjustment on the Fly with 'ggplot2'
Version: 0.5.4
[email protected]: c(
   person("Peter", "Ellis", , "[email protected]", c("aut", "cre")),
   person("Christophe", "Sax", role = "ctb")
   )
Maintainer: Peter Ellis <[email protected]>
Description: Provides 'ggplot2' 'stats' that estimate seasonally adjusted series 
    and rolling summaries such as rolling average on the fly for time series.
Depends:
    R (>= 3.1.2), 
    ggplot2 (>= 2.0.0)
Imports:
    seasonal, 
    rlang,
    stats,
    zoo
License: GPL-3
LazyData: true
RoxygenNote: 6.0.1
BugReports: https://github.com/ellisp/ggseas/issues
Suggests: testthat,
    knitr,
    rmarkdown
VignetteBuilder: knitr

Вот файл ОПИСАНИЕ tidyr, пакет, который не генерирует предупреждения:

Package: tidyr
Title: Easily Tidy Data with 'spread()' and 'gather()' Functions
Version: 0.8.1.9000
[email protected]: c(
    person("Hadley", "Wickham", , "[email protected]", c("aut", "cre")),
    person("Lionel", "Henry", , "[email protected]", "aut"),
    person("RStudio", role = "cph")
    )
Description: An evolution of 'reshape2'. It designed specifically for data
    tidying (not general reshaping or aggregating) and works well with
    'dplyr' data pipelines.
License: MIT + file LICENSE
URL: http://tidyr.tidyverse.org,
    https://github.com/tidyverse/tidyr
BugReports: https://github.com/tidyverse/tidyr/issues
Depends: 
    R (>= 3.1)
Imports: 
    dplyr (>= 0.7.0),
    glue,
    magrittr,
    purrr,
    Rcpp,
    rlang,
    stringi,
    tibble,
    tidyselect
Suggests: 
    covr,
    gapminder,
    knitr,
    rmarkdown,
    testthat
LinkingTo: 
    Rcpp
VignetteBuilder: knitr
LazyData: true
Roxygen: list(markdown = TRUE)
RoxygenNote: 6.0.1

Второе редактирование/добавление - воспроизводимое на rhub

Вот что я вижу при использовании rhub::check(...) для платформы Solaris. Здесь есть некоторые подсказки о том, что проблема связана с изображениями, которые соответствуют одному предложению в Twitter (у виньетки tidyr нет изображений). Поскольку в моей виньетке без изображений (это графический пакет) нет смысла, это может оставить меня в тупике.

✔  checking package vignettes in ‘inst/doc
─  checking running R code from vignettes ...
      ‘ggseas.Rmd using ‘UTF-8 ... OK
    NONE
W  checking re-building of vignette outputs
   Error in re-building vignettes:
     ...
   Warning in engine$weave(file, quiet = quiet, encoding = enc) :
     Pandoc (>= 1.12.3) and/or pandoc-citeproc not available. Falling back to R Markdown v1.
   Warning in (function (filename = "Rplot%03d.png", width = 480, height = 480,  :
     unable to open connection to X11 display ''
   Quitting from lines 47-49 (ggseas.Rmd) 
   Error: processing vignette 'ggseas.Rmd' failed with diagnostics:
   unable to start device PNG
   Execution halted

Ответы