Skip to content

Release v0.8.0

Compare
Choose a tag to compare
@TristonianJones TristonianJones released this 18 Sep 01:49
· 385 commits to master since this release
90c32ee

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