Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ISO8601 or RFC3339 for creation/expiration dates? #2

Closed
Geal opened this issue Jan 7, 2019 · 3 comments
Closed

ISO8601 or RFC3339 for creation/expiration dates? #2

Geal opened this issue Jan 7, 2019 · 3 comments

Comments

@Geal
Copy link
Contributor

Geal commented Jan 7, 2019

RFC 3339 might be simpler

@tarcieri
Copy link
Collaborator

tarcieri commented Jan 7, 2019

I've used RFC 3339 in all of my stuff. For binary formats I use TAI64N.

@KellerFuchs
Copy link
Collaborator

KellerFuchs commented Jan 7, 2019

I'd rather not have something which requires understanding timezones and DST in order to compare dates, as that's a good way to have different components of a system interpreting a given timestamp differently (for instance, even with the same implementation of biscuit, you could disagreements between systems using a different version of tzdata)

TAI64 (and TAI64N) have the advantage of simplicity: it is nigh-impossible to fuck up the timestamp comparison, as it is pretty-much just integer comparison.
I think it is reasonable to use TAI64, but TAI64N might be a better choice: we likely don't care about the 32b overhead, all usecases satisfied by TAI64 still work with higher-precision, and it would ruin someone's day to only provide TAI64 if they care about sub-second timing.

@clementd-fretlink
Copy link
Contributor

TAI64N seems sensible indeed (as long as the biscuit libraries give an ergonomic way to specify durations).

@Geal Geal closed this as completed Sep 13, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants