microsoft / microsoft/winget-pkgs

[New Feature]: Offer a kind of batch mode for YamlCreate.ps1

Open
#97,773 8 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Issue-Feature
Dominant language
No language data
Stars
11.1k
Forks
9.7k
Avg merge
1h 32m
Merged PRs (30d)
376

Description

Description of the new feature/enhancement

Some software projects offer a large amount of different languages and installer types. I am thinking of Mozilla here especially.
When using YamlCreate.ps1 in Quick-Update-Mode to update a manifest it is quiet time consuming to manually copy and paste all new URLs for each single item. A kind of batch mode might be helpful.

Proposed technical implementation details (optional)

IMO a quick and easy solution:
Offer an option to either specify a text file containing all new URLs. Either simply the URLs as CSV as sorted in the manifest or a bit mor complex like the following:
`
x64 msi en-US https://download-installer.cdn.mozilla.net/pub/firefox/releases/102.8.0/Win64/en-US/Firefox%20Setup%20102.8.0.msi,

x86 msi en-US https://download-installer.cdn.mozilla.net/pub/firefox/releases/102.8.0/Win32/en-US/Firefox%20Setup%20102.8.0.msi

x64 exe en-US https://download-installer.cdn.mozilla.net/pub/firefox/releases/102.8.0/Win64/en-US/Firefox%20Setup%20102.8.0.exe

...

x64 msi de-DE https://download-installer.cdn.mozilla.net/pub/firefox/releases/102.8.0/Win64/de/Firefox%20Setup%20102.8.0.msi

...
`

More flexible but even complex:
Offer additional variables for such a text file. The following is just a rough thought which will not work for various reasons:
`
[Version]
102.8.0esr

[Languages]
en-US,en-GB,de-DE,ja-JP, ...

[Architectures]
x86,x64,arm64, ...

[InstallerTypes]
exe,msi, ...

[URL]
https://download-installer.cdn.mozilla.net/pub/firefox/releases/%Version%/%Architectures%/%Languages%/Firefox%20Setup%20%Version%.%InstallerTypes%
`

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by locating YamlCreate.ps1 and tracing its Quick-Update-Mode entry point. Review how manifest items and URLs are currently supplied, then clarify the accepted batch input format and mapping rules before implementation. Done should mean a defined batch workflow can update all intended URLs consistently, with validation for malformed or unmatched entries.

Written by the indexing model from the issue text.

Assessment

Tech stack
powershell
Domain
cli, tooling
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.