[packagekit] Removing packages when updating: a possible solution

Daniel Nicoletti dantti85-pk at yahoo.com.br
Mon Jul 20 15:09:24 PDT 2009


Oki,
I think I did my homework,
I probably should have done that before starting this
thread.. but well.

Here is the result of my research about what needs to
change in the backends to enable getDepends/Requires
use the recursive value to "set" the filter for installed or available.
So backends that needs the filter off that can work.

I got impressed on the number of the backends that
don't use get_depens or requires at all. Also
I spoted a few erros where the backend still rely
on the old API that called getDepends with just ONE
package. So  IMO those backends are BROKEN.

here's is the TODO.

alpm.c
 getDepends only
 - use recursive to set the ~/installed filter
   (the recursive is not used)

apt
 - use recursive to set the ~/installed filter
   (the recursive is not used)
   It can be changed later to emit packages to remove. 

aptcc
 - Use apt resolver when recursive is set

box.c
 - nothing is needed but the code seems to have a bug.
 *** It just get the depends of the first package getDepends
     asked!

conary.c
 - nothing is needed since get depends and requires is
   not implemented.

opkg.c
 - nothing is needed since get depends and requires is
   not implemented.

pisi.py
 - nothing is needed since get depends and requires don't
   use the filter to filter the packages nor use recursive
 *** It just get the depends of the first package getDepends
     asked!

poldek.c
 - nothing is needed since get depends and requires don't
   use the filter to filter the packages nor use recursive
 *** It just get the depends of the first package getDepends
     asked!

portage.py
 - nothing is needed since get depends and requires don't
   use the filter to filter the packages, there is a TODO there
   though.

razor.c
 - nothing is needed since get depends and requires is
   not implemented.

smart.py
 - use recursive to set the ~/installed filter
   (the recursive is not used)

urpmi.pl
 - use recursive to set the ~/installed filter

yum.py
 - use recursive to set the ~/installed filter

zypp.cpp
 - nothing is needed since get depends and requires don't
   use the filter to filter the packages, it doesn't seem to use
   recursive too. 


Daniel.



      ____________________________________________________________________________________
Veja quais são os assuntos do momento no Yahoo! +Buscados
http://br.maisbuscados.yahoo.com



More information about the PackageKit mailing list