Skip to content

Update winget install instructions in windows-requirements.md - #131462

Merged
EgorBo merged 4 commits into
dotnet:mainfrom
EgorBo:egorbo/update-windows-winget-instructions
Jul 28, 2026
Merged

Update winget install instructions in windows-requirements.md#131462
EgorBo merged 4 commits into
dotnet:mainfrom
EgorBo:egorbo/update-windows-winget-instructions

Conversation

@EgorBo

@EgorBo EgorBo commented Jul 28, 2026

Copy link
Copy Markdown
Member

Small refresh of the winget section in docs/workflow/requirements/windows-requirements.md.

Tested on a real clean win-arm64 machine.

- Install Visual Studio using the repo's `.vsconfig` instead of a hand-written
  workload list. The previous `--add NativeDesktop --add ManagedDesktop
  --includeRecommended` set omitted `VC.Tools.ARM64` and `VC.CLI.Support`, which
  are required to target Arm64 and to build the tests respectively.
- Use the current VS package id (`Microsoft.VisualStudio.Community`, VS 2026);
  `Microsoft.VisualStudio.2022.Community` pins the old release.
- Bump Python from 3.11 to 3.14.
- Add a note for Arm64 machines: the VS winget manifest only publishes an x64
  bootstrapper (which installs native Arm64 VS under emulation), while all the
  other packages listed have native Arm64 installers.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 9209dcba-f5be-4955-ae92-648a55b502eb
Copilot AI review requested due to automatic review settings July 28, 2026 13:09
@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
Successfully started running 1 pipeline(s).
15 pipeline(s) were filtered out due to trigger conditions.
There may be pipelines that require an authorized user to comment /azp run to run.

@dotnet-policy-service

Copy link
Copy Markdown
Contributor

Tagging subscribers to this area: @dotnet/runtime-infrastructure
See info in area-owners.md if you want to be subscribed.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Updates the Windows developer setup documentation to refresh the winget-based installation instructions, especially around Visual Studio installation, to better align with the repo’s .vsconfig.

Changes:

  • Update winget Python install from Python.Python.3.11 to Python.Python.3.14.
  • Update Visual Studio winget install command to use Microsoft.VisualStudio.Community and pass the repo’s .vsconfig.
  • Add a short explanatory note about using .vsconfig and Arm64 winget behavior for Visual Studio.

Comment thread docs/workflow/requirements/windows-requirements.md Outdated
Comment thread docs/workflow/requirements/windows-requirements.md Outdated
Use $PWD\.vsconfig instead of a <path-to-runtime-repo> placeholder, and note that the command is meant to be run from the root of the clone.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 9209dcba-f5be-4955-ae92-648a55b502eb
Copilot AI review requested due to automatic review settings July 28, 2026 13:17

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 1 out of 1 changed files in this pull request and generated no new comments.

Comments suppressed due to low confidence (1)

docs/workflow/requirements/windows-requirements.md:97

  • The --config path in the Visual Studio --override string isn’t quoted. If the runtime repo path contains spaces, the VS bootstrapper may split the path into multiple args and fail to find .vsconfig. Quote the expanded path within the override value.
winget install -e --id Microsoft.VisualStudio.Community --override "--passive --wait --config $PWD\.vsconfig"

Copilot AI review requested due to automatic review settings July 28, 2026 13:20
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 9209dcba-f5be-4955-ae92-648a55b502eb

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 1 out of 1 changed files in this pull request and generated no new comments.

Comments suppressed due to low confidence (1)

docs/workflow/requirements/windows-requirements.md:97

  • The --config $PWD\.vsconfig argument is unquoted inside the --override string, which will break if the repo path contains spaces (the VS bootstrapper will see a split argument). Also, using $PWD\.vsconfig implicitly assumes the command is run from the repo root (and that .vsconfig is already available), which isn’t stated here.

Consider using an explicit <path-to-runtime-repo>\.vsconfig placeholder and quoting the path within the override string (PowerShell needs doubled quotes inside a double-quoted argument).

winget install -e --id Microsoft.VisualStudio.Community --override "--passive --wait --config $PWD\.vsconfig"

Copilot AI review requested due to automatic review settings July 28, 2026 13:24

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 1 out of 1 changed files in this pull request and generated no new comments.

Comments suppressed due to low confidence (2)

docs/workflow/requirements/windows-requirements.md:97

  • The Visual Studio --config path is not quoted. If the repo path contains spaces (common on Windows), the installer will treat it as multiple arguments and the command can fail. Quote the config path inside the --override string.
winget install -e --id Microsoft.VisualStudio.Community --override "--passive --wait --config $PWD\.vsconfig"

docs/workflow/requirements/windows-requirements.md:101

  • The PR description says an Arm64 note was added (including the -a x64 workaround if winget refuses to fall back), but the updated winget section in this file doesn't include it. Either add the note here or adjust the PR description to match.
The last command installs the components listed in the repo's [`.vsconfig`](https://github.com/dotnet/runtime/blob/main/.vsconfig), so run it from the root of your clone.

@EgorBo

EgorBo commented Jul 28, 2026

Copy link
Copy Markdown
Member Author

PTAL @jkoritzinsky

@EgorBo
EgorBo requested a review from jkoritzinsky July 28, 2026 13:42
@EgorBo
EgorBo merged commit 8e33486 into dotnet:main Jul 28, 2026
23 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

3 participants