[mojosetup] Upgrade problems with MojoSetup

Francois Gouget fgouget at codeweavers.com
Thu Dec 16 19:16:54 EST 2010


Le 16/12/2010 17:14, Francois Gouget a écrit :
[...]
> I attached a pair of patches that solve these two issues.
> * mojo-1-upgrade-obsolete.diff
> Delete obsolete files and directories on upgrade.
>
> We try to be careful when loading the old Lua manifest so that a
> corrupted file does not crash the installer and does not clobber our
> state information.
>
> * mojo-2-upgrade-dirs.diff
> Don't forget directories created by older versions on upgrade.
>
> Otherwise they won't be deleted on uninstall which will result in an
> unclean uninstallation.

Some notes about these patches:
* I opted to keep the content of the old manifest around and have the
   oldfiles entries point to it, in case it was needed, potentially by
   the application's lua scripts. I have not found a use for that though
   so it may be better to just treat oldfiles as a set to minimize
   memory usage.

* I forgot to reset oldpackage and oldfiles to nil once we're done.

* The patch treats a failure to read the old manifest as non-fatal.
   I don't know if that's the right thing to do or not (as long as we
   don't fail when the file does not exist).

* I'll use 'hg export' next time.


I'm also attaching a couple more patches that build on this to fix the 
remaining issues for your review and to have a more complete set.


-- 
François Gouget
fgouget at codeweavers.com

-------------- next part --------------
A non-text attachment was scrubbed...
Name: mojo-3-upgrade-overwrite.diff
Type: text/x-patch
Size: 832 bytes
Desc: not available
URL: <http://icculus.org/pipermail/mojosetup/attachments/20101217/92b14a8a/attachment.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: mojo-4-upgrade-uninstaller.diff
Type: text/x-patch
Size: 2388 bytes
Desc: not available
URL: <http://icculus.org/pipermail/mojosetup/attachments/20101217/92b14a8a/attachment-0001.bin>


More information about the mojosetup mailing list