You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@arrow.apache.org by "Neal Richardson (Jira)" <ji...@apache.org> on 2021/04/06 21:22:00 UTC

[jira] [Created] (ARROW-12236) [R][CI] Add check that all docs pages are listed in _pkgdown.yml

Neal Richardson created ARROW-12236:
---------------------------------------

             Summary: [R][CI] Add check that all docs pages are listed in _pkgdown.yml
                 Key: ARROW-12236
                 URL: https://issues.apache.org/jira/browse/ARROW-12236
             Project: Apache Arrow
          Issue Type: New Feature
          Components: Continuous Integration, R
            Reporter: Neal Richardson


Our (external) nightly R packaging and docs build is failing to render the pkgdown site: https://github.com/ursa-labs/arrow-r-nightly/runs/2266551062?check_suite_focus=true#step:9:55

This is due to (1) a [new-ish change in pkgdown|https://github.com/r-lib/pkgdown/pull/1395] that errors if topics are not included and (2) the recent addition of FragmentScanOptions, which did not get added to _pkgdown.yml.

We should validate this on our regular CI in order to prevent future issues like this. We often have to add things to _pkgdown.yml right at release time, and it would be better to keep up as we go. Some ideas for how:

* Add a step to an existing R workflow (e.g. https://github.com/apache/arrow/blob/master/.github/workflows/r.yml#L60) that does this check
* Add a new workflow that is triggered only on changes to `r/man` and `r/_pkgdown.yml`
* In either case, this could be done as a bash script, a python script, or an R script. If using R, note that the docker-based CI jobs won't have R installed, so you might want to tack it onto one of the windows jobs (which uses the setup-r action), but then you're in windows. 
* You could install pkgdown and try to build the site, but that's a lot of dependency to download and install just to essentially compare some lines in a yaml file with a directory listing (i.e., make sure that all {{r/man/*.Rd}} have corresponding entries in the reference part of the yml), so python or even a bash script might be more efficient to run. And since this is going to run a lot, it's worth considering how to keep runtime down even if that means more work to set it up.
* If you're scripting this standalone, think you'll need to filter out Rd files that have {{\keyword{internal}}} as pkgdown excludes those from the reference list.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)