A new release of the RcppBDT package is now on CRAN. Several new modules were added; the package can now work on dates, date durations, “ptime” (aka posix time), and timezones. Most interesting may be the fact that ptime is configured to use 96 bits. This allows a precise representation of dates and times down to nanoseconds, and permits date and time calculations at this level. The complete NEWS entry is below:
Changes in version 0.2.3 (2014-04-13)
New module ‘bdtDt’ replacing the old ‘bdtDate’ module in a more transparent style using a local class which is wrapped, just like the three other new classes do
New module ‘bdtTd’ providing date durations which can be added to dates.
New module ‘bdtTz’ providing time zone information such as offset to UTC, amount of DST, abbreviated and full timezone names.
New module ‘bdtDu’ using ‘posix_time::duration’ for time durations types
New module ‘bdtPt’ using ‘posix_time::ptime’ for posix time, down to nanosecond granularity (where hardware and OS permit it)
Now selects C++11 compilation by setting
CXX_STD = CXX11in
src/Makevars*and hence depend on R 3.1.0 or later – this gives gives us
long longneeded for the nano-second high-resolution time calculations across all builds and platforms.
Courtesy of CRANberries, there is also a diffstat report for the lastest release. As always, feedback is welcome and the rcpp-devel mailing list off the R-Forge page for Rcpp is the best place to start a discussion.Update: I just learned the hard way that the combination of 32-bit OS, g++ at version 4.7 or newer and a Boost version of 1.53 or 1.54 does not work with this new upload. Some Googling suggests that this ought to be fixed in Boost 1.54; seemingly it isn’t as our trusted BH package with Boost headers provides that very version 1.54. However, the Googling also suggested a quick two-line fix which I just committed in the Github repo. A new BH package with the fix may follow in a few days.