Skip to content

Rename dotnetup walkthrough to init#53893

Merged
dsplaisted merged 5 commits intodotnet:release/dnupfrom
dsplaisted:rename/dotnetup-init
Apr 16, 2026
Merged

Rename dotnetup walkthrough to init#53893
dsplaisted merged 5 commits intodotnet:release/dnupfrom
dsplaisted:rename/dotnetup-init

Conversation

@dsplaisted
Copy link
Copy Markdown
Member

@dsplaisted dsplaisted commented Apr 15, 2026

Summary

  • rename the public dotnetup walkthrough command to dotnetup init
  • keep walkthrough as a hidden compatibility alias
  • align the help text, internal type/file names, and tests with the new command name
  • Also fix issue where the bootstrap dotnetup wouldn't be built if it was already present, even if it was outdated.

Fixes #53840

dsplaisted and others added 3 commits April 15, 2026 11:10
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@dsplaisted dsplaisted requested a review from a team as a code owner April 15, 2026 16:54
Copilot AI review requested due to automatic review settings April 15, 2026 16:54
@dsplaisted dsplaisted requested review from baronfel and nagilson April 15, 2026 16:56
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR updates the dotnetup CLI to expose init as the public interactive setup command, while keeping walkthrough as a compatibility alias, and aligns help text, internal naming, tests, and localization with the new command name. It also includes a bootstrap freshness check so the eng/dotnetup artifact is rebuilt when stale.

Changes:

  • Rename the primary interactive command from walkthrough to init, with walkthrough retained as an alias.
  • Update parser help grouping, descriptions/resources, and workflow/type naming to match init.
  • Add/adjust tests and update toolset restore scripts to rebuild dotnetup when the bootstrap exe is stale.

Reviewed changes

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

Show a summary per file
File Description
test/dotnetup.Tests/ParserTests.cs Adds coverage for parsing init and walkthrough alias; validates root help output.
test/dotnetup.Tests/InitWorkflowTests.cs Renames walkthrough workflow test fixture and switches references to InitWorkflows.
test/dotnetup.Tests/DotnetBotBannerTests.cs Updates namespace import for the banner to the new Init command namespace.
src/Installer/dotnetup/Telemetry/FirstRunNotice.cs Updates comment to reflect banner ownership by InitCommand.
src/Installer/dotnetup/Strings.resx Replaces WalkthroughCommandDescription with InitCommandDescription.
src/Installer/dotnetup/Parser.cs Registers InitCommandParser and makes root invocation run InitCommand; updates grouped help command lists.
src/Installer/dotnetup/DotnetupConfig.cs Updates documentation comments from walkthrough terminology to init flow terminology.
src/Installer/dotnetup/Commands/Shared/InstallWorkflow.cs Switches interactive flow delegation from walkthrough workflows to init workflows.
src/Installer/dotnetup/Commands/Init/*.cs Renames namespaces/types from Walkthrough to Init, adds walkthrough alias, and updates user-facing messaging.
src/Installer/dotnetup/xlf/Strings.*.xlf Updates localized resource IDs/entries to replace walkthrough description with init description.
eng/restore-toolset.sh Adds dotnetup bootstrap freshness detection and rebuild logic (Unix).
eng/restore-toolset.ps1 Adds dotnetup bootstrap freshness detection and rebuild logic (Windows).
Comments suppressed due to low confidence (1)

test/dotnetup.Tests/InitWorkflowTests.cs:47

  • This test method is marked internal, which can prevent xUnit from discovering/running it (xUnit typically requires public test methods). Consider making it public so the theory is executed.

Copy link
Copy Markdown
Member

@nagilson nagilson left a comment

Choose a reason for hiding this comment

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

Looks great, thanks. I think 'init' wasn't contended so we can go with that. I'm glad we decided to do this separately; it made the PR really smooth to review properly. Let's merge this so we don't have annoying conflicts when we change the walkthru code

Comment thread eng/restore-toolset.ps1

function EnsureDotnetupBuilt {
$dotnetupExe = Join-Path $PSScriptRoot "dotnetup\dotnetup.exe"
$shouldBuild = !(Test-Path $dotnetupExe)
Copy link
Copy Markdown
Member

@nagilson nagilson Apr 15, 2026

Choose a reason for hiding this comment

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

Good catch on this. I thought about doing publish always but we'd have to know whether to pass -no-build. I think this is fine since eventually this will just acquire the executable instead of building anyway, this isn't code that will be live for very long

{
Command command = new("walkthrough", Strings.WalkthroughCommandDescription);
Command command = new("init", Strings.InitCommandDescription);
command.Aliases.Add("walkthrough");
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

im honestly ok with getting rid of 'walkthrough' - we never shipped it, but I also like having it as a command so I'm totally ok with this too.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@dsplaisted
Copy link
Copy Markdown
Member Author

/ba-g Flaky tests in .NET SDK legs

@dsplaisted dsplaisted merged commit de173f9 into dotnet:release/dnup Apr 16, 2026
27 of 31 checks passed
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.

3 participants