[pacman-dev] [PATCH] Reduce the negligence of _alpm_resolvedeps

Nagy Gabor ngaba at bibl.u-szeged.hu
Thu Nov 29 16:13:42 EST 2007


Idézés Xavier <shiningxc at gmail.com>:

> On Mon, Nov 26, 2007 at 03:56:28PM +0100, Nagy Gabor wrote:
> > Hi!
> > This is a not-to-commit pactest, I just refer to this old thread...:
> > http://www.archlinux.org/pipermail/pacman-dev/2007-August/009072.html
> > I don't know whether we should fix this or not... This is not a critical
> bug,
> > just resolvedeps is a bit negligent, but checkdeps will report its
> negligence
> > (however, pacman doesn't seem to be very informative...).
> 
> Yes I noticed, I think this little bug was in your original checkdeps patch.
> At the end of sync_prepare, you should do s/FREELIST(deps);/*data = deps;/
> Then the missing dependencies message will magically appear again in the
> frontend :)
> 
> > By fixing this the code would be cleaner, more clever, but _notably_
> slower, so
> > I still don't know what to do... What do you think?
> > 
> > ---resolvedeps.py---
> > self.description = "resolvedeps test"
> > 
> > sp1 = pmpkg("pkg1")
> > sp1.depends = [ "pkg2>=2.0-1" , "provision" ]
> > self.addpkg2db("sync", sp1)
> > 
> > sp2 = pmpkg("pkg2", "2.0-1")
> > self.addpkg2db("sync", sp2)
> > 
> > sp3 = pmpkg("provision")
> > self.addpkg2db("sync", sp3)
> > 
> > lp = pmpkg("pkg2", "1.0-1")
> > lp.provides = [ "provision" ]
> > self.addpkg2db("local", lp)
> > 
> > self.args = "-S pkg1 pkg2"
> > 
> > self.addrule("PACMAN_RETCODE=0")
> > self.addrule("PKG_EXIST=pkg1")
> > self.addrule("PKG_EXIST=pkg2")
> > self.addrule("PKG_VERSION=pkg2|2.0-1")
> > self.addrule("PKG_EXIST=provision")
> > 
> > 
> 
> I think it would be interesting to see the patch you propose for fixing it,
> and a benchmark for measuring how slower it is :)

OK, but I leave the benchmark for you;-)
Note: Long "dependency paths" like in smoke001.py may cause notable slowdown.
I made a quick "hack", so probably I made some mistakes...

Bye


----------------------------------------------------
SZTE Egyetemi Könyvtár - http://www.bibl.u-szeged.hu
This mail sent through IMP: http://horde.org/imp/
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: 0001-Reduce-the-negligence-of-_alpm_resolvedeps.patch
URL: <http://archlinux.org/pipermail/pacman-dev/attachments/20071129/6b8c21d4/attachment.diff>


More information about the pacman-dev mailing list