Skip to content

Commit 68437c6

Browse files
authored
RcppArmadillo 15.5.90 with Armadillo 15.5.90 (#510)
* Armadillo 15.4.90, a first rc for 15.6.0 * RcppArmadillo 15.5.90-1 with Armadillo 15.5.90
1 parent 094b493 commit 68437c6

36 files changed

Lines changed: 1085 additions & 808 deletions

‎ChangeLog‎

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,12 @@
1+
2026-09-03 Dirk Eddelbuettel <edd@debian.org>
2+
3+
* DESCRIPTION (Version, Date): RcppArmadillo 15.5.90-1
4+
* inst/NEWS.Rd: Idem
5+
* configure.ac: Idem
6+
* configure: Idem
7+
8+
* inst/include/armadillo*: Armadillo 15.5.90 aka 15.6.0-rc0
9+
110
2026-07-25 Dirk Eddelbuettel <edd@debian.org>
211

312
* DESCRIPTION (Version, Date): RcppArmadillo 15.4.2-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.2-1
5-
Date: 2026-07-25
4+
Version: 15.5.90-1
5+
Date: 2026-09-03
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.2-1.
3+
# Generated by GNU Autoconf 2.72 for RcppArmadillo 15.5.90-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.2-1'
607-
PACKAGE_STRING='RcppArmadillo 15.4.2-1'
606+
PACKAGE_VERSION='15.5.90-1'
607+
PACKAGE_STRING='RcppArmadillo 15.5.90-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.2-1 to adapt to many kinds of systems.
1226+
'configure' configures RcppArmadillo 15.5.90-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.2-1:";;
1288+
short | recursive ) echo "Configuration of RcppArmadillo 15.5.90-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.2-1
1369+
RcppArmadillo configure 15.5.90-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.2-1, which was
1485+
It was created by RcppArmadillo $as_me 15.5.90-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.2-1, which was
3949+
This file was extended by RcppArmadillo $as_me 15.5.90-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.2-1
4004+
RcppArmadillo config.status 15.5.90-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.2-1],[edd@debian.org])
14+
AC_INIT([RcppArmadillo],[15.5.90-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: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,20 @@
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.5.90-1 (2026-09-03)}{
7+
\itemize{
8+
\item Upgraded to Armadillo release 15.5.90 (experimental)
9+
\itemize{
10+
\item Expanded \code{solve()} with \code{solve_opts::scale_thresh}
11+
option to widen detection of poorly conditioned systems
12+
\item Expanded \code{trans()} and \code{.t()} to handle cubes
13+
\item Added \code{permute()} to rearrange dimensions of cubes
14+
(generalised transpose)
15+
\item Added \code{cubemul()} for batched matrix multiplication of cube slices
16+
}
17+
}
18+
}
19+
620
\section{Changes in RcppArmadillo version 15.4.2-1 (2026-07-25)}{
721
\itemize{
822
\item Upgraded to Armadillo release 15.4.2 (Medium Roast Agave)

‎inst/include/armadillo‎

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -342,6 +342,7 @@ namespace arma
342342
#include "armadillo_bits/op_row_as_mat_bones.hpp"
343343
#include "armadillo_bits/op_col_as_mat_bones.hpp"
344344
#include "armadillo_bits/op_accu_bones.hpp"
345+
#include "armadillo_bits/op_permute_bones.hpp"
345346
#include "armadillo_bits/op_sp_plus_bones.hpp"
346347
#include "armadillo_bits/op_sp_minus_bones.hpp"
347348
#include "armadillo_bits/op_sp_sum_bones.hpp"
@@ -381,6 +382,7 @@ namespace arma
381382
#include "armadillo_bits/glue_mvnrnd_bones.hpp"
382383
#include "armadillo_bits/glue_quantile_bones.hpp"
383384
#include "armadillo_bits/glue_powext_bones.hpp"
385+
#include "armadillo_bits/glue_cubemul_bones.hpp"
384386

385387
#include "armadillo_bits/gmm_misc_bones.hpp"
386388
#include "armadillo_bits/gmm_diag_bones.hpp"
@@ -616,6 +618,8 @@ namespace arma
616618
#include "armadillo_bits/fn_powext.hpp"
617619
#include "armadillo_bits/fn_diags_spdiags.hpp"
618620
#include "armadillo_bits/fn_balance.hpp"
621+
#include "armadillo_bits/fn_permute.hpp"
622+
#include "armadillo_bits/fn_cubemul.hpp"
619623

620624
#include "armadillo_bits/fn_speye.hpp"
621625
#include "armadillo_bits/fn_spones.hpp"
@@ -802,6 +806,7 @@ namespace arma
802806
#include "armadillo_bits/op_row_as_mat_meat.hpp"
803807
#include "armadillo_bits/op_col_as_mat_meat.hpp"
804808
#include "armadillo_bits/op_accu_meat.hpp"
809+
#include "armadillo_bits/op_permute_meat.hpp"
805810
#include "armadillo_bits/op_sp_plus_meat.hpp"
806811
#include "armadillo_bits/op_sp_minus_meat.hpp"
807812
#include "armadillo_bits/op_sp_sum_meat.hpp"
@@ -841,6 +846,7 @@ namespace arma
841846
#include "armadillo_bits/glue_mvnrnd_meat.hpp"
842847
#include "armadillo_bits/glue_quantile_meat.hpp"
843848
#include "armadillo_bits/glue_powext_meat.hpp"
849+
#include "armadillo_bits/glue_cubemul_meat.hpp"
844850

845851
#include "armadillo_bits/gmm_misc_meat.hpp"
846852
#include "armadillo_bits/gmm_diag_meat.hpp"

‎inst/include/armadillo_bits/BaseCube_bones.hpp‎

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,10 @@ struct BaseCube
5353
{
5454
arma_inline const derived& get_ref() const;
5555

56+
arma_warn_unused inline const OpCube<derived,op_htrans> t() const;
57+
arma_warn_unused inline const OpCube<derived,op_htrans> ht() const;
58+
arma_warn_unused inline const OpCube<derived,op_strans> st() const;
59+
5660
arma_cold inline void print( const std::string extra_text = "") const;
5761
arma_cold inline void print(std::ostream& user_stream, const std::string extra_text = "") const;
5862

‎inst/include/armadillo_bits/BaseCube_meat.hpp‎

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

3232

3333

34+
template<typename elem_type, typename derived>
35+
inline
36+
const OpCube<derived,op_htrans>
37+
BaseCube<elem_type,derived>::t() const
38+
{
39+
return OpCube<derived,op_htrans>( static_cast<const derived&>(*this) );
40+
}
41+
42+
43+
44+
template<typename elem_type, typename derived>
45+
inline
46+
const OpCube<derived,op_htrans>
47+
BaseCube<elem_type,derived>::ht() const
48+
{
49+
return OpCube<derived,op_htrans>( static_cast<const derived&>(*this) );
50+
}
51+
52+
53+
54+
template<typename elem_type, typename derived>
55+
inline
56+
const OpCube<derived,op_strans>
57+
BaseCube<elem_type,derived>::st() const
58+
{
59+
return OpCube<derived,op_strans>( static_cast<const derived&>(*this) );
60+
}
61+
62+
63+
3464
template<typename elem_type, typename derived>
3565
inline
3666
void

‎inst/include/armadillo_bits/Cube_bones.hpp‎

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -406,14 +406,6 @@ class Cube : public BaseCube< eT, Cube<eT> >
406406
arma_cold inline bool load(const hdf5_name& spec, const file_type type = hdf5_binary);
407407
arma_cold inline bool load( std::istream& is, const file_type type = auto_detect);
408408

409-
[[deprecated("use save() instead")]] inline bool quiet_save(const std::string name, const file_type type = arma_binary) const;
410-
[[deprecated("use save() instead")]] inline bool quiet_save(const hdf5_name& spec, const file_type type = hdf5_binary) const;
411-
[[deprecated("use save() instead")]] inline bool quiet_save( std::ostream& os, const file_type type = arma_binary) const;
412-
413-
[[deprecated("use load() instead")]] inline bool quiet_load(const std::string name, const file_type type = auto_detect);
414-
[[deprecated("use load() instead")]] inline bool quiet_load(const hdf5_name& spec, const file_type type = hdf5_binary);
415-
[[deprecated("use load() instead")]] inline bool quiet_load( std::istream& is, const file_type type = auto_detect);
416-
417409

418410
// iterators
419411

‎inst/include/armadillo_bits/Cube_meat.hpp‎

Lines changed: 2 additions & 74 deletions
Original file line numberDiff line numberDiff line change
@@ -4716,7 +4716,7 @@ Cube<eT>::save(const hdf5_name& spec, const file_type type) const
47164716
{
47174717
Cube<eT> tmp;
47184718

4719-
op_strans_cube::apply_noalias(tmp, (*this));
4719+
op_strans::apply_cube_noalias(tmp, (*this));
47204720

47214721
save_okay = diskio::save_hdf5_binary(tmp, spec, err_msg);
47224722
}
@@ -4879,7 +4879,7 @@ Cube<eT>::load(const hdf5_name& spec, const file_type type)
48794879

48804880
load_okay = diskio::load_hdf5_binary(tmp, spec, err_msg);
48814881

4882-
if(load_okay) { op_strans_cube::apply_noalias((*this), tmp); }
4882+
if(load_okay) { op_strans::apply_cube_noalias((*this), tmp); }
48834883
}
48844884
else
48854885
{
@@ -4967,78 +4967,6 @@ Cube<eT>::load(std::istream& is, const file_type type)
49674967

49684968

49694969

4970-
template<typename eT>
4971-
inline
4972-
bool
4973-
Cube<eT>::quiet_save(const std::string name, const file_type type) const
4974-
{
4975-
arma_debug_sigprint();
4976-
4977-
return (*this).save(name, type);
4978-
}
4979-
4980-
4981-
4982-
template<typename eT>
4983-
inline
4984-
bool
4985-
Cube<eT>::quiet_save(const hdf5_name& spec, const file_type type) const
4986-
{
4987-
arma_debug_sigprint();
4988-
4989-
return (*this).save(spec, type);
4990-
}
4991-
4992-
4993-
4994-
template<typename eT>
4995-
inline
4996-
bool
4997-
Cube<eT>::quiet_save(std::ostream& os, const file_type type) const
4998-
{
4999-
arma_debug_sigprint();
5000-
5001-
return (*this).save(os, type);
5002-
}
5003-
5004-
5005-
5006-
template<typename eT>
5007-
inline
5008-
bool
5009-
Cube<eT>::quiet_load(const std::string name, const file_type type)
5010-
{
5011-
arma_debug_sigprint();
5012-
5013-
return (*this).load(name, type);
5014-
}
5015-
5016-
5017-
5018-
template<typename eT>
5019-
inline
5020-
bool
5021-
Cube<eT>::quiet_load(const hdf5_name& spec, const file_type type)
5022-
{
5023-
arma_debug_sigprint();
5024-
5025-
return (*this).load(spec, type);
5026-
}
5027-
5028-
5029-
5030-
template<typename eT>
5031-
inline
5032-
bool
5033-
Cube<eT>::quiet_load(std::istream& is, const file_type type)
5034-
{
5035-
arma_debug_sigprint();
5036-
5037-
return (*this).load(is, type);
5038-
}
5039-
5040-
5041-
50424970
template<typename eT>
50434971
inline
50444972
typename Cube<eT>::iterator

0 commit comments

Comments
 (0)