re2r being removed from CRAN
kgjerde opened this issue · 9 comments
I have received a mail from the CRAN maintainers because I have a CRAN package that imports re2r:
re2r will unfortunately now be removed/archived by the CRAN maintainers due to CRAN check problems (see below) (some of which seem to be addressed by @Pilipino in #21).
re2r works in many cases much faster than the other available regex implementations in R, so this is very regrettable indeed. I do not myself have the necessary C/C++ etc. competency to fix the issues.
Copied from https://cran.r-project.org/web/checks/check_results_re2r.html on 4 March 2020:
Check Details
Version: 0.2.0
Check: for GNU extensions in Makefiles
Result: NOTE
GNU make is a SystemRequirements.
Flavors: r-devel-linux-x86_64-debian-clang, r-devel-linux-x86_64-debian-gcc, r-devel-linux-x86_64-fedora-clang, r-devel-linux-x86_64-fedora-gcc, r-devel-windows-ix86+x86_64, r-devel-windows-ix86+x86_64-gcc8, r-patched-linux-x86_64, r-patched-solaris-x86, r-release-linux-x86_64, r-release-windows-ix86+x86_64, r-release-osx-x86_64, r-oldrel-windows-ix86+x86_64, r-oldrel-osx-x86_64
Version: 0.2.0
Check: pragmas in C/C++ headers and code
Result: NOTE
Files which contain pragma(s) suppressing diagnostics:
'inst/include/re2/prog.h' 'inst/include/re2/re2.h'
'inst/include/re2/regexp.h' 'src/dfa.cc' 'src/onepass.cc'
Flavors: r-devel-linux-x86_64-debian-clang, r-devel-linux-x86_64-debian-gcc, r-devel-linux-x86_64-fedora-clang, r-devel-linux-x86_64-fedora-gcc, r-devel-windows-ix86+x86_64, r-devel-windows-ix86+x86_64-gcc8, r-patched-linux-x86_64, r-release-linux-x86_64, r-release-windows-ix86+x86_64, r-oldrel-windows-ix86+x86_64
Version: 0.2.0
Check: whether package can be installed
Result: WARN
Found the following significant warnings:
compile.cc:292:69: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘class re2::Prog::Inst’; use assignment or value-initialization instead [-Wclass-memaccess]
regexp.cc:343:33: warning: ‘void* memmove(void*, const void*, size_t)’ writing to an object of type ‘class re2::Regexp’ with no trivial copy-assignment [-Wclass-memaccess]
regexp.cc:344:32: warning: ‘void* memmove(void*, const void*, size_t)’ writing to an object of type ‘class re2::Regexp’ with no trivial copy-assignment [-Wclass-memaccess]
Flavors: r-devel-linux-x86_64-debian-gcc, r-devel-linux-x86_64-fedora-gcc, r-devel-windows-ix86+x86_64-gcc8, r-patched-linux-x86_64, r-release-linux-x86_64
Version: 0.2.0
Check: installed package size
Result: NOTE
installed size is 11.7Mb
sub-directories of 1Mb or more:
doc 1.5Mb
libs 9.0Mb
Flavors: r-devel-linux-x86_64-fedora-clang, r-devel-windows-ix86+x86_64, r-devel-windows-ix86+x86_64-gcc8, r-release-windows-ix86+x86_64, r-release-osx-x86_64, r-oldrel-windows-ix86+x86_64, r-oldrel-osx-x86_64
Version: 0.2.0
Check: for unstated dependencies in ‘tests’
Result: WARN
Warning in deparse(e[[2L]]) :
it is not known that wchar_t is Unicode on this platform
Warning in deparse(e[[2L]]) :
it is not known that wchar_t is Unicode on this platform
Warning in deparse(e[[2L]]) :
it is not known that wchar_t is Unicode on this platform
Warning in deparse(e[[2L]]) :
it is not known that wchar_t is Unicode on this platform
Warning in deparse(e[[2L]]) :
it is not known that wchar_t is Unicode on this platform
Warning in deparse(e[[2L]]) :
it is not known that wchar_t is Unicode on this platform
Warning in deparse(e[[2L]]) :
it is not known that wchar_t is Unicode on this platform
Warning in deparse(e[[2L]]) :
it is not known that wchar_t is Unicode on this platform
Warning in deparse(e[[2L]]) :
it is not known that wchar_t is Unicode on this platform
Warning in deparse(e[[2L]]) :
it is not known that wchar_t is Unicode on this platform
Warning in deparse(e[[2L]]) :
it is not known that wchar_t is Unicode on this platform
Warning in deparse(e[[2L]]) :
it is not known that wchar_t is Unicode on this platform
Warning in deparse(e[[2L]]) :
it is not known that wchar_t is Unicode on this platform
Warning in deparse(e[[2L]]) :
it is not known that wchar_t is Unicode on this platform
Warning in deparse(e[[2L]]) :
it is not known that wchar_t is Unicode on this platform
Warning in deparse(e[[2L]]) :
it is not known that wchar_t is Unicode on this platform
Warning in deparse(e[[2L]]) :
it is not known that wchar_t is Unicode on this platform
Warning in deparse(e[[2L]]) :
it is not known that wchar_t is Unicode on this platform
Warning in deparse(e[[2L]]) :
it is not known that wchar_t is Unicode on this platform
Warning in deparse(e[[2L]]) :
it is not known that wchar_t is Unicode on this platform
Warning in deparse(e[[2L]]) :
it is not known that wchar_t is Unicode on this platform
Warning in deparse(e[[2L]]) :
it is not known that wchar_t is Unicode on this platform
Warning in deparse(e[[2L]]) :
it is not known that wchar_t is Unicode on this platform
Warning in deparse(e[[2L]]) :
it is not known that wchar_t is Unicode on this platform
Warning in deparse(e[[2L]]) :
it is not known that wchar_t is Unicode on this platform
Warning in deparse(e[[2L]]) :
it is not known that wchar_t is Unicode on this platform
Warning in deparse(e[[2L]]) :
it is not known that wchar_t is Unicode on this platform
Warning in deparse(e[[2L]]) :
it is not known that wchar_t is Unicode on this platform
Warning in deparse(e[[2L]]) :
it is not known that wchar_t is Unicode on this platform
Warning in deparse(e[[2L]]) :
it is not known that wchar_t is Unicode on this platform
Warning in deparse(e[[2L]]) :
it is not known that wchar_t is Unicode on this platform
Warning in deparse(e[[2L]]) :
it is not known that wchar_t is Unicode on this platform
Flavor: r-patched-solaris-x86
hi @qinwf if you do not have time to maintain re2r anymore, or you just want a partner to help with maintenance / bug fixes, you may think about training a student to take over maintenance as part of R-GSOC'20 https://github.com/rstats-gsoc/gsoc2020/wiki/table%20of%20proposed%20coding%20projects
-Wpedantic is not an option CRAN uses. In fact, it warns against it as not portable. So when you two say "this blocks my submission" exactly what do you mean?
As of today, 152 packages on CRAN reverse-depend on BH. According to you two that would not be possible (modulo not all 152 using IPC but you get the idea).
That said, always nice to get changes into upstream. I try to update BH once or twice a year.
Now, CRAN uses -Wpedantic on r-devel Debian?
The latest result from r-devel
Dear maintainer,
package re2r_1.0.0.tar.gz does not pass the incoming checks automatically, please see the following pre-tests:
Windows: <https://win-builder.r-project.org/incoming_pretest/re2r_1.0.0_20200313_181345/Windows/00check.log>
Status: 1 NOTE
Debian: <https://win-builder.r-project.org/incoming_pretest/re2r_1.0.0_20200313_181345/Debian/00check.log>
Status: 1 WARNING, 1 NOTE
Last released version's CRAN status: WARN: 6, NOTE: 7
See: <https://CRAN.R-project.org/web/checks/check_results_re2r.html>
CRAN Web: <https://cran.r-project.org/package=re2r>
Please fix all problems and resubmit a fixed version via the webform.
If you are not sure how to fix the problems shown, please ask for help on the R-package-devel mailing list:
<https://stat.ethz.ch/mailman/listinfo/r-package-devel>
If you are fairly certain the rejection is a false positive, please reply-all to this message and explain.
More details are given in the directory:
<https://win-builder.r-project.org/incoming_pretest/re2r_1.0.0_20200313_181345/>
The files will be removed after roughly 7 days.
No strong reverse dependencies to be checked.
Best regards,
CRAN teams' auto-check service
Flavor: r-devel-linux-x86_64-debian-gcc, r-devel-windows-ix86+x86_64
Check: CRAN incoming feasibility, Result: NOTE
Maintainer: 'Qin Wenfeng <mail@qinwenfeng.com>'
License components with restrictions and base license permitting such:
BSD_3_clause + file LICENSE
File 'LICENSE':
YEAR: 2016-2020
COPYRIGHT HOLDER: Qin Wenfeng
Flavor: r-devel-linux-x86_64-debian-gcc
Check: whether package can be installed, Result: WARNING
Found the following significant warnings:
../inst/include/re2/regexp.h:564:5: warning: ISO C++ prohibits anonymous structs [-Wpedantic]
../inst/include/re2/regexp.h:568:5: warning: ISO C++ prohibits anonymous structs [-Wpedantic]
../inst/include/re2/regexp.h:572:5: warning: ISO C++ prohibits anonymous structs [-Wpedantic]
../inst/include/re2/regexp.h:579:5: warning: ISO C++ prohibits anonymous structs [-Wpedantic]
../inst/include/re2/prog.h:158:7: warning: ISO C++ prohibits anonymous structs [-Wpedantic]
dfa.cc:135:25: warning: ISO C++ forbids flexible array member 'next_' [-Wpedantic]
onepass.cc:148:12: warning: ISO C++ forbids flexible array member 'action' [-Wpedantic]
See '/srv/hornik/tmp/CRAN/re2r.Rcheck/00install.out' for details.
related eddelbuettel/bh#56
The solution they used is not available here, because CRAN does not allowpragma GCC diagnostic ignored "-Wpedantic"
hi @qinwf I posted a R-GSOC'20 project idea page for getting re2r back on CRAN, and listed you as a mentor https://github.com/rstats-gsoc/gsoc2020/wiki/re2r-back-on-CRAN is that ok? can you please add/edit that wiki page with some info about what the current problem is, and what other features may be good to work on during a gsoc project?
also this seems to be an issue with upstream (RE2) code.. can you please file an issue with them? I don't see any outstanding issues with that warning, https://github.com/google/re2/issues?q=ISO+C%2B%2B+prohibits+anonymous+structs+