Skip to content

fix(vscode): restore .NET 8 custom-code creation - #9672

Merged
Brian Lam (lambrianmsft) merged 1 commit into
Azure:hotfix/v5.1013from
lambrianmsft:lambrian-microsoft-restore-net8-hotfix
Oct 27, 2026
Merged

Brian Lam (lambrianmsft) merged 1 commit into
Azure:hotfix/v5.1013from
lambrianmsft:lambrian-microsoft-restore-net8-hotfix

Conversation

@lambrianmsft

Copy link
Copy Markdown
Contributor

Commit Type

  • feature - New functionality
  • fix - Bug fix
  • refactor - Code restructuring without behavior change
  • perf - Performance improvement
  • docs - Documentation update
  • test - Test-related changes
  • chore - Maintenance/tooling

Risk Level

  • Low - Minor changes, limited scope
  • Medium - Moderate changes, some user impact
  • High - Major changes, significant user/system impact

What & Why

Revert #9631 (0add835f2b7704608757a2f9f475e4733eda3f26) on hotfix/v5.1013 to restore .NET 8 custom-code workspace creation and hide .NET 10 from the framework picker.

Reverses the associated picker, fixture, E2E, documentation, and CI changes. Retains framework-specific runtime settings and hidden .NET 10 backend support from #9611. Subsequent Functions-extension dependency removal, extension-pack changes, and dependency-integrity optimizations remain intact.

Impact of Change

  • Users: Custom-code creation offers .NET 8 instead of .NET 10. Windows continues to offer .NET Framework.
  • Developers: Restores .NET 8 workspace fixtures and create/reopen/debug/run coverage, plus negative .NET 10 picker coverage. Removes temporary .NET 10-to-.NET 8 fixture normalization.
  • System: Restores .NET 8 CI SDK provisioning. No manifest or lockfile changes. Medium risk because this changes workspace creation behavior and shared E2E infrastructure.

Test Plan

  • Unit tests added/updated
  • E2E tests added/updated
  • Manual testing completed
  • Tested in: Windows; targeted unit/helper tests and extension build passed. Full UI E2E blocked before test execution by the local VS Code runtime.

From repository root:

  • pnpm --dir apps/vs-code-react exec vitest run src/app/createWorkspace/steps/__test__/dotNetFrameworkStep.test.tsx --coverage=false - passed, 17 tests.
  • pnpm --dir apps/vs-code-designer exec vitest run CreateLogicAppProject.test.ts CreateLogicAppWorkspaceIntegration.test.ts functionProjectFiles.test.ts localSettings.test.ts --coverage=false - passed, 133 tests across five files.
  • pnpm run build:extension - passed, all four build tasks.
  • $files = @(git diff --cached --name-only -- '*.ts' '*.tsx'); npx biome check --write $files - passed for all 10 changed TypeScript files; no fixes required. Commit hooks also passed extraction, ESLint, and Biome.
  • git diff --check upstream/hotfix/v5.1013..HEAD - passed.

From apps/vs-code-designer:

  • npx tsup --config tsup.e2e.test.config.ts - passed.
  • pnpm exec mocha out/test/customCodeDotNetVersionShared.test.js - passed, eight tests.
  • node out/test/run-e2e.js with E2E_MODE=customcodedotnetonly, CUSTOMCODE_DOTNET_E2E_VERSIONS=net8,net10, and CUSTOMCODE_DOTNET_BINARY_PATH set to the system dotnet executable - blocked during VS Code 1.108.0 bootstrap after three retries: Invalid file descriptor to ICU data received. No UI assertions executed; CI must supply UI lifecycle evidence.

Contributors

Brian Lam (@lambrianmsft)

Screenshots/Videos

Not captured: local VS Code E2E startup failed before the framework picker could open. Restored unit tests assert .NET 8 is available, .NET 10 is hidden, and .NET Framework remains Windows-only.

Revert 0add835 for hotfix/v5.1013. Restore the .NET 8 picker and lifecycle coverage while keeping .NET 10 hidden and preserving subsequent hotfix changes.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
@lambrianmsft Brian Lam (lambrianmsft) added the risk:medium Medium risk change with potential impact label Oct 27, 2026
@github-actions

github-actions Bot commented Oct 27, 2026 •

Copy link
Copy Markdown
Contributor

🤖 AI PR Validation Report

PR Review Results

Thank you for your submission! Here's detailed feedback on your PR title and body compliance:


✅ PR Title

  • Current: fix(vscode): restore .NET 8 custom-code creation
  • Issue: None. The title clearly identifies the affected area and the behavioral change.
  • Recommendation: No changes required.

✅ Commit Type

  • Properly selected (fix).
  • Only one commit type is selected, and this PR is a revert/fix PR.

✅ Risk Level

  • Medium risk is selected and matches the risk:medium label. Revert PR handling permits this PR to pass without further review.

✅ What & Why


✅ Impact of Change

  • The impact to users, developers, and the system is described with appropriate context.
  • Recommendation: No changes required.
    • Users: Clearly describes the restored .NET 8 behavior and Windows-specific .NET Framework availability.
    • Developers: Documents restored fixtures, coverage, and CI behavior.
    • System: Documents CI SDK provisioning and the absence of manifest or lockfile changes.

✅ Test Plan

  • The body documents unit tests, E2E coverage, build validation, formatting checks, and the reason full UI E2E execution was blocked.

✅ Contributors

  • Contributor attribution is present.

✅ Screenshots/Videos

  • The PR explains why screenshots were not captured: local VS Code E2E startup failed before the picker could open.

Summary Table

Section Status Recommendation
Title ✅ No changes required
Commit Type ✅ fix is correctly selected
Risk Level ✅ Medium matches the risk:medium label
What & Why ✅ No changes required
Impact ✅ User, developer, and system impact is documented
Test Plan ✅ Validation details and E2E limitation are documented
Contributors ✅ Contributor is credited
Screenshots/Videos ✅ Omission is explained and appropriate for the blocked E2E run

This revert PR passes review. Thank you for providing clear context and validation details.


Powered by: Logic App (fallback) | Last updated: Tue, 27 Oct 2026 18:07:52 GMT

@lambrianmsft
Brian Lam (lambrianmsft) merged commit 894545f into Azure:hotfix/v5.1013 Oct 27, 2026
41 of 42 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

pr-validated risk:medium Medium risk change with potential impact

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants