microsoft / microsoft/winget-cli
Make 'upgrade' command work with partial names
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 26.4k
- Forks
- 1.8k
- Avg merge
- 1d 11h
- Merged PRs (30d)
- 15
Description
Description of the new feature / enhancement
Due to bad vision I have to use large console fonts. Because of that winget table with list of available upgrades don't have packages full names or ids
Name Id Version Available Source
------------------------------------------------------------------------------
GPL Ghostscript ArtifexSoftware.Ghos… 9.27 10.00.0 winget
Wireshark 3.6.3 64-b… WiresharkFoundation.… 3.6.3 4.0.0.0 winget
Microsoft Visual C++… Microsoft.VCRedist.2… 14.29.30139.0 14.34.31823.3 winget
Microsoft Visual Stu… Microsoft.VisualStud… 1.70.1 1.72.1 winget
Microsoft Visual C++… Microsoft.VCRedist.2… 14.29.30139.0 14.34.31823.3 winget
eM Client eMClient.eMClient 9.0.1361.0 9.1.2109.0 winget
If I don't want to upgrade everything, it become really difficult to find name, or id, or moniker of packages for upgrade. Running "winget upgrade 'Microsoft Visual C'" or "winget upgrade --name 'Microsoft Visual C'" returned "No installed package found matching input criteria." It took me more than 5 minutes to find what 'Microsoft Visual C++…' is actually Microsoft Visual C++ 2015-2022 Redistributable (x64) and (x86) and only after that I was able to upgrade this packages.
Proposed technical implementation details
Make winget upgrade command accept part of name or id as input, like list command. Or make it accept wildcards. Or add option for display result not only as table, but as list as well.
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 with the upgrade command and compare its input matching with the list command. Reproduce the reported cases using partial package names or IDs, then determine the intended matching behavior and how ambiguous results should be handled. Done means upgrade accepts the agreed partial input reliably, with coverage for the reported Microsoft Visual C++ case.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- cli
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100