[wix-devs] 6297 - Burn needs to do better at unregistering

Bob Arnson bob at firegiant.com
Thu Dec 31 08:53:07 PST 2020


Probably. But I'm worried about your 2015 message: leaving behind stuff in the cache without a bundle to manage it is a violation of the Prime Directive and if we've been doing it all this time, the damage to the timeline might not be repairable. I'm trying to decide whether removing the cache and risking (not guaranteeing) a source prompt is worse than dirtying the machine.

-----Original Message-----
From: wix-devs <wix-devs-bounces at lists.wixtoolset.org> On Behalf Of Sean Hall via wix-devs
Sent: Wednesday, 30 December, 2020 11:15
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] 6297 - Burn needs to do better at unregistering

Are you suggesting that this always happens for the UNINSTALL action or are we discussing creating a new FORCE_UNINSTALL action? Like I said, I think the BA should have to do something special to get this best-effort behavior so I'm leaning towards a new FORCE_UNINSTALL action.

On Wed, Dec 30, 2020 at 9:51 AM Bob Arnson <bob at firegiant.com> wrote:

> Plan could report that the plan leaves behind packages on an uninstall 
> action. Of course, the BA could already detect that, if it wanted to...
>
> There's no choice to leave the package installed (in this scenario) so 
> best-effort would be to remove the cached package if we're going to 
> remove the bundle. (Leaving it behind with no bundle violates the 
> Prime Directive we discussed in 4822.)
>
> The closest analog is Visual Studio supporting `/uninstall /force`.
>
> -----Original Message-----
> From: wix-devs <wix-devs-bounces at lists.wixtoolset.org> On Behalf Of 
> Sean Hall via wix-devs
> Sent: Tuesday, 29 December, 2020 22:13
> 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] 6297 - Burn needs to do better at 
> unregistering
>
> I don't think any feedback could be added for Plan since nothing can 
> be determined until Apply finishes. I guess OnApplyComplete could 
> provide the new value of fInstalled (which is currently provided in OnDetectBegin).
>
> What "best-effort" are you thinking of?
>
> 1. Leave package installed and in the package cache (I thought we 
> decided in 4822 this is not an option) and uninstall the bundle.
> 2. Leave package installed but remove from package cache and uninstall 
> the bundle (guaranteeing a source prompt if they try to do anything 
> with the package).
> 3. Something else?
>
> I don't understand the feedback there, the BA should have to do 
> something special to get this best-effort functionality.
>
> On Tue, Dec 29, 2020 at 8:29 PM Bob Arnson <bob at firegiant.com> wrote:
>
> > Seems like Plan/Apply should provide feedback to the BA in that case.
> > (Hey, S_FALSE!) Probably need to tolerate it, in the case of a 
> > stubborn package that won't uninstall -- there should still be a
> "best-effort"
> > attempt to clean up what it can (again, with feedback to the BA).
> >
> > -----Original Message-----
> > From: wix-devs <wix-devs-bounces at lists.wixtoolset.org> On Behalf Of 
> > Sean Hall via wix-devs
> > Sent: Tuesday, 29 December, 2020 18:58
> > 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] 6297 - Burn needs to do better at 
> > unregistering
> >
> > I've started looking at implementing this. It looks like I need to 
> > modify the proposal for how Burn decides whether to keep the ARP 
> > entry during a normal operation:
> >
> > 1. Burn needs to track non-permanent packages installed or anything 
> > being cached.
> > 2. Due to non-Vital packages and rollback boundaries, Burn needs to 
> > keep track of these during Apply instead of determining it ahead of 
> > time
> in Plan.
> >
> > This brings me to a question I had a long time ago - 
> > http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Burn-c
> > ac hing-behavior-during-uninstall-td7599411.html
> > .
> > Burn currently always unregisters and uncaches the bundle during 
> > Uninstall (if it succeeds), but I think the answer here is that it 
> > shouldn't actually uninstall the bundle if there will still be 
> > non-permanent packages installed or anything in the cache. That's 
> > going to break a lot of assumptions in the code, though.
> >
> > On Fri, Dec 11, 2020 at 6:07 PM Sean Hall <r.sean.hall at gmail.com> wrote:
> >
> > > I created a WIP for the automatic uninstalling of the bundle 
> > > discussion we were having in 4822 at
> > >
> https://wixtoolset.org/development/wips/6297-cleanup-bundle-after-quit/.
> > > I think the interesting parts here are:
> > >
> > > 1. Under what conditions does the engine try to automatically
> uninstall?
> > > 2. When during runtime does it cleanup the bundle?
> > > 3. Should the BA be involved at all during this automatic behavior?
> > >
> > ____________________________________________________________________
> > WiX Toolset Developer Mailing List provided by FireGiant 
> > http://www.firegiant.com/
> >
> ____________________________________________________________________
> 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