[R-pkg-devel] correcting errors in an existing package
Lionel Henry
||one| @end|ng |rom po@|t@co
Tue Apr 4 16:46:46 CEST 2023
> Here is my namespace. It says not to edit, but I had been told to add
> the importFrom. So I didn't use
> devtools::document() for fear roxygen2 would get rid of it.
`devtools::check()` calls `document()` automatically so your changes to
the NAMESPACE file get overwritten. You can see this in the output.
To solve this, add the appropriate roxygen2 tag somewhere in your package e.g.
```
#' @importFrom stats var sd etc
NULL
```
Best,
Lionel
On 4/4/23, Lionel Henry <lionel using posit.co> wrote:
>> Here is my namespace. It says not to edit, but I had been told to add
>> the importFrom. So I didn't use
>> devtools::document() for fear roxygen2 would get rid of it.
>
> `devtools::check()` calls `document()` automatically so your changes to
> the NAMESPACE file get overwritten. You can see this in the output.
>
> To solve this, add the appropriate roxygen2 tag somewhere in your package
> e.g.
>
> ```
> #' @importFrom stats var sd etc
> NULL
> ```
>
> Best,
> Lionel
>
> On 4/4/23, Dennis Boos <boos using ncsu.edu> wrote:
>> Thanks so much to all of you. If you have time, I'm getting really
>> contradictory results.
>>
>> 1. It first seemed to have passed the check in Rstudio (I used
>> device::build() in the R window and then clicked on check in the drop
>> down
>> menu under build).
>>
>> ==> devtools::check(document = FALSE, args = c('--as-cran'))
>> ── R CMD check results Monte.Carlo.se 0.1.1 ────
>> Duration: 56.6s
>> 0 errors ✔ | 0 warnings ✔ | 0 notes ✔
>>
>> R CMD check succeeded
>>
>> However, I then couldn't find the tar.gz where it was supposed to be. It
>> was just gone.
>>
>>
>> Here is my namespace. It says not to edit, but I had been told to add
>> the importFrom. So I didn't use
>> devtools::document() for fear roxygen2 would get rid of it.
>>
>> # Generated by roxygen2: do not edit by hand
>> importFrom("stats", "cor", "sd", "var")
>> export(boot.se)
>> export(jack.se)
>> export(mc.se.matrix)
>> export(mc.se.vector)
>> export(pairwise.se)
>> export(sim.samp)
>>
>> 4. Here is my DESCRIPTION file
>>
>> Package: Monte.Carlo.se
>> Type: Package
>> Title: Monte Carlo Standard Errors
>> Version: 0.1.1
>> Author: Dennis Boos, Kevin Matthew, Jason Osborne
>> Maintainer: Dennis Boos <boos using ncsu.edu>
>> Description: Computes Monte Carlo standard errors for summaries of
>> Monte Carlo output. Summaries and their standard errors are based on
>> columns of Monte Carlo simulation output. Dennis D. Boos and Jason A.
>> Osborne (2015) <doi:10.1111/insr.12087>.
>> License: GPL-3
>> Encoding: UTF-8
>> RoxygenNote: 7.2.3
>> Suggests: knitr, rmarkdown
>> Imports: stats
>> VignetteBuilder: knitr
>>
>> 5. And because of your advice: " It sounds as though you're using
>> Roxygen2 to generate your NAMESPACE file.
>> ff so, you need @imports directives in the comments
>> (conventionally before the function that uses the import, but I think it
>> doesn't really matter where)."
>>
>> So I put "@imports" in the function that had trouble
>>
>> #' @examples
>> #' \donttest{
>> #' # Using the output data matrix hold generated in vignette Example3,
>> #' # calculate jackknife and bootstrap standard errors
>> #' # for the differences and ratios of the CV estimates.
>> #' # First get the components of hold needed.
>> #'
>> #' @imports
>> #'
>> #' trim20 <- function(x){mean(x,.2)} # 20% trimmed mean function
>>
>> Was that the correct thing to do?
>>
>> 6. And here are the failed check results. I'm clueless at this point.
>>
>> ==> devtools::check(document = FALSE, args = c('--as-cran'))
>> ══ Building
>> ════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════Setting
>> env vars:
>> • CFLAGS : -Wall -pedantic -fdiagnostics-color=always
>> • CXXFLAGS : -Wall -pedantic -fdiagnostics-color=always
>> • CXX11FLAGS: -Wall -pedantic -fdiagnostics-color=always
>> • CXX14FLAGS: -Wall -pedantic -fdiagnostics-color=always
>> • CXX17FLAGS: -Wall -pedantic -fdiagnostics-color=always
>> • CXX20FLAGS: -Wall -pedantic -fdiagnostics-color=always── R CMD build
>> ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────✔
>> checking for file 'C:\Users\boos\Dropbox\My PC
>> (boos-home)\Desktop\dennis\R.packages\Monte.Carlo.se.March.2023/DESCRIPTION'
>> ...─ preparing 'Monte.Carlo.se':✔ checking DESCRIPTION
>> meta-information ...─ installing the package to build vignettes✔
>> creating vignettes (3.6s)─ checking for LF line-endings in source and
>> make files and shell scripts─ checking for empty or unneeded
>> directories─ building 'Monte.Carlo.se_0.1.1.tar.gz'
>> ══ Checking
>> ════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════Setting
>> env vars:
>> • _R_CHECK_CRAN_INCOMING_REMOTE_ : FALSE
>> • _R_CHECK_CRAN_INCOMING_ : FALSE
>> • _R_CHECK_FORCE_SUGGESTS_ : FALSE
>> • _R_CHECK_PACKAGES_USED_IGNORE_UNUSED_IMPORTS_: FALSE
>> • NOT_CRAN : true── R CMD check
>> ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
>> using log directory 'C:/Users/boos/Dropbox/My PC
>> (boos-home)/Desktop/dennis/R.packages/Monte.Carlo.se.Rcheck' (793ms)─
>> using R version 4.2.3 (2023-03-15 ucrt)─ using platform:
>> x86_64-w64-mingw32 (64-bit)─ using session charset: UTF-8─ using
>> options '--no-manual --as-cran' (653ms)✔ checking for file
>> 'Monte.Carlo.se/DESCRIPTION'─ checking extension type ... Package─
>> this is package 'Monte.Carlo.se' version '0.1.1'─ package encoding:
>> UTF-8✔ checking package namespace information✔ checking package
>> dependencies (3.2s)✔ checking if this is a source package✔ checking
>> if there is a namespace✔ checking for executable files (491ms)✔
>> checking for hidden files and directories ...✔ checking for portable
>> file names✔ checking serialization versions✔ checking whether
>> package 'Monte.Carlo.se' can be installed (2.9s)✔ checking installed
>> package size ... ✔ checking package directory ...✔ checking for
>> future file timestamps ... ✔ checking 'build' directory✔ checking
>> DESCRIPTION meta-information ... ✔ checking top-level files ...✔
>> checking for left-over files✔ checking index information ... ✔
>> checking package subdirectories ... ✔ checking R files for non-ASCII
>> characters ... ✔ checking R files for syntax errors ... ✔ checking
>> whether the package can be loaded ... ✔ checking whether the package
>> can be loaded with stated dependencies ... ✔ checking whether the
>> package can be unloaded cleanly ... ✔ checking whether the namespace
>> can be loaded with stated dependencies ... ✔ checking whether the
>> namespace can be unloaded cleanly ... ✔ checking loading without
>> being on the library search path ... N checking dependencies in R
>> code ...
>> Namespace in Imports field not imported from: 'stats'
>> All declared Imports should be used.✔ checking S3 generic/method
>> consistency (422ms)✔ checking replacement functions ... ✔ checking
>> foreign function calls ... N checking R code for possible problems
>> (3s)
>> boot.se: no visible global function definition for 'sd'
>> boot.var: no visible global function definition for 'var'
>> corr: no visible global function definition for 'cor'
>> cv: no visible global function definition for 'sd'
>> ratio.mean.sdhat.sd: no visible global function definition for 'sd'
>> ratio.mean.vhat.var: no visible global function definition for 'var'
>> ratio.sd: no visible global function definition for 'sd'
>> ratio.var: no visible global function definition for 'var'
>> varn: no visible global function definition for 'var'
>> Undefined global functions or variables:
>> cor sd var
>> Consider adding
>> importFrom("stats", "cor", "sd", "var")
>> to your NAMESPACE file.✔ checking Rd files ... ✔ checking Rd
>> metadata ... ✔ checking Rd line widths ... ✔ checking Rd
>> cross-references ... ✔ checking for missing documentation entries ...
>> ✔ checking for code/documentation mismatches (562ms)✔ checking Rd
>> \usage sections (661ms)✔ checking Rd contents ... ✔ checking for
>> unstated dependencies in examples ... ✔ checking installed files from
>> 'inst/doc'W checking files in 'vignettes' ...
>> Files in the 'vignettes' directory newer than same file in 'inst/doc':
>> 'Brief-Overview.Rmd'✔ checking examples (573ms)─ checking
>> examples with --run-donttest ... [24s] OK (24.7s)✔ checking for
>> unstated dependencies in vignettes ... ✔ checking package vignettes
>> in 'inst/doc' ...✔ checking re-building of vignette outputs (6.8s)✔
>> checking for non-standard things in the check directory ...✔ checking
>> for detritus in the temp directory
>>
>> See
>> 'C:/Users/boos/Dropbox/My PC
>> (boos-home)/Desktop/dennis/R.packages/Monte.Carlo.se.Rcheck/00check.log'
>> for details.
>>
>> ── R CMD check results
>> ───────────────────────────────────────────────────────────────────────────────────
>> Monte.Carlo.se 0.1.1 ────
>> Duration: 51.5s
>> ❯ checking files in 'vignettes' ... WARNING
>> Files in the 'vignettes' directory newer than same file in 'inst/doc':
>> 'Brief-Overview.Rmd'
>> ❯ checking dependencies in R code ... NOTE
>> Namespace in Imports field not imported from: 'stats'
>> All declared Imports should be used.
>> ❯ checking R code for possible problems ... NOTE
>> boot.se: no visible global function definition for 'sd'
>> boot.var: no visible global function definition for 'var'
>> corr: no visible global function definition for 'cor'
>> cv: no visible global function definition for 'sd'
>> ratio.mean.sdhat.sd: no visible global function definition for 'sd'
>> ratio.mean.vhat.var: no visible global function definition for 'var'
>> ratio.sd: no visible global function definition for 'sd'
>> ratio.var: no visible global function definition for 'var'
>> varn: no visible global function definition for 'var'
>> Undefined global functions or variables:
>> cor sd var
>> Consider adding
>> importFrom("stats", "cor", "sd", "var")
>> to your NAMESPACE file.
>> 0 errors ✔ | 1 warning ✖ | 2 notes ✖
>> Error: R CMD check found WARNINGs
>> Execution halted
>>
>> Exited with status 1.
>>
>>
>>
>>
>>
>> On Sat, Apr 1, 2023 at 5:34 PM Duncan Murdoch <murdoch.duncan using gmail.com>
>> wrote:
>>
>>> On 31/03/2023 4:51 p.m., Dennis Boos wrote:
>>> > Recently I got a message from CRAN that my package Monte.Carlo.se (on
>>> CRAN
>>> > for the last few years) does not pass current testing. There seemed
>>> > to
>>> be
>>> > 2 problems:
>>> >
>>> >
>>> ***************************************************************************************************************
>>> >
>>> > 1. * checking LazyData ... NOTE
>>> > 'LazyData' is specified without a 'data' directory
>>> >
>>> > I have this line in my DESCRIPTION file:
>>> >
>>> > LazyData: true
>>> >
>>> > Should I remove that?
>>> >
>>> >
>>> *****************************************************************************************************************
>>> >
>>> > 2. * checking examples with --run-donttest ... [42s/42s] ERROR
>>> > Running examples in ‘Monte.Carlo.se-Ex.R’ failed
>>> > The error most likely occurred in:
>>> >
>>> >> pairwise.se(hold,xcol=10:12,summary.f=cv)
>>> > Error: object 'hold' not found
>>> > Execution halted
>>> >
>>> >
>>> ***************************************************************************************
>>> >
>>> > So, I put in the R code to generate the data matrix *hold. *But that
>>> > brought a host of other errors when checking in Rstudio with
>>> >
>>> >>
>>> devtools::check("S:/Documents/srcis/a.projects/Monte.Carlo.isr.and.package/Monte.Carlo.se.March.2023")
>>> >
>>> > I started seeing the following list about standard functions like sd.
>>> >
>>> > N checking R code for possible problems (3.4s)
>>> > boot.se: no visible global function definition for 'sd'
>>> > boot.var: no visible global function definition for 'var'
>>> > corr: no visible global function definition for 'cor'
>>> > cv: no visible global function definition for 'sd'
>>> > ratio.mean.sdhat.sd: no visible global function definition for
>>> > 'sd'
>>> > ratio.mean.vhat.var: no visible global function definition for
>>> > 'var'
>>> > ratio.sd: no visible global function definition for 'sd'
>>> > ratio.var: no visible global function definition for 'var'
>>> > varn: no visible global function definition for 'var'
>>> > Undefined global functions or variables:
>>> > cor sd var
>>> > Consider adding
>>> > importFrom("stats", "cor", "sd", "var")
>>> > to your NAMESPACE file.
>>> >
>>> > But you can't add those functions to NAMESPACE. Well I did but
>>> >
>>> > devtools::build()
>>> >
>>> >
>>> > gets rid of it. Also, I keep getting the message in the Rstudio check
>>> >
>>> > WARNING
>>> > 'qpdf' is needed for checks on size reduction of PDFs
>>> >
>>> >
>>> > but I got the latest versions of R and Rstudio and was able to get
>>> > qpdf to install and loaded with library(qpdf), but Rstudio still gives
>>> > that message.
>>> >
>>>
>>> It sounds as though you're using Roxygen2 to generate your NAMESPACE
>>> file. If so, you need @imports directives in the comments
>>> (conventionally before the function that uses the import, but I think it
>>> doesn't really matter where).
>>>
>>> Duncan Murdoch
>>>
>>>
>>
>> --
>> Dennis Boos email: dennis_boos using ncsu.edu
>> Department of Statistics Phone: 919-515-1918
>> NC State University Fax: 919-515-1169
>> Raleigh, NC 27695-8203 http://www4.stat.ncsu.edu/~boos
>>
>> Aim for kindness, tolerance, and humility.
>>
>> [[alternative HTML version deleted]]
>>
>> ______________________________________________
>> 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