Marius Gedminas wrote:
[snip the problems with system pythons]
seem to be minor inconveniences rather than show-stoppers to me.  I'd
love to hear real horror stories.

Not sure whether this counts as a horror story, but...

Recently I upgraded my desktop to Ubuntu Feisty.

So I was running this buildout generated Python script. It had an ImportError in it. I saw the traceback for the ImportError, but it was suspiciously long and contained a lot of code I didn't recognize. Something called "Apport". It was intercepting my uncaught exceptions.

I looked at the traceback and saw it was trying some code, under Python 2.4, that only worked on Python 2.5. The 'any' function, I believe.

The idea of Apport, as I understand, is to do a visual popup when an error occurs in an application, and give the option to send a mail to Ubuntu.

It turns out whenever you run a python script which has the executable flag set (starting it with "python" or "./" doesn't matter), and an uncaught exception occurs, Apport kicks in. Buildout sets its 'bin' scripts to executable.

Apport is quite a bit of code, and it was also clear it had never been tested properly with Python 2.4. I found out in launchpad this was actually one of *two* 2.4 compatibility bugs in Apport.

I don't like a lot of code running whenever I get exception in a library I have nothing to do with. Additionally, my level of trust in this code isn't high after discovering it had such basic problems. I have put a bug report for Ubuntu suggesting the hook at least doesn't kick in (or only minimally kicks in) when the script in question isn't in some system directory, but I haven't received a response on this yet.

I was rather annoyed at the whole situation. I switched to a hand-compiled python right away.



Zope3-dev mailing list

Reply via email to