Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.
A new release 0.11.4 of Rcpp is now on the CRAN network for GNU R, and an updated Debian package will be uploaded in due course.
Rcpp has become the most popular way of enhancing GNU R with C++ code. As of today, 323 packages on CRAN depend on Rcpp for making analyses go faster and further; BioConductor adds another 41 packages, and casual searches on GitHub suggests dozens mores.
This release once again adds a large number of small bug fixes, polishes and enhancements. And like the last time, these changes were made by a group of seven different contributors (counting code commits) plus three more providing concrete suggestions. This shows that the Rcpp development and maintenance rests a large number of (broad) shoulders.
See below for a detailed list of changes extracted from the NEWS
file.
Changes in Rcpp version 0.11.4 (2015-01-20)
Changes in Rcpp API:
The
ListOf<T>
class gains the.attr
and.names
methods common to other Rcpp vectors.The
[dpq]nbinom_mu()
scalar functions are now available via theR::
namespace when R 3.1.2 or newer is used.Add an additional test for AIX before attempting to include
execinfo.h
.
Rcpp::stop
now supports improvedprintf
-like syntax using the small tinyformat header-only library (following a similar implementation in Rcpp11)Pairlist objects are now protected via an additional
Shield<>
as suggested by Martin Morgan on the rcpp-devel list.Sorting is now prohibited at compile time for objects of type
List
,RawVector
andExpressionVector
.Vectors now have a
Vector::const_iterator
that is ‘const correct’ thanks to fix by Romain following a bug report in rcpp-devel by Martyn Plummer.The
mean()
sugar function now uses a more robust two-pass method, and new unit tests formean()
were added at the same time.The
mean()
andvar()
functions now support all core vector types.The
setequal()
sugar function has been corrected via suggestion by Qiang Kou following a bug report by Søren Højsgaard.The macros
major
,minor
, andmakedev
no longer leak in from the (Linux) system headersys/sysmacros.h
.The
push_front()
string function was corrected.Changes in Rcpp Attributes:
Only look for plugins in the package’s namespace (rather than entire search path).
Also scan header files for definitions of functions to be considerd by Attributes.
Correct the regular expression for source files which are scanned.
Changes in Rcpp unit tests
Added a new binary test which will load a pre-built package to ensure that the Application Binary Interface (ABI) did not change; this test will (mostly or) only run at Travis where we have reasonable control over the platform running the test and can provide a binary.
New unit tests for sugar functions
mean
,setequal
andvar
were added as noted above.Changes in Rcpp Examples:
For the (old) examples
ConvolveBenchmarks
andOpenMP
, the respectiveMakefile
was renamed toGNUmakefile
to pleaseR CMD check
as well as the CRAN Maintainers.
Thanks to CRANberries, you can also look at a diff to the previous release As always, even fuller details are on the Rcpp Changelog page and the Rcpp page which also leads to the downloads page, the browseable doxygen docs and zip files of doxygen output for the standard formats. A local directory has source and documentation too. Questions, comments etc should go to the rcpp-devel mailing list off the R-Forge page.
This post by Dirk Eddelbuettel originated on his Thinking inside the box blog. Please report excessive re-aggregation in third-party for-profit settings.
R-bloggers.com offers daily e-mail updates about R news and tutorials about learning R and many other topics. Click here if you're looking to post or find an R/data-science job.
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.