regal
regal copied to clipboard
Regal is a linter for Rego, with the goal of making your Rego magnificent!
See docs in PR (and issue) for further details. Fixes #603
As long as the working document parses, inlay hints are recalculated as they should. But if there are parser errors, it looks like we use the last good location. This...
This is a mistake I see devs do every now and then — it just never struck me as something we could try and prevent. ```rego deny contains something if...
As per spec https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/#textDocument_signatureHelp While it's possible to get this information by hovering the built-in function, this would help making it easier to get the relevant information for function signatures...
With #668 we got basic support for `textDocument/documentSymbol`, which means we currently iterate over all the "public", or top-level identifiers, like packages, rules, functions. This seems to cover the most...
While working on support for [document symbols](https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/#textDocument_documentSymbol), one of the open questions was how to best represent Rego's incremental rule definitions for a format that largely expects location _ranges_ for...
As discussed in [Styra community Slack](https://styracommunity.slack.com/archives/C05HF2KRY3G/p1714476295049779) there is an issue with the `opa-fmt` rule, Windows' line endings and IDEs like VS Code that automatically changes line endings. ![image](https://github.com/StyraInc/regal/assets/631907/5f500ff7-72a9-415f-b5ac-fa947a00c363) Regal shows...
As per spec: https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/#textDocument_inlineValue This feature allows the language server to return a list of values that should be presented to the right of a line in the editor, presumably...
As per the spec https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/#textDocument_semanticTokens This provides a more granular "knowledge" about the language than what regex-based syntax highlighting can do, which makes for a more polished overall experience.
Shadowing a name from the outer scope is arguably OK, and it's certainly allowed by OPA. But it would be good if there was at least a custom (i.e. optional)...