Armadillo is a powerful and expressive C++ template library for linear algebra and scientific computing. It aims towards a good balance between speed and ease of use, has a syntax deliberately close to Matlab, and is useful for algorithm development directly in C++, or quick conversion of research code into production environments. RcppArmadillo integrates this library with the R environment and language–and is widely used by (currently) 1126 other packages on CRAN, downloaded 31.7 million times (per the partial logs from the cloud mirrors of CRAN), and the CSDA paper (preprint / vignette) by Conrad and myself has been cited 569 times according to Google Scholar.
This release ends the practice on asking Armadillo to suppress deprecation warnings. RcppArmadillo, as noted, has a large user base. Sometimes Conrad sometimes made changes without too much of a heads-up so at times it was opportune to not bring those warnings to dozens (or maybe hundreds) of packages at CRAN. Yet we need to balance this with the demonstrable need to call out older deprecated code use. So sixteen months ago, with GitHub issue #391, we started to alert author of 30+ affected packages and supplied either pull requests or emailed patches to all. Eleven months ago GitHub issues #402 was added for a second deprecation.
And the time of making the switch has come. Release 0.12.6.6.1 no
longer defines ARMA_IGNORE_DEPRECATED_MARKER
. So among the
over 1100 packages using RcppArmadillo
at CRAN, around a good dozen or
so were flagged in the upload – but CRAN concurred and let the package
migrate to CRAN.
If you maintain an affected package, consider applying the patch or
pull request now. A simple stop-gap measure also exists by adding
-DARMA_IGNORE_DEPRECATED_MARKER
to
src/Makevars
as either PKG_CPPFLAGS
or
PKG_CXXFLAGS
to reactivate it. But a proper code update,
which is generally simple, may be better. If you are unsure, do not
hesitate to get in touch.
The set of changes since the last CRAN release follows.
Changes in RcppArmadillo version 0.12.6.6.1 (2023-12-03)
Courtesy of my CRANberries, there is a diffstat report relative to previous release. More detailed information is on the RcppArmadillo page. Questions, comments etc should go to the rcpp-devel mailing list off the Rcpp R-Forge page.
If you like this or other open-source work I do, you can sponsor me at GitHub.
This post by Dirk Eddelbuettel originated on his Thinking inside the box blog. Please report excessive re-aggregation in third-party for-profit settings.