Re: Conditional Recommends
On Sat, May 21, 2011 at 17:56, Carsten Hey <email@example.com> wrote:
> With above exclamation mark syntax, we could also express "weak
> conflicts", e.g.:
> Package: X
> Recommends: !Y
> Apt would remove Y by default if X gets installed, but users could
> overwrite this.
As a user i hate it then packages are removed just because the maintainer
is bored and wants to force it now. That forces the user in dist-upgrades
to distinguish between different remove-types and the package manager
can very seldomly help with that:
a) two packages do not work (well) together
b) package A is unmaintained
c) the maintainer of package B is bored
With my APT hat i can add that apt-get and friends do not like removes, too.
c) happens all the time in package renames without a good reason as this
could be done later by the user with autoremove or deborphan or whatever
at a time the user expects the need to decide between keeping a package
or not. At dist-upgrade time it's a big annoyance and can even prevent
upgrades as a user has to fear that with the 200 packages which are going
to be removed by the dist-upgrade a lot of features will be gone, too.
So he will delay it until more time is available for checking everything.
Beside that the 190 renames hide the 10 removes the user should
really have a look at…
Yet alone that these removes tend to cause "unexpected results" anyway
as the recent libtar to libtar0 rename did for example… Not that it would
be too unexpected that a package manager can decide against removing
a package, it's just that maintainers never expect that…
And no, the solution to this is not to downgrade c) to a weak conflict.
The solution is to help autoremove and deborphan detect A properly by
hinting that the package A is obsolete (section: oldlibs, debtags, …)
and handle it in a different step. It's just bad to try to do everything at
the same time…
David Kalnischkies, who is already waiting for 'iceweasel recommends !chromium'