[wix-users] Neither repairing the main bundle nor the patch bundle can repair a file not altered by a patch
Tyler Gustafson
tgustafson at solacom.com
Fri Oct 14 11:58:22 PDT 2016
Excuse me, I've confused myself. Changes below
Steps to Reproduce:
Create a base1 project which installs two files "test1" and "control1"
Create a base2 project which installs two files "test2" and "control2"
Bundle the base project using Burn
Create an msp which updates the "test1" file but not the "control1" file
Bundle the patch in a RelatedBundle
Install the base bundle
Install the patch bundle
Delete the "test1", "test2", "control1" and "control2" files
Actual Behaviour:
Run repair on the base bundle and note that "test1", "test2", and "control2" files are all regenerated but "control1" file is not
Also tried repairing the patch bundle but "control1" is still not regenerated
Expected Behaviour:
All files should be regenerated
Note that if you had set your base msi to visible you can try repairing the base1 project directly and will find both "test1" and "control1" files are properly restored as expected
What I think is happening:
I believe that repairing the base bundle:
1. sees base1 as version 1.1 and doesn't have a baseline for that version so it does nothing
2. sees base2 as version 1.0 and happily repairs it restoring "test2" and "control2"
3. sees there is a patch to be applied and repairs it, restoring "test1"
Tyler
From: Tyler Gustafson
Sent: October-14-16 2:47 PM
To: WiX Toolset Users Mailing List
Subject: Neither repairing the main bundle nor the patch bundle can repair a file not altered by a patch
Maybe I'm doing something wrong. Has anyone experienced this or reported it as a bug that I wasn't able to find?
Steps to Reproduce:
Create a base1 project which installs two files "test1" and "control1"
Create a base2 project which installs two files "test2" and "control2"
Bundle the base project using Burn
Create an msp which updates the "test1" file but not the "control1" file
Bundle the patch in a RelatedBundle
Install the base bundle
Install the patch bundle
Delete the "test1", "test2", "control1" and "control2" files
Actual Behaviour:
Run repair on the base bundle and note that "test1", "test2", and "control2" files are all regenerated but "control1" file is not
Also tried repairing the patch bundle but "control1" is still not regenerated
Expected Behaviour:
All files should be regenerated
Note that if you had set your base msi to visible you can try repairing the base1 project directly and will find both "test1" and "control1" files are properly restored as expected
What I think is happening:
I believe that repairing the base bundle:
1. sees base1 as version 1.1 and doesn't have a baseline for that version so it does nothing
2. sees base2 as version 1.0 and happily repairs it restoring "test2" and "control2"
3. sees there is a patch to be applied and repairs it, restoring "test1"
Tyler
More information about the wix-users
mailing list