winget-create icon indicating copy to clipboard operation
winget-create copied to clipboard

Implementation for zip manifest support

Open ryfu-msft opened this issue 3 years ago • 0 comments

Fixes #307 Resolves #309 Resolves #310

This PR implements the functionality for generating and updating zip manifests.

Changes:

  • Updated the manifest version to v1.4
  • New command supports extracting a zip file and displaying the available installers to the user if more than one exists. Will skip the installer selection prompt if only one installer exists.
  • Update command also supports extracting a zip file. Will check that the relativeFilePaths from the existing manifest point to a valid file in the new installer URL. The updated hash comes from the zip and not from the individual nested installer files.
  • Error will be displayed to the user if the zip is not valid, if the zip does not contain any installers, or if the relativeFilePath does not point to an actual file (Update command).
  • Updated schema url to an official aka.ms vanity url.

Tests:

  • Updating a valid and full v1.4 manifest
  • Updating a zip with exe
  • Updating a zip with msi
  • Updating a zip with portable
  • Updating a zip with msix
  • Updating a zip with an invalid relative file path (does not point to a actual file in the zip)
  • E2E test for zip
  • Verified new command manually with different zip packages.
Microsoft Reviewers: Open in CodeFlow

ryfu-msft avatar Oct 11 '22 18:10 ryfu-msft