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

Re: apt-listbugs

Thank you, Francesco! Actually your mail convinced me that this should
be discussed more widely. It's probably too early for a bugreport on
the apt-listbugs because my original idea with using the "affects"
field will not work as is (see below).
This is why I'd like to hear opinions from debian-devel.
We're discussing the "#642757: severe lag and high cpu usage when
using non-free nvidia driver with Xserver 1.11.1" which affected many
people. An the worst thing is: despite the fact it was reported
several times (13 reports merged) people were not warned by
apt-listbugs during the upgrade because they were upgrading
xserver-xorg-core and bugreport is against the
nvidia-graphics-drivers. More details below.

On Tue, Oct 18, 2011 at 2:37 AM, Francesco Poli
<invernomuto@paranoici.org> wrote:
> On Mon, 17 Oct 2011 09:30:56 +0700 Alexey Salmin wrote:
>> Many people got almost unusable desktops
>> without any warning despite the fact this bug had been reported
>> already. You upgrade one package and crash another, this is exactly
>> what "affects" is for.
> In your example, if I understand correctly, you upgrade
> nvidia-graphics-drivers and crash xserver-xorg-core.
> This is described by the fact that bug #642757 is assigned to
> nvidia-graphics-drivers, but affects xserver-xorg-core.
No! That's the whole point! You upgrade xserver-xorg-core from 2:1.10
to 2:1.11 and your desktop dies because of a bug in
nvidia-graphics-drivers. If the issue was caused by an upgrade of
nvidia stuff everything would be fine: there's a bug in the nvidia
package and apt-listbugs warns you about it during the upgrade. But
it's not that way in this case. There's a bug in one package and it's
exposed by a new version of another. Probably that's a common scenario
e.g. a bug in a script could be exposed by a newer version of
interpreter or vice a verse. In this case you'll not get a warning
from apt-listbugs at all.

There're some ideas coming into mind how to solve it:

* Add "Breaks: xserver-xorg-core (>= 2:1.10.99)" to nvidia-graphics-drivers
I won't work. As Andreas pointed out you can't add it to the package
which is in the archive already. Making a dummy commit wouldn't make
the things any better: it will not prevent people from upgrading
xserver-xorg-core but if will block the upgrade of

* Create a dummy bug report on xserver-xorg-core saying e.g.
"xserver-xorg-core 2:1.11 is incompatible with nvidia-graphics-drivers
It may help a bit but:
- Somebody should care enough to create such bug reports and close
them as appropriate.
- I doesn't depend on the actual version of nvidia-graphics-drivers
installed so it will show up in the cases it shouldn't.

* Make use of the "642757 affects xserver-xorg-core" record
That was my original idea but it will not work as is because AFAIK
currently there's not way to specify the version of package affected
by some bug. So if someone have a nvidia-graphics-drivers=285.05.09-1
installed he'll be warned at ANY update of the xserver-xorg-core (even
when he makes a downgrade workaround) which is just useless.

- Extend the "affects" record in the BTS to store the version of the
package affected
- Implement a feature in the apt-listbugs to make use of this records

I'll try to express this with more details:
1) There packages A of version X and B of version Y installed
2) You're trying to upgrade package B to version Z
3) There's a bug report NNN on package A=X and it "affects B=Z"
4) In this case apt-listbugs should warn you before upgrading B to Z

What do you think?


> Where is the bug in this case?
> In nvidia-graphics-drivers, I would say: otherwise, the bug report
> should be reassigned elsewhere...
> As a consequence, which is the package that the user should _not_
> upgrade or install, in order to avoid being hit by the bug?
> Again, nvidia-graphics-drivers.
> And apt-listbugs correctly checks the bugs assigned to
> nvidia-graphics-drivers, before the upgrade or the installation of this
> package.
> There's no use in stopping an upgrade or installation of
> xserver-xorg-core because of a bug that merely affects this package:
> it's the other package (nvidia-graphics-drivers) the only one which is
> able to introduce the bug into the user's system.
> In summary, as long as a bug report is correctly assigned to the
> package that is actually responsible for the issue, this package is the
> only one which should not be upgraded/installed, in order to avoid
> introducing the bug into the system.
> This means that apt-listbugs should ignore the "affects" field, when
> run in "apt" mode. Which is exactly what it does.
> As far as "apt-listbugs list <pkg>" is concerned, listing bugs that
> merely affect <pkg> (while being assigned to a different package
> <other_pkg>) is a bit troublesome: how does that combine with version
> tracking?
> What if the user issues "apt-listbugs list <pkg>/<version>"?
> There's no indication about the version of <other_pkg>...
> I am convinced that this would generate a bunch of unwanted "noise" in
> the output of the "apt-listbugs list" command.
>> I think this is a really good point of possible improvement. Anybody
>> mind if I create a wishlist on apt-listbug?
> I would probably tag this wishlist bug as "wontfix", for the reasons
> explained above.
> Thanks a lot anyway for trying to suggest a possible improvement!
> I hope I expressed myself clearly enough.
> Maybe I should add the above explanation
> to /usr/share/doc/apt-listbugs/README.Debian.gz
> Do you think that it would help in understanding why apt-listbugs
> ignores the "affects" field?

Reply to: