Support multiple manifest roots in all scenarios

Open
#647 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
32/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Stale
Tech stack
csharp
Domain
cli

Research direction

Start by locating the internal package identity tracking and every place that assumes the "manifests" root. Add coverage for non-"manifests" roots, including update and locale scenarios such as font packages. Done means all manifest-root scenarios are supported and validated.

Written by the indexing model from the issue text.

Description

Issue-Feature
Description of the new feature / enhancement

Up until the creation of the fonts manifest root, WinGet-Pkgs only had a single manifests root. This root was assumed in many parts of WinGet-Create, including identity of packages not including the root.

Proposed technical implementation details

Support for full manifest root for everything requires:

  • Adding manifest root type to the internal tracking identity of packages.
  • Determining which root a particular manifest is in instead of assuming it is manifests.
  • Updating parts where the manifest root of "manifests" is assumed or default specified.
  • Tests and validating scenarios for non-Manifests root types for update, locale, etc, such as for font packages.
Dominant language
C#
Stars
651
Forks
114
Avg merge
7h 52m
Merged PRs (30d)
3

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.

More from microsoft/winget-create

All issues in microsoft/winget-create

Similar issues

More C# issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.