Skip to content

Update bundled nuget.exe to 7.6.0 and refresh CLI build guidance - #20400

Open
steven-pribilinskiy wants to merge 1 commit into
microsoft:mainfrom
steven-pribilinskiy:dev/steven/update-cli-build-guidance
Open

Update bundled nuget.exe to 7.6.0 and refresh CLI build guidance#20400
steven-pribilinskiy wants to merge 1 commit into
microsoft:mainfrom
steven-pribilinskiy:dev/steven/update-cli-build-guidance

Conversation

@steven-pribilinskiy

Copy link
Copy Markdown

Summary of the Pull Request

Follow-up to the discussion in #20390 (request from @zadjii-msft): updates the CLI build guidance to match current reality, and upgrades the bundled dep/nuget/nuget.exe from 4.1.0 (2017) to 7.6.0 as @DHowett suggested.

Detailed Description of the Pull Request / Additional comments

dep/nuget/nuget.exe 4.1.0 → 7.6.0. The old binary predates .slnx support, so Invoke-OpenConsoleBuild failed at its first step with Invalid input 'OpenConsole.slnx'. The file type was not recognized. With 7.6.0, both restore invocations in tools/OpenConsole.psm1 succeed unchanged (verified locally against a clean main checkout).

doc/building.md:

  • Removed the opening instruction to run git submodule update --init --recursive — the repository has no .gitmodules (one of the confusions reported in Please update building documentation #17880).
  • Added a short Prerequisites section pointing at the README's Developer Guidance and calling out the VS 2026 (v145 toolset) + SDK 26100 requirement explicitly.
  • Added a troubleshooting section for command-line builds, mapping the actual error messages a stale toolchain produces to their causes:
    • old nuget → .slnx not recognized;
    • VS 2022 → vcpkg Unable to find a valid Visual Studio instance ... with toolset version v145;
    • VS 2022 → Xaml Internal Error WMC9999 on untouched sources (this one cost me a day on Allow choosing separate light & dark color schemes in the Settings UI #20390 — it gives no hint the fix is a newer VS);
    • PCH C3859/C1076 out-of-memory failures (and the MSB8084 hang) → reduced-parallelism workaround /m:2 /p:CL_MPCount=2.
  • Fixed the package deploy walkthrough: documented that the AppPackages folder/msix names only carry the _Debug infix for Debug builds, removed the cmd variant that hardcoded a 10.0.19041.0 makeappx path (the PowerShell variant is canonical), replaced the hardcoded VS 2022 Preview DeployAppRecipe.exe path with %VSINSTALLDIR%, and noted the registered dev package launches as wtd.exe.

README.md: the Building the Code section now links to doc/building.md for the deploy walkthrough and troubleshooting.

Validation Steps Performed

  • dep\nuget\nuget.exe restore OpenConsole.slnx and restore dep\nuget\packages.config (the two calls Invoke-OpenConsoleBuild makes) exit 0 with the new binary.
  • Full x64 Release build of OpenConsole.slnx + msix unpack/register/launch of the dev package completed on this machine (VS 2026 Community 18.7, Windows 11) as part of validating Allow choosing separate light & dark color schemes in the Settings UI #20390 — the troubleshooting entries are the failures actually hit and resolved along the way.

Refs #5541, #16379, #17880

🤖 Generated with Claude Code

The command-line build path had quietly rotted:

- dep/nuget/nuget.exe was v4.1 (2017), which cannot parse the .slnx
  solution, so Invoke-OpenConsoleBuild failed at restore. Updated to
  v7.6.0; both restore steps the build scripts perform now succeed.
- doc/building.md opened by telling people to init git submodules this
  repository does not have, documented Debug-only AppPackages paths,
  hardcoded a 19041 SDK makeappx path, and pointed at a VS 2022 Preview
  DeployAppRecipe path. Removed/updated those, added a prerequisites
  pointer to the README (VS 2026 / v145 toolset requirement), and added
  a troubleshooting section covering the failure modes a stale
  toolchain actually produces (old-nuget .slnx error, vcpkg v145
  message, WMC9999 XAML compiler crash, PCH out-of-memory errors and
  the reduced-parallelism workaround).
- README now links to doc/building.md from Building the Code.

Refs microsoft#5541, microsoft#16379, microsoft#17880

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@steven-pribilinskiy

Copy link
Copy Markdown
Author

more than a week and this PR is still in review
Is there any way I can help with that?

@steven-pribilinskiy

This comment was marked as low quality.

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.

1 participant