Skip to content

Revert .NET 10 custom code support for v5.959 hotfix#9169

Closed
lambrianmsft wants to merge 1 commit into
hotfix/v5.959from
hotfix/v5.959-lambrian
Closed

Revert .NET 10 custom code support for v5.959 hotfix#9169
lambrianmsft wants to merge 1 commit into
hotfix/v5.959from
hotfix/v5.959-lambrian

Conversation

@lambrianmsft
Copy link
Copy Markdown
Contributor

Summary

  • Reverts .NET 10 custom code project support from the v5.959 hotfix line
  • Restores .NET 8 defaults/templates for codeless NuGet conversion and removes .NET 10 workflow/template references
  • Preserves later hotfix-era conflict resolutions such as getAssetsRoot() template loading and hidden dev-container review row behavior

Validation

  • pnpm install --frozen-lockfile
  • pnpm exec biome check --write on changed TS/TSX/JSON files
  • pnpm vitest run --retry=3 src/app/commands/workflows/test/switchToDotnetProject.test.ts src/app/utils/test/debug.test.ts src/app/utils/test/customCodeUtils.test.ts src/app/utils/codeless/test/updateBuildFile.test.ts src/app/utils/dotnet/test/executeDotnetTemplateCommand.test.ts (from apps/vs-code-designer)
  • pnpm vitest run --retry=3 src/app/createWorkspace/steps/test/reviewCreateStep.test.tsx (from apps/vs-code-react)
  • pnpm run build:extension

Fixes #9144

Reverts commit 3059380 from the v5.959 hotfix branch to restore the pre-.NET 10 custom code project defaults.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@github-actions
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: Revert .NET 10 custom code support for v5.959 hotfix
  • Issue: None — this is a clear revert title and accurately describes the purpose of the PR.
  • Recommendation: Title is good. For extra clarity you may optionally include the original PR/commit being reverted (e.g., "Revert "" — <commit/PR#>"), but not required.

Commit Type

  • Properly selected: This is a revert PR. Revert PRs are allowed to bypass normal template rules and should be treated as urgent fixes.
  • Note: In the PR body template you would normally select one of the commit types (feature/fix/refactor/etc.). For a revert you can select "fix" or "chore" if you still want one of the standard types recorded, but the current state is acceptable given this is explicitly a revert.

Risk Level

  • Assessment: No risk level selected in the PR body and there are no labels on the PR. Every PR should have one of the risk labels (risk:low / risk:medium / risk:high).
  • Recommendation: Add the matching GitHub label to the PR. Based on the code diff (removing .NET 10 support across many files, deleting tests, and changing template/asset files), the advised risk level is Medium. Please apply the label risk:medium to the PR so automated checks and reviewers see the intended risk.

What & Why

  • Current:
    • Summary in the PR body: "Reverts .NET 10 custom code project support from the v5.959 hotfix line; restores .NET 8 defaults/templates; preserves later hotfix-era conflict resolutions..."
  • Issue: None — the high-level What & Why is present and concise.
  • Recommendation: Consider adding a single-line bullet stating the reason for reverting (e.g., regression caused by .NET 10 changes, compatibility issues, or customer impact) if not already captured in the linked issue. This helps future traceability.

⚠️ Impact of Change

  • Issue: The PR body currently lists a short summary and validation steps but does not explicitly list affected audiences/components in the PR body template sections.

  • Recommendation:

    • Users: Removes .NET 10 custom-code project support for the hotfix branch; users attempting to create or debug .NET 10 custom code in this hotfix line will be reverted to .NET 8 behavior.
    • Developers: Devs should expect numerous removed/renamed assets and test changes; ensure consumers of template assets or helper utilities are aware of the reversion.
    • System: Asset folders, template binaries, and build logic are changed back to .NET 8 defaults — verify CI, packaging, and any binary shipping processes.

    Please add a short impact section to the PR body matching the template (who/what is affected) so release coordinators and on-call engineers can quickly assess scope.


⚠️ Test Plan

  • Assessment: The PR body includes a Validation section with specific vitest commands and build steps. Good.

  • Issue: The code diff shows many test files and test cases were deleted (Net10-related tests and many unit tests). When tests are removed, the PR body should explicitly state why those tests were deleted (they were for Net10 behaviour that is being reverted) and confirm existing tests still cover critical functionality.

  • Recommendation:

    • Add a brief note in the Test Plan explaining why test files were removed and confirm that the remaining test suite passes. Example: "Net10-specific tests removed because Net10 support is reverted on this hotfix branch; existing Net8/NetFx tests remain and were executed as part of validation."
    • Include the actual test run results (pass/fail summary and any flaky retries) in the PR description if possible.
    • If test deletions reduce coverage in key areas, add a follow-up issue to restore coverage while aligning branches.

    If no unit/E2E tests were added and files were removed, include a clear justification in the Test Plan to avoid automated failure.


⚠️ Contributors

  • Assessment: PR body does not list contributors.
  • Recommendation: If others (PM, designer, other engineers) contributed to the decision or code changes, add them under Contributors for credit. If none, a short note saying "No additional contributors" is fine.

⚠️ Screenshots/Videos

  • Assessment: Not applicable for this code-only revert.
  • Recommendation: No action required.

Summary Table

Section Status Recommendation
Title Title is clear. Optionally include original PR/commit ref.
Commit Type OK for a revert. Optionally tag as 'fix' or 'chore' in the template.
Risk Level Add risk:medium label to the PR (advised risk: Medium).
What & Why Good; consider adding explicit reason (regression/customer impact).
Impact of Change ⚠️ Add a short Impact section describing Users/Developers/System effects.
Test Plan ⚠️ Explain deleted tests and confirm remaining test suite results.
Contributors ⚠️ Add contributors or state none.
Screenshots/Videos ⚠️ Not applicable. No action required.

Final notes
This PR is a revert and per the repository rules revert PRs can be fast-tracked — I have passed it. However, please address the items above before merge to keep the PR metadata complete for release and auditing purposes:

  1. Add the risk label to the PR: risk:medium (recommended based on the scope of changes).
  2. Update the PR body to explicitly state: why the revert was required (short cause), which tests were intentionally removed and why, and include the test-run summary you used in Validation.
  3. Add an Impact of Change block that briefly calls out Users/Developers/System effects.
  4. Optionally add Contributors.

Once you add the risk label and optionally enhance the PR body with the brief clarifications above, the PR can be merged by the appropriate release owner. Thank you — and good job including specific validation steps in the PR body.


Last updated: Thu, 14 May 2026 20:52:37 GMT

@github-actions
Copy link
Copy Markdown
Contributor

📊 Coverage Check

The following changed files need attention:

apps/vs-code-designer/src/app/commands/createCustomCodeFunction/createCustomCodeFunctionSteps/functionFileStep.ts - 0% covered
apps/vs-code-designer/src/app/commands/createProject/createCustomCodeProjectSteps/functionAppFilesStep.ts - 0% covered
apps/vs-code-designer/src/app/commands/createProject/createCustomCodeProjectSteps/targetFrameworkStep.ts - 0% covered
apps/vs-code-react/src/app/createWorkspace/steps/dotNetFrameworkStep.tsx - 0% covered

⚠️ apps/vs-code-designer/src/app/commands/createNewCodeProject/CodeProjectBase/CreateFunctionAppFiles.ts - 64% covered (needs improvement)
⚠️ apps/vs-code-designer/src/app/commands/createWorkflow/createCodefulWorkflow/createCodefulWorkflowSteps/codefulWorkflowCreateStep.ts - 10% covered (needs improvement)
⚠️ apps/vs-code-designer/src/app/commands/workflows/switchToDotnetProject.ts - 71% covered (needs improvement)
⚠️ apps/vs-code-designer/src/app/utils/codeless/updateBuildFile.ts - 54% covered (needs improvement)
⚠️ apps/vs-code-designer/src/app/utils/customCodeUtils.ts - 78% covered (needs improvement)
⚠️ apps/vs-code-designer/src/app/utils/debug.ts - 50% covered (needs improvement)
⚠️ apps/vs-code-designer/src/app/utils/dotnet/dotnet.ts - 45% covered (needs improvement)

Please add tests for the uncovered files before merging.

@lambrianmsft
Copy link
Copy Markdown
Contributor Author

Coverage fix is ready in #9170 because direct pushes to \hotfix/v5.959-lambrian\ are blocked by branch protection.\n\nLocal validation completed:\n- \pnpm exec biome check --write \n- VS Code designer targeted coverage: 12 files / 192 tests passed\n- VS Code React targeted coverage: 2 files / 25 tests passed\n- Final changed-file coverage table: all target files >= 80%

@lambrianmsft
Copy link
Copy Markdown
Contributor Author

Closing as superseded by #9170, which now targets hotfix/v5.959 directly and contains both the .NET 10 revert and the restored coverage tests.

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