Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add methods to get number of policies and templates in a PolicySet #1180

Merged
merged 4 commits into from
Sep 9, 2024

Conversation

jv-garcia
Copy link
Contributor

Description of changes

Add methods to get number of policies and templates in a PolicySet.

Regarding unit testing, I decided to just reuse this API in previous places where the size of existing iterators are used, it feels like more effort would feel silly here.

Issue #, if available

#1179

Checklist for requesting a review

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

  • A breaking change requiring a major version bump to cedar-policy (e.g., changes to the signature of an existing API).
  • [ X] A backwards-compatible change requiring a minor version bump to cedar-policy (e.g., addition of a new API).
  • A bug fix or other functionality change requiring a patch to cedar-policy.
  • A change "invisible" to users (e.g., documentation, changes to "internal" crates like cedar-policy-core, cedar-validator, etc.)
  • A change (breaking or otherwise) that only impacts unreleased or experimental code.

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

  • [ X] Updates the "Unreleased" section of the CHANGELOG with a description of my change (required for major/minor version bumps).
  • Does not update the CHANGELOG because my change does not significantly impact released code.

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

  • [ X] Does not require updates because my change does not impact the Cedar formal model or DRT infrastructure.
  • Requires updates, and I have made / will make these updates myself. (Please include in your description a timeline or link to the relevant PR in cedar-spec, and how you have tested that your updates are correct.)
  • Requires updates, but I do not plan to make them in the near future. (Make sure that your changes are hidden behind a feature flag to mark them as experimental.)
  • I'm not sure how my change impacts cedar-spec. (Post your PR anyways, and we'll discuss in the comments.)

…cy set has

cedar-policy#1179
Signed-off-by: Juan Vicente Garcia Orozco <juano@amazon.com>
Signed-off-by: Juan Vicente Garcia Orozco <juano@amazon.com>
Signed-off-by: Juan Vicente Garcia Orozco <juano@amazon.com>
Copy link
Contributor

@cdisselkoen cdisselkoen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks great, two nits

@@ -11,6 +11,7 @@ Starting with version 3.2.4, changes marked with a star (*) are _language breaki

## [Unreleased]
Cedar Language Version: TBD
* Add convenience methods to see how many policies and templates a policy set has (#1179).
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: can we put this in the Added section (three lines below)?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sure!

@@ -2057,6 +2057,18 @@ impl PolicySet {
self.ast.is_empty()
}

/// Returns the number of `Template`s in the `PolicySet`.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
/// Returns the number of `Template`s in the `PolicySet`.
/// Returns the number of `Policy`s in the `PolicySet`.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah, copy paste mishap, let me fix this.

Signed-off-by: Juan Vicente Garcia Orozco <juano@amazon.com>
@jv-garcia
Copy link
Contributor Author

One of the checks failed, is this a known issue? I'd probably need a bit of help to fix it if needed.

@cdisselkoen
Copy link
Contributor

It's a problem unrelated to the change in this PR. Given that, happy to merge this now -- looks like we have 2 approvals and the CI failures are unrelated.

@cdisselkoen cdisselkoen merged commit 0289dfc into cedar-policy:main Sep 9, 2024
17 of 19 checks passed
aaronjeline pushed a commit that referenced this pull request Sep 10, 2024
…1180)

Signed-off-by: Juan Vicente Garcia Orozco <juano@amazon.com>
Co-authored-by: Juan Vicente Garcia Orozco <juano@amazon.com>
This was referenced Sep 10, 2024
khieta pushed a commit that referenced this pull request Sep 10, 2024
…1180)

Signed-off-by: Juan Vicente Garcia Orozco <juano@amazon.com>
Co-authored-by: Juan Vicente Garcia Orozco <juano@amazon.com>
@khieta khieta mentioned this pull request Sep 10, 2024
khieta pushed a commit that referenced this pull request Sep 10, 2024
…1180)

Signed-off-by: Juan Vicente Garcia Orozco <juano@amazon.com>
Co-authored-by: Juan Vicente Garcia Orozco <juano@amazon.com>
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.

4 participants