Skip to content

DRAFT: support 2024 edition, support decompose feature#103

Draft
hsqStephenZhang wants to merge 589 commits into
willcrichton:masterfrom
hsqStephenZhang:draft
Draft

DRAFT: support 2024 edition, support decompose feature#103
hsqStephenZhang wants to merge 589 commits into
willcrichton:masterfrom
hsqStephenZhang:draft

Conversation

@hsqStephenZhang
Copy link
Copy Markdown

@hsqStephenZhang hsqStephenZhang commented May 5, 2025

notice

though this PR has made decompose feature work, i haven't verified the solidity of the code, since there is a huge change of rustc apis. so i would like to make it a draft and lead to more discussions.

i'm not sure why the github's PR page reports that there is a diff of nearly 600 commits, there is only 3 additional commits as shown my local machine (we could fix this later)

background

i'm studying data flow analysis and rust's static analysis frameworks, and i found this awesome project and the vscode extension, but it did not on my projects of 2024 edition. so i tried to fix the code

it turns out that flowistry does not support rust 2024 edition(though rustc_plugin has supported), and it will raise error msg for newly created projects.

besides, the decompose feature is not full supported, and the release binary is not compile with this feature, so the decompose command of vscode extension does not work.

this version update & fix aim at solving the two problems.

solutions

version

  1. bump toolchain version to nightly-2025-03-03, which is the same as rustc_plugin's.
  2. update rustc_xxx usage and use the latest methods instead (it's dirty, but straightforward)
  3. migrate the usage of old indexical into the latest one, which supports 2024 edition

decompose feature

  1. fix response format mismatch problem of decompose calling in extension

test

currently, the download logic in extension.rs is commented out, and the test is done by both launching vscode extensionHost and install of vsix file.

edition test

image

decompose test

image

todo

  • restore the code in download.ts before merging.
  • merge rustc_plugin fix before merging

willcrichton and others added 30 commits February 11, 2022 19:32
JustusAdam and others added 28 commits August 31, 2023 15:30
Allow pruning borrowcheck fact base when calculating aliases
Migrate indexed module into new indexical crate
Update to nightly-2024-12-15, prepare 0.5.43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

9 participants