https://bugs.winehq.org/show_bug.cgi?id=45317
--- Comment #9 from Piotr Caban piotr.caban@gmail.com --- I've done much more testing and I think that the correct way is to do a "major upgrade" on every mono update. I think so because of the way how update needs to be installed by the user: - major upgrade - it's enough to click on the msi file to install the update, depending on msi file content old version will be preserved or removed - minor upgrade - has identical user deployment methods as small update - small update - needs to be installed as patch or complete reinstall, if you decide to do the minor upgrade new mono versions will need to be installed in following way: msiexec /I wine-mono-4.7.2.msi REINSTALL=ALL REINSTALLMODE=vomus
There are also many restrictions regarding what can be done in small and minor upgrade, I don't think you want to pay attention to that on every release.
I'll send some tests to msi to show that current behaviour is incomplete but kind of correct. I'll also take a look on how mono msi files are created and attach some propositions for how it can be changed.
Vincent, you said that you've never changed the ProductCode because it will "make the new MSI a different package". UpgradeCode is what links them together.