As noted here a bunch of legacy images in Azure Pipelines are being removed in a few days. We have had some code using WIX building in Azure Pipelines for a few years now - using one of the images being deprecated (vs2015-win2012r2).
If I change my build image to e.g. vs2017-win2016, I get this error from my Azure Pipeline:
##[error]C:\Program Files (x86)\MSBuild\Microsoft\WiX\v3.x\wix2010.targets(2439,7): Error
MSB4064: The "AllowDuplicateDirectoryIds" parameter is not supported by the "Light" task.
Verify the parameter exists on the task, and it is a settable public instance property.
UPDATE:
I can now also reproduce this locally. And I have found out that one of the changes from WIX 3.10x to 3.11x is this particular parameter:
AllowDuplicateDirectoryIds
I can also see that the Azure Pipeline image vs2017-win2016 has WIX3.11 whereas the Vs2015-Server2012R2 has WIX3.10 installed.
So everything fits ... my solution fails to build because it was targeted WIX 3.10 but the new image has WIX 3.11 installed.
So something inside my C# installer project still references Wix 3.10 and fails because the new 3.11 has some functionality that Wix 3.10 did not have.
What could that be?