Skip to content

WIP Lots of improvements - #898

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

WIP Lots of improvements#898
snazy wants to merge 104 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 4 times, most recently from 379364e to e22db96 Compare July 24, 2026 17:04
snazy added 6 commits July 27, 2026 08:50
Update string-to-bool conversion to accept the CEL-Spec spellings while rejecting unsupported mixed-case values.

Compare type values by CEL type name so well-known object type values match their built-in timestamp and duration type values.

Allow null assignment to wrapper fields and leave wrapper, message, timestamp, and duration fields unset during protobuf construction.

Support backtick-quoted field names in select expressions and message field initializers, then remove the now-passing conformance skips.
Handle CEL null values at the protobuf construction boundary for repeated and map fields whose value type is timestamp, duration, or a protobuf wrapper.

Convert map message values to the actual target protobuf message type instead of always using google.protobuf.Value.

Avoid hasField() for repeated wrapper fields when reading protobuf values, since repeated fields do not support presence checks.
The map Any null-retention conformance cases now pass after the protobuf map conversion changes.

Remove the proto2 and proto3 skip entries so the JUnit conformance suite covers those cases.
Protobuf message construction could let bad field conversions escape as Java runtime exceptions, which broke disabled-check conformance cases expecting evaluation errors.

Wrap field conversion and assignment failures from newValue() as CEL Err values, add provider coverage for invalid null assignments, and enable the remaining proto2/proto3 set_null conformance cases.
Include the CEL-Spec type_deduction suite in the JUnit conformance runner to cover checker result types for already-supported language features.

Keep explicit skips for the remaining unsupported checker cases around optionals, flexible type parameter generality, wrapper promotion, and legacy nullable generic candidates.
The dynamic float protobuf range-assignment cases now pass under the JUnit conformance runner.

Remove the stale proto2 and proto3 float range skip entries while keeping the int32 and uint32 range cases skipped because they still overflow into protobuf field values instead of returning range errors.
@snazy
snazy force-pushed the broad-review-fixes branch from 11e9436 to e38a833 Compare July 28, 2026 14:53
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