move icon indicating copy to clipboard operation
move copied to clipboard

[move-analyzer] Enhancement for supporting MSL and completion suggestions

Open 0xOutOfGas opened this issue 2 years ago • 10 comments
trafficstars

Motivation

This is a draft PR for #799 from MoveBit, we'd like to let folks know what we're doing, and have a discussion with developers to improve move-analyzer together.

The changelog is below:

  • 1 Added semantic analysis to the Move language and Sui Move, and enhanced some features of the plug-in, such as go-to-definition, auto-completion, finding references, etc.;
  • 2 Added semantic analysis to MSL (Move Specification Language), supports features such as go-to-definition and auto-completion, and supports go-to-definition from MSL code to Move code;
  • 3 Integrated common Sui development commands into Command Palette, support Sui Code Snippets automatic completion (currently only init function);
  • 4 Support parallel development of multiple projects under the same directory;

Have you read the Contributing Guidelines on pull requests?

Yes

Test Plan

Tested in our dev member's daily work, may not be fully tested.

0xOutOfGas avatar Feb 24 '23 12:02 0xOutOfGas

Yes, it's a big PR, we considered splitting it before submitting it but not succeeded. We'd like to try to split it again, and fixing the format issues, and also add more description about the changes/additions/enhancements.

For the splitting work, we may take some time to finish and submit separate PRs. Before that, we appreciate any reviews and comments on this PR.

0xOutOfGas avatar Feb 28 '23 10:02 0xOutOfGas

Yes, it's a big PR, we considered splitting it before submitting it but not succeeded. We'd like to try to split it again, and fixing the format issues, and also add more description about the changes/additions/enhancements.

For the splitting work, we may take some time to finish and submit separate PRs. Before that, we appreciate any reviews and comments on this PR.

Thank you! I would really hope that it can be split considering that it addresses multiple somewhat separate issues. It would really help with the reviewing effort (I am assuming you tried stacked diffs), as would additional documentation/description (ideally in the code itself so that it's easy to find afterwards).

There is also a lot of new functionality but very few tests...

awelc avatar Feb 28 '23 22:02 awelc

The toolchain been modified because of I have the error below.

> [email protected] compile
> tsc -p ./ && cd ../../ && cargo build --bin move-analyzer

error: the 'cargo' binary, normally provided by the 'cargo' component, is not applicable to the '1.65.0-x86_64-apple-darwin' toolchain

 *  The terminal process "/bin/zsh '-c', 'npm run pretest'" terminated with exit code: 1. 
 *  Terminal will be reused by tasks, press any key to close it. 

It's wired, should impossible, Someone must used this version on Mac. I don't know how to fix this error.

yuyang-ok avatar Mar 01 '23 01:03 yuyang-ok

We were admittedly rather tied up with the mainnet launch until recently, but it's time to get back to enhancing the IDE! I was wondering if there is any progress on (any of) the following:

Yes, it's a big PR, we considered splitting it before submitting it but not succeeded. We'd like to try to split it again, and fixing the format issues, and also add more description about the changes/additions/enhancements.

For the splitting work, we may take some time to finish and submit separate PRs. Before that, we appreciate any reviews and comments on this PR.

awelc avatar May 18 '23 21:05 awelc

we are still working on that, will keep you posted

0xyilu avatar May 25 '23 07:05 0xyilu

we are still working on that, will keep you posted

Do you have some kind of timeline in mind that you could share?

awelc avatar Jun 13 '23 17:06 awelc

We were admittedly rather tied up with the mainnet launch until recently, but it's time to get back to enhancing the IDE! I was wondering if there is any progress on (any of) the following:

Yes, it's a big PR, we considered splitting it before submitting it but not succeeded. We'd like to try to split it again, and fixing the format issues, and also add more description about the changes/additions/enhancements.

For the splitting work, we may take some time to finish and submit separate PRs. Before that, we appreciate any reviews and comments on this PR.

Hello, I am an engineer from Movebit. We will continue to maintain and optimize the sui move analyzer, and would like to merge the features into move analyzer. For this PR, we plan to split and merge it in the following feature order within about 4 weeks.

  1. Goto definition
  2. Find references
  3. Hover
  4. Auto completion
  5. Inlay hints

robinlzw avatar Jun 19 '23 01:06 robinlzw

we are still working on that, will keep you posted

Do you have some kind of timeline in mind that you could share? hello, for "Goto definition" feature, I submitted a PR as this: https://github.com/move-language/move/pull/1064

robinlzw avatar Jul 05 '23 02:07 robinlzw

we are still working on that, will keep you posted

Do you have some kind of timeline in mind that you could share? We plan to complete the split and merger of the entire PR around July 15th Find references -- 20230710 Hover -- 20230712 Auto completion -- 20230714 Inlay hints -- 20230717

robinlzw avatar Jul 06 '23 01:07 robinlzw

we are still working on that, will keep you posted

Do you have some kind of timeline in mind that you could share?

We have already submitted the PR for the first feature, and the PR for the remaining 4 features are also ready. Due to the need to rely on the first PR, please review and merge first, and we will immediately submit the remaining 4 PRs in sequence.

robinlzw avatar Jul 13 '23 01:07 robinlzw