We're mere moments away from the vernal equinox which here in WiX-land means we're in shipping season, more than naked equinox dancing under the waning gibbous moon. In today's meeting, we had a big chunk of issues to triage, including those Rob and I preemptively fixed, so almost half were already closed. WiX v6 is coming soon!

WiX Online Meeting 293 Highlights
WiX v6 schedule
Since last month’s meeting, we shipped WiX v6.0.0-rc.2. So far, everything’s looking good to ship WiX v6.0.0 on schedule…almost. The original scheduled date, keeping up with the anniversary of WiX’s first open-source release, is 5-April. This year, that’s a Saturday and also a Saturday that sees Rob being unavailable until 6pm, which is 9pm for me in my time zone. So we’re pushing the release out until Monday, 7-April.
There’s still time to try out WiX v6.0.0-rc.2 and report those bugs. Gotta catch ‘em all…or wait for WiX v7.
Issue triage
-
Investigate
Fix default feature to respect sections.
alternative fixes, from @barnson and Default feature attempts to include components defined in unreferenced fragments, from @mediawolf, point to the same issue, which is a bug that I created, discovered, and tried to secretly fix. Rob wasn’t a fan of my first fix but I wanted to get a fix into WiX v6, so I had to publicly post my shame to discuss it. Then someone else noticed the bug and reported it, completing my dishonor. I came up with a simpler fix that Rob was willing to tolerate, so the bug is fixed and can now rejoin polite society without averting my eyes. -
SignBundle is not executed (Log files provided this time), from @HeikeHofmann, notes that one of the targets provided by wix.targets for Authenticode signing wasn’t being called. That turns out to be by design, as the target can only successfully in certain conditions. In this case, the SignBundle target is called only if your bundle is compressed—meaning it has attached containers for payloads in the chain. Rob took the issue to add a clarification to the documentation.
-
Building a project stored in WSL fails with WIX0001: WixToolset.Core.Native.Msi.MsiException (1631), from @printfn, suggests that Windows Installer can’t execute a package that’s stored on a WSL file system when accessed like a file share. Building a package typically includes validation, which requires that Windows Installer execute the package. That fails with a fairly unintuitive exception message…but we discussed alternative messages and couldn’t come up with one that was significantly better. So we left this scenario as exceptional, worthy of an exception, and closed this issue, leaving it for search engines to reveal should anyone else try this again.
-
wix convert
ignores--custom-table
argument, from @philipp-naused, reports that a documented command-line switch is happily accepted and just as happily ignored. The reporter provided a pull request to fix that oversight and Rob reviewed and merged it. -
Introduce the Open Source Maintenance Fee, from @robmen, is nearing completion as Rob has emerged from communion with lawyers to complete the Open Source Maintenance Fee EULA for WiX.
-
Spurious WIX1113 for advertised Shortcut nested in naked File, from @chrullrich, reported an unexpected warning when using naked files. (And may I please briefly celebrate that someone else called them “naked files”?) The warning was due to a simple timing issue during compilation that I resolved.
-
Cannot build Bundle with 32-bit MSBuild, from @petm2022, comes from someone using 32-bit Framework MSBuild, which I didn’t know was actually still a thing. It is, and turns out that my use of traversal projects coerced a single WiX extension DLL to be built as 64-bit, which, naturally, does not work with 32-bit MSBuild. Fixed.
-
Support reproducible builds of MSI packages, from @stevedlawrence, requests the ability to create packages that are identical when the inputs to the build are the same. This is challenging because Windows Installer builds the actual packages and typically include “random” content like package code GUIDs and timestamps. Rob added some ideas and we put the issue
up for grabs
for those interested in reproducible builds. -
Custom Action Before does not work in InstallUISequence, from @TomGo71, reported a change in the sort order of custom actions that are sequenced using the
Before
attribute. That’s entirely possible—the only “guarantee” is that a custom action will be scheduled earlier than the specifiedBefore
target. There is no guarantee of order when multiple actions are scheduled before the sameBefore
target. If your custom actions need to run in a particular order, remember that you can useBefore
andAfter
with your own custom actions too. -
Files harvesting: non-existent directory causes disruption of the harvesting process, from @olejniczak, reports that when a
Files
harvestingExclude
element references a directory that doesn’t exist, the internal exception prevents any otherExclude
elements from being processed. The reporter also provided a pull request to fix it but didn’t sign the CLA. As we wanted the fix in WiX v6, Rob did a version of his own, complete with a new unit test and improvements to other unit tests. I reviewed his pull request while taking breaks between writing up these highlights. (Yes, reviewing pull requests is how I take breaks. You don’t?) -
WiX v6 tool installers don’t upgrade v5 versions, from @barnson, points out that you can install the WiX v6 tools side-by-side with the WiX v5 tools. That, as they say, is a feature, not a bug. Rob did make a change to ensure the side-by-side-ability continues for future WiX major versions too.
-
NetFx48Redist signature verification failure, from @benperet, reports that, yet again, Microsoft has changed the certificate they use to sign the .NET Framework redistributable packages. Unfortunately, the thumbprint is the mechanism we have to ensure the package, even when it changes, is still appropriately signed. The issue is
up for grabs
to update the signature, even though it could change yet again, at the whim of someone aiming to annoy us.