Revert "Add 'winapp new' command for creating WinUI 3 projects and items"#415
Conversation
There was a problem hiding this comment.
Pull request overview
Reverts the previously added winapp new scaffolding feature (#411), removing the command implementation, template-provider infrastructure, npm wrapper surface, tests, and related documentation/schema updates.
Changes:
- Removes the
winapp newcommand (CLI + npm wrapper) and associated DI wiring. - Deletes template discovery/creation infrastructure (
ITemplateProvider,ITemplateService,DotNetTemplateProvider, template models). - Updates docs and generated artifacts to remove
newcommand references (usage docs, CLI schema, skill docs).
Reviewed changes
Copilot reviewed 17 out of 17 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| src/winapp-npm/src/winapp-commands.ts | Removes the newCommand wrapper and NewOptions types from the npm API surface. |
| src/winapp-CLI/WinApp.Cli/Services/TemplateService.cs | Deletes the composite template service used by winapp new. |
| src/winapp-CLI/WinApp.Cli/Services/ITemplateService.cs | Deletes the template service abstraction. |
| src/winapp-CLI/WinApp.Cli/Services/ITemplateProvider.cs | Deletes the template provider abstraction. |
| src/winapp-CLI/WinApp.Cli/Services/DotNetTemplateProvider.cs | Deletes the .NET template provider implementation. |
| src/winapp-CLI/WinApp.Cli/Models/TemplateInfo.cs | Deletes template metadata models and JSON source-gen context used for template.json parsing. |
| src/winapp-CLI/WinApp.Cli/Helpers/HostBuilderExtensions.cs | Removes DI registrations and command handler wiring for new and template services. |
| src/winapp-CLI/WinApp.Cli/Commands/WinAppRootCommand.cs | Removes new from root subcommands and help categorization. |
| src/winapp-CLI/WinApp.Cli/Commands/NewCommand.cs | Deletes the winapp new command implementation. |
| src/winapp-CLI/WinApp.Cli.Tests/NewCommandTests.cs | Deletes tests covering the new command and template infrastructure. |
| README.md | Removes new from the “Setup Commands” list. |
| docs/usage.md | Removes the new command documentation section. |
| docs/npm-usage.md | Removes npm API docs for newCommand() and NewOptions. |
| docs/guides/dotnet.md | Removes the winapp new WinUI 3 project creation path from the guide. |
| docs/fragments/skills/winapp-cli/setup.md | Updates setup skill docs to remove new workflow. |
| docs/cli-schema.json | Removes the new command entry from the CLI schema output. |
| .github/plugin/skills/winapp-cli/setup/SKILL.md | Updates the GitHub skill markdown to remove new workflow. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| ``` | ||
|
|
||
| ### Initialize an existing project with Windows support | ||
| ### Initialize a new winapp project |
There was a problem hiding this comment.
The heading "Initialize a new winapp project" conflicts with the preceding statement that winapp init does not create new projects. Consider renaming the heading to clarify that init initializes/sets up Windows support within an existing project (e.g., "Initialize an existing project" or "Initialize winapp in an existing project").
| ### Initialize a new winapp project | |
| ### Initialize winapp in an existing project |
| ``` | ||
|
|
||
| ### Initialize an existing project with Windows support | ||
| ### Initialize a new winapp project |
There was a problem hiding this comment.
The heading "Initialize a new winapp project" is inconsistent with the earlier note that winapp init does not create new projects. Please adjust the wording to avoid implying project scaffolding (e.g., indicate initializing Windows support in an existing project).
| ### Initialize a new winapp project | |
| ### Initialize winapp in an existing project |
Build Metrics ReportBinary Sizes
Test Results✅ 662 passed out of 662 tests in 396.7s (+2.7s vs. baseline) Test Coverage❌ 31% line coverage, 42.6% branch coverage · ✅ no change vs. baseline CLI Startup Time45ms median (x64, Updated 2026-04-08 18:35:02 UTC · commit |
Reverts #411