[R-pkg-devel] vignette error in debian

Sebastian Meyer @eb@meyer @end|ng |rom |@u@de
Thu Nov 28 18:16:12 CET 2019


I was able to reproduce the vignette error in an R-devel session with this environment variable set. It came from a strange polygon() call with x and y arguments being matrices with list elements.

I cannot test at the moment. Maybe you condition on
class(something) == "matrix"
somewhere in your code? This should be replaced by 
inherits(something, "matrix")
since in future R, matrix objects also formally belong to the array class, so the class vector has length two. See the corresponding blog post by Martin Mächler for further details:
https://developer.r-project.org/Blog/public/2019/11/09/when-you-think-class.-think-again/index.html

Cheers, Sebastian

Am 28. November 2019 14:56:37 MEZ schrieb Fernando Roa <froao using unal.edu.co>:
>Thx Sebastian
>I set _R_CLASS_MATRIX_ARRAY_ to true in console and also in onLoad, but
>could not replicate the error in console.
>In addition, setting _R_CLASS_MATRIX_ARRAY_ to "" in onLoad did not
>solve the problem while checking as cran.
>
>I do not understand how the values I got from the debug print when
>checking
>as cran could result in the error.
>
>Any ideas?
>
>On Thu, Nov 28, 2019 at 3:00 AM Sebastian Meyer <seb.meyer using fau.de>
>wrote:
>
>> This is most likely related to the recently changed class of
>matrices.
>>
>> R> class(matrix(1))
>>
>> returned "matrix" but will return c("matrix", "array") in future
>> versions of R. See the corresponding item in the R-devel NEWS
>>
>> https://stat.ethz.ch/R-manual/R-devel/doc/html/NEWS.html
>>
>> To reproduce the error, you need a fairly recent R-devel and set the
>> environment variable
>>
>> _R_CLASS_MATRIX_ARRAY_=true
>>
>> On CRAN, this configuration is currently only used in the two R-devel
>> flavors which give warnings for your package.
>>
>> Happy debugging!
>>
>>         Sebastian
>>
>>
>> Am 27.11.19 um 23:16 schrieb Fernando Roa:
>> > After Ege answer, I could replicate the error(s): list' object
>cannot be
>> > coerced to type 'double'
>> > with CMD check: bash R-devel.sh CMD check --as-cran
>> > idiogramFISH_1.9.1.tar.gz  in a vmware
>> > debian guest with the r-devel (4.0) version of R installed after:
>> > http://singmann.org/installing-r-devel-on-linux/
>> >
>> > Error does not occur in a R-devel console session installed
>> > in /usr/local/lib/R-devel/bin
>> >
>> > After adding debug prints to the code, problem points to a mapply
>> >
>> > Here are the values I got with debug printing
>> >
>> > labelytoplot<-list(c(0.654545454545455, 0.654545454545455,
>> > 0.763636363636364, 0.763636363636364), c(0.872727272727273,
>> > 0.872727272727273, 0.981818181818182, 0.981818181818182),
>> > c(1.09090909090909, 1.09090909090909, 1.2, 1.2),
>c(1.30909090909091,
>> > 1.30909090909091, 1.41818181818182, 1.41818181818182))
>> > labelxtoplot<-list(c(42.5, 44.75, 44.75, 42.5), c(42.5, 44.75,
>44.75,
>> > 42.5), c(42.5, 44.75, 44.75, 42.5), c(42.5, 44.75, 44.75, 42.5))
>> > borders<-marks<-c("green","blue","yellow","black")
>> >
>> > CODE producing the error in R CMD check only:
>> > # plot(1:50)
>> > mapply(function(x,y,z,w) graphics::polygon(x=x,
>> >                                            y=y,
>> >                                            col=z,
>> >                                            lwd=rep(.5,length(marks)
>)
>> >                                            ,border=w
>> > ),
>> > x = labelxtoplot,
>> > y = labelytoplot
>> > ,z = marks
>> > ,w = borders
>> > )
>> >
>> > Grateful for any guidance ,
>> >
>> >
>> >
>> >
>> >
>> >
>> > On Wed, Nov 27, 2019 at 8:34 AM Ege Rubak <rubak using math.aau.dk>
>wrote:
>> >
>> >> On 27/11/2019 00.22, Fernando Roa wrote:
>> >>> - I used a guest debian 10 in vmware in my system, and couldn't
>> replicate
>> >>> the error installing with R CMD INSTALL ....
>> >>
>> >> I guess you should rather run "R CMD check ..." on the tar.gz file
>to
>> >> reproduce the error.
>> >>
>> >> Hope that helps.
>> >>
>> >> /Ege
>> >>
>> >> ______________________________________________
>> >> R-package-devel using r-project.org mailing list
>> >> https://stat.ethz.ch/mailman/listinfo/r-package-devel
>> >
>> >
>> > Original message:
>> > I got a warning only in debian after submitting package to CRAN.
>> > I want to replicate the vignette warning of debian in the following
>link
>> to
>> > solve it:
>> >
>> > Debian:
>> >
>>
>https://win-builder.r-project.org/incoming_pretest/idiogramFISH_1.9.1_20191126_012524/Debian/00check.log
>> > 1 WARNING
>> >
>> > Warning summary:
>> > "checking re-building of vignette outputs ... [15s/17s] WARNING
>> > Error(s) in re-building vignettes:
>> > 'list' object cannot be coerced to type 'double'" several times
>> > --
>> >
>> > - I used a guest debian 10 in vmware in my system, and couldn't
>replicate
>> > the error installing with R CMD INSTALL ....
>> >
>> > - In R of host, I installed rhub and run
>> > rhub::check_with_sanitizers() # success
>> > rhub::check_on_debian() # does not work because of vignette
>dependencies
>> > not installed
>> > rhub::check(platform = "debian-gcc-devel") # does not work because
>of
>> > vignette dependencies not installed
>> >
>> > https://pastebin.com/wwhbqcSw
>> >
>> > Grateful for any guidance
>> >
>> >
>>
>> ______________________________________________
>> R-package-devel using r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-package-devel
>>



More information about the R-package-devel mailing list