Skip to content

Commit cc5901b

Browse files
authored
RcppArmadillo 15.4.1-1 with Armadillo 15.4.1 (#508)
* Armadillo 15.4.1 * RcppArmadillo 15.4.1-1 * Tag release as github-only
1 parent b8580cf commit cc5901b

38 files changed

Lines changed: 315 additions & 150 deletions

.github/workflows/ci.yaml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,11 @@ jobs:
3030
- name: Setup
3131
uses: eddelbuettel/github-actions/r-ci@master
3232

33+
- name: Setup ccache for R
34+
uses: eddelbuettel/github-actions/ccache-with-R@master
35+
with:
36+
key: ${{ matrix.name }}-${{ matrix.openmp }}
37+
3338
- name: Configure
3439
run: ./configure; cat src/Makevars
3540

ChangeLog

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,14 @@
1+
2026-07-09 Dirk Eddelbuettel <edd@debian.org>
2+
3+
* DESCRIPTION (Version, Date): RcppArmadillo 15.4.1-1
4+
* inst/NEWS.Rd: Idem
5+
* configure.ac: Idem
6+
* configure: Idem
7+
8+
* inst/include/armadillo_bits/: Armadillo 15.4.1
9+
10+
* .github/workflows/ci.yaml: Enable ccache in matrix
11+
112
2026-06-18 Dirk Eddelbuettel <edd@debian.org>
213

314
* DESCRIPTION (Version, Date): RcppArmadillo 15.4.0-1

DESCRIPTION

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
Package: RcppArmadillo
22
Type: Package
33
Title: 'Rcpp' Integration for the 'Armadillo' Templated Linear Algebra Library
4-
Version: 15.4.0-1
5-
Date: 2026-06-17
4+
Version: 15.4.1-1
5+
Date: 2026-07-09
66
Authors@R: c(person("Dirk", "Eddelbuettel", role = c("aut", "cre"), email = "edd@debian.org",
77
comment = c(ORCID = "0000-0001-6419-907X")),
88
person("Romain", "Francois", role = "aut",

configure

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#! /bin/sh
22
# Guess values for system-dependent variables and create Makefiles.
3-
# Generated by GNU Autoconf 2.72 for RcppArmadillo 15.4.0-1.
3+
# Generated by GNU Autoconf 2.72 for RcppArmadillo 15.4.1-1.
44
#
55
# Report bugs to <edd@debian.org>.
66
#
@@ -603,8 +603,8 @@ MAKEFLAGS=
603603
# Identity of this package.
604604
PACKAGE_NAME='RcppArmadillo'
605605
PACKAGE_TARNAME='rcpparmadillo'
606-
PACKAGE_VERSION='15.4.0-1'
607-
PACKAGE_STRING='RcppArmadillo 15.4.0-1'
606+
PACKAGE_VERSION='15.4.1-1'
607+
PACKAGE_STRING='RcppArmadillo 15.4.1-1'
608608
PACKAGE_BUGREPORT='edd@debian.org'
609609
PACKAGE_URL=''
610610

@@ -1223,7 +1223,7 @@ if test "$ac_init_help" = "long"; then
12231223
# Omit some internal or obsolete options to make the list less imposing.
12241224
# This message is too long to be a string in the A/UX 3.1 sh.
12251225
cat <<_ACEOF
1226-
'configure' configures RcppArmadillo 15.4.0-1 to adapt to many kinds of systems.
1226+
'configure' configures RcppArmadillo 15.4.1-1 to adapt to many kinds of systems.
12271227
12281228
Usage: $0 [OPTION]... [VAR=VALUE]...
12291229
@@ -1285,7 +1285,7 @@ fi
12851285

12861286
if test -n "$ac_init_help"; then
12871287
case $ac_init_help in
1288-
short | recursive ) echo "Configuration of RcppArmadillo 15.4.0-1:";;
1288+
short | recursive ) echo "Configuration of RcppArmadillo 15.4.1-1:";;
12891289
esac
12901290
cat <<\_ACEOF
12911291
@@ -1366,7 +1366,7 @@ fi
13661366
test -n "$ac_init_help" && exit $ac_status
13671367
if $ac_init_version; then
13681368
cat <<\_ACEOF
1369-
RcppArmadillo configure 15.4.0-1
1369+
RcppArmadillo configure 15.4.1-1
13701370
generated by GNU Autoconf 2.72
13711371
13721372
Copyright (C) 2023 Free Software Foundation, Inc.
@@ -1482,7 +1482,7 @@ cat >config.log <<_ACEOF
14821482
This file contains any messages produced by compilers while
14831483
running configure, to aid debugging if configure makes a mistake.
14841484
1485-
It was created by RcppArmadillo $as_me 15.4.0-1, which was
1485+
It was created by RcppArmadillo $as_me 15.4.1-1, which was
14861486
generated by GNU Autoconf 2.72. Invocation command line was
14871487
14881488
$ $0$ac_configure_args_raw
@@ -3946,7 +3946,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
39463946
# report actual input values of CONFIG_FILES etc. instead of their
39473947
# values after options handling.
39483948
ac_log="
3949-
This file was extended by RcppArmadillo $as_me 15.4.0-1, which was
3949+
This file was extended by RcppArmadillo $as_me 15.4.1-1, which was
39503950
generated by GNU Autoconf 2.72. Invocation command line was
39513951
39523952
CONFIG_FILES = $CONFIG_FILES
@@ -4001,7 +4001,7 @@ ac_cs_config_escaped=`printf "%s\n" "$ac_cs_config" | sed "s/^ //; s/'/'\\\\\\\\
40014001
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
40024002
ac_cs_config='$ac_cs_config_escaped'
40034003
ac_cs_version="\\
4004-
RcppArmadillo config.status 15.4.0-1
4004+
RcppArmadillo config.status 15.4.1-1
40054005
configured by $0, generated by GNU Autoconf 2.72,
40064006
with options \\"\$ac_cs_config\\"
40074007

configure.ac

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
AC_PREREQ([2.69])
1212

1313
## Process this file with autoconf to produce a configure script.
14-
AC_INIT([RcppArmadillo],[15.4.0-1],[edd@debian.org])
14+
AC_INIT([RcppArmadillo],[15.4.1-1],[edd@debian.org])
1515

1616
## Set R_HOME, respecting an environment variable if one is set
1717
: ${R_HOME=$(R RHOME)}

inst/NEWS.Rd

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,16 @@
33
\newcommand{\ghpr}{\href{https://github.com/RcppCore/RcppArmadillo/pull/#1}{##1}}
44
\newcommand{\ghit}{\href{https://github.com/RcppCore/RcppArmadillo/issues/#1}{##1}}
55

6+
\section{Changes in RcppArmadillo version 15.4.1-1 [github-only] (2026-07-09)}{
7+
\itemize{
8+
\item Upgraded to Armadillo release 15.4.1 (Medium Roast Agave)
9+
\itemize{
10+
\item Fix for rare infinite recursion bug in sparse version of \code{diagmat()}
11+
\item More efficient checks for aliasing
12+
}
13+
}
14+
}
15+
616
\section{Changes in RcppArmadillo version 15.4.0-1 (2026-06-17)}{
717
\itemize{
818
\item Upgraded to Armadillo release 15.4.0 (Medium Roast Agave)

inst/include/armadillo_bits/Mat_bones.hpp

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -938,6 +938,12 @@ class Mat<eT>::fixed : public Mat<eT>
938938
arma_warn_unused arma_inline eT* memptr();
939939
arma_warn_unused arma_inline const eT* memptr() const;
940940

941+
arma_inline subview_row<eT> row(const uword row_num);
942+
arma_inline const subview_row<eT> row(const uword row_num) const;
943+
944+
arma_inline subview_col<eT> col(const uword col_num);
945+
arma_inline const subview_col<eT> col(const uword col_num) const;
946+
941947
arma_warn_unused arma_inline bool is_vec() const;
942948

943949
inline const Mat<eT>& fill(const eT val);

inst/include/armadillo_bits/Mat_meat.hpp

Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10746,6 +10746,66 @@ Mat<eT>::fixed<fixed_n_rows, fixed_n_cols>::memptr() const
1074610746

1074710747

1074810748

10749+
template<typename eT>
10750+
template<uword fixed_n_rows, uword fixed_n_cols>
10751+
arma_inline
10752+
subview_row<eT>
10753+
Mat<eT>::fixed<fixed_n_rows, fixed_n_cols>::row(const uword row_num)
10754+
{
10755+
arma_debug_sigprint();
10756+
10757+
arma_conform_check_bounds( row_num >= fixed_n_rows, "Mat::row(): index out of bounds" );
10758+
10759+
return subview_row<eT>(*this, row_num);
10760+
}
10761+
10762+
10763+
10764+
template<typename eT>
10765+
template<uword fixed_n_rows, uword fixed_n_cols>
10766+
arma_inline
10767+
const subview_row<eT>
10768+
Mat<eT>::fixed<fixed_n_rows, fixed_n_cols>::row(const uword row_num) const
10769+
{
10770+
arma_debug_sigprint();
10771+
10772+
arma_conform_check_bounds( row_num >= fixed_n_rows, "Mat::row(): index out of bounds" );
10773+
10774+
return subview_row<eT>(*this, row_num);
10775+
}
10776+
10777+
10778+
10779+
template<typename eT>
10780+
template<uword fixed_n_rows, uword fixed_n_cols>
10781+
arma_inline
10782+
subview_col<eT>
10783+
Mat<eT>::fixed<fixed_n_rows, fixed_n_cols>::col(const uword col_num)
10784+
{
10785+
arma_debug_sigprint();
10786+
10787+
arma_conform_check_bounds( col_num >= fixed_n_cols, "Mat::col(): index out of bounds" );
10788+
10789+
return subview_col<eT>(*this, col_num);
10790+
}
10791+
10792+
10793+
10794+
template<typename eT>
10795+
template<uword fixed_n_rows, uword fixed_n_cols>
10796+
arma_inline
10797+
const subview_col<eT>
10798+
Mat<eT>::fixed<fixed_n_rows, fixed_n_cols>::col(const uword col_num) const
10799+
{
10800+
arma_debug_sigprint();
10801+
10802+
arma_conform_check_bounds( col_num >= fixed_n_cols, "Mat::col(): index out of bounds" );
10803+
10804+
return subview_col<eT>(*this, col_num);
10805+
}
10806+
10807+
10808+
1074910809
template<typename eT>
1075010810
template<uword fixed_n_rows, uword fixed_n_cols>
1075110811
arma_inline

inst/include/armadillo_bits/SpBase_bones.hpp

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -52,8 +52,6 @@ struct SpBase
5252
{
5353
arma_inline const derived& get_ref() const;
5454

55-
arma_inline bool is_alias(const SpMat<elem_type>& X) const;
56-
5755
arma_warn_unused inline const SpOp<derived,spop_htrans> t() const; //!< Hermitian transpose
5856
arma_warn_unused inline const SpOp<derived,spop_htrans> ht() const; //!< Hermitian transpose
5957
arma_warn_unused inline const SpOp<derived,spop_strans> st() const; //!< simple transpose

inst/include/armadillo_bits/SpBase_meat.hpp

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -31,16 +31,6 @@ SpBase<elem_type,derived>::get_ref() const
3131

3232

3333

34-
template<typename elem_type, typename derived>
35-
arma_inline
36-
bool
37-
SpBase<elem_type,derived>::is_alias(const SpMat<elem_type>& X) const
38-
{
39-
return (*this).get_ref().is_alias(X);
40-
}
41-
42-
43-
4434
template<typename elem_type, typename derived>
4535
inline
4636
const SpOp<derived, spop_htrans>

0 commit comments

Comments
 (0)