Skip to content

[Rcpp-devel] [ANN] New release RcppArmadillo 0.10.1.0.1 on drat

4 messages · Dirk Eddelbuettel, Dr. Bernhard Pfaff

#
After a mere eleven days, the previously announced RcppArmadillo 0.10.1.0.0
made it onto CRAN.  Yay.

Only to promptly greet me this morning with a compilation failure (!!) on
CentOS, see https://github.com/RcppCore/RcppArmadillo/issues/313

That was something sloppy from us (and from six+ years ago!) which, unless I
am missing something, every sane compiler should simply ignore.  In any event
I fixed it in a clean-up commit (plus another to touch up that file in other
spots) and a new minor version RcppArmadillo 0.10.1.0.1 is now on the drat.

You can use

   install.packages("RcppArmadillo", repos="https://rcppcore.github.io/drat")

(and/or a few related commands taking advantage of drat helpers) to install it.

I do not plan to bother with a CRAN release over this.  If anybody else has
issues please report here, or on GitHub as usual.

Cheers, Dirk
#
Hi Dirk,

indeed, I do face a problem with the latest release.

Kurt pointed me to:

https://cran.r-project.org/web/checks/check_results_cccp.html

and in particular the following two warnings (deprecated):


1)

   Found the following significant warnings:
     RPP.cpp:24:17: warning: ‘arma::mat_injector<arma::Mat<eT> >
arma::Mat<eT>::operator<<(eT) [with eT = unsigned int]’ is deprecated
[-Wdeprecated-declarations]


2)

Found the following significant warnings:
     RPP.cpp:24:14: warning: 'operator<<' is deprecated
[-Wdeprecated-declarations]


Any pointers on how to rectify these deprecated types/operators?

Your insights are much appreciated.


Best wishes and stay safe,

Bernhard


Dirk Eddelbuettel:
#
For the benefit of the list, Conrad sent the following in private email:

  Instead of using operator<< to initialise matrices, standard C++11
  initialiser lists can be used.
  Example:
  mat A = { {1, 3, 5}, {2, 4, 6} };
  vec V = { 1, 2, 3 };

  More info:
  arma.sourceforge.net/docs.html#element_initialisation

Dirk
#
On 21 October 2020 at 16:12, Dr. Bernhard Pfaff wrote:
| Kurt pointed me to:
| 
| https://cran.r-project.org/web/checks/check_results_cccp.html
| 
| and in particular the following two warnings (deprecated):
| 
| 
| 1)
| 
|    Found the following significant warnings:
|      RPP.cpp:24:17: warning: ‘arma::mat_injector<arma::Mat<eT> >
| arma::Mat<eT>::operator<<(eT) [with eT = unsigned int]’ is deprecated
| [-Wdeprecated-declarations]
| 
| 
| 2)
| 
| Found the following significant warnings:
|      RPP.cpp:24:14: warning: 'operator<<' is deprecated
| [-Wdeprecated-declarations]

One addendum:  When we run reverse depends using R CMD check over all
dependencies, we stop for reports of NOTE, WARNING and ERROR by R.

The deprecation messages are not (yet ?) being passed on from g++ by R, so
"we didn't see them".  The best anyone can do here, really, is to follow the
list, see the announcements and try the new (or upcoming) releases. I wrote
about 0.10.1.0.0 twelve days ago and pointed to a downloadable .tar.gz.

Of course, following the GitHub repo may also be a good idea.

All that, we'll help.  These changes are rare, and generally very much for
the better so I think we all want them to happen even if a forced update is
always a little bit of nuisance.

Happy to discuss other modes of operation if someone has suggestions we have
not heard.

Cheers, Dirk