./devel/R-Rcpp, Seamless R and C++ Integration

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]

Branch: CURRENT, Version: 1.0.1, Package name: R-Rcpp-1.0.1, Maintainer: pkgsrc-users

The Rcpp package provides R functions as well as a C++ library which
facilitate the integration of R and C++.

R data types (SEXP) are matched to C++ objects in a class hierarchy.
All R types are supported (vectors, functions, environment, etc ...)
and each type is mapped to a dedicated class. For example, numeric
vectors are represented as instances of the Rcpp::NumericVector class,
environments are represented as instances of Rcpp::Environment,
functions are represented as Rcpp::Function, etc ... The
"Rcpp-introduction" vignette provides a good entry point to Rcpp.

Rcpp also provides Rcpp modules, a framework that allows exposing C++
functions and classes to the R level. The "Rcpp-modules" vignette
details the current set of features of Rcpp-modules.

Rcpp includes a concept called Rcpp sugar that brings many R functions
into C++. Sugar takes advantage of lazy evaluation and expression
templates to achieve great performance while exposing a syntax that is
much nicer to use than the equivalent low-level loop code. The
"Rcpp-sugar" vignette gives an overview of the feature.

Additional documentation is available via the paper by Eddelbuettel
and Francois (2011, JSS) paper and the book by Eddelbuettel (2013,
Springer); see 'citation("Rcpp")' for details.

Required to run:

Required to build:

Master sites: (Expand)

Version history: (Expand)

CVS history: (Expand)

   2019-04-20 14:46:05 by Wen Heping | Files touched by this commit (2) | Package updated
Log message:
Update to 1.0.1

Upstream changes:
Changes in Rcpp version 1.0.1 (2019-03-17)

    Changes in Rcpp API:

        Subsetting is no longer limited by an integer range (William Nolan in \ 
#920 fixing #919).

        Error messages from subsetting are now more informative (Qiang and Dirk).

        Shelter increases count only on non-null objects (Dirk in #940 as \ 
suggested by Stepan Sindelar in #935).

        AttributeProxy::set() and a few related setters get Shiled<> to \ 
ensure rchk is happy (Romain in #947) fixing #946).

    Changes in Rcpp Attributes:

        A new plugin was added for C++20 (Dirk in #927)

        Fixed an issue where 'stale' symbols could become registered in \ 
RcppExports.cpp, leading to linker errors and other related issues (Kevin in \ 
#939 fixing #733 and #934).

        The wrapper macro gets an UNPROTECT to ensure rchk is happy (Romain in \ 
#949) fixing #948).

    Changes in Rcpp Documentation:

        Three small corrections were added in the 'Rcpp Quickref' vignette \ 
(Zhuoer Dong in #933 fixing #932).

        The Rcpp-modules vignette now has documentation for .factory (Ralf \ 
Stubner in #938 fixing #937).

    Changes in Rcpp Deployment:

        Travis CI again reports to CodeCov.io (Dirk and Ralf Stubner in #942 \ 
fixing #941).
   2018-12-21 09:11:23 by Wen Heping | Files touched by this commit (2) | Package updated
Log message:
Update to 1.0.0

Upstream changes:
Changes in Rcpp version 1.0.0 (2018-11-05)

    Happy tenth birtday to Rcpp, and hello release 1.0 !

    Changes in Rcpp API:

        The empty destructor for the Date class was removed to please g++-9 \ 
(prerelease) and -Wdeprecated-copy (Dirk).

        The constructor for NumericMatrix(not_init(n,k)) was corrected (Romain \ 
in #904, Dirk in #905, and also Romain in #908 fixing #907).

        Rcpp::String no longer silently drops embedded NUL bytes in strings but \ 
throws new Rcpp exception embedded_nul_in_string. (Kevin in #917 fixing #916).

    Changes in Rcpp Deployment:

        The Dockerfile for Continuous Integration sets the required test flag \ 
(for release versions) inside the container (Dirk).

        Correct the R CMD check call to skip vignettes (Dirk).

    Changes in Rcpp Attributes:

        A new [[Rcpp::init]] attribute allows function registration for running \ 
on package initialization (JJ in #903).

        Sort the files scanned for attributes in the C locale for stable output \ 
across systems (JJ in #912).

    Changes in Rcpp Documentation:

        The 'Rcpp Extending' vignette was corrected and refers to EXPOSED rather \ 
than EXPORTED (Ralf Stubner in #910).

        The 'Unit test' vignette is no longer included (Dirk in #914).

Changes in Rcpp version 0.12.19 (2018-09-20)

    Changes in Rcpp API:

        The no_init() accessor for vectors and matrices is now wrapped in \ 
Shield<>() to not trigger rchk warnings (Kirill Mueller in #893 addressing \ 

        STRICT_R_HEADERS will be defined twelve months from now; until then we \ 
protect it via RCPP_NO_STRICT_HEADERS which can then be used to avoid the \ 
definition; downstream maintainers are encouraged to update their packages as \ 
needed (Dirk in #900 beginning to address #898).

    Changes in Rcpp Attributes:

        Added [[Rcpp::init]] attribute for registering C++ functions to run \ 
during package initialization (JJ in #903 addressing #902).

    Changes in Rcpp Modules:

        Improved exposeClass functionality along with added test (Martin Lysy in \ 
#886 fixing #879).

    Changes in Rcpp Documentation:

        Two typos were fixed in the Rcpp Sugar vignette (Patrick Miller in #895).

        Several vignettes now use the collapse argument to show output in the \ 
corresponding code block.

    Changes in Rcpp Deployment:

        The old LdFlags() build helper was marked as deprecated [but removed for \ 
release] (Dirk in #887).

        Dockerfiles for continuous integration, standard deployment and 'plus \ 
sized' deployment are provided along with builds (Dirk in #894).

        Travis CI now use the rcpp/ci container for tests (Dirk in #896).

Changes in Rcpp version 0.12.18 (2018-07-21)

    Changes in Rcpp API:

        The StringProxy::operator== is now const correct (Romain in #855 fixing \ 

        The Environment::new_child() is now const (Romain in #858 fixing #854).

        Next eval codes now properly unwind (Lionel in the large and careful \ 
#859 fixing #807).

        In debugging mode, more type information is shown on abort() (Jack Wasey \ 
in #860 and #882 fixing #857).

        A new class was added which allow suspension of the RNG synchronisation \ 
to address an issue seen in RcppDE (Kevin in #862).

        Evaluation calls now happen in the base environment (which may fix an \ 
issue seen between conflicted and some BioConductor packages) (Kevin in #863 \ 
fixing #861).

        Call stack display on error can now be controlled more finely (Romain in \ 

        The new Rcpp_fast_eval is used instead of Rcpp_eval though this still \ 
requires setting RCPP_USE_UNWIND_PROTECT before including Rcpp.h (Qiang Kou in \ 
#867 closing #866).

        The Rcpp::unwindProtect() function extracts the unwinding from the \ 
Rcpp_fast_eval() function and makes it more generally available. (Lionel in #873 \ 
and #877).

        The tm_gmtoff part is skipped on AIX too (#876).

    Changes in Rcpp Attributes:

        The sourceCpp() function now evaluates R code in the correct local \ 
environment in which a function was compiled (Filip Schouwenaars in #852 and \ 
#869 fixing #851).

        Filenames are now sorted in a case-insenstive way so that the \ 
RcppExports files are more stable across locales (Jack Wasey in #878).

    Changes in Rcpp Sugar:

        The sugar functions min and max now recognise empty vectors (Dirk in \ 
#884 fixing #883).
   2018-07-28 16:40:53 by Brook Milligan | Files touched by this commit (126)
Log message:
Remove MASTER_SITES= from individual R package Makefiles.

Each R package should include ../../math/R/Makefile.extension, which also
defines MASTER_SITES.  Consequently, it is redundant for the individual
packages to do the same.  Package-specific definitions also prevent
redefining MASTER_SITES in a single common place.
   2018-05-31 04:12:25 by Wen Heping | Files touched by this commit (2) | Package updated
Log message:
Update to 0.12.17

Upstream changes:
Changes in Rcpp version 0.12.17 (2018-05-09)
Changes in Rcpp API:

The random number Generator class no longer inhreits from RNGScope (Kevin in \ 
#837 fixing #836).

A spurious parenthesis was removed to please gcc8 (Dirk fixing #841)

The optional Timer class header now undefines FALSE which was seen to have \ 
side-effects on some platforms (Romain in #847 fixing #846).

Optional StoragePolicy attributes now also work for string vectors (Romain in \ 
#850 fixing #849).

Changes in Rcpp Documentation:

A few old typesetting conventions from the prior Rnw format have been corrected \ 
(Peter Hickey in #831; Joris Meys; Dirk)

Two internal links to the introduction published in JSS have been updated to the \ 
changed filename given the newer TAS introduction.

Some remaining backticks were replaced with straight quotes (Ralf Stubner in #845).

A citation to the Rcpp introducion in the The American Statistician has been \ 
added to the introductory and FAQ vignettes.

Changes in Rcpp version 0.12.16 (2018-03-08)
Changes in Rcpp API:

Rcpp now sets and puts the RNG state upon each entry to an Rcpp function, \ 
ensuring that nested invocations of Rcpp functions manage the RNG state as \ 
expected (Kevin in #825 addressing #823).

The R::pythag wrapper has been commented out; the underlying function has been \ 
gone from R since 2.14.0, and ::hypot() (part of C99) is now used \ 
unconditionally for complex numbers (Dirk in #826).

The long long type can now be used on 64-bit Windows (Kevin in #811 and again in \ 
#829 addressing #804).

Changes in Rcpp Attributes:

Code generated with cppFunction() now uses .Call() directly (Kirill Mueller in \ 
#813 addressing #795).

Changes in Rcpp Documentation:

The Rcpp FAQ vignette is now indexed as 'Rcpp-FAQ'; a stale Gmane reference was \ 
removed and entry for getting compilers under Conda was added.

The top-level README.md now has a Support section.

The Rcpp.bib reference file was refreshed to current versions.
   2018-04-05 12:29:31 by Jonathan Perkin | Files touched by this commit (1)
Log message:
R-Rcpp: Add CHECK_SSP_SKIP for some useless files.
   2018-01-22 03:38:47 by Wen Heping | Files touched by this commit (2) | Package updated
Log message:
Update to 0.12.15

Upstream changelog is too long, please visit:
   2016-12-17 08:28:05 by Wen Heping | Files touched by this commit (2) | Package updated
Log message:
Update to 0.12.8

Upstream changes:
2016-11-16  Dirk Eddelbuettel  <edd@debian.org>

        * DESCRIPTION: Release 0.12.8
        * inst/NEWS.Rd: Release 0.12.8
        * vignettes/Rcpp.bib: Release 0.12.8
        * inst/include/Rcpp/config.h: Release 0.12.8

        * README.md: Updated counts for dependents and tests

        * debian/*: Changes for Debian release of 0.12.8

2016-11-15  Dirk Eddelbuettel  <edd@debian.org>

        * DESCRIPTION: Nathan Russell added to Authors

2016-11-14  Jim Hester  <james.f.hester@gmail.com>

        * inst/include/Rcpp/exceptions.h: Improved exception call stack
        * inst/include/Rcpp/routines.h: Ditto
        * inst/src/api.cpp: Ditto

        * R/exections.R: Print and format method for stack straces

        * inst/unitTests/runit.exceptions.R: Unit tests
        * inst/unitTests/cpp/exceptions.cpp: Ditto

2016-11-13  Dirk Eddelbuettel  <edd@debian.org>

        * R/Attributes.R (mergeIntoBuildEnv): Correct 'empty' return

2016-11-10  Dirk Eddelbuettel  <edd@debian.org>

        * inst/include/Rcpp/date_datetime/newDateVector.h: Added constructor
        using VectorBase<>

2016-11-05  Daniel C. Dillon  <dcdillon@gmail.com>

        * inst/include/Rcpp/date_datetime/newDatetimeVector.h: Added constructor
        to instantiate newDatetimeVector from VectorBase.

2016-11-04  Nathan Russell  <russell.nr2012@gmail.com>

        * inst/include/Rcpp/macros/dispatch.h: Modify variadic macros
        to not use GNU extensions
        * DESCRIPTION: roll minor version

2016-11-03  Nathan Russell  <russell.nr2012@gmail.com>

        * inst/include/Rcpp/hash/IndexHash.h: Add casts to eliminate
        signed / unsigned comparison warning
        * inst/include/Rcpp/hash/SelfHash.h: Idem
        * inst/unitTests/cpp/sugar.cpp: Added unit tests for sugar function
        * inst/unitTests/runit.sugar.R: Idem

2016-10-30  Dirk Eddelbuettel  <edd@debian.org>

        * src/api.cpp: New capabilities field for new date(time) vectors
        * inst/unitTests/runit.Date.R (test.DatetimeVector.ctor): Differentiate
        in test as case of 'Inf' is handling differently by new and old datetime
        classes (and passed through as is by new ones which is better)
        * inst/unitTests/runit.InternalFunctionCPP11.R: Small cosmetic edit

2016-10-24  Qiang Kou  <qkou@umail.iu.edu>

        * inst/include/Rcpp/sugar/Range.h : fix range sugar ambiguity
        * inst/unitTests/cpp/sugar.cpp: range sugar unit test
        * inst/unitTests/runit.sugar.R: range sugar unit test

2016-10-24  Nathan Russell  <russell.nr2012@gmail.com>

	* inst/include/Rcpp/vector/MatrixBase.h: Change sugar
	functions eye(), ones(), and zeros() into static methods
	in MatrixBase
	* inst/include/Rcpp/traits/one_type.h: Idem
	* inst/include/Rcpp/traits/traits.h: Idem
	* inst/unitTests/cpp/Matrix.cpp: Idem
	* inst/unitTests/runit.Matrix.R: Idem

2016-10-24  Qiang Kou  <qkou@umail.iu.edu>

        * inst/include/Rcpp/sugar/Range.h: Range sugar uses R_xlen_t as \ 
start/end type

2016-10-23  Nathan Russell  <russell.nr2012@gmail.com>

        * inst/include/Rcpp/sugar/matrix/eye.h: New functions
        eye(), ones(), and zeros()
        * inst/include/Rcpp/sugar/matrix/matrix_functions.h: Idem
        * inst/unitTests/cpp/sugar.cpp: Unit tests for new functions
        * inst/unitTests/runit.sugar.R: Idem
        * inst/unitTests/runit.dispatch.R (test.ExpressionVector): Use
        expression rather than parse, correct typo

2016-10-22  Qiang Kou  <qkou@umail.iu.edu>

        * inst/include/Rcpp/hash/IndexHash.h: change hashing function to return \ 
unsigned int
        * inst/include/Rcpp/hash/SelfHash.h: Ditto

2016-10-21  Qiang Kou  <qkou@umail.iu.edu>

        * inst/include/Rcpp/barrier.h: Change string_elt/vector_elt to accept \ 
        * inst/include/Rcpp/routines.h: Ditto
        * src/barrier.cpp: Ditto

2016-10-19  Dirk Eddelbuettel  <edd@debian.org>

        * inst/include/Rcpp/date_datetime/Datetime.h (Rcpp): Additional
        operator+ for int argument

2016-10-18  Dirk Eddelbuettel  <edd@debian.org>

        * inst/include/Rcpp/date_datetime/Date.h (Rcpp): Add operator double()
        * inst/include/Rcpp/date_datetime/Datetime.h (Rcpp): Ditto

2016-10-17  Dirk Eddelbuettel  <edd@debian.org>

        * inst/include/Rcpp/date_datetime/newDatetimeVector.h (Rcpp): Allow
        setting of timezone attribute; default not-set leads to local as in R

2016-10-16  Dirk Eddelbuettel  <edd@debian.org>

        * inst/include/Rcpp.h (RCPP_NEW_DATE_DATETIME_VECTORS): Add a new
        compile-time #define to switch between 'old' (existing) and 'new'
        DateVector and DatimeVector classes. Currently uses 'new' for testing
        plan to switch to proper deprecation schedule.

        * inst/include/Rcpp/date_datetime/date_datetime.h: New header file (and
        directory) regrouping all Date and Datetime headers, scalar and vector

        * inst/include/Rcpp/date_datetime/Date.h: Moved one directory down
        * inst/include/Rcpp/date_datetime/Datetime.h: Ditto
        * inst/include/Rcpp/date_datetime/oldDateVector.h: Moved and renamed
        * inst/include/Rcpp/date_datetime/oldDatetimeVector.h: Ditto

        * inst/include/Rcpp/date_datetime/newDateVector.h: New implementation
        inheriting from NumericVector, still optional
        * inst/include/Rcpp/date_datetime/newDatetimeVector.h: Ditto

2016-09-05  Dirk Eddelbuettel  <edd@debian.org>

        * DESCRIPTION (Version): Roll minor version
        * cleanup: Clean two more file type from vignettes/

2016-09-04  Nathan Russell  <russell.nr2012@gmail.com>

        * inst/include/Rcpp/sugar/functions/rowSums.h: New functions
        rowSums(), colSums(), rowMeans(), and colMeans()
        * inst/include/Rcpp/sugar/functions/functions.h: Idem
        * inst/unitTests/cpp/sugar.cpp: Unit tests for new functions
        * inst/unitTests/runit.sugar.R: Idem

2016-09-04  Dirk Eddelbuettel  <edd@debian.org>

        * DESCRIPTION: Release 0.12.7
        * inst/NEWS.Rd: Release 0.12.7
        * vignettes/Rcpp.bib: Release 0.12.7
        * inst/include/Rcpp/config.h: Release 0.12.7

        * README.md: Updated counts for dependents and tests

        * debian/*: Changes for Debian release of 0.12.7

2016-09-02  Simon Dirmeier <simon.dirmeier@bsse.ethz.ch>

        * src/attributes.cpp: Remove leading underscore in header guard

2016-08-14  James J Balamuta  <balamut2@illinois.edu>

        * inst/examples/FastLM/lmGSL.R: Updated example to use new GSL templates

2016-08-11  Dirk Eddelbuettel  <edd@debian.org>

	* .travis.yml: Switch to using run.sh for Travis CI

2016-08-09  Artem Klevtsov <a.a.klevtsov@gmail.com>

        * inst/include/Rcpp/macros/dispatch.h: Add variadic conditional macro
        when C++11 compiler used
        * ints/include/unitTests/cpp/dispatch.cpp: Add unit tests for
        * ints/include/unitTests/runit.dispatch.R: Idem

2016-08-05  James J Balamuta  <balamut2@illinois.edu>

        * inst/examples/FastLM/fastLMviaArmadillo.r: format fix
        * inst/examples/FastLM/lmGSL.R: Updated example to use
        Rcpp attributes instead of cxxfunction
        * inst/examples/FastLM/lmArmadillo.R: Idem
        * inst/examples/functionCallback/newApiExample.r: Idem
        * inst/examples/RcppInline/RcppInlineExample.r: Idem
        * inst/examples/RcppInline/RcppInlineWithLibsExamples.r: Idem
        * inst/examples/RcppInline/UncaughtExceptions.r: Idem
        * inst/examples/RcppInline/external_pointer.r: Idem

2016-08-04  James J Balamuta  <balamut2@illinois.edu>

        * src/attributes.cpp: Correct variable re-declaration
        * inst/examples/RcppGibbs/RcppGibbs.R: Updated example to use Rcpp
        attributes instead of cxxfunction
        * inst/examples/RcppGibbs/timeRNGs.R: Idem

2016-08-03  Dirk Eddelbuettel  <edd@debian.org>

        * .gitattributes: Added to have ChangeLog and NEWS.Rd merge via union

2016-08-02  James J Balamuta  <balamut2@illinois.edu>

        * R/Rcpp.package.skeleton.R: Added autogeneration warning
        * src/attributes.cpp: Fixed invalid C++ Identifiers and modified export
        header to warn against hand edits
        * vignettes/Rcpp-package.Rnw: Updated code generation snippets
        * man/Rcpp.package.skeleton.Rd: Add warning on hand edits to the
        autogenerated RcppExports files.
        * man/compileAttributes.Rd: Idem

2016-08-02 Qiang Kou <qkou@umail.iu.edu>

        * inst/include/Rcpp/String.h: CE_UTF8 as default encoding
        * inst/unitTests/cpp/String.cpp: Update unit test
        * inst/unitTests/runit.String.R: Idem

2016-08-01 Nathan Russell <russell.nr2012@gmail.com>

        * inst/include/Rcpp/vector/Vector.h: Added decreasing option for Vector
        * inst/include/Rcpp/internal/NAComparator.h: Idem
        * inst/unitTests/cpp/Vector.cpp: Idem
        * inst/unitTests/runit.Vector.R: Idem

2016-07-31 Qiang Kou <qkou@umail.iu.edu>

        * inst/examples/SugarPerformance/sugarBenchmarks.R: Remove usage of Rf_eval
        * inst/include/Rcpp/Environment.h: Idem
        * inst/include/Rcpp/Module.h: Idem
        * inst/include/Rcpp/exceptions.h: Idem
        * inst/include/Rcpp/proxy/FieldProxy.h: Idem
        * inst/include/Rcpp/r_cast.h: Idem
        * inst/unitTests/cpp/language.cpp: Idem
        * src/barrier.cpp: Idem

2016-07-24  Dirk Eddelbuettel  <edd@debian.org>

        * inst/unitTests/cpp/rmath.cpp: Added RNG unit tests for sugar variants
        * inst/unitTests/runit.rmath.R: Idem

2016-07-22  James J Balamuta  <balamut2@illinois.edu>

        * inst/unitTests/cpp/rmath.cpp: Added unit tests for Rmath RNGs
        * inst/unitTests/runit.rmath.R: idem
        * inst/include/Rcpp/Environment.h: Added get() & find() that accept
        a symbol
        * inst/include/Rcpp.h: Modified header load order so that Symbol.h
        is now placed before Environment.h

2016-07-21  Dirk Eddelbuettel  <edd@debian.org>

        * DESCRIPTION (Version): Roll minor release

2016-07-18  Kevin Ushey  <kevin@rstudio.com>

        * inst/include/Rcpp/r/headers.h: Ensure NORET macro is set appropriately
   2016-07-27 02:28:38 by Wen Heping | Files touched by this commit (2) | Package updated
Log message:
Update to 0.12.6

Upstream changes:
Changes in Rcpp version 0.12.6 (2016-07-18)

    Changes in Rcpp API:

        The long long data type is used only if it is available, to avoid \ 
compiler warnings (Kirill Müller in #488).

        The compiler is made aware that stop() never returns, to improve code \ 
path analysis (Kirill Müller in #487 addressing issue #486).

        String replacement was corrected (Qiang in #479 following mailing list \ 
bug report by Masaki Tsuda)

        Allow for UTF-8 encoding in error messages via \ 
RCPP_USING_UTF8_ERROR_STRING macro (Qin Wenfeng in #493)

        The R function Rf_warningcall is now provided as well (as usual without \ 
leading Rf_) (#497 fixing #495)

    Changes in Rcpp Sugar:

        Const-ness of min and max functions has been corrected. (Dan Dillon in \ 
PR #478 fixing issue #477).

        Ambiguities for matrix/vector and scalar operations have been fixed (Dan \ 
Dillon in PR #476 fixing issue #475).

        New algorithm header using iterator-based approach for vectorized \ 
functions (Dan in PR #481 revisiting PR #428 and addressing issue #426, with \ 
futher work by Kirill in PR #488 and Nathan in #503 fixing issue #502).

        The na_omit() function is now faster for vectors without NA values \ 
(Artem Klevtsov in PR #492)

    Changes in Rcpp Attributes:

        Add cacheDir argument to sourceCpp() to enable caching of shared \ 
libraries across R sessions (JJ in #504).

        Code generation now deals correctly which packages containing a dot in \ 
their name (Qiang in #501 fixing #500).

    Changes in Rcpp Documentation:

        A section on default parameters was added to the Rcpp FAQ vignette \ 
(James Balamuta in #505 fixing #418).

        The Rcpp-attributes vignette is now mentioned more prominently in \ 
question one of the Rcpp FAQ vignette.

        The Rcpp Quick Reference vignette received a facelift with new sections \ 
on Rcpp attributes and plugins begin added. (James Balamuta in #509 fixing \ 

        The bib file was updated with respect to the recent JSS publication for \