-
Notifications
You must be signed in to change notification settings - Fork 200
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
feat(lsp): Add nargo capabilities for test metadata #2532
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Left some nits
This fails for me if the Nargo workspace isn't at the root of the folder open in VSCode. The issue stems from the extension only looking in the root for a |
Yep, this is a limitation of our reliance on Nargo.toml and VSCode Testing API not working with file paths. I believe this is a limitation that this feature needs to accept without a much larger rework of finding the project root can happen. |
fc88a8f
to
6892488
Compare
* master: chore: Add deprecation message for default type in for loop (#2689) chore!: Change `noir-lang/noir-source-resolver` to `noir-lang/source-resolver` (#2718) chore: clippy fixes (#2719) chore: Integrate noir.js into workspace and CI release workflow (#2705) feat: Add initial version of noir.js (#2681) chore: switch `release-source-resolver.yml` to use yarn (#2704) chore: move stranded test to correct directory (#2701) chore(ci): deny wildcard dependencies (#2702) chore: fix `noirc_abi_wasm` publish for release-please (#2699) chore: introduce workspace for js packages (#2677) feat: Allow methods defined in a contract to be non-entry points (#2687) chore: revert some unwanted small changes from PR2180 (#2685) feat(lsp): Add nargo capabilities for test metadata (#2532) chore(ci): Add `cargo deny` workflow (#2682)
Description
Problem*
Resolves #2442
Summary*
This reworks types for the LSP to allow us to send back custom capabilities, such as
This also adds support for requesting metadata about tests, asking the LSP to run a test, and notifications for updating tests upon file save. These custom capabilities are in service of the Test Panel in vscode, but other LSP clients can decide not to implement them if they don't have testing APIs like vscode.
Documentation
This PR requires documentation updates when merged.
It's probably worth documenting the new UI elements that will be added to the vscode extension. I'll be including screenshots in the related PR that will be linked to this.
Additional Context
PR Checklist*
cargo fmt
on default settings.