jedieaston / Add-ARPEntries

A script to generate AppsAndFeaturesEntries for winget!
MIT License
3 stars 2 forks source link

Support Manifest 1.2.0 #6

Open russellbanks opened 2 years ago

russellbanks commented 2 years ago

Running Add-ARPEntries on a 1.2.0 manifest makes the installer yaml file go back to manifest version 1.1.0.

Test on Azul.Zulu.8.JRE version 8.64.0.15:

GitHubDesktop_k6cliZSxgH

russellbanks commented 2 years ago

Side note - is it intentional for the product code to get moved into the ARP entry?

jedieaston commented 2 years ago

Yes, that's intentional (they are trying to prefer ARP entries over other metadata for matching).

This should be resolved in https://github.com/jedieaston/Add-ARPEntries/commit/d92bdd866f9b7708169c42468bae3a8cda304714, can you give it a shot?

russellbanks commented 2 years ago

I'm afraid I'm still getting the conversion to 1.1.0 schema; see https://github.com/microsoft/winget-pkgs/pull/70864 and https://github.com/microsoft/winget-pkgs/pull/70865 (before I fixed it in a consecutive commit)`.

russellbanks commented 2 years ago

Ever since https://github.com/jedieaston/Add-ARPEntries/commit/ea230e6e49949bf17ec8c6923049a6e6f2e67a72, I'm getting the Validation failed after writing the new installer manifest. This shouldn't have happened! warning very often, and I'm not sure why because running winget validate on the manifest manually myself seems to work fine.

WindowsTerminal_lULSPtiqd7

You can even see above that the result of winget validate in the script is successful.

jedieaston commented 2 years ago

Copied from Element if anyone else cares:

"I'm just checking to see if the exitcode for winget validate is 0 in that step, and if there are warnings it is not equal to 0. The issue you're having there is that the keys are "Agreements" and "Documentations", but once you fix that there will be another warning because you can't use those fields in the community repo unless you're a "verified publisher" (so, the software developer)"

vedantmgoyal9 commented 1 year ago

A (not a good way to) fix it is to capture winget validate output in a variable and look for "error" (+ some other keywords) and then actually throw "Validation failed after writing the new installer manifest. This shouldn't have happened!".