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

Sean Hall r.sean.hall at gmail.com
Wed Dec 30 08:15:03 PST 2020


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-cac
> > 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/
>



More information about the wix-devs mailing list