[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: RFC interaction with external dependency solver: "APT" state



Hi Stefano,

so the basic concept is:
package manager -> debian-to-cudf-converter -> external solver
-> package manager ?


Am 17. Mai 2010 16:47:46 UTC+2 schrieb Stefano Zacchiroli <zack@debian.org>:
> On Tue, Dec 08, 2009 at 12:04:30PM +0100, Stefano Zacchiroli wrote:
> is. That would simplify the package manager task quite a bit, and avoid
> duplication of the code that generate the markup needed to talk with the
> external solver.

How about a system more like
package manager -> debian-to-cudf-converter -> package manager
-> external resolver -> package manager ?

What could be done then is that the package manager can attach
an id to the stanza (lets say the converter includes the file it comes
from and a count [as multiple versions can be included in one file] and
the manager uses that to map this to his structure(s) with an id and
pass it on with the request to the resolver).

After the id he can also attach other funky stuff he might want to pass
to the resolver - e.g. that he already has this version downloaded -
which would be hard to express to the converter by creating an extra-file.
The converter therefore does the hard general stuff (version mangling,
dependency rewriting, possibly make the info optional more anonymous
[for a bugreport], …) and the manager just adds his own juice (if he want).

The bonus point is that he can do the management of the cudf file
(reuse for another request, save somewhere for a bugreport, …).


>  - "extra:/file/path/on/filesystem" pointing to a file of extendend
>    information. That file will contain RFC-822 stanzas a-la Packages
>    file. Each stanza has a set of fields uniquely identifying packages

So the extended_states file is one of those? I ask as the stanzas in
this file are for the package (of a specific arch) as a whole and not for
a specific version.
Or is it a file the manager should create to feed additional data into
the converter, e.g. the "i have this already downloaded" bit from above?
I guess it is hard for the manager to express in a clean way which
version he refers to without an id.


Best regards,

David Kalnischkies


Reply to: