Release v0.14.0
TristonianJones
released this
04 Apr 21:40
·
265 commits
to master
since this release
Features
- Support for protobuf JSON serialization of native object types [#616]
- Allow creation of custom types.Err structs [#630]
Optional Values
- Syntax, type-checking, and runtime support for optional list elements [#615]
- Support for optional on unparse [#673]
String Extensions
- Add string.format by [#617]
- Add version option to Strings extension library [#650]
- Add strings.quote [#639]
- Add estimated cost support to strings.quote [#664]
- Add compile-time string.format checking [#645]
REPL
- Appengine demo for web-based REPL [#646]
- Enable extensions for REPL [#653]
- Update REPL to use ext.Strings formatter when possible. [#659]
Fixes
- Fix long build times by upgrading gazelle [#637]
- Ensure that macro call tracking is updated during AST pruning [#619]
- Fix accidental alterations to 'decorators' slice [#620]
- Tests for race conditions in top-level cel package [#625]
- Potential index out of bounds fix by [#626]
- Fix conformance service proto field access for SourcePosition message [#627]
- Ensure that optional indices are within the range of elements [#663]
- Update repl README's standalone build commands [#636]
- Fix panic in optimized set membership test for byte values [#652]
- Fix regression of cost behavior for has() [#651]
Breaking Changes
- Remove the deprecated interpreter.Coster interface [#665]
Since the Env.EstimateCost() and Program.ActualCost() routines are available,
the deprecated cel.EstimateCost() routine is confusing and strictly less accurate
than the updated APIs.
While there are other cleanups desired for https://github.com/google/cel-go/issues/504,
this change will at least improves the clarity of the top-level APIs.
Note: this is a breaking change. Users should consult the referenced methods
to replace any legacy use of cel.EstimateCost()
New Contributors
- @inteon made their first contribution in #620
- @nlachfr made their first contribution in #630
- @davidjb made their first contribution in #636
- @dependabot made their first contribution in #647
- @SimonWaldherr made their first contribution in #670
Full Changelog: v0.13.0...v0.14.0