Skip to content

Commit 7d5e92a

Browse files
authored
RcppArmadillo 15.3.9-1 with Armadillo 15.3.9 (aka 15.4-rc1) (#507)
* Armadillo 15.3.91 aka 15.4-rc1 * RcppArmadillo 15.3.91-1
1 parent 7aabac5 commit 7d5e92a

100 files changed

Lines changed: 1847 additions & 1184 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

ChangeLog

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,12 @@
1+
2026-06-16 Dirk Eddelbuettel <edd@debian.org>
2+
3+
* DESCRIPTION (Version, Date): RcppArmadillo 15.3.91-1
4+
* inst/NEWS.Rd: Idem
5+
* configure.ac: Idem
6+
* configure: Idem
7+
8+
* inst/include/armadillo*: Armadillo 15.3.91 aka 15.4-rc1
9+
110
2026-05-29 Dirk Eddelbuettel <edd@debian.org>
211

312
* DESCRIPTION (Version, Date): RcppArmadillo 15.2.7-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.2.7-1
5-
Date: 2026-05-29
4+
Version: 15.3.91-1
5+
Date: 2026-06-16
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.2.7-1.
3+
# Generated by GNU Autoconf 2.72 for RcppArmadillo 15.3.91-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.2.7-1'
607-
PACKAGE_STRING='RcppArmadillo 15.2.7-1'
606+
PACKAGE_VERSION='15.3.91-1'
607+
PACKAGE_STRING='RcppArmadillo 15.3.91-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.2.7-1 to adapt to many kinds of systems.
1226+
'configure' configures RcppArmadillo 15.3.91-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.2.7-1:";;
1288+
short | recursive ) echo "Configuration of RcppArmadillo 15.3.91-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.2.7-1
1369+
RcppArmadillo configure 15.3.91-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.2.7-1, which was
1485+
It was created by RcppArmadillo $as_me 15.3.91-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.2.7-1, which was
3949+
This file was extended by RcppArmadillo $as_me 15.3.91-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.2.7-1
4004+
RcppArmadillo config.status 15.3.91-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.2.7-1],[edd@debian.org])
14+
AC_INIT([RcppArmadillo],[15.3.91-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: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,21 @@
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.3.91-1 (2026-06-19)}{
7+
\itemize{
8+
\item Upgraded to Armadillo release 15.3.91 (15.4-rc1)
9+
\itemize{
10+
\item Added \code{fill::nan}, \code{fill::pos_inf},
11+
\code{fill::neg_inf} as optional fill forms for the Mat class
12+
\item Added \code{.push_back()} for appending elements to vectors
13+
\item Faster handling of \code{find()} within \code{.elem()}
14+
\item Faster element-wise \code{min()} and \code{max()}
15+
\item Faster \code{conv_to} when element types of input and output
16+
objects are the same
17+
}
18+
}
19+
}
20+
621
\section{Changes in RcppArmadillo version 15.2.7-1 (2026-05-29)}{
722
\itemize{
823
\item Upgraded to Armadillo release 15.2.7 (Medium Roast Deluxe)

inst/include/armadillo

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -306,6 +306,7 @@ namespace arma
306306
#include "armadillo_bits/op_orth_null_bones.hpp"
307307
#include "armadillo_bits/op_relational_bones.hpp"
308308
#include "armadillo_bits/op_find_bones.hpp"
309+
#include "armadillo_bits/op_find_aux_bones.hpp"
309310
#include "armadillo_bits/op_find_unique_bones.hpp"
310311
#include "armadillo_bits/op_chol_bones.hpp"
311312
#include "armadillo_bits/op_cx_scalar_bones.hpp"
@@ -765,6 +766,7 @@ namespace arma
765766
#include "armadillo_bits/op_orth_null_meat.hpp"
766767
#include "armadillo_bits/op_relational_meat.hpp"
767768
#include "armadillo_bits/op_find_meat.hpp"
769+
#include "armadillo_bits/op_find_aux_meat.hpp"
768770
#include "armadillo_bits/op_find_unique_meat.hpp"
769771
#include "armadillo_bits/op_chol_meat.hpp"
770772
#include "armadillo_bits/op_cx_scalar_meat.hpp"

inst/include/armadillo_bits/Col_bones.hpp

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,8 @@ class Col : public Mat<eT>
3333
static constexpr bool is_row = false;
3434
static constexpr bool is_xvec = false;
3535

36+
static constexpr bool has_subview = false;
37+
3638
inline Col();
3739
inline Col(const Col<eT>& X);
3840

@@ -67,9 +69,6 @@ class Col : public Mat<eT>
6769
inline Col(Col&& m);
6870
inline Col& operator=(Col&& m);
6971

70-
// inline Col(Mat<eT>&& m);
71-
// inline Col& operator=(Mat<eT>&& m);
72-
7372
inline Col& operator=(const eT val);
7473
inline Col& operator=(const Col& m);
7574

@@ -153,6 +152,7 @@ class Col : public Mat<eT>
153152
arma_warn_unused arma_inline eT& at(const uword in_row, const uword in_col);
154153
arma_warn_unused arma_inline const eT& at(const uword in_row, const uword in_col) const;
155154

155+
inline void push_back(const eT val);
156156

157157
inline constexpr bool is_vec() const { return true; }
158158
inline constexpr bool is_rowvec() const { return false; }
@@ -210,6 +210,8 @@ class Col<eT>::fixed : public Col<eT>
210210
static constexpr bool is_row = false;
211211
static constexpr bool is_xvec = false;
212212

213+
static constexpr bool has_subview = false;
214+
213215
static const uword n_rows; // value provided below the class definition
214216
static const uword n_cols; // value provided below the class definition
215217
static const uword n_elem; // value provided below the class definition
@@ -265,6 +267,8 @@ class Col<eT>::fixed : public Col<eT>
265267
arma_warn_unused arma_inline eT& operator() (const uword in_row, const uword in_col);
266268
arma_warn_unused arma_inline const eT& operator() (const uword in_row, const uword in_col) const;
267269

270+
inline void push_back(const eT) = delete;
271+
268272
arma_warn_unused arma_inline eT* memptr();
269273
arma_warn_unused arma_inline const eT* memptr() const;
270274

inst/include/armadillo_bits/Col_meat.hpp

Lines changed: 19 additions & 58 deletions
Original file line numberDiff line numberDiff line change
@@ -431,64 +431,6 @@ Col<eT>::operator=(Col<eT>&& X)
431431

432432

433433

434-
// template<typename eT>
435-
// inline
436-
// Col<eT>::Col(Mat<eT>&& X)
437-
// : Mat<eT>(arma_vec_indicator(), 1)
438-
// {
439-
// arma_debug_sigprint(arma_str::format("this: %x; X: %x") % this % &X);
440-
//
441-
// if(X.n_cols != 1) { const Mat<eT>& XX = X; Mat<eT>::operator=(XX); return; }
442-
//
443-
// access::rw(Mat<eT>::n_rows) = X.n_rows;
444-
// access::rw(Mat<eT>::n_cols) = 1;
445-
// access::rw(Mat<eT>::n_elem) = X.n_elem;
446-
// access::rw(Mat<eT>::n_alloc) = X.n_alloc;
447-
//
448-
// if( (X.n_alloc > arma_config::mat_prealloc) || (X.mem_state == 1) || (X.mem_state == 2) )
449-
// {
450-
// access::rw(Mat<eT>::mem_state) = X.mem_state;
451-
// access::rw(Mat<eT>::mem) = X.mem;
452-
//
453-
// access::rw(X.n_rows) = 0;
454-
// access::rw(X.n_elem) = 0;
455-
// access::rw(X.n_alloc) = 0;
456-
// access::rw(X.mem_state) = 0;
457-
// access::rw(X.mem) = nullptr;
458-
// }
459-
// else // condition: (X.n_alloc <= arma_config::mat_prealloc) || (X.mem_state == 0) || (X.mem_state == 3)
460-
// {
461-
// (*this).init_cold();
462-
//
463-
// arrayops::copy( (*this).memptr(), X.mem, X.n_elem );
464-
//
465-
// if( (X.mem_state == 0) && (X.n_alloc <= arma_config::mat_prealloc) )
466-
// {
467-
// access::rw(X.n_rows) = 0;
468-
// access::rw(X.n_elem) = 0;
469-
// access::rw(X.mem) = nullptr;
470-
// }
471-
// }
472-
// }
473-
//
474-
//
475-
//
476-
// template<typename eT>
477-
// inline
478-
// Col<eT>&
479-
// Col<eT>::operator=(Mat<eT>&& X)
480-
// {
481-
// arma_debug_sigprint(arma_str::format("this: %x; X: %x") % this % &X);
482-
//
483-
// if(X.n_cols != 1) { const Mat<eT>& XX = X; Mat<eT>::operator=(XX); return *this; }
484-
//
485-
// (*this).steal_mem(X, true);
486-
//
487-
// return *this;
488-
// }
489-
490-
491-
492434
template<typename eT>
493435
inline
494436
Col<eT>&
@@ -1208,6 +1150,25 @@ Col<eT>::at(const uword in_row, const uword) const
12081150

12091151

12101152

1153+
template<typename eT>
1154+
inline
1155+
void
1156+
Col<eT>::push_back(const eT val)
1157+
{
1158+
arma_debug_sigprint();
1159+
1160+
if(Mat<eT>::mem_state != 0)
1161+
{
1162+
arma_conform_check(true, "Col::push_back(): unsupported operation as auxiliary memory is in use");
1163+
1164+
return;
1165+
}
1166+
1167+
Mat<eT>::vec_push_back(val, arma_colvec_indicator());
1168+
}
1169+
1170+
1171+
12111172
template<typename eT>
12121173
inline
12131174
typename Col<eT>::row_iterator

inst/include/armadillo_bits/CubeToMatOp_bones.hpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,8 @@ struct CubeToMatOp : public Base< typename T1::elem_type, CubeToMatOp<T1, op_typ
4040
static constexpr bool is_row = op_type::template traits<T1>::is_row;
4141
static constexpr bool is_col = op_type::template traits<T1>::is_col;
4242
static constexpr bool is_xvec = op_type::template traits<T1>::is_xvec;
43+
44+
static constexpr bool has_subview = T1::has_subview;
4345
};
4446

4547

inst/include/armadillo_bits/Cube_bones.hpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,8 @@ class Cube : public BaseCube< eT, Cube<eT> >
8282

8383
public:
8484

85+
static constexpr bool has_subview = false;
86+
8587
inline ~Cube();
8688
inline Cube();
8789

0 commit comments

Comments
 (0)