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) 1197 other packages on CRAN, downloaded 37.5 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 605 times according to Google Scholar.
Conrad released a minor
version 14.2.2 yesterday. This followed a bit of recent work a few of us
did in the ensmallen
and mlpack repositories
following the [14.2.0 release]. Use of (member functions)
.min(index)
and .max(index)
was deprecated in
Armadillo in favor of
.index_mix()
and .index_max()
. By now ensmallen and mlpack have been
updated at CRAN. To add some
spice, CRAN emailed that the
(very much unreleased as of now, but coming likely next spring) gcc-15
was unhappy with RcppArmadillo
due to some Armadillo code.
This likely related to the listed gcc-15 C++
change about “Qualified name lookup failure into the current
instantiation”. Anyway, Conrad fixed it within days
and that change too is part of this new version (as is a small behaviour
normalization between the two indexing methods that matters in case of
ties, this was in 14.2.1).
The changes since the last CRAN release are summarised below.
Changes in RcppArmadillo version 14.2.2-1 (2024-12-05)
Upgraded to Armadillo release 14.2.2 (Smooth Caffeine)
Workarounds for regressions in pre-release versions of GCC 15
More selective detection of symmetric/hermitian matrices by various functions
Changes in RcppArmadillo version 14.2.1-1 (2024-11-24) (GitHub Only)
Upgraded to Armadillo release 14.2.1 (Smooth Caffeine)
- Fix for
index_min()
andindex_max()
to ensure that the first index of equal extremum values is found
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.