[Python-modules-team] Bug#747270: python-amqp unusable

Brian May brian at microcomaustralia.com.au
Tue Jul 22 23:50:57 UTC 2014


Hello,

Thank you for your email.

I assume you are reacting to the "is marked for autoremoval from testing"
you would have received from Debian.

Unfortunately, as much as these are scary looking messages, I believe I had
already resolved the issue. I sent a email to debian-python mailing list,
however maybe you did not see it.

First an apology: like I already said in
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=747270#15, I used the
wrong package names, and the confusion appears to have been carried across
in your email.

python-librabbitmq != python-amqp

python-librabbitmq is the older library that uses C bindings, and only
supports Python2. It has the bug as mentioned in this bug #747270. So far
there doesn't appear to be any real interest in resolving the bug.
https://github.com/celery/librabbitmq

This is not surprising, as there is a newer library that is entirely native
Python code, that supports Python2 and Python3. In Debian unstable, this
library is called python-amqp (not to be confused with python-amqplib in
wheezy, which I believe is an earlier version of python-amqp).
https://github.com/celery/py-amqp

Both python-librabbitmq and python-amqp are maintained upstream by the
Celery project.

My understanding is that python-amqp can be used anywhere
where python-librabbitmq was used, and it is API is compatible. This
explains when python-kombu 3.0.19-1 has the following in
its depends:

python-librabbitmq | python-amqp (>= 1.4.5)

Unfortunately, this means the older broken library gets installed
automatically as the preferred version.

So I raised the severity of the bug against python-librabbitmq to Grave
(***not*** python-amqp), either to raise interest in fixing the problem, or
have the older broken library removed.

Unfortunately, the one issue I forgot is that python-kombu 3.0.19-1 build
depends against both python-librabbitmq and python-amqp. So it was marked
as broken, and anything that build depends on python-kombu was also marked
as broken, which resulted in a lot of scary looking emails being sent.

Note that no action would have been taken until August the 20th, there was
no need to panic.

Yesterday, I rectified the situation by uploading python-kombu version
3.0.19-2 (as part of the Debian Python Maintainer team). This version no
longer depends on python-librabbitmq. When this version hits testing, all
problems should disappear. At the time I also sent a email to the
debian-python mailing list explaining my solution to the "is marked for
autoremoval from testing" automatic emails.


On 23 July 2014 01:31, Thomas Goirand <zigo at debian.org> wrote:

> though you didn't give any justification on why python-amqp is
>
"unusable". As much as I understand, there's a single use case (ie: with
> celery) where there's a serious problem. Knowing that OpenStack makes
> extensive use of python-amqp, and that Ubuntu is also using the same
> version, I seriously doubt that it is unusable as you wrote. Also,
> python-amqp doesn't depend on python-librabbitmq. However, python-kombu
> does. So why are you even talking about python-amqp?
>


I didn't intend to say python-amqp was unusable. I intended to say
python-librabbitmq was unusable, as per this bug report.

I posted a followup message when I realized I got this wrong.
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=747270#15

Apologies again for the mistake.

python-amqp is the solution to this breakage, and I have no problems with
it.

So when you say "Knowing that OpenStack makes extensive use of python-amqp,
and that Ubuntu is also using the same version, I seriously doubt that it
is unusable as you wrote.", you haven't given any information to suggest
that python-librabbitmq is not broken. You said python-amqp is not broken,
and I already know that.


All of the above are to me, signs that "severity grave" isn't correct.
>
I'm therefore downgrading it to "important". Please don't switch it back
> to grave unless you justify it accordingly.
>

I feel you could have waited one day for a response from me...

The key question, as I see it: Is there any need to keep maintaining the
old python-librabbitmq when we have a perfectly good replacement that is
far better?

If python-librabbitmq still serves a useful purpose that cannot be replaced
by python-amqp, and it still works for this purpose, then I agree, Grave
was inappropriate for this bug report. We will need to come up with some
other solution to the problems with celery.

However, as you yourself said "Knowing that OpenStack makes extensive use
of python-amqp", there should be no problem if python-librabbitmq
disappears, because python-librabbitmq is not python-amqp.

I discussed these issues on the debian-python team mailing lists, it
appears maybe I should have included openstack lists too?

Thanks
-- 
Brian May <brian at microcomaustralia.com.au>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.alioth.debian.org/pipermail/python-modules-team/attachments/20140723/dc250a30/attachment.html>


More information about the Python-modules-team mailing list