-
Notifications
You must be signed in to change notification settings - Fork 526
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
ink! analyzer (phase 2) - milestone 1 #1004
Conversation
63cc469
to
55f80a9
Compare
55f80a9
to
7f92788
Compare
@davidsemakula thank you for the milestone delivery. Please see the evaluation document and provide the proper answers and fixes. Let me know when I can continue this evaluation. |
@dsm-w3f Thanks for swift review and feedback.
The clippy warnings should be fixed, you'll need to pull the latest changes from master. As a side note, I'm curious if you ran
For manual testing in VS Code, 1 and 2 are fully testable, but 4 is only partially testable in VS Code, so I will provide some examples for those. Below is a testing guide for manual testing with VS Code: SetupOption 1: Marketplace Install
Option 2: Debug Environment
NOTE: If you're using the Debug Environment option and have already cloned the VS Code extension repository in the past, be sure to pull the latest changes, and (if it exists) delete the TestingThe instructions below are written for the flipper contract in the "test-fixtures" directory/workspace of the VS Code extension's repository, so open that in VS Code first. 1. Quickfixes for diagnostic errors and warnings.Action: Remove the ink! storage item i.e. #[ink(storage)]
pub struct Flipper {
value: bool,
} Expected Result:
Additional testing examples:
All the above edits should result in diagnostics squiggles that reveal one or more quickfixes for the issues. 2. ink! e2e test attribute macro supportDiagnostics and quickfixes: Perform any of the actions below to get ink! e2e macro related diagnostics and quickfixes:
All the above edits should result in diagnostics squiggles that reveal a few quickfixes for the issues. Completions:
Code/intent actions:
Hover content: Hovering over an ink! e2e test attribute will reveal related usage documentation in a popup. 3. Creating a new ink! project with a contract stubNot currently implemented in VS Code, only available in the semantic analyzer. NOTE: The equivalent VS Code feature is scheduled for milestone 7. 4. Code/intent actions for inserting code stubs/snippets for relevant ink! entitiesAs mentioned above, this feature has limited VS Code support at the moment, with the main limitation being that by default VS Code only requests code actions when the cursor is focused on an item, not whitespace. However, the example code actions below (which are triggered by positioning the cursor on an item) already work in the VS Code extension:
NOTE: Full VS Code support for this feature is scheduled for milestone 7. Finally, I'll refactor this into a more generic feature testing guide for the VS Code extension at some point in the future, but for now I'll leave it as a comment here as it's a bit too specific to this milestone for me right now. |
@davidsemakula thank you for the answer. I checked again and the application is working fine in vscode. See details in the evaluation document. The milestone is accepted. I'll forward your invoice internally and the payment should take place within two weeks. Great job! |
Congratulations on completing the first milestone of this grant! As part of the Grants Program, we want to help grant recipients acknowledge their grants publicly. To that end, we’ve created a badge for projects that successfully deliver their first milestone. Please use the badge only in reference to the work that has been completed as part of this grant, so please do not display it on your team or project's homepage unless accompanied by a short description of the grant. Furthermore, you're now welcome to announce the grant publicly. Please remember to observe the foundation’s guidelines in doing so. If you haven't already, reach out to grantsPR@web3.foundation for feedback on your announcement and cross-promotion. |
Milestone Delivery Checklist
Link to the application pull request: w3f/Grants-Program#1904 < please fill this in with the PR number of your application.