microsoft / microsoft/winget-create
Allow multiple manifests to be submitted as a single PR
Nobody has claimed this yet.
- Dominant language
- C#
- Stars
- 651
- Forks
- 114
- Avg merge
- 7h 52m
- Merged PRs (30d)
- 3
Description
Description of the new feature / enhancement
Currently wingetcreate submit only allows a single manifest to be submitted to the winget-pkgs repo as a PR. This is limiting in cases where multiple manifests are associated with a single release. For example, .NET consists of multiple runtimes and an SDK, all of which are associated with a single release. But there are multiple manifests associated with this single release. Requiring separate PRs to be submitted for each manifest exposes a risk that a subset of those PRs will be auto-merged while one or more PRs may fail for some reason. This would create an inconsistent set of manifests for that product release. Depending on how customers use these packages, this kind of inconsistency could lead to their workflow breaking. To prevent this, it'd be better for a single PR to be submitted for the product release that contains changes for multiple manifests. This essentially allows for atomicity for the release's manifest updates.
Proposed technical implementation details
When calling winget submit I want to be able to pass multiple manifest paths and have a single PR generated for the whole set:
wingetcreate.exe submit --token <GitHubPersonalAccessToken> <PathToManifest1> <PathToManifest2>...
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start at the wingetcreate submit command and trace how manifest paths are parsed and how the winget-pkgs pull request is generated. Verify the behavior with multiple manifest paths, ensuring one PR contains the complete set and that existing single-manifest submission still works; add or update the relevant command tests if present.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- csharp, github
- Domain
- cli, release
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 40/100