Subject: Re: make update - wrong order?
To: None <segv@netctl.net>
From: Geert Hendrickx <geert.hendrickx@ua.ac.be>
List: tech-pkg
Date: 10/03/2005 15:29:07
On Mon, Oct 03, 2005 at 02:11:59PM +0100, segv@netctl.net wrote:
> On Mon, 3 Oct 2005 15:02:41 +0200
> Jeroen Ruigrok/asmodai <asmodai@in-nomine.org> wrote:
> 
> > -On [20051003 14:56], segv@netctl.net (segv@netctl.net) wrote:
> > >Maybe that's because you can have chains of dependancies:
> > >
> > >A->B->C->D
> > >
> > >So A depends on B, which depends on C, which depends on D
> > >To update A, you'd have to remove D, C, B in this order and rebuild them.
> > 
> > Wouldn't it be better to do:
> > 
> > build D, deinstall D, install D,
> > build C, deinstall C, install C,
> > et cetera?
> 
> OK
> 
> A_v1 -> B_v1 -> C_v1 -> D_v1
> 
> where v<num> is the version number of a package
> If C_v1 depends on D_v1 and you build D_v2 then remove D_v1 and install D_v2,
> then C_v1 will break (possibly breaking dependant packages B_v1 and A_v1)
> 
> Many packages include shared libraries, where version numbers are critical. If
> an application has been linked to a particular library and you remove that
> library and install a new (possibly incompatible) version, that application
> will not run properly, or it may run but crash randomly.

Ok, simpler case; say you're rebuilding a leaf-package (no other package
depends on it), then it would unarguably make more sense to
build/deinstall/reinstall, instead of deinstall/build/reinstall, because: 
1) you can keep using the package _during_ the build
2) if the build breaks, you don't lose the original (working) package

	Geert