From m@echler @ending from @t@t@m@th@ethz@ch  Wed Nov 21 10:44:47 2018
From: m@echler @ending from @t@t@m@th@ethz@ch (Martin Maechler)
Date: Wed, 21 Nov 2018 10:44:47 +0100
Subject: [Rd] problematic dev.off() after running examples without plots
In-Reply-To: <CAJuCY5yA17yMrYqbcaih5BubeV0dWzR5sgeo=aSgb2z90nTo-w@mail.gmail.com>
References: <CAJuCY5yA17yMrYqbcaih5BubeV0dWzR5sgeo=aSgb2z90nTo-w@mail.gmail.com>
Message-ID: <23541.10511.509933.39426@stat.math.ethz.ch>

>>>>> Thierry Onkelinx via R-devel 
>>>>>     on Tue, 20 Nov 2018 14:16:20 +0100 writes:

    > Dear all, When running R CMD check on our package, we get
    > an error on the examples.

    > Error in grDevices::dev.off() : 
    >  cannot shut down device 1 (the null device)

    > None of the examples in our package generates
    > plots. grDevices::dev.off() is code added by R CMD
    > check. 

Yes, but there's also code added at the very beginning of the
examples R script ( <pkg>-Ex.R ) which opens a pdf device:

  grDevices::pdf.options(width = 7, height = 7, paper = "special", reset = TRUE)
  grDevices::pdf(paste(pkgname, "-Ex.pdf", sep=""), encoding = "ISOLatin1")

and so things should work and do work well for packages without any plots.

You must be doing something particularly strange in some of *your*
examples such as closing all existing devices -- something you should not do:

As a good citizen you close graphic devices that you open but not others.

    > A workaround is to have at least one example which
    > has some plot. Is there a better solution? 

Yes, find the example in your package which does the above
"strange thing" and modify that.

Best,
Martin Maechler
ETH Zurich and R Core Team


    > We are using R 3.5.1

    > Best regards,

    > ir. Thierry Onkelinx Statisticus / Statistician

    > Vlaamse Overheid / Government of Flanders INSTITUUT VOOR
    > NATUUR- EN BOSONDERZOEK / RESEARCH INSTITUTE FOR NATURE
    > AND FOREST Team Biometrie & Kwaliteitszorg / Team
    > Biometrics & Quality Assurance thierry.onkelinx at inbo.be
    > Havenlaan 88 bus 73, 1000 Brussel www.inbo.be

    > ///////////////////////////////////////////////////////////////////////////////////////////
    > To call in the statistician after the experiment is done
    > may be no more than asking him to perform a post-mortem
    > examination: he may be able to say what the experiment
    > died of. ~ Sir Ronald Aylmer Fisher The plural of anecdote
    > is not data. ~ Roger Brinner The combination of some data
    > and an aching desire for an answer does not ensure that a
    > reasonable answer can be extracted from a given body of
    > data.  ~ John Tukey
    > ///////////////////////////////////////////////////////////////////////////////////////////

    > <https://www.inbo.be>

    > 	[[alternative HTML version deleted]]

    > ______________________________________________
    > R-devel at r-project.org mailing list
    > https://stat.ethz.ch/mailman/listinfo/r-devel



[Rd] problematic dev.off() after running examples without plots
Martin Maechler