openxlsx2 icon indicating copy to clipboard operation
openxlsx2 copied to clipboard

Post release CRAN issues

Open JanMarvin opened this issue 7 months ago • 3 comments

Our CRAN page is a little noisier than usual.

https://cran.r-project.org/web/checks/check_results_openxlsx2.html

Not sure what the ggplot2 warning is supposed to mean and I don’t remember any changes to it. Any ideas @olivroy ? Maybe it’s related to my attempt at rewriting the Basic Vignette. The gcc 12 warning is (at least to my understanding) bogus. The compiler complains, but everything’s fine. I tried with a R 4.1 windows release, but wasn’t able to recreate the issue. It should be gone, once R 4.5 drops.

STRING_PTR note

Related to Rcpp, they are working on an update, but it wont ship with their current release. Nothing we can do.

  File ‘openxlsx2/libs/openxlsx2.so’:
    Found non-API call to R: ‘STRING_PTR’
  
  Compiled code should not call non-API entry points in R.
  
  See ‘Writing portable packages’ in the ‘Writing R Extensions’ manual,
  and section ‘Moving into C API compliance’ for issues with the use of
  non-API entry points.

Vignette error

No idea what is going on

  Errors in running code in vignettes:
  when running code in ‘openxlsx2_charts_manual.Rmd’
    ...
  
  > if (requireNamespace("ggplot2")) {
  +     library(ggplot2)
  +     p <- ggplot(mtcars, aes(x = mpg, fill = as.factor(gear))) + 
  +         ggtitle("Dist ..." ... [TRUNCATED] 
  Loading required namespace: ggplot2
  
    When sourcing ‘openxlsx2_charts_manual.R’:
  Error: file.exists(fileName) is not TRUE
  Execution halted
  
    ‘Update-from-openxlsx.Rmd’ using ‘UTF-8’... [1s/1s] OK
    ‘conditional-formatting.Rmd’ using ‘UTF-8’... [1s/3s] OK
    ‘openxlsx2.Rmd’ using ‘UTF-8’... [1s/1s] OK
    ‘openxlsx2_charts_manual.Rmd’ using ‘UTF-8’... failed
    ‘openxlsx2_formulas_manual.Rmd’ using ‘UTF-8’... [1s/1s] OK
    ‘openxlsx2_read_to_df.Rmd’ using ‘UTF-8’... [1s/1s] OK
    ‘openxlsx2_style_manual.Rmd’ using ‘UTF-8’... [3s/3s] OK

GCC 12.3.0 warning

We've seen this before, I doubt that it is valid

  Found the following significant warnings:
    xlsb_funs.h:587:88: warning: array subscript 'FRTVersionFields[0]' is partly outside array bounds of 'uint16_t [1]' {aka 'short unsigned int [1]'} [-Warray-bounds]
  See 'd:/Rcompile/CRANpkg/local/4.3/openxlsx2.Rcheck/00install.out' for details.
  * used C++ compiler: 'g++.exe (GCC) 12.3.0'

Caused by this: https://github.com/JanMarvin/openxlsx2/blob/fa80047180c386d52a3c676819c41c3694ee9e64/src/xlsb_funs.h#L577-L588

and this https://github.com/JanMarvin/openxlsx2/blob/fa80047180c386d52a3c676819c41c3694ee9e64/src/xlsb_defines.h#L197-L200

According to my understanding that's a false positive in GCC. flags is a uint16_t, we read the first 15 bytes and the last one. Looks fine to me. Though we still could comment the entire conversion, we do not use it, it is only to print some debug information that might be useful in the future.

JanMarvin avatar Jul 08 '24 08:07 JanMarvin