On 25/02/2022 11:31 a.m., Michał Bojanowski wrote:
Dear colleagues,

Two days after successfully submitting a package to CRAN I received a
message about "additional issues" with the package's C++ code
(clang-UBSAN to be precise) with a two-week deadline to resolve. While
attempting to somewhat blind-foldedly fix the problem I was wondering
whether it is sensible and feasible for base R to:

1. Implement/expose all these memory-related tests (c.f.
https://cran.r-project.org/doc/manuals/r-release/R-exts.html#Checking-memory-access)
to package developers e.g. via options to R CMD check, much like
--use-gct or --use-valgrind are already? Or via a script etc.?

Many users won't be able to run them.

or

2. Expand the chapter
https://cran.r-project.org/doc/manuals/r-release/R-exts.html#Checking-memory-access
with unequivocal and straightforward instructions how to setup and run
these tests locally on different platforms? I believe that the current
version of the manual is inaccessible to anybody but hardcore C/C++
developers while there is a broader spectrum of ppl able to write some
C without the deep understanding of the internals.

I doubt if the instructions in WRE could be simplified and still work.



While I noticed that a similar problem has triggered some heat on
Twitter recently I independently decided to write to you all here to
ask the question above. I believe it might be rather difficult for
package contributors to adhere to tests which they are unable to
execute locally (or by a CI service). Alas, in the end it will end-up
with a developer playing package ping-pong with CRAN maintainers whose
time is a valuable resource.

I think R-hub offers UBSAN services.  Have you tried those?

Duncan Murdoch

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

Reply via email to