Right on the heels of the news of 2000 CRAN packages using Rcpp (and also hitting 12.5 of CRAN package, or one in eight), we are happy to announce release 1.0.5 of Rcpp. Since the ten-year anniversary and the 1.0.0 release release in November 2018, we have been sticking to a four-month release cycle. The last release has, however, left us with a particularly bad taste due to some rather peculiar interactions with a very small (but ever so vocal) portion of the user base. So going forward, we will change two things. First off, we reiterate that we have already made rolling releases. Each minor snapshot of the main git branch gets a point releases. Between release 1.0.4 and this 1.0.5 release, there were in fact twelve of those. Each and every one of these was made available via the
drat repo, and we will continue to do so going forward. Releases to CRAN, however, are real work. If they then end up with as much nonsense as the last release 1.0.4, we think it is appropriate to slow things down some more so we intend to now switch to a six-months cycle. As mentioned, interim releases are always just one
install.packages() call with a properly set
repos argument away.
Rcpp has become the most popular way of enhancing R with C or C++ code. As of today, 2002 packages on CRAN depend on Rcpp for making analytical code go faster and further, along with 203 in BioConductor. And per the (partial) logs of CRAN downloads, we are running steady at around one millions downloads per month.
This release features again a number of different pull requests by different contributors covering the full range of API improvements, attributes enhancements, changes to Sugar and helper functions, extended documentation as well as continuous integration deplayment. See the list below for details.
Changes in Rcpp patch release version 1.0.5 (2020-07-01)
Changes in Rcpp API:
A further updated corrected the header include and provided a missing else branch (Mattias Ellert in #1055).
Two more assignments are protected with
Rcpp::Shield(Dirk in #1059).
One call to
absis now properly namespaced with
std::(Uwe Korn in #1069).
String object memory preservation was corrected/simplified (Kevin in #1082).
Changes in Rcpp Attributes:
Changes in Rcpp Sugar:
Changes in Rcpp support functions:
Changes in Rcpp Documentation:
Changes in Rcpp Deployment:
The exceptions test is now partially skipped on Solaris as it already is on Windows (Dirk in #1065).
The default CI runner was upgraded to R 4.0.0 (Dirk).
The CI matrix spans R 3.5, 3.6, r-release and r-devel (Dirk).
Thanks to CRANberries, you can also look at a diff to the previous release. Questions, comments etc should go to the rcpp-devel mailing list off the R-Forge page. Bugs reports are welcome at the GitHub issue tracker as well (where one can also search among open or closed issues); questions are also welcome under
rcpp tag at StackOverflow which also allows searching among the (currently) 2455 previous questions.