Add extra const_cast as one CRAN machine with more ancient
setup whines otherwise and is obviously less C++20 ready than it thinks
tools/configure also checks where this is being built and 'as
needed' downgrades the compilation to C++17
Tests were refactored to use NA_integer64_ (Michael Chirico
in #149 and Dirk in #156)
nanoduration was updated for changes in nanotime 4.8.0
(Michael Chirico in #152 fixing #151)
Use of as.integer64(keep.names=TRUE) has been refactored
(Michael Chirico in #154 fixing #153)
In tests, nanotime is attached after bit64; this still needs a better fix (Michael Chirico in #155)
The package now has a hard dependency on the just released bit64 version 4.8.0
The methods package is now a Depends as WRE recommends
(Michael Chirico in #141 based on a suggestion by Dirk in #140)
The mkdocs-material documentation site is now generated via altdoc
Continuous Integration scripts have been updated
Replace Rf_error with Rcpp::stop, turn remaining one
into (Rf_error) (Dirk in #143)
Vignette now uses the Rcpp::asis builder for pre-made pdfs
(Dirk in #146 fixing #144)
The C++ compilation standard is explicitly set to C++17 if an R version older than 4.3.0 is used (Dirk in #148 fixing #147)
The vignette references have been updated
Update continuous integration to use r-ci action with bootstrap
Add ggplot2 to Suggests due to use in demo/ which is now scanned
Refine a version comparison for R 4.5.0 to be greater or equal
Explicit Rcomplex assignment accommodates pickier compilers
over newer R struct (Michael Chirico in #135 fixing #134)
When formatting, NA are flagged before CCTZ call to
to not trigger santizier, and set to NA after call (Dirk in #136)
Retire several checks for Solaris in test suite (Dirk in #130)
Switch to Authors@R in DESCRIPTION as now required by CRAN
Accommodate R-devel change for setdiff (Dirk in #133 fixing #132)
No longer ship defunction ggplot2 demo (Dirk fixing #131)
Time format documentation now has a reference to RcppCCTZ
The package no longer sets a default C++ compilation standard of C++11 (Dirk initially in #114, and later switched to C++17)
New accurate parameter for conversion from POSIXct to
nanotime (Davor Josipovic and Leonardo in #116 closing
#115)
The as.Date() function is now vectorized and can take a TZ
argument (Leonardo and Dirk in #119 closing #118)
Use of internal function SET_S4_OBJECT has been replaced by
API function Rf_asS4 (Leonardo in #121 closing #120)
An nanoduration / nanoduration expression now returns
a double (Leonardo in #122 closing #117)
Bitfield calculations no longer require an Windows-only compiler switch (Leonardo in #124)
A simple manual page format nag involving has been addressed (Dirk in #126 fixing #125)
An set of tests tickling an UBSAN issue via Rcpp code no
longer run unless CI is set (Dirk in #127 fixing #123)
Update mkdocs for material docs generator (Dirk in #102)
Use inherits() instead comparing to class()
(Trevor Davis in #104)
Set default arguments in nanoduration() (Trevor Davis
in #105)
Add as.nanoduration.difftime() support (Trevor Davis
in #106)
Add +/- methods for nanotime and difftime
objects (Trevor Davis in #110 closing #108, #107)
Fix incorrect subsetting with operator %in% (Leonardo
in #100 fixing #99).
Fix incorrect parsing for negative nanoperiod (Leonardo in #100 fixing #96).
Test for class via inherits() (Dirk).
Applied patch by Tomas Kalibera for Windows UCRT under the upcoming R 4.2.0 expected for April.
Added a few more as.character conversion function (Dirk)
Expose nanoperiod functionality via header file for use
by other packages (Leonardo in #95 fixing #94).
New demo ggplot2Example.R (Leonardo and Dirk).
New documentation website using mkdocs-material (Dirk).
Updated unit test to account for r-devel POSIXct changes, and re-enable full testing under r-devel (Dirk).
Additional nanoduration and character ops plus
tests (Colin Umansky in #88 addressing #87).
New plus and minus functions for periods
(Leonardo in #91).
Correct for big endian (Elliott Sales de Andrade in #81).
Use the RcppCCTZ_API.h header (Dirk in #82).
Conditionally reduce test coverage (Dirk in #83).
Several small cleanups to ensure a more robust compilation (Leonardo and Dirk in #75 fixing #74).
Show Solaris some extra love by skipping tests and examples with a timezone (Dirk in #76).
Use tzstr= instead of tz= in call to
RcppCCTZ::parseDouble()) (Matt Dowle in #49).
Add new comparison operators for nanotime and
charcters (Dirk in #54 fixing #52).
Switch from RUnit to tinytest (Dirk in #55)
Substantial functionality extension in with new types
nanoduration, nanoival and nanoperiod (Leonardo
in #58, #60, #62, #63, #65, #67,
#70 fixing #47, #51, #57, #61,
#64 with assistance from Dirk).
A new (yet still draft-ish) vignette was added describing the four core types (Leonardo and Dirk in #71).
A required compilation flag for Windows was added (Leonardo in #72).
RcppCCTZ function are called in new 'non-throwing' variants to not trigger exeception errors (Leonardo in #73).
Skip some tests on Solaris which seems borked with timezones. As we have no real access, no real fix possible (Dirk in #42).
Update Travis setup
Added attribute-preserving comparison (Leonardo in #33).
Added two integer64 casts in constructors (Dirk in
#36).
Added two checks for empty arguments (Dirk in #37).
Rewritten in S4 to provide more robust operations (#17 by Leonardo)
Ensure tz="" is treated as unset (Leonardo in #20)
Added format and tz arguments to
nanotime, format, print (#22 by Leonardo
and Dirk)
Ensure printing respect options()$max.print, ensure
names are kept with vector (#23 by Leonardo)
Correct summary() by defining names<- (Leonardo
in #25 fixing #24)
Report error on operations that are meaningful for type; handled NA, NaN, Inf, -Inf correctly (Leonardo in #27 fixing #26)
The as.integer64 function is now exported as well.
The default display format now always shows nine digits (#10 closing #9)
The default print method was updated to use formated output,
and a new new converter as.integer64 was added
Several 'Ops' method are now explicitly defined allowing casting of results (rather than falling back on bit64 behaviour)
The format routine is now more careful about not loosing precision (#13 closing #12)
Added Windows support thanks to expanded RcppCCTZ (closes #6)
Added "mocked up" demo with nanosecond delay networking analysis
Added 'fmt' and 'tz' options to output functions, expanded
format.nanotime (closing #2 and #3)
Added data.frame support
Expanded tests
Initial CRAN upload.
Package is functional and provides examples.