Skip to content

WIP Lots of improvements - #898

Draft
snazy wants to merge 30 commits into
projectnessie:mainfrom
snazy:broad-review-fixes
Draft

WIP Lots of improvements#898
snazy wants to merge 30 commits into
projectnessie:mainfrom
snazy:broad-review-fixes

Conversation

@snazy

@snazy snazy commented Jul 16, 2026

Copy link
Copy Markdown
Member

No description provided.

@snazy
snazy force-pushed the broad-review-fixes branch 20 times, most recently from 57f38e8 to 48e5ab6 Compare July 23, 2026 15:31
@snazy
snazy force-pushed the broad-review-fixes branch 6 times, most recently from 11e9436 to e38a833 Compare July 28, 2026 14:53
@snazy
snazy force-pushed the broad-review-fixes branch 3 times, most recently from 8552e16 to 7ca44dc Compare August 8, 2026 07:30
@snazy
snazy force-pushed the broad-review-fixes branch from 7ca44dc to 529f537 Compare August 17, 2026 09:40
snazy added 29 commits August 20, 2026 12:31
* Replace `Arrays.asList()` with single element with `List.of()`
* enhanced switch expression
* pattern variable
* Use String.repeat()
* Use `.isEmpty()`
* Remove unused `ParseError`
* Remove unused function in TypeErrors
* Remove duplicate `if`
Struct-pruning was effectively doing nothing.
Cache source-specific accessors for generated protobuf messages and Jackson 2/3 properties. Convert CEL maps directly to protobuf map entries while retaining descriptor-based fallbacks and regression coverage for representative value types.
Make TypeAdapter the bidirectional conversion boundary. Keep Val.convertToNative() as the deprecated compatibility fallback, preserve primitive and range semantics, and route containers and environments through their configured adapters.
Add fixed evaluators and operations for three-, four-, and five-argument overloads. Retain generic dispatch, error and unknown ordering, receiver fallback, cost, and decorator behavior for unsupported paths.
Extend generated protobuf access and optimize CEL map/list operations, traversal, scalar reuse, and cost calculation. Retain generic fallbacks and CEL equality, error, unknown, and numeric semantics.
Eliminate temporary activation-lookup values and centralize numeric comparison and equality semantics. Add evaluator-boundary benchmarks and coverage for numeric boundaries, NaN, and signed zero.
Evaluate supported checked scalar expressions without intermediate Val wrappers. Keep unsupported syntax, custom adapters and providers, decorators, and incompatible overloads on the standard interpreter while preserving result, error, unknown, cost, and evaluation-order semantics.
Plan native list concatenation, scalar-list consumers, exact protobuf field selection, and dynamic string-keyed map access. Preserve interpreter fallback and add differential, planner-shape, and benchmark coverage.
Extend consumer-scoped native evaluation for aggregate/list consumers, list concatenation, maps, folds, and equality. Preserve CEL construction order and exceptional-value semantics while avoiding intermediate CEL collections on supported paths.
Add benchmark modules and representative workloads for core, protobuf, Jackson, and native-evaluation paths.
Optimize exact indexing of Jackson object-valued maps without materializing intermediate CEL values. Retain dynamic lookup and adapter fallback behavior.
Recognize constant regular-expression patterns during planning and reuse compiled expressions while retaining runtime behavior for dynamic patterns.
Gate native planning for supported nested quantifiers and add coverage for allocation-sensitive evaluation paths. Unsupported shapes retain interpreter execution.
Add comparison benchmarks for optimized evaluator paths and their baseline controls.
Return parse issues from environment compilation, preserve protobuf type-value adaptation, isolate partial activation patterns, and retain registry identity when extending environments.
Remove the unused conformance BOM entry and register transitive protobuf dependencies explicitly.
Validate Jackson map keys before adaptation and report unsupported key types consistently in the Jackson 2 and Jackson 3 integrations.
Adapt repeated generated protobuf message fields with the same registry and type semantics as singular message fields.
Compile benchmark expressions at the intended lifecycle boundary so setup and measurement paths remain distinct.
Defensively retain source line offsets so callers cannot alter source-location calculations after construction.
Limit the supported release line, remove obsolete build configuration, resolve release POMs from version tags, and restore the Protobuf 3 build and test variants.
Use RE2/J semantics for CEL regular expressions and update conformance and standalone coverage for the supported behavior.
Register standalone Jackson enums, align array field types with CEL adaptation, and allow configured recursive Jackson registries.
Correct protobuf type overrides, live list sizing, frozen environment handling, map value adaptation, iterator behavior, and database copying.
Use the configured TypeRegistry in ScriptHost, introduce ScriptCompiler, correct unknown handling and source locations, and isolate EvalState between evaluations.
Update Javadocs and public documentation to describe the current APIs, evaluation behavior, and supported integrations.
Publish the CEL-Java source archive as part of the cel-standalone artifact.
Add configurable resource limits for CEL parsing, compilation, and evaluation, with public API and documentation coverage.
@snazy
snazy force-pushed the broad-review-fixes branch from 692827f to 4cd9755 Compare August 20, 2026 10:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant