Skip to content

Releases: google/cel-go

Release v0.13.0

06 Dec 23:14
d6f7888
Compare
Choose a tag to compare

This release introduces new extension libraries for working with protobuf message extensions, simple mathematical operations for least and greatest, as well as a significant new feature for working with optional values as defined in https://github.com/google/cel-spec/wiki/proposal-246.

In addition to these features, several fixes have been made to address bugs or security hardening issues.

Fixes

  • Fix invalid get function assigned to MutableList [#575]
  • Example of a stateful binding using environment extension [#577]
  • ExprHelper.Copy to assist with unique id tagging of macro expanded ASTs [#579]
  • Enable comparison of wrapped errors via errors.Is [#580]
  • Refinement on recursion depth checking [#585]
  • Add the missing global matches() declaration [#589]
  • Parser refactor to improve syntactic correctness [#588]
  • Harden field visiting parser paths [#611]
  • Support assignment of a wrapper field to null [#604]

Features

  • Library for creating and working with optional values. [#581]
    • Support for conditional attribute qualification [#595]
    • Optional field selection runtime [#599]
    • Parse and type-check support for optional field selection [#601]
    • Support for map and message literal construction [#603]
  • Proto extension library [#592]
  • Math extension library for supporting least and greatest macros [#608]
  • Extension to support Golang structs as CEL types [#612]
  • Allow macros to return an empty Expr to indicate a non-expansion [#605]
  • Add support for configuring parse recursion limits in EnvOptions. [#594]
  • Stringer functions for list and map values [#578]

New Contributors

Full Changelog: v0.12.5...v0.13.0

Release v0.12.5

18 Aug 20:16
1aae83a
Compare
Choose a tag to compare

Fixes

  • Codelab module and codelab refactors [#567]
  • Use proto safe traversal accessors [#570]
  • Avoid exception for immutable list from folded expression [#574]
  • Fix nested CallExpr cost estimation [#571] (backported to v0.10.2, v0.11.5)

New Contributors

Full Changelog: v0.12.4...v0.12.5

Release v0.12.4

14 Jul 17:47
efc893b
Compare
Choose a tag to compare

Fixes

  • Ensure overloads are searched in the order they are declared [#566]
  • Augment dynamic dispatch to consider list and map element type information during overload resolution.

Full Changelog: v0.12.3...v0.12.4

Release v0.12.3

13 Jul 19:05
f3df06c
Compare
Choose a tag to compare

Fixes

  • Add the duration declarations in the new style when UTC is enabled [#565]

Full Changelog: v0.12.2...v0.12.3

Release v0.12.2

12 Jul 22:54
79192b9
Compare
Choose a tag to compare

Features

  • Support formatting options when unparsing ASTs to strings [#559]

Fixes

  • Add an applied features map for one-time only features [#564]

New Contributors

Full Changelog: v0.12.1...v0.12.2

Release v0.12.1

11 Jul 16:59
9ded77e
Compare
Choose a tag to compare

Fixes

  • Fix the signature overlap check for parameterized types by [#563]

Full Changelog: v0.12.0...v0.12.1

Release v0.12.0

06 Jul 20:39
c04cadc
Compare
Choose a tag to compare

Features

  • Introduce a REPL for testing basic CEL expressions. [#539]
  • Add basic readme for REPL [#545]
  • Add REPL support for loading protobuf descriptors [#555]
  • Dispatcher refactor to improve function declaration, definition, and extension [#556]
  • Export the built-in parser macros individually [#429]

Fixes

Note, the cel-spec indicates that time operations should be UTC by default. To opt-in to this behavior see #560 for more details. In v0.13.+ this feature is expected to be enabled by default.

  • Provide an option to ensure time operations are in UTC by default [#560]
  • Ensure the recursion depth is being checked during parser AST visit [#542]
  • Add missing type specializations into the type-checker. [#543]
  • Support for proto2 group fields [#547]
  • Ensure that type substitutions consistently perform the 'occurs' check.[#550]
  • Ensure that the CheckedType is populated for group fields [#552]

New Contributors

Full Changelog: v0.11.4...v0.12.0

Release v0.11.4

13 May 17:47
11b2ffc
Compare
Choose a tag to compare

Fixes

  • Omit large error strings [#537]
  • Fix the occurs check to prevent tagging types as substitutions for themselves [#540]

Full Changelog: v0.11.3...v0.11.4

Release v0.11.3

05 May 23:33
e69bfa3
Compare
Choose a tag to compare

Features

  • Allow functions to accept error and unknown args [#525]

Fixes

  • Minor adjustment to type-tests to support custom Bool types by [#521]
  • Minor simplification of ValOrErr [#522]
  • Fix protobuf merge when types have different descriptor instances [#526]
  • Prevent clobbering vars maps provided by previous libs [#528]
  • Use gazelle-compatible repository name for antlr [#529]
  • Upgrade to ANTLR v4.10.1 and remove binary ANTLR tools [#533]
  • Set the error reporting limit to 100 for parity with C++ [#534]

New Contributors

Full Changelog: v0.11.2...v0.11.3

Release v0.11.2

25 Mar 03:02
829e322
Compare
Choose a tag to compare

Fixes

  • Make the standard environment initialization lazy [#520]

Full Changelog: v0.11.1...v0.11.2