[wix-devs] BOOTSTRAPPER_REQUEST_STATE_MEND and #5911

Bob Arnson bob at firegiant.com
Thu Apr 29 09:19:12 PDT 2021


That's the big challenge with 5911. It's even worse than DisplayInternalUI because you can absolutely get into a bad state with REINSTALLMODE.

It probably makes sense as a knob for OnPlanMsiPackage, though it can only apply during certain actions (e.g., not uninstall) and we have to figure out which settings to allow (e.g., maybe just the versioning switches).

I wouldn't look to expose it via authoring until/unless we find it's more than 0.1% needed.

-----Original Message-----
From: wix-devs <wix-devs-bounces at lists.wixtoolset.org> On Behalf Of Sean Hall via wix-devs
Sent: Thursday, 29 April, 2021 10:26
To: WiX Toolset Developer Mailing List <wix-devs at lists.wixtoolset.org>
Cc: Sean Hall <r.sean.hall at gmail.com>
Subject: Re: [wix-devs] BOOTSTRAPPER_REQUEST_STATE_MEND and #5911

If we were to do #5911, then how much control would we give? I'm seeing a lot of parallels between this and DisplayInternalUI where v3 had Opinions and gave limited control but people wanted full control. I lean towards full control to empower users that run into the 0.1% of the time that they need it, but I'm not an expert on how to (in)correctly use all the different options for REINSTALLMODE.

If it's just a few options then we could probably have Mend2, Mend3, etc.
With different names, obviously. I'm not a really fan of this approach though, because having any number of BOOTSTRAPPER_REQUEST_STATE values that only apply to MSI packages is a sign to me that it should be done differently. For example, use the same OnPlanMsiPackage event that was added in v4 for the BA to control the UI level and add another knob that controls the REINSTALLMODE.

On Wed, Apr 28, 2021 at 1:21 PM Bob Arnson <bob at firegiant.com> wrote:

> They're related in that they both manage REINSTALLMODE. "Mend" came 
> about because "repair" is badly named and really should have been 
> "reinstall." A repair/reinstall will overwrite everything, which means 
> stopping/restarting services and triggering custom actions, and so forth. Mend does a "softer"
> repair that doesn't trigger all that.
>
> If we were to do 5911, we could probably come up with a design that 
> would also satisfy the requirements for mend.
>
> -----Original Message-----
> From: wix-devs <wix-devs-bounces at lists.wixtoolset.org> On Behalf Of 
> Sean Hall via wix-devs
> Sent: Wednesday, 28 April, 2021 11:02
> To: WiX Toolset Developer Mailing List <wix-devs at lists.wixtoolset.org>
> Cc: Sean Hall <r.sean.hall at gmail.com>
> Subject: [wix-devs] BOOTSTRAPPER_REQUEST_STATE_MEND and #5911
>
> https://github.com/wixtoolset/issues/issues/5911
> https://www.firegiant.com/blog/2018/12/6/wix-online-meeting-159-highli
> ghts/
> (starts at 9:52)
>
> FireGiant contributed BOOTSTRAPPER_REQUEST_STATE_MEND to v4 in 
> https://github.com/wixtoolset/burn/pull/51. It vaguely reminded me of 
> someone asking for control over REINSTALLMODE in bundles - #5911. MEND 
> seems to me to be a v3-style targeted fix for the more general feature 
> requested there. So my question while we can still make breaking 
> changes is
> - what's the relationship between these? Also, it seems odd to me that 
> MEND doesn't have an overall BOOTSTRAPPER_ACTION and must be requested 
> per-package. Some background on what MEND what was built for would be nice.
> ____________________________________________________________________
> WiX Toolset Developer Mailing List provided by FireGiant 
> http://www.firegiant.com/
>
____________________________________________________________________
WiX Toolset Developer Mailing List provided by FireGiant http://www.firegiant.com/



More information about the wix-devs mailing list