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
It turns out whenever you run a python script which has the executable
flag set (starting it with "python myscript.py" or "./myscript.py"
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