[R-pkg-devel] GitHub Action failed re-building 'sos.Rnw'

Spencer Graves @pencer@gr@ve@ @end|ng |rom e||ect|vede|en@e@org
Sun May 23 23:25:55 CEST 2021


Hi, Duncan et al.:


	  I inserted "the lines from the rgl workflow to work around the 
XQuartz issues" that Duncan provided after "env" in TWO places in 
R-CMD-check.yaml with the same result:  GitHub Action worked fine on 
Windows and ubuntu (both release and devel) but failed on macOS 
complaining, "there is no package called 'ks'".


	  HOWEVER, I can NOT see how I even ask for ks.  The error message says:


processing the following file failed: 'sos.Rnw'
Error: Error: Vignette re-building failed.
Execution halted
Error: Error in proc$get_built_file() : Build process failed
Calls: <Anonymous> ... build_package -> with_envvar -> force -> <Anonymous>
Execution halted
Error: Process completed with exit code 1.


	  I can NOT find it with "grep 'ks' sos.Rnw".  It's NOT in DESCRIPTION 
nor NAMESPACE.


	  I do NOT see how I am even asking for it.


	  PROPOSED NEXT STEP:  Do as outlined in 
"https://github.com/ThinkR-open/prepare-for-cran" and submit to CRAN 
with a note on this problem in cran-comments.md if the package passes 
all other tests.


	  Other suggestions?
	  Thanks again, Duncan.
	  Spencer


On 5/23/21 2:36 PM, Duncan Murdoch wrote:
> For ks, if you look here: 
> https://github.com/sbgraves237/sos/runs/2650960959?check_suite_focus=true
> 
> in the "Install Dependencies" section, you'll see these errors:
> 
> trying URL 'https://cloud.r-project.org/src/contrib/ks_1.13.0.tar.gz'
> Content type 'application/x-gzip' length 1076044 bytes (1.0 MB)
> ==================================================
> downloaded 1.0 MB
> 
> * installing *source* package ‘plot3D’ ...
> ** package ‘plot3D’ successfully unpacked and MD5 sums checked
> ** using staged installation
> ** R
> ** data
> *** moving datasets to lazyload DB
> ** inst
> ** byte-compile and prepare package for lazy loading
> Error: Error: .onLoad failed in loadNamespace() for 'tcltk', details:
> ERROR: lazy loading failed for package ‘plot3D’
>    call: fun(libname, pkgname)
> * removing ‘/Users/runner/work/_temp/Library/plot3D’
>    error: X11 library is missing: install XQuartz from www.xquartz.org
> Execution halted
> ERROR: dependency ‘plot3D’ is not available for package ‘ks’
> * removing ‘/Users/runner/work/_temp/Library/ks’
> 
> so the problem is really with plot3D, and indirectly with rgl and tcltk. 
> I'm familiar with problems like that!  Here are the lines from the rgl 
> workflow to work around the XQuartz issues:
> 
>      env:
>        R_REMOTES_NO_ERRORS_FROM_WARNINGS: true
>        _R_CHECK_FORCE_SUGGESTS_: false
>        RSPM: ${{ matrix.config.rspm }}
>        GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
>        RGL_USE_NULL: true
> 
> The last line might be enough for you, but I think the 2nd line
> 
> _R_CHECK_FORCE_SUGGESTS_: false
> 
> may be more important:  you use ks, it imports plot3D, plot3D imports 
> misc3d, but it only suggests rgl and tkrplot:  so that would let ks load 
> without XQuartz support.
> 
> Duncan Murdoch
> 
> On 23/05/2021 3:09 p.m., Spencer Graves wrote:
>> Hi, Duncan et al.:
>>
>>
>>       Thanks again to Duncan.  Your suggestions worked for the LaTeX
>> problem, though it required multiple iterations, adding a total of 7
>> different "tinytex::parse_install" clauses to overcome other LaTeX and
>> pdfTeX errors.
>>
>>
>>       However, macOS still says, "there is no package called 'ks'", even
>> though I added 'install.packages("ks")' as you suggested -- to three
>> different places, all without solving the problem.  I posted this
>> question to
>> "https://community.rstudio.com/new-topic?category=Package%20development&tags=github-actions", 
>>
>> as suggested in line 2 of "~/.github/workflows/R-CMD-check.yaml".  See:
>>
>>
>>       Spencer
>>
>>
>> On 5/23/21 11:03 AM, Duncan Murdoch wrote:
>>> This page
>>>
>>> https://bookdown.org/yihui/rmarkdown-cookbook/install-latex-pkgs.html
>>>
>>> suggests that executing this in R should fix the tikz issue:
>>>
>>> tinytex::parse_install(
>>>     text = "! LaTeX Error: File `tikz.sty' not found."
>>> )
>>>
>>> The "ks" message looks like a missing R package rather than a missing
>>> LaTeX package, so running install.packages("ks") would fix it.
>>>
>>> So the only question is how to do these things in a Github action.  I
>>> don't know if there's a pre-made recipe for this, but this one should do
>>> it:
>>>
>>>         - name: Install tikz.tex and ks
>>>           run: |
>>>             install.packages(c('tinytex', 'ks')) # Maybe tinytex is
>>> already there?
>>>             tinytex::parse_install(
>>>                text = "! LaTeX Error: File `tikz.sty' not found."
>>>             )
>>>           shell: Rscript {0}
>>>
>>> Duncan Murdoch
>>>
>>> On 23/05/2021 11:28 a.m., Spencer Graves wrote:
>>>> Hi, Duncan et al.:
>>>>
>>>>
>>>>        Thanks very much to Duncan for his suggestion.  I did added the
>>>> line
>>>> Duncan suggested in three slightly different places.  That fixed the
>>>> problems with missing tex and pdflatex, but exposed two new problems:
>>>>
>>>>
>>>>        On Windows and ubuntu (both release and devel) I now get:
>>>>
>>>>
>>>> LaTeX Error: File `tikz.sty' not found.
>>>>
>>>>
>>>>        On macOS, I got a different error:
>>>>
>>>>
>>>> there is no package called 'ks'
>>>>
>>>>
>>>>        I added "ks" to "suggests" in DESCRIPTON but still got "no 
>>>> package
>>>> called 'ks'.  And I studied README in https://github.com/r-lib/actions,
>>>> and I did some other searches without figuring out how to fix
>>>> "`tikz.sty' not found."
>>>>
>>>>
>>>>        For more details, see:
>>>>
>>>>
>>>> https://github.com/sbgraves237/sos
>>>>
>>>>
>>>>        Suggestions?
>>>>        Thanks,
>>>>        Spencer
>>>>
>>>>
>>>> On 5/23/21 4:43 AM, Duncan Murdoch wrote:
>>>>> On 22/05/2021 10:05 p.m., Spencer Graves wrote:
>>>>>> Hello:
>>>>>>
>>>>>>
>>>>>>         What do you suggest I do to enable GitHub Action to process
>>>>>> "sos.Rnw"
>>>>>> properly?
>>>>>>
>>>>>>
>>>>>>         The development version of my "sos" package passes "R CMD
>>>>>> check" on
>>>>>> my Mac but fails in all four platforms under GitHub Action on
>>>>>>
>>>>>>
>>>>>> https://github.com/sbgraves237/sos
>>>>>>
>>>>>>
>>>>>>         The error messages on macOS and Ubuntu release and devel all
>>>>>> seems
>>>>>> the same:
>>>>>>
>>>>>>
>>>>>>               * Error: processing vignette 'sos.Rnw' failed with
>>>>>> diagnostics:
>>>>>> Running 'texi2dvi' on 'sos.tex' failed.  Messages: You don't have a
>>>>>> working TeX binary (tex) installed anywhere in your PATH, and 
>>>>>> texi2dvi
>>>>>> cannot proceed without one.
>>>>>>
>>>>>>
>>>>>>         The error message under Windows seemed crudely similar but
>>>>>> different:
>>>>>>
>>>>>>
>>>>>>               * Error: processing vignette 'sos.Rnw' failed with
>>>>>> diagnostics:
>>>>>> pdflatex is not available
>>>>>>
>>>>>>
>>>>>>         What do you suggest?
>>>>>
>>>>> The virtual machines that run Github actions have lots of tools
>>>>> installed, but apparently not LaTeX.  So you need to figure out the
>>>>> "step" to install it.  I'm not currently using Rnw with Github 
>>>>> actions,
>>>>> but by looking at the README for https://github.com/r-lib/actions, I'm
>>>>> pretty sure all you need is to add
>>>>>
>>>>>      - uses: r-lib/actions/setup-tinytex using v1
>>>>>
>>>>> somewhere after
>>>>>
>>>>>      - uses: actions/checkout using master
>>>
>



More information about the R-package-devel mailing list