-
-
Notifications
You must be signed in to change notification settings - Fork 211
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Moving towards defining STRICT_R_HEADERS in Rcpp.h #1158
Comments
As a preliminary task, I could adapt the code in 222a17b to download an analyze all these packages to produce a comprehensive list of files and line numbers containing any of these macros. |
You could, but it is a royal pain to set a box up with all the build dependencies (see my comments to Duncan on r-package-devel today) and I do have one set up... I can also build on that box, so I am three patch sets in so it is fairly quick (on simple packages). But should we discuss that elsewhere to not dilute this issue ticket? |
I merged your pull request Dirk, although I'm not sure why you chose those 2 files, from your comment I presume because I was using DBL_MIN? |
Great, thank you! And yes it breaks without the PR I sent as you can check easily if you want: use e.g. the CRAN sources, add The modern higher-end variant (if one is willing to use C++11 or newer) would be to use The changes I have sent to maintainers so far really were almost always one of these two:
|
I merged the pull request. Thanks for all your work! |
Gmisc merged, thanks! This was incredibly smooth, awesome work! |
Thanks! fad has been updated (but not yet on CRAN as more feature are going to be included). |
Same as above (as of 2021-09-03) but now sorted by state and name (case-insensitve) rather than chronologically:
|
Rcpp 1.0.8 is now on CRAN with A sincere Thank You So Much! to everybody who updated their package with the patches or PR we supplied, and shipped an updated version to CRAN. Your help is truly appreciated. |
As previously discussed in the (preliminary, unmerged) pull requests #613 and #615 as well as in issues #612 and (at much greater length) in issue #898, it is desirable for compilations of R extensions to define
STRICT_R_HEADERS
so that terms likeERROR
orMESSAGE
do not clash due to a redefinition, or thatPI
remains undefined, and of course so thatCalloc()
,Realloc()
orFree()
are not defined.However, as the use of the definition has always been an opt-in, some packages have been making use of the definitions that would otherwise have been defined away -- so that we now cannot simply define it as they would then error. The issue ticket #898 discusses two attempts at quantifying just how extended the damage at CRAN would be: about 58 packages in late Sep 2018, about 62 packages in Jul 2019, and and around 51 earlier this month. Based on the earlier discussions some packages did make changes, and that is greatly appreciated.
And after some more discussion in #898 today, the time seems right to try to address this, one-by-one, in the affected packages. There is no rush: if this takes us six or eight or ten months, so be it. It would be nice to get it done, so let's try to make a start.
What follows is a list by package. The list may be wrong, and if a package is included by accident or error in our process we will remove it. The list may be incomplete: if we find other packages we will add them. Otherwise it will list the names of packages that did come up as failing to pass
R CMD check
whenSTRICT_R_HEADERS
was defined by us, and the error is almost always one of an immediate failure to compile. A simple re-definition of the affected symbols will be the solution, and we will aim to provide pull requests as we go along. Help in that process would be appreciated.So give this list, the suggested plan is to submit PRs. And then to follow-up as PRs are folded in addressing the issue, and to 'tick off' each package and maybe mark the version of the package containing the fix and PR. Let's see how it goes, and discuss below what we learn.
not on GitHubat maoguihu/atakrig, patch emailed 2021-04-25, PR #1 send 2021-04-26 too, ack from maintainer 2021-04-26, 'soon', 0.9.8 on CRAN 2021-04-30not on GHat vegmod/medfate, patch emailed 2021-05-03, heard back 2021-05-04, mergedThe text was updated successfully, but these errors were encountered: