cedar-policy / cedar

Implementation of the Cedar Policy Language
https://www.cedarpolicy.com
Apache License 2.0
892 stars 80 forks source link

hide RFC 82 implementation behind entity-tags crate feature #1211

Closed cdisselkoen closed 2 months ago

cdisselkoen commented 2 months ago

Description of changes

Hides the existing RFC 82 implementation code (#1204) behind an experimental feature flag, entity-tags.

This PR chooses to leave the parser grammar and JSON structures the same, and only report an error at the point we construct a ValidatorSchema. This enables us to have a much nicer error message if someone tries to use tags without enabling the feature. It does mean that a lot of the "experimental" parser code is not deactivated when the feature is deactivated, but I think this is acceptable.

Issue #, if available

Checklist for requesting a review

The change in this PR is (choose one, and delete the other options):

I confirm that this PR (choose one, and delete the other options):

I confirm that cedar-spec (choose one, and delete the other options):