[Rcpp-devel] [ANN] Rcpp 0.11.0
Dirk Eddelbuettel
edd at debian.org
Mon Feb 3 20:07:06 CET 2014
A new major release Rcpp 0.11.0 is now on CRAN. A short blog post is at
http://dirk.eddelbuettel.com/blog/
http://dirk.eddelbuettel.com/blog/2014/02/03#rcpp_0.11.0
and included as text (without links, obviously) below.
The one really big change is that we're now effectively 'headers-only' but it
brings some breakage. See the blog post for details, I will post the proper
announcement text this evening.
Thanks for everybody for testing, suggestions and input -- especially those
maintainers who updated their CRAN packages in the last few days to permit
the release -- and as always everybody who contributed code.
Thanks, Dirk
Mon, 03 Feb 2014
Rcpp 0.11.0
A new major release 0.11.0 of Rcpp is now on the CRAN network for GNU R
and binaries for Debian have been uploaded as well.
Before you read on, please note that this release will most likely require
a reinstallation of all your packages using Rcpp as it now works without a
user-facing shared library.
The biggest change in this version is that it is now effectively
headers-only. Before you wonder, there is still compiled code provided by
Rcpp for use by packages. But this uses the function registration
mechanism of GNU R instead via instantiation at package startup. This does
make package building easier, will remove the need to query GNU R for the
Rcpp library file in src/Makevars when compiling, and should generally
avoid building issues such as the dreaded fails on paths with spaces still
annoying users of a certain OS.
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 as well as in a release announcement I'll post
later.
Changes in Rcpp version 0.11.0 (2014-02-02)
* Changes in Rcpp API:
* Functions provided/used by Rcpp are now registered with R and
instantiated by client package alleviating the need for
explicit linking against libRcpp which is therefore no longer
created.
* Updated the Rcpp.package.skeleton() function accordingly.
* New class StretchyList for pair lists with fast addition of
elements at the front and back. This abstracts the 3 functions
NewList, GrowList and Insert used in various packages and in
parsers in R.
* The function dnt, pnt, qnt sugar functions were incorrectly
expanding to the no-degree-of-freedoms variant.
* Unit tests for pnt were added.
* The sugar table function did not handle NAs and NaNs properly
for numeric vectors. Fixed and tests added.
* The internal coercion mechanism mapping numerics to strings has
been updated to better match R (specifically with Inf, -Inf,
and NaN.)
* Applied two bug fixes to Vector sort() and RObject definition
spotted and corrected by Kevin Ushey
* New checkUserInterrupt() function that provides a C++ friendly
implementation of R_CheckUserInterrupt.
* Changes in Rcpp attributes:
* Embedded R code chunks in sourceCpp are now executed within the
working directory of the C++ source file.
* Embedded R code chunks in sourceCpp can now be disabled.
* Changes in Rcpp documentation:
* The Rcpp-FAQ and Rcpp-package vignettes have been updated and
expanded.
* Vignettes are now typeset with grey background for code boxes.
* The bibtex reference file has been update to reflexct current
package versions.
* Changes in Rcpp unit tests:
* The file tests/doRUnit.R was rewritten following the pattern
deployed in RProtoBuf which is due to Murray Stokely
* The function test() was rewritten; it provides an easy entry
point to running unit tests of the installed package
Thanks to CRANberries, you can also look at a diff to the previous release
0.10.6. 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.
/code/rcpp | permanent link
--
Dirk Eddelbuettel | edd at debian.org | http://dirk.eddelbuettel.com
More information about the Rcpp-devel
mailing list