microsoft / winget-create

The Windows Package Manager Manifest Creator command-line tool (aka wingetcreate)
MIT License
503 stars 86 forks source link

ProductCode on installers is not preserved when updating existing manifest #212

Closed LeonarddeR closed 2 years ago

LeonarddeR commented 2 years ago

Brief description of your issue

I often post updates to the REAPER software to winget, which has ProductCode: REAPER set on both the x86 and x64 installers. However when running update with new urls and a new version, ProductCode is discarded in the new manifests.

Steps to reproduce

wingetcreate update Cockos.REAPER -u https://www.reaper.fm/files/6.x/reaper645-install.exe https://www.reaper.fm/files/6.x/reaper645_x64-install.exe --version 6.45

Expected behavior

ProductCode is preserved twice in installer manifest

Actual behavior

ProductCode is bnot preserved twice in installer manifest

Environment

WingetCreateCLI 0.4.4.1
jedieaston commented 2 years ago

This is a sane default I think, since for MSIs the ProductCode is unique per file. I wonder if it would be best to add a --keep-product-code argument that gives the behavior you want (and I know other apps do the same thing).