v0.3.0
This release brings the following changes to improve safety, ease of use and evaluation performance:
- Static AST validators have been added. Canonical literal validators are available for timestamp, durations, regex and homogeneous aggregate literals (for lists and maps).
- Static AST optimizers. Used for optimizing type-checked ASTs for improved evaluation efficiency. Constant Folding is available for use.
- Introduction of CelValue and CelValueProviders. CelValue is a native value representation leveraged in the runtime. This can be used to bind non-protobuf structs for evaluation (ex: POJOs).
What's Changed
- Internal Changes by @copybara-service in #126
- Add HomogeneousLiteral Validator by @copybara-service in #136
- Add evaluation listener by @copybara-service in #149
- Internal Changes by @copybara-service in #151
- Decouple DynamicProto by extracting logic for descriptor pool and message factory. by @copybara-service in #152
- Fix unpacking any messages containing extension fields by @copybara-service in #155
- Internal Changes by @copybara-service in #156
- Externalize Codelabs Code by @copybara-service in #161
- Update map and filter macros to use unique ids for references to accumulator variables. by @copybara-service in #188
- Add an interface for selectable values by @copybara-service in #186
- Fix external bazel builds by @copybara-service in #190
- Add an adapter for legacy runtime to consume CelValueProvider. Add interpreter test for CelValues. by @copybara-service in #172
- Add an example demonstrating how to bind a POJO in the runtime by @copybara-service in #187
- Make builders return the interface type instead of concrete implementation by @copybara-service in #192
- Add a string formatter for CelExpr by @copybara-service in #189
- move antlr generated CEL parser to it's own package by @mikedanese in #194
- Release 0.3.0 by @copybara-service in #196
New Contributors
- @mikedanese made their first contribution in #194
Full Changelog: v0.2.0...v0.3.0