MSI installer UpgradeCode changes for each new version
Categories
(Firefox :: Installer, defect)
Tracking
()
People
(Reporter: vojamo, Unassigned)
Details
User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36
Steps to reproduce:
Add a new version of Firefox ESR MSI installer to deployment system, for example add 102.5.0esr as an update to 102.4.0esr.
Actual results:
Previous versions already in the deployment system are not detected as being superseded by the new version that was just added.
The administrator needs to manually mark each old version of Firefox ESR as being updated by the newly added MSI package. Competing browsers do this right and do not impose this additional unnecessary workload on administrators.
Expected results:
All previous versions in the deployment system should be automatically detected as the same product and marked as being superseded by the new update, for example 102.5.0esr is an update for 102.4.0esr, 102.3.0esr, and so on.
I am fairly certain that this is because in the MSI package the "upgrade code" is set wrong. Currently the UpgradeCode is set to an unique GUID on each new MSI package which is wrong AFAICT.
There are 2 relevant GUID in the MSI package:
- Upgrade code: should uniquely identify a "product". For example it is Mozilla Firefox ESR, x86_64. It should be same on all different versions of the same "product". For what exactly is a "product" see the links below and link to MS documentation in the linked bugzilla.
- Product code: should uniquely identify a package, and should usually always be different.
There is much more to these 2 GUIDs and there is also good discussion in the original bugzilla https://bugzilla.mozilla.org/show_bug.cgi?id=231062 for example
Comment 1•3 years ago
|
||
The Bugbug bot thinks this bug should belong to the 'Firefox::Installer' component, and is moving the bug to that component. Please correct in case you think the bot is wrong.
Comment 2•3 years ago
|
||
(In reply to Vojam Olanis from comment #0)
I am fairly certain that this is because in the MSI package the "upgrade code" is set wrong. Currently the UpgradeCode is set to an unique GUID on each new MSI package which is wrong AFAICT.
I'm not really an expert in this area, but this doesn't look to be correct to me. As far as I can tell, we are hardcoding the upgrade code.
You might consider trying our MSIX package to see if it has the same issue. Here is the link for the current ESR MSIX installer.
| Reporter | ||
Comment 3•3 years ago
|
||
(In reply to Kirk Steuber (he/him) [:bytesized] from comment #2)
I'm not really an expert in this area, but this doesn't look to be correct to me. As far as I can tell, [we are hardcoding]
I accidentally wrote my OP wrong. The issue is that the ProductCode is not changing between versions. I looked inside the MSI and both ProductCode and UpgradeCode are the same between 102.4.0esr and 102.5.0esr. The ProductCode should be different.
You might consider trying our MSIX package to see if it has the same issue. [Here is the link]
Unfortunately many deployment systems do not work with MSIX.
Comment 4•3 years ago
|
||
Adding the qa not actionable tag for this issue, I dont think there is anything left for QA to do on this issue.
Description
•