Open
Conversation
Collaborator
|
/gcbrun |
jnthntatum
reviewed
Dec 24, 2025
| as days or weeks, are not supported as this would necessitate an understanding | ||
| of the locale of the execution context to account for leap seconds and leap | ||
| years. | ||
| Duration strings support decimal values with the following unit suffixes: |
Collaborator
There was a problem hiding this comment.
The cel-go implementation is just using go's stdlib time.ParseDuration. For cel-cpp and cel-java, we use libraries that cite go as the format spec and reference implementation. so might make sense to to cite the godoc here?
fwiw abseil doesn't handle mu for microseconds so there are at least some inconsistencies for cel-cpp.
@TristonianJones thoughts?
Contributor
Author
There was a problem hiding this comment.
so might make sense to to cite the godoc here
I don't think it has anything to offer. In my experience, Pike is nakedly hostile to tightly-specified behavior, and time.ParseDuration seems like no exception — if we want a spec, I think we have to own it here.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
I'm not particularly happy for duration strings to disagree with the CEL grammar about numbers allowing trailing decimal points, and for units to be allowed with any order and any repetition.
I'm pretty unhappy about silently truncating fractional nanoseconds.
But I'm assuming the pragmatic view here is that what
cel-goalready implements is the correct behavior so that is what I have (hopefully) specified and tested here.