KEMBAR78
Update schema to 1.12 with Font InstallerType by dkbennett · Pull Request #5687 · microsoft/winget-cli · GitHub
Skip to content

Conversation

dkbennett
Copy link
Member

@dkbennett dkbennett commented Aug 25, 2025

  • Updates schema to 1.12 and adds type "font" as a valid InstallerType and NestedInstallerType in the schema.
  • Adds InstallerType Font to the manifest and associated Enum conversions.
  • Updated some of the NestedInstaller validation that had assumed Portable type as the only type that could have multiple installer files (fonts can also have many fonts in a package).
  • Added validation for 1.12 fonts in the manifest and associated tests for the schema version.

This PR does not add any functional support for Fonts, only the validation and schema update so the new schema can be used and is valid in the related WinGet tooling.

Tested:

  • Passed the AppInstallerCLITests with [ManifestValidation] and ensured a clean result.
  • Added new tests for the v 1.12 manifest updated with the new installer types in the test installer manifest to ensure Fonts are correctly passing the validation.

Closes #5686


@github-actions

This comment has been minimized.

@github-actions

This comment has been minimized.

@dkbennett dkbennett marked this pull request as ready for review August 25, 2025 20:09
@dkbennett dkbennett requested a review from yao-msft August 25, 2025 22:26
Copy link
Member

@JohnMcPMS JohnMcPMS left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would it be possible to get two more commits added:

  1. Move your current 1.12 schema files out and copy the 1.11 files into the 1.12 directory, otherwise unchanged. Commit this.
  2. Move your 1.12 files back in over the 1.11 files. Commit this.

Without at least a baseline of the 1.11 schema files, it is extremely annoying to review the changes between 1.11 and 1.12.

Another option that might set things up for success in the future would be to call the 1.12 directory latest and set the precedent of the pattern being:

  1. copy the latest directory to the appropriate previous version name [so next time it would be v1.12.0]
  2. update latest with the new changes

If you do this, make sure to create a commit in latest with 1.11 before putting the 1.12 files there.

[Note, 1.11 is actually the stand in for N-1, which I now think was 1.10?]

@dkbennett
Copy link
Member Author

Would it be possible to get two more commits added:

  1. Move your current 1.12 schema files out and copy the 1.11 files into the 1.12 directory, otherwise unchanged. Commit this.
  2. Move your 1.12 files back in over the 1.11 files. Commit this.

Without at least a baseline of the 1.11 schema files, it is extremely annoying to review the changes between 1.11 and 1.12.

Another option that might set things up for success in the future would be to call the 1.12 directory latest and set the precedent of the pattern being:

  1. copy the latest directory to the appropriate previous version name [so next time it would be v1.12.0]
  2. update latest with the new changes

If you do this, make sure to create a commit in latest with 1.11 before putting the 1.12 files there.

[Note, 1.11 is actually the stand in for N-1, which I now think was 1.10?]

Fixed this using your future-proofing recommendation:

  • Created 'latest' folder for schema.
  • Copied 1.10 into latest, renamed version to 'latest' as well in the filename.
  • Committed the above.
  • Moved 1.12 into latest, renamed file version to be 'latest' for exact file diffing.
  • Committed that. The clean diff for easy viewing is now here: e0a1a01
  • Updated the resource for 1.12 to point to the latest.

@dkbennett dkbennett merged commit 9bb4aa4 into microsoft:master Aug 27, 2025
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Schema Update for Fonts

3 participants