Rcpp 0.11.1

[This article was first published on Thinking inside the box , and kindly contributed to R-bloggers]. (You can report issue about the content on this page here)
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.

A new minor release 0.11.1 of
Rcpp is now
on the CRAN network for
GNU R; binaries for
Debian have also been uploaded.

The release fixes a number of bugs that have come up since the
0.11.0 release in January,
but also brings some extensions. See the NEWS file section below for details,
or the ChangeLog file in the package and on the
Rcpp Changelog page

Once again, we tested this release by building against all
CRAN packages
which depend upon Rcpp.
In short, three packages are blacklisted from tests, and three came up with
something we noted — but the remaining 177 packages all build and test
cleanly. Detailed results of those tests (and the scripts for it) are on GitHub.

There are a number of other fixes, upgrades and other extensions detailed in
NEWS file extract below, in the ChangeLog file in the package and on the
Rcpp Changelog page.

Changes in Rcpp version 0.11.1 (2014-03-13)

  • Changes in Rcpp API:

    • Preserve backwards compatibility with Rcpp
      0.10.* by allowing RObject extraction from vectors (or lists) of Rcpp objects

    • Add missing default constructor to Reference class that was omitted in the header-only rewrite

    • Fixes for NA and NaN handling of the
      IndexHash class, as well as the vector .sort()
      method. These fixes ensure that sugar functions depending on
      IndexHash (i.e. unique(), sort_unique(),
      match()) will now properly handle NA and NaN
      values for numeric vectors.

    • DataFrame::nrows now more accurately mimics R’s
      internal behavior (checks the row.names attribute)

    • Numerous changes to permit compilation on the Solaris OS

    • Rcpp vectors gain a subsetting method – it is now possible to subset an Rcpp vector
      using CharacterVectors (subset a by name), LogicalVectors (logical subsetting), and
      IntegerVectors (0-based index subsetting). Such subsetting
      will also work with Rcpp sugar expressions, enabling expressions
      such as x[ x > 0].

    • Comma initialization (e.g. CharacterVector x = "a", "b", "c";, has been disabled, as
      it causes problems with the behavior of the = operator with
      Rcpp::Lists. Users who want to re-enable this functionality
      can use #define RCPP_COMMA_INITIALIZATION, but be aware of
      the above caveat. The more verbose
      CharacterVector x = CharacterVector::create("a", "b", "c")
      is preferred.

  • Changes in Rcpp Attributes

    • Fix issue preventing packages with Rcpp::interfaces attribute from compiling.

    • Fix behavior with attributes parsing of ::create for default
      arguments, and also allow constructors of a given size
      (e.g. NumericVector v = NumericVector(10)) gives a default
      value of numeric(10) at the R level). Also make NAs preserve
      type when exported to R (e.g. NA_STRING as a default argument
      maps to NA_character_ at the R level)

  • Changes in Rcpp modules

    • Corrected the un_pointer implementation for object

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, 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.

To leave a comment for the author, please follow the link and comment on their blog: Thinking inside the box .

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.

Never miss an update!
Subscribe to R-bloggers to receive
e-mails with the latest R posts.
(You will not see this message again.)

Click here to close (This popup will not appear again)