Skip to content

Refactor VS Code extension infrastructure and features - #20174

Open
Shenglong Li (shenglol) wants to merge 2 commits into
mainfrom
shenglol/vscode-refactoring-1
Open

Refactor VS Code extension infrastructure and features#20174
Shenglong Li (shenglol) wants to merge 2 commits into
mainfrom
shenglol/vscode-refactoring-1

Conversation

@shenglol

@shenglol Shenglong Li (shenglol) commented Aug 11, 2026

Copy link
Copy Markdown
Contributor

Summary

Begin the feature-oriented reorganization of vscode-bicep, following the ownership model introduced in Bicep.LangServer.

  • document the complete three-PR migration plan
  • establish features/ and infrastructure/ domains with narrow barrel APIs
  • move low-risk features including build, parameters, configuration, module restore, resource import, refactoring, surveys, and walkthroughs
  • consolidate command registration, lifecycle, configuration, editor, logging, output channel, and timing infrastructure
  • co-locate migrated unit tests and enable co-located Jest discovery
  • normalize touched TypeScript and test filenames to kebab-case
  • add feature activation functions and simplify extension composition
  • exclude engineering docs from the VSIX

The migration document records the remaining language workflow, deployment, visualization, E2E relocation, and package-root work for follow-up PRs.

Validation

  • npx tsc --noEmit
  • npx tsc -p tsconfig.e2e.json --noEmit
  • npm run lint
  • npm run test:unit -- --runInBand (38/38 passed)
  • production webpack bundle completed successfully
  • E2E: 38/40 passed; all migrated feature suites passed. The two remaining failures are in the unchanged hover suite: one packaged-language-server documentation URL mismatch and one timeout after the extension host became temporarily unresponsive.
Microsoft Reviewers: Open in CodeFlow

@github-actions

Copy link
Copy Markdown
Contributor

Test this change out locally with the following install scripts (Action run 31466764493)

VSCode
  • Mac/Linux
    bash <(curl -Ls https://aka.ms/bicep/nightly-vsix.sh) --run-id 31466764493
  • Windows
    iex "& { $(irm https://aka.ms/bicep/nightly-vsix.ps1) } -RunId 31466764493"
Azure CLI
  • Mac/Linux
    bash <(curl -Ls https://aka.ms/bicep/nightly-cli.sh) --run-id 31466764493
  • Windows
    iex "& { $(irm https://aka.ms/bicep/nightly-cli.ps1) } -RunId 31466764493"

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant