beniaminogreen / zoomerjoin

Superlatively-fast fuzzy-joins in R
https://beniamino.org/zoomerjoin/
GNU General Public License v3.0
96 stars 5 forks source link

CRAN issue - Non-API entry points into R #121

Closed beniaminogreen closed 1 month ago

beniaminogreen commented 1 month ago

The CRAN builder is currently showing the following issues when building zoomerjoin:

Version: 0.1.4 Check: compiled code Result: NOTE File ‘zoomerjoin/libs/zoomerjoin.so’: Found non-API calls to R: ‘ENVFLAGS’, ‘FRAME’, ‘HASHTAB’, ‘PRCODE’, ‘PRENV’, ‘PRSEEN’, ‘PRVALUE’, ‘Rf_findVarInFrame3’, ‘SET_BODY’, ‘SET_CLOENV’, ‘SET_ENCLOS’, ‘SET_ENVFLAGS’, ‘SET_FORMALS’, ‘SET_PRCODE’, ‘SET_PRENV’, ‘SET_PRVALUE’, ‘STRING_PTR’, ‘SYMVALUE’, ‘XLENGTH_EX’ Compiled code should not call non-API entry points in R. See ‘Writing portable packages’ in the ‘Writing R Extensions’ manual.

Unsure why this is the case + why CRAN is suddenly giving NOTEs when it was not before (could this be an rextendr issue?). Opening this issue to track my work as I investigate what's going on + to solicit help if anyone is familiar with this issue.

etiennebacher commented 1 month ago

In case you haven't found out already, this is an issue coming from R-devel where they are rearranging a lot of the C entry points and marking a bunch of them as non-API, meaning that they shouldn't be used. Those NOTEs appear because extendr uses some of those non-API calls (see e.g. https://github.com/extendr/extendr/issues/806).

You're clearly not alone on this, see the extendr repo (rlang also has some issues with that). I don't think it would be useful to contact them for now (they are aware of this issue) but I'd suggest you keep an eye on it.

beniaminogreen commented 1 month ago

Fantastic, thanks for flagging that issue. I think I will wait for a resolution from the extendr team. I see there are many packages with similar issues, so hopefully the CRAN team will be lenient about letting us keep the package on CRAN while we wait for a resolution.

CGMossa commented 1 month ago

With #122, I guess this issue is resolved? Fell free to ping us again, but we are most likely aware of when these things happen, because we have r-cmd-check in our CI.

beniaminogreen commented 1 month ago

I think so, thanks for your help with the fix!