This is the fourth release in the 0.10.* series, and further extends and
solidifies the excellent Rcpp attributes. A few other bugs were
fixed as well, and support for wide character strings has been added.
We once again tested this fairly rigorously by checking against 86 of the 100
CRAN packages depending on Rcpp. All of these passed. So we do not expect any
issues with dependent packages, but one never knows.
entry for 0.10.3 is below; more details are in the ChangeLog file in the package and on the
Rcpp Changelog page.
Changes in Rcpp version 0.10.3 (2013-03-23)
Changes in R code:
Prevent build failures on Windowsn when Rcpp is installed
in a library path with spaces (transform paths in the same manner
that R does before passing them to the build system).
Changes in Rcpp attributes:
Rcpp modules can now be used with
Standalone roxygen chunks (e.g. to document a class) are now transposed into RcppExports.R
Rcpp::pluginsattribute for binding directly to inline plugins. Plugins can be registered using the new
cpp11plugin for specifying the use of C++11 in a translation unit
Merge existing values of build related environment variables for sourceCpp
Add global package include file to RcppExports.cpp if it exists
Stop with an error if the file name passed to
sourceCpphas spaces in it
Return invisibly from void functions
Ensure that line comments invalidate block comments when parsing for attributes
Eliminated spurious empty hello world function definition in Rcpp.package.skeleton
Changes in Rcpp API:
The very central use of R API R_PreserveObject and
R_ReleaseObject has been replaced by a new system based on the
functions Rcpp_PreserveObject, Rcpp_ReleaseObject and Rcpp_ReplaceObject
which shows better performance and is implemented using a generic vector
treated as a stack instead of a pairlist in the R
implementation. However, as this preserve / release code is still
a little rough at the edges, a new #define is used (in config.h)
to disable it for now.
Platform-dependent code in Timer.cpp now recognises a few more BSD variants thanks to contributed defined() test suggestions
Support for wide character strings has been added throughout the API. In particular String, CharacterVector, wrap and as are aware of wide character strings
CRANberries, you can also look at a
diff to the previous release 0.10.2.
As always, even fuller details are on the
Rcpp Changelog page and the
Rcpp page which also
leads to the downloads, the
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