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

Regal 1.0 wish list #979

Open
anderseknert opened this issue Aug 10, 2024 · 0 comments
Open

Regal 1.0 wish list #979

anderseknert opened this issue Aug 10, 2024 · 0 comments
Labels

Comments

@anderseknert
Copy link
Member

Don't worry, no imminent 1.0 release planned 😄 But we've reached a point where we can see some things that we'd want to do but that would potentially break existing integrations, whether via the Go API, CLI or whatnot. I'm mostly starting this issue as a way to compile these things and to gather feedback.

These are just some things that come to mind right now, and I'm sure we'll add more as we think of them:

  • CLI: The json output format feels largely redundant after sarif was introduced, and I think we should get rid of it in favor of SARIF, as it's a format supported "everywhere". We'd need to ensure there's no data in the current json output that isn't mapped into sarif first though.
  • Go API: The Location object of a Violation recently got updated to included an optional End position. The starting position col/row are still located directly under Location though. It would be a nice API if these belonged under a Start node.
  • Rego API: Provide a stable and documented Rego API for writing custom rules. While we've currently documented the process of writing custom rules, it's not clear what rules and helper functions are available to custom rule authors, and we've not really paid much attention to this use case when we rewrite the regal.ast package, for example.
  • Go API: Try to tighten up the Go API and make public only what's really needed. Once that's done, we can provide a 1.0 "contract". But let's make sure we're not accidentally including things here that aren't generally useful.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant