Diff for "LaunchpadOnKarmic"

Not logged in - Log In / Register

Differences between revisions 6 and 7
Revision 6 as of 2009-08-04 12:57:59
Size: 2810
Editor: jml
Comment:
Revision 7 as of 2009-08-05 23:52:42
Size: 2442
Editor: maxb
Comment:
Deletions are marked like this. Additions are marked like this.
Line 16: Line 16:
https://code.launchpad.net/~maxb/zope3/launchpad-3.4-py2.5 contains backports of some changes to zope.proxy and zope.security in post-3.4 Zope releases which are required for Python 2.5 compatibility (possibly only on 64-bit architectures). Without these, Launchpad produces perplexing !MemoryErrors. https://code.launchpad.net/~maxb/zope3/launchpad-3.4-py2.5 contains backports of some changes to zope.proxy and zope.security in post-3.4 Zope releases which are required for Python 2.5 compatibility (possibly only on 64-bit architectures). Without these, Launchpad produces perplexing !MemoryErrors. It also contains a patch to zope.sendmail working around a change in the ordering of atexit vs. waiting for non-main non-daemon threads to shut down which otherwise caused various Python processes to hang on shutdown.
Line 19: Line 19:
https://code.launchpad.net/~maxb/twisted/launchpad-py2.5 contains a hack working around a change in the ordering of atexit vs. waiting for non-main non-daemon threads to shut down which otherwise causes the librarian twistd to fail to shut down and require kill -9. (It's the zope.sendmail.delivery.!QueueProcessorThread that doesn't get shut down.)

  Thanks for looking into this. This really is a bit of a hack though. Could you perhaps file a bug on Twisted explaining exactly what the problem is and why it needs to be fixed like this? That'll make it easier to get the patch upstream, and also provide a place to talk about this. -- JonathanLange [[<<Date(2009-08-04T12:57:59Z)>>]]
I used to have a Twisted branch mentioned here. It's now obsoleted by the above patch to zope.sendmail.

As mentioned on Getting, Launchpad is not currently supported on Ubuntu Karmic Koala, primarily because it currently has a hard dependency on Python 2.4, which is no longer included in Karmic.

This page is a place to collect notes written for and by people living on the bleeding edge and attempting to get Launchpad working on Karmic / Python 2.5

launchpad-dependencies

First, there is the issue that the ~launchpad PPA doesn't have any packages for Karmic. I (maxb) have tweaked the launchpad-dependencies package to have a first approximation of suitable dependencies for Python 2.5, and uploaded it to my PPA https://launchpad.net/~maxb/+archive/ppa, and copied the geoip-data-city-lite package from the ~launchpad PPA there as well for convenience.

Launchpad code itself

https://code.launchpad.net/~maxb/launchpad/python2.5 contains a few fixes:

  • Adjusting the Python version in the Makefiles
  • Adjusting import statements to handle the built-in location of cElementTree in Python 2.5
  • Making buildmailman.py compatible with Python 2.5 sys.path_importer_cache behaviour
  • Fixing Launchpad's TestCase subclass for method renames in unittest in Python 2.5

Launchpad source dependencies - Zope

https://code.launchpad.net/~maxb/zope3/launchpad-3.4-py2.5 contains backports of some changes to zope.proxy and zope.security in post-3.4 Zope releases which are required for Python 2.5 compatibility (possibly only on 64-bit architectures). Without these, Launchpad produces perplexing MemoryErrors. It also contains a patch to zope.sendmail working around a change in the ordering of atexit vs. waiting for non-main non-daemon threads to shut down which otherwise caused various Python processes to hang on shutdown.

Launchpad source dependencies - Twisted

I used to have a Twisted branch mentioned here. It's now obsoleted by the above patch to zope.sendmail.

Known Problems

  • Many test failures, especially in Rosetta

  • Launchpad currently depends on a monolithic Zope source distribution. Zope upstream has since restructured itself as a group of separated modular eggs. Gary Poster is working on migrating Launchpad to this new structure at https://code.launchpad.net/~gary/launchpad/zbuildout - this is a prerequisite to upgrading to newer Zope, which would then avoid the need to cherrypick backports into the existing Zope sourcedep.