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

Re: RFC interaction with external dependency solver: Debian-CUDF



2009/12/11 Stefano Zacchiroli <zack@debian.org>:
> BTW, it would be very helpful if the apt-get (I mean, plain old APT)
> guys can voice their preferences on this: would you prefer a "new state"
> style of output or a "diff" style of output?
As far as i know Michael has the same opinion as i on the "new" vs "diff"
thing as we already talked about it a bit the last few days.

Internally apt uses "both" methods as it resolves with "new" and convert
them to "diff" : The resolver (unfortunately) has not the least idea
of status changes (this is why i said "greedy" in my first mail - the
resolver doesn't undo his changes as he doesn't know what he has changed)

It is just that i personally think more[1] resolvers will have an idea what
they have changed (to undo their decisions) so for these it should be trivial
to output diff-style. These which really don't know what they have done
should be able to compute a diff rather trivial also. The same would be true
for the new-style, but the packagemanager have to compute the diff at some
point anyway, so we have in the changes-aware-resolvers a diff to new convert
step which will be reverted by the packagemanager later on.
A bit silly in my eyes.

Even more:
I think we should really agree on one style and stick with it.
We have two fronts:
* Support both formats -> increase the complexity of the format
and (maybe) of the resolvers
* Support only one format -> increase (maybe) the complexity of the manager

Given, that maybe in the future the counter of packagemanagers will stagnate
so that we will (maybe) have in (a far away) future more resolvers than
managers the second option is better in my eyes.

Uh, and btw it would be really cool if we would stick as close as possible
to the original CUDF, so this is maybe a topic not only for Debian-CUDF.


Best regards / Mit freundlichen Grüßen,

David "DonKult" Kalnischkies

[1] Okay, this is properly a topic on its own and a bit complicated without
an eightball to provide the actual truth, but i really think dependency
resolving is not a true/false business which could be solved in 2-SAT,
so you have to rate at some point your possibilities and if you want to be
really good you will want to be able to revert this rating later on.

P.S.: Stefano, I prefer "good old APT", but i am maybe a bit biased. ;)


Reply to: