Sourced from github.com/google/cel-go's releases.
Release v0.18.0
Features
The latest release of CEL introduces validators (#775) and optimizers (#804, #827) and migrates the core CEL internals off of the protobuf expression and type representations (#789).
- String format validator #775
- Create a Function that Reverses a String #796
- Introduce pre-order / post-order visitor pattern #813
- Add Libraries() function to Env #822
- Static optimizer for constant folding #804
- Inlining optimizer #827
- FindStructTypeFields support for types.Provider #814
Breaking Changes
The following PR changes the API signature of the
checker.AstNode
methodExpr
to return anast.Expr
.
- Migrate the checker.Coster to the ast.Expr #798
Fixes
- Nil safety checks for cel.Ast #784
- Fix cost estimates to propagate result sizes #787
- Catch invalid literals created from expression factories #810
- Ensure stable ordering of overload candidates #817
- Clarify replace with/by empty string #820
- Fix functional exemptions for homogeneous literal checks #832
- Fix logical operator folding that only involve literals #833
- Upgrade go-genproto to latest #831
New Contributors
@​bboogler
made their first contribution in google/cel-go#796Full Changelog: https://github.com/google/cel-go/compare/v0.17.1...v0.18.0
5db3640
Inlining optimizer (#827)8943046
Upgrade go-genproto to latest (#831)4eebcf3
Fix logical operator folding that only involve literals (#833)bfccebd
Fix functional exemptions for homogeneous literal checks (#832)705546a
Static optimizer for constant folding (#804)509c1d6
Document that string reverse was introduced in version 3 of ext.strings
(#824)dd6d31d
Fix slice handling in Env.Libraries() (#825)8a45955
Add Libraries() function to Env (#822)78039f1
Clarify replace with/by empty string (#820)2de9952
Ensure stable ordering of overload candidates during dynamic dispatch
(#817)