microsoft / microsoft/winget-pkgs

[New Feature]: Warn before removing an entire package from repo

Open
#136,983 9 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Area-Bots Area-Validation-Pipeline 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

Inspired by https://github.com/microsoft/winget-pkgs/issues/120261#issuecomment-1914362575

If a package only has a single version in the repo, and that is getting removed in a PR, the pipelines should warn the author / moderators in the PR. Most packages that have a single version in the repo are ones that use a "vanity" URL. Because of hash mismatches / 404 URLs, those tend to get auto-removed by wingetbot or other automations set up by community contributors.

This offers a bad UX to end-users that get confused as to why the package was entirely removed from the repo. In reality, the package may simply require an update to address the hash mismatch or URL issue. The validation pipelines should have ways to protect against this scenario. Retaining the package in the repository, albeit with an outdated hash / URL means that the contributors can report against the correct problem and request a package update.

Proposed technical implementation details (optional)

No response

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 tracing the validation pipelines and PR checks that process manifest removals, then inspect how they determine whether a package still has versions in the repository. Define the warning behavior for removing the final version and verify it with a PR containing that case.

Written by the indexing model from the issue text.

Assessment

Domain
ci-cd, tooling
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.