On 12/12/2020 4:08 p.m., Spencer Graves wrote:
Hi, Ben et al.:


On 2020-12-12 13:43, Ben Bolker wrote:
    Apologies if I'm telling you something you already know:

    By default, fda::CRAN() uses the presence of environment variables
matched by the regexp "^_R_" as a heuristic to decide whether it's being
running on CRAN.

    testthat::skip_on_cran()  calls testthat::on_cran() to look for an
environment variable called NOT_CRAN equal to "true". The
devtools::check() machinery automatically sets this variable.


  > testthat::on_cran
Error: 'on_cran' is not an exported object from 'namespace:testthat'


          Besides, on my Mac, I get:


  > testthat:::on_cran()
[1] TRUE


          My Mac is NOT CRAN, and I don't want that function to return TRUE on
my computer unless I explicitly run "R CMD check --on-cran".


    So: fda::CRAN() depends on breakable assumptions, defaults to FALSE
in an empty environment.  skip_on_cran() defaults to TRUE in an empty
environment (but defaults to FALSE in a devtools::check() environment).

          If future changes break fda::CRAN, I will have to deal with it then.


          I'd be happier if the CRAN maintainers would develop a procedure to
make it easier for package maintainers do two things:


                    * Include tests in their package that run longer than the 
time
limit permitted on CRAN.

That's very easy now. Just put them in a "slowtests" directory, and tell R CMD check to use that. How could it be easier?

Duncan Murdoch

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

Reply via email to