Release v0.8.0
TristonianJones
released this
18 Sep 01:49
·
391 commits
to master
since this release
Update with parser hardening and general improvements toward 100% conformance with the CEL-Spec.
Features
- [#430] Recursion limits and error recovery attempt limit parse-time options
- [#433] Expression size limit parse-time option
- [#443] Change recursion checks to be rule-based, to better match the spec
- [#446] Make it to use a single proto message's fields as the basis for all CEL variables
- [#447] Parser error recovery lookahead limit to prevent pathological backtracking
Fixes
- [#422] Return errors when duration or timestamp overflow is detected
- [#423] Preserve subsecond precision when converting timestamps from strings
- [#427] Use accessor methods for source info instead of fields directly to avoid panic
- [#436] Fix the
IsChecked
call for constant expressions - [#439] Ensure
RemoveErrorListeners()
is called on lexer and parser objects allocated from pools. - [#448] Unify overflow checking in operators, field setting.
- [#449] Fix list and map equality to preserve logical ANDing of elements
Performance
- [#426] Optimize the antlr.CharStream implementation