After skipping last week's meeting due to a traveling Rob, we had 14 bugs to triage. Not nearly a record but this wasn't going to be a six-minute meeting like #66.
New issue triage
Bug 4502 | MakeSfxCA may produce dlls not following PE / COFF spec leading to Error 1723 was reopened with a report of a new instance of the original problem (fixed by @rseanhall for WiX v3.9). Consensus was that even if the symptoms are the same, the new report wasn't the same bug. So we resolved it and asked the user to open a new bug with more information (including the ever-requested verbose logs demonstrating the problem).
Bug 4753 | Certain registry keys cause link to fail unless linker is run as administrator reported a failure from an ICE03 error. I'd investigated this one a bit earlier and discovered it was caused by a backslash at the end of a
RegistryKey/@Key
value used as a parent for aRegistryValue
. ICE03 apparently doesn't like that. We opened the bug in v3.x to take a "helping hand" of preventing the extraneous backslash.Feature 4754 | MediaTemplate should take duplicate files into account for smart cabbing was originally a bug suggesting that MediaTemplate and smart cabbing were broken together. We opened it instead as a feature in v3.x to make MediaTemplate smarter, knowing that smart cabbing exists and therefore MediaTemplate should group identical files into the same cab so smart cabbing works better.
Feature 4755 | Support for Inno-Based installers in Burn was discussed on the wix-users mailing list last year, to support installers like Inno Setup that deliver a uninstaller executable that's separate from the installer executable. Today Burn runs the same executable for both operations. Given the impact, we decided to take this as a v4.x feature.
Bug 4756 | Burn 3.x assumes that installed detect-only related packages that don't match upgrade code are always major upgrades was a bug that @rseanhall for WiX v4.0 in Bug 3643 | Incorrect operation for detect-only package. Given the behavior change, we decided it wasn't an option to take in v3.x.
Bug 4757 | VSIX properties missing for VS2015 was a bug @heaths opened and then fixed. As pull requests for both v3.10 and v4.0 were accepted, I went ahead and resolved the bug, being the helpful person that I am.
Feature 4758 | Logging should indicate payload being sought when acquiring container pointed out that when Burn needs to acquire a container (such as the attached container in a compressed bundle), there's no indication in the log as to which payload is needed. Everyone agreed—does anybody object to more logging?—so open it went into v4.x.
Bug 4760 | Failure to open a code analysis ruleset with Wix project in the solution reports a bug in Votive. Unlike the many others we have, however, this one seems like it might be something straightforward to fix, so I volunteered to try for WiX v3.10.
Bug 4761 | Bootstrapper repeats to load itself when it failed to install prerequisites was a bug we opened and @rseanhall resolved in less than an hour. It helps that Sean already had a pull request with the one-line fix ready so I quickly reviewed and merged it. (More one-line pull requests, please!)
Bug 4762 | error LGHT0001: Cannot set column 'Attributes' with value -2147483645 because it is less than the minimum allowed value for this column, 0. reports a bug in WiX v4.0 .wxl file handling. I confirmed the problem but didn't find the root cause, but Rob volunteered to take it for v4.0.
Feature 4763 | Burn variable strings should support a "literal" flag to handle strings that contain embedded brackets originally reported an oddity with string variables in bundles with paths that contain embedded [brackets]. Burn routinely formats those strings during assignment so the [brackets] were replaced by an empty string. There was a fair bit of discussion about ways around this problem but most had weaknesses or undesirable side effects. In the end, we decided the best fix was to add a flag to indicate that the string should never be formatted, like verbatim string literals in C#. @rseanhall volunteered to implement this for WiX v3.10.
Bug 4766 | What happened to ClickThrough? wasn't a bug report as much as a question—the question mark is right there in the title. ClickThrough is an old idea for auto-updating setups, which today is something Burn handles with aplomb.
Feature 4767 | In the pre-processor support $(fun.defined(X)) to return true if variable X is defined is a suggestion of a way to handle undefined variables in complex preprocessor expressions. We took it for v4.x.
Bug 4768 | Pyro created patch need resource file when uninstall reports that using pure-WiX patching results in a patch that needs source to uninstall, compared to using the MsiMsp tool from the Windows Installer SDK. If you've built any patches—my sympathies—you know there are many ways you can construct a patch. The team consensus was that MsiMsp did something automatically that Torch and Pyro don't do automatically. Given the number of often large patches that Torch and Pyro have successfully built, we're pretty sure they can handle anything that MsiMsp can, given the right inputs.
.NET Framework 4.5.1 and 4.5.2 EULA design
Postponed from #66, we had a brief discussion about WixToolset.org hosting a Web service to replace the hosted EULAs for .NET Framework 4.5.1 and 4.5.2. (Originally this was Feature 4180 | .NET 4.5.1 & 4.5.2 EULAs.) Because WixStdBA launches a browser to handle the EULA hyperlink, what we can do on the backend is rely on the browser to supply the user's preferred language and choose the EULA from that. That means just have to decide on an endpoint and plug that value into WixNetfxExtension.