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

Re: Algorithm for selecting between packages providing the same phpapi-20100525, change between squeeze -> wheezy



(funny, talk without end about init systems, but not a single response
 for a Debian native tool for a few days… and with funny, I meant sad)

On Mon, May 20, 2013 at 3:16 PM, Ondřej Surý <ondrej@sury.org> wrote:
> I am just curious about the selection mechanism in apt(itude),
> something has changed between squeeze and wheezy.

apt and aptitude are not the same program and have very different
behavior even through they share a 3 letter prefix and a library in
various areas, so don't assume that what I am saying about the
resolver in libapt which apt-get is using has anything to do with aptitude
which has its own or the various other libapt front-ends which might or
might not use the solver, or use it differently.
(Ignoring that most of them could use an external solver)

> When I was noticed by a user that libapache2-mod-php5filter is
> installed by default when phpapi-20100525 (f.e. try installing
> php5-mysql in squeeze and wheezy).
[…]
> It seems that apt is ignoring Priority: (php5filter is extra)

Actually, its not ignoring the Priority, in fact it sorts by Priority, just
that the order changed "recently" (Nov 2011). A certain individual –  who
I am not going to call out in public to protect him from the lynch-mob –
made the mistake of changing the code to sort lowest priority first …
(fixed in his branch now & added to the wheezy-maybe list)


> The solution would be to pick one default SAPI and do php5-SAPI |
> phpapi-20100525, but that would be hard to push into all r-depending
> PHP modules.

This is indeed the recommend solution if you have a default as nowhere is
defined which provider of a priority is chosen. While priority might be an
obvious and easy choice for solvers working with a heuristic, I wouldn't be
surprised if more deterministic solvers would go for the least 'changes'
instead which might not be an optimal "default" choice.
Maybe you want to try it with: apt-get install $whatever --solver $solver
[where $solver is likely "aspcud" as we haven't that much more so far]

Also: build-dependencies, but that is probably not an issue for PHP.



Best regards

David Kalnischkies


Reply to: