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

Duncan Murdoch murdoch@dunc@n @end|ng |rom gm@||@com
Sun May 23 23:44:21 CEST 2021


I don't see where the connection is, but it's almost certainly coming in 
through your unconditional use of "fda::CRAN()".  Since "fda" is not a 
hard requirement, this should be conditional on having it installed.

Duncan Murdoch

On 23/05/2021 5:25 p.m., Spencer Graves wrote:
> 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