Skip to content

Commit

Permalink
Merge pull request #58 from eddelbuettel/feature/temporal_types
Browse files Browse the repository at this point in the history
Feature/temporal types
  • Loading branch information
eddelbuettel committed Mar 23, 2020
2 parents 76b3881 + 4158607 commit 8046bb8
Show file tree
Hide file tree
Showing 45 changed files with 15,096 additions and 435 deletions.
2 changes: 2 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@ before_install:

install:
- ./run.sh install_aptget r-cran-rcppcctz r-cran-bit64 r-cran-zoo r-cran-data.table r-cran-xts r-cran-tinytest
# we currently need the development version of RcppCCTZ
- ./run.sh install_github eddelbuettel/rcppcctz

script:
- ./run.sh run_tests
Expand Down
79 changes: 79 additions & 0 deletions ChangeLog
Original file line number Diff line number Diff line change
@@ -1,3 +1,82 @@
2020-03-22 Leonardo Silvestri <lsilvestri@ztsdb.org>
* README.md: updated information

2020-03-21 Leonardo Silvestri <lsilvestri@ztsdb.org>
* inst/include/globals.hpp: parse format ending with 'Z' for data.table compatibility
* src/period.cpp: fix vectorized 'plus'/'minus' ops for 'nanoperiod'
* inst/tinytest/test_nanoperiod.R: Idem

2020-03-20 Dirk Eddelbuettel <edd@debian.org>

* src/duration.cpp: Slightly more idiomatic Rcpp
* src/period.cpp: Idem
* R/nanoduration.R: Idem
* R/nanoperiod.R: Idem
* R/nanotime.R: Idem

2020-03-19 Dirk Eddelbuettel <edd@debian.org>

* src/interval.cpp: Slightly more idiomatic Rcpp
* R/nanoival.R: Idem

2020-03-18 Dirk Eddelbuettel <edd@debian.org>

* DESCRIPTION (Version, Date): Roll minor version

* DESCRIPTION (Imports): Updated versioned Depends: on RcppCCTZ

* NAMESPACE: Turn on registration

* src/nanotime.cpp: Slightly more idiomatic Rcpp
* R/nanotime.R: Idem

2020-03-15 Dirk Eddelbuettel <edd@debian.org>

* DESCRIPTION (Version, Date): Roll minor version

* src/duration.cpp: Small fix to cast to plain old type
* src/interval.cpp: Idem
* src/nanotime.cpp: Idem

* src/Makevars (PKG_CXXFLAGS): Minor edits

* cleanup: Added minor helper

2020-03-14 Leonardo Silvestri <lsilvestri@ztsdb.org>

[ The following reflects a fairly substantial set of changes made
over a longer period and are just summarized here ]
* DESCRIPTION: Add versioned Depends on RcppCCTZ
* NAMESPACE: Load dynamic library
* R/duration.R: Add new nanoival, duration, and period
* R/nanoival.R: Idem
* R/nanotime.R: Idem
* R/period.R: Idem
* inst/include/date.h: Idem
* inst/include/duration.hpp: Idem
* inst/include/globals.hpp: Idem
* inst/include/interval.hpp: Idem
* inst/include/period.hpp: Idem
* inst/include/pseudovector.hpp: Idem
* inst/include/utilities.hpp: Idem
* inst/tinytest/test_data.frame.R: Idem
* inst/tinytest/test_duration.R: Idem
* inst/tinytest/test_nanoival.R: Idem
* inst/tinytest/test_nanotime.R: Idem
* inst/tinytest/test_ops.R: Idem
* inst/tinytest/test_period.R: Idem
* man/duration.Rd: Idem
* man/nanoival.Rd: Idem
* man/nanotime.Rd: Idem
* man/period.Rd: Idem
* src/Makevars: Idem
* src/duration.cpp: Idem
* src/interval.cpp: Idem
* src/nanotime.cpp: Idem
* src/period.cpp: Idem

* .travis.yml: For now load development version of RcppCCTZ from GitHub

2019-11-21 Dirk Eddelbuettel <edd@debian.org>

* DESCRIPTION (Version, Date): New minor version
Expand Down
15 changes: 11 additions & 4 deletions DESCRIPTION
Original file line number Diff line number Diff line change
@@ -1,14 +1,21 @@
Package: nanotime
Type: Package
Title: Nanosecond-Resolution Time for R
Version: 0.2.4.2
Date: 2019-11-21
Version: 0.2.4.3.3
Date: 2020-03-18
Author: Dirk Eddelbuettel and Leonardo Silvestri
Maintainer: Dirk Eddelbuettel <edd@debian.org>
Description: Full 64-bit resolution date and time support with resolution up
to nanosecond granularity is provided, with easy transition to and from the
standard 'POSIXct' type.
Imports: methods, bit64, RcppCCTZ (>= 0.2.3), zoo
Imports: methods, bit64, RcppCCTZ (>= 0.2.7), zoo
Suggests: tinytest, data.table, xts
LinkingTo: Rcpp, RcppCCTZ
License: GPL (>= 2)
RoxygenNote: 7.0.0
RoxygenNote: 7.1.0
Collate:
'nanotime.R'
'nanoival.R'
'nanoduration.R'
'nanoperiod.R'
'RcppExports.R'
76 changes: 73 additions & 3 deletions NAMESPACE
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
useDynLib(nanotime, .registration = TRUE)
import("methods")
import("bit64")
importFrom("RcppCCTZ", "parseDouble", "formatDouble")
importFrom("zoo", "index2char")
importFrom("utils", "head")
importFrom("utils", "head", "tail")

S3method(as.Date,nanotime)
S3method(as.POSIXct,nanotime)
Expand All @@ -13,8 +14,11 @@ S3method(format,nanotime)
S3method(index2char,nanotime)
S3method(c,nanotime)

export(as.integer64)
export(nanotime, as.integer64)
export(NA_nanotime_)
export(NA_nanoduration_)
export(NA_nanoival_)
export(NA_nanoperiod_)
export(as.nanotime)
export(nanotime.matrix)
exportClasses(nanotime)
exportMethods("+")
Expand All @@ -32,8 +36,74 @@ exportMethods(Summary)
exportMethods(max)
exportMethods(min)
exportMethods(nanotime)
exportMethods(as.nanotime)
exportMethods(print)
exportMethods(range)
exportMethods(show)
exportMethods("names<-")
exportMethods(is.na)
exportMethods(as.nanoduration)
exportMethods(show)
exportMethods(print)
exportMethods(plus)
exportMethods(minus)


exportMethods(intersect.idx)
exportMethods(intersect)
exportMethods(union)
exportMethods(setdiff.idx)
exportMethods(setdiff)
exportMethods(as.nanoival)
exportClasses(nanoival)
export(nanoival)
exportMethods(nanoival.start)
exportMethods(nanoival.end)
exportMethods(nanoival.sopen)
exportMethods(nanoival.eopen)
exportMethods(print)
exportMethods(show)
exportMethods(names)
exportMethods("names<-")
exportMethods("<")
exportMethods("<=")
exportMethods(">")
exportMethods(">=")
exportMethods("[")
exportMethods("[<-")
exportMethods("is.na")
exportMethods("is.na<-")
S3method(c, nanoival)
exportMethods(t)
exportMethods(is.unsorted)
exportMethods(sort)
S3method(seq, nanotime)
exportMethods(seq)
exportMethods(all.equal)
S3method(all.equal, nanotime)

exportClasses(nanoperiod)
export(nanoperiod)
exportMethods(as.nanoperiod)
exportMethods(nanoperiod.month)
exportMethods(nanoperiod.day)
exportMethods(nanoperiod.nanoduration)
S3method(c, nanoperiod)

exportClasses(nanoduration)
export(nanoduration)
S3method(as.integer64,nanoduration)
exportMethods(as.nanoduration)
S3method(c, nanoduration)
S3method(as.data.frame,nanoduration)

S3method(seq, nanoduration)

S3method(format,nanoival)
S3method(format,nanoduration)
S3method(format,nanoperiod)

exportMethods(nano_wday)
exportMethods(nano_mday)
exportMethods(nano_month)
exportMethods(nano_year)
Loading

0 comments on commit 8046bb8

Please sign in to comment.