Diff for "LaunchpadOnKarmic"

Not logged in - Log In / Register

Differences between revisions 27 and 28
Revision 27 as of 2009-08-29 11:06:04
Size: 8192
Editor: maxb
Comment:
Revision 28 as of 2009-08-29 21:15:55
Size: 7666
Editor: maxb
Comment:
Deletions are marked like this. Additions are marked like this.
Line 47: Line 47:
 * canonical.testing.layers.!LaunchpadScriptLayer tests: Ran 72 tests with 0 failures and '''1 errors'''
  * test_initZopelessTwice (canonical.lp.ftests.test_zopeless.!TestInitZopeless) monkeypatches warnings.warn_explicit in way that is no longer compatible

 * canonical.testing.layers.!LaunchpadZopelessLayer tests: Ran 3147 tests with '''5 failures''' and '''11 errors'''
  * many - `AttributeError: 'UnicodeCSVReader' object has no attribute 'line_num'`, UnicodeCSVReader not compatible with Py2.5 csv.
  *
lp.archiveuploader.tests.test_ppauploadprocessor.TestPPAUploadProcessor.testPPAUploadResultingInNoBuilds - `FatalUploadError: Unable to find mandatory field 'files' in the changes file.`
  * lp.archiveuploader.tests.test_uploadprocessor.!TestUploadProcessor.testUploadResultingInNoBuilds - `FatalUploadError: Unable to find mandatory field 'files' in the changes file.`
  * lib/lp/bugs/doc/bug-export.txt: Mysterious failure parsing doctest
  *
lib/lp/bugs/doc/checkwatches-cli-switches.txt: Looks to be formatting differences in help message
  * lib/lp/bugs/doc/externalbugtracker-mantis-csv.txt: Sort order problem.
  * lib/lp/soyuz/doc/soyuz-set-of-uploads.txt: Uploads rejected?!
  * lp.soyuz.tests.test_packageupload.!PackageUploadTestCase.test_realiseUpload_for_delayed_copies: <fails with python 2.4 too>
 * ''canonical.testing.layers.!LaunchpadScriptLayer tests: Ran 72 tests with 0 failures and 0 errors''
 * canonical.testing.layers.!LaunchpadZopelessLayer tests: Ran 3147 tests with '''4 failures''' and '''2 errors'''
  
1. lp.archiveuploader.tests.test_ppauploadprocessor.TestPPAUploadProcessor.testPPAUploadResultingInNoBuilds - `FatalUploadError: Unable to find mandatory field 'files' in the changes file.`
  1. lp.archiveuploader.tests.test_uploadprocessor.!TestUploadProcessor.testUploadResultingInNoBuilds - `FatalUploadError: Unable to find mandatory field 'files' in the changes file.`
  1. lib/lp/bugs/doc/checkwatches-cli-switches.txt: Looks to be formatting differences in help message
  1. lib/lp/bugs/doc/externalbugtracker-mantis-csv.txt: Sort order problem.
  1. lib/lp/soyuz/doc/soyuz-set-of-uploads.txt: Uploads rejected?!
  1. lp.soyuz.tests.test_packageupload.!PackageUploadTestCase.test_realiseUpload_for_delayed_copies: <fails with python 2.4 too>
Line 60: Line 57:
 * canonical.testing.layers.!LaunchpadFunctionalLayer tests: Ran 8170 tests with '''11 failures''' and 0 errors
  * lib/canonical/launchpad/ftests/../doc/canonical_url_examples.txt - `http://launchpad.dev/+groups vs. http://translations.launchpad.dev/+groups`
  * lib/canonical/launchpad
/doc/pagetest-helpers.txt: CDATA section introduced
  * lib/canonical/launchpad/doc/tales.txt: Exception message changed in Py2.5.
  * lib/canonical/launchpad/doc/unicode_csv.txt: Failure mode changed in Py2.5. Recurrence of above UnicodeCSVReader issue.
  * lib/canonical/launchpad/scripts/ftests/librarianformatter.txt: Spurious characters.
  *
lib/lp/bugs/tests/externalbugtracker-xmlrpc-transport.txt: urllib2 seems to be behaving differently
  * lp.soyuz.scripts.tests.test_copypackage.!ReUploadFileTestCase.test_re_upload_file_does_not_leak_file_descriptors - `1 != 0`
  * lib/lp/translations/doc/poexport-language-pack.txt, lib/lp/translations/doc/potemplate.txt: Hints at tarfile.getnames() behaviour change as seen in unit tests too
  * lib/lp/translations/tests/../doc/poexport-request-productseries.txt: ?
  * lib/lp/translations/tests/../doc/poexport-request.txt: ?
  * lib/lp/translations/tests/../doc/poexport-request.txt: ?
 * canonical.testing.layers.!LaunchpadFunctionalLayer tests: Ran 8170 tests with '''10 failures''' and 0 errors
  1. lib/canonical/launchpad/ftests/../doc/pagetest-helpers.txt: CDATA section introduced
  1. lib/canonical/launchpad/ftests/../doc/tales.txt: Exception message changed in Py2.5.
  1. lib/canonical/launchpad/ftests/../doc/unicode_csv.txt: Py2.5 behaviour change in comparison
  1. lib/canonical/launchpad/scripts/
ftests/librarianformatter.txt: Spurious characters.
  1. lib/lp/bugs/tests/externalbugtracker-xmlrpc-transport.txt: urllib2 seems to be behaving differently
  1. lp.soyuz.scripts.tests.test_copypackage.!ReUploadFileTestCase.test_re_upload_file_does_not_leak_file_descriptors - `1 != 0`
  1. lib/lp/translations/tests/../doc/poexport-language-pack.txt: Hints at tarfile.getnames() behaviour change as seen in unit tests too
  1. lib/lp/translations/tests/../doc/poexport-request-productseries.txt: Ditto.
  1. lib/lp/translations/tests/../doc/poexport-request.txt: Ditto.
  1. lib/lp/translations/tests/../doc/potemplate.txt: Ditto.

As mentioned on Getting, Launchpad is not currently supported on Ubuntu Karmic Koala.

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.

Phase 1 - Python 2.4

Phase 1 is to get it working on Karmic using Python 2.4 - this requires rebuilding quite a few Python module packages, as Python 2.4 is not a supported Python version in Karmic. These packages are in my PPA for Launchpad-related packages https://launchpad.net/~maxb/+archive/launchpad and are mostly synced into the official Launchpad PPA.

Status: some test failures

  • canonical.testing.layers.LaunchpadZopelessLayer tests:

    • lp.archiveuploader.tests.test_ppauploadprocessor.TestPPAUploadProcessor.testPPAUploadResultingInNoBuilds - FatalUploadError: Unable to find mandatory field 'files' in the changes file.

    • lp.archiveuploader.tests.test_uploadprocessor.TestUploadProcessor.testUploadResultingInNoBuilds - FatalUploadError: Unable to find mandatory field 'files' in the changes file.

    • lp.soyuz.tests.test_packageupload.PackageUploadTestCase.test_realiseUpload_for_delayed_copies - AssertionError: <DBItem PackageUploadStatus.DONE, (3) Done> != <DBItem PackageUploadStatus.ACCEPTED, (2) Accepted>

      • wgrant can't reproduce this on karmic i386
  • canonical.testing.layers.LaunchpadFunctionalLayer tests:

    • lib/canonical/launchpad/ftests/../doc/canonical_url_examples.txt - http://launchpad.dev/+groups vs. http://translations.launchpad.dev/+groups

Once it becomes possible to run the testsuite successfully with Python 2.4 on Karmic, we move on to phase 2...

Phase 2 - Python 2.5

The ultimate goal is to migrate Launchpad to Python 2.6. Rather than go straight to Python 2.6, I (maxb) am focusing on Python 2.5 first as a stepping stone.

https://bugs.launchpad.net/launchpad-foundations/+bugs?field.tag=python-upgrade

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

  • etc...

Launchpad source dependencies - Zope

Thanks to the completion and landing of Gary's zbuildout branch, the zope branch previously listed here is now obsolete.

However, you'll now need to fetch https://code.launchpad.net/~maxb/lp-source-dependencies/python2.5, for a patched version of 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 - pygettextpo & pygpgme

The Makefiles of these two make direct reference to Python 2.4, you'll need to amend them appropriately.

Test Status

  • canonical.testing.layers.BaseLayer tests: Ran 250 tests with 0 failures and 0 errors

  • canonical.testing.layers.LibrarianLayer tests: Ran 8 tests with 0 failures and 0 errors

  • canonical.testing.layers.DatabaseLayer tests: Ran 43 tests with 0 failures and 0 errors

  • canonical.testing.layers.LaunchpadLayer tests: Ran 23 tests with 0 failures and 0 errors

  • canonical.testing.layers.ZopelessLayer tests: Ran 17 tests with 0 failures and 0 errors

  • canonical.testing.layers.LaunchpadScriptLayer tests: Ran 72 tests with 0 failures and 0 errors

  • canonical.testing.layers.LaunchpadZopelessLayer tests: Ran 3147 tests with 4 failures and 2 errors

    1. lp.archiveuploader.tests.test_ppauploadprocessor.TestPPAUploadProcessor.testPPAUploadResultingInNoBuilds - FatalUploadError: Unable to find mandatory field 'files' in the changes file.

    2. lp.archiveuploader.tests.test_uploadprocessor.TestUploadProcessor.testUploadResultingInNoBuilds - FatalUploadError: Unable to find mandatory field 'files' in the changes file.

    3. lib/lp/bugs/doc/checkwatches-cli-switches.txt: Looks to be formatting differences in help message
    4. lib/lp/bugs/doc/externalbugtracker-mantis-csv.txt: Sort order problem.
    5. lib/lp/soyuz/doc/soyuz-set-of-uploads.txt: Uploads rejected?!
    6. lp.soyuz.tests.test_packageupload.PackageUploadTestCase.test_realiseUpload_for_delayed_copies: <fails with python 2.4 too>

  • canonical.launchpad.ftests.test_system_documentation.ProcessMailLayer tests: Ran 269 tests with 0 failures and 0 errors

  • canonical.testing.layers.FunctionalLayer tests: Ran 164 tests with 0 failures and 0 errors

  • canonical.testing.layers.LaunchpadFunctionalLayer tests: Ran 8170 tests with 10 failures and 0 errors

    1. lib/canonical/launchpad/ftests/../doc/pagetest-helpers.txt: CDATA section introduced
    2. lib/canonical/launchpad/ftests/../doc/tales.txt: Exception message changed in Py2.5.
    3. lib/canonical/launchpad/ftests/../doc/unicode_csv.txt: Py2.5 behaviour change in comparison
    4. lib/canonical/launchpad/scripts/ftests/librarianformatter.txt: Spurious characters.
    5. lib/lp/bugs/tests/externalbugtracker-xmlrpc-transport.txt: urllib2 seems to be behaving differently
    6. lp.soyuz.scripts.tests.test_copypackage.ReUploadFileTestCase.test_re_upload_file_does_not_leak_file_descriptors - 1 != 0

    7. lib/lp/translations/tests/../doc/poexport-language-pack.txt: Hints at tarfile.getnames() behaviour change as seen in unit tests too
    8. lib/lp/translations/tests/../doc/poexport-request-productseries.txt: Ditto.
    9. lib/lp/translations/tests/../doc/poexport-request.txt: Ditto.
    10. lib/lp/translations/tests/../doc/potemplate.txt: Ditto.
  • canonical.testing.layers.AppServerLayer tests: Ran 128 tests with 0 failures and 0 errors

  • canonical.testing.layers.DatabaseFunctionalLayer tests: Ran 3225 tests with 1 failures and 0 errors

    • lib/lp/registry/doc/teammembership.txt: Looks like benign formatting issue.
  • canonical.testing.layers.PageTestLayer tests: Ran 5962 tests with 6 failures and 0 errors

    • lib/canonical/launchpad/pagetests/feeds/xx-links.txt: Formatting issue
    • lib/lp/answers/stories/question-add.txt, question-obfuscation.txt: Formatting issue
    • lib/lp/bugs/stories/feeds/xx-bug-{atom,html}.txt: Looks like benign formatting issue.
    • lib/lp/bugs/stories/distribution/xx-distribution-upstream-bug-report.txt: Formatting issue.
  • canonical.testing.layers.TwistedLayer tests: Ran 219 tests with 0 failures and 0 errors

  • canonical.testing.layers.TwistedLaunchpadZopelessLayer tests: Ran 23 tests with 0 failures and 0 errors

  • canonical.testing.layers.TwistedAppServerLayer tests: Ran 5 tests with 0 failures and 0 errors

  • canonical.testing.layers.ZopelessAppServerLayer tests: Ran 69 tests with 0 failures and 0 errors

  • canonical.testing.layers.ZopelessDatabaseLayer tests: Ran 147 tests with 0 failures and 0 errors

  • lp.codehosting.tests.test_acceptance.SSHServerLayer tests: Ran 46 tests with 0 failures and 0 errors

  • zope.testing.testrunner.layer.UnitTests tests: Ran 1347 tests with 8 failures and 0 errors

    • librarianformatter_noca.txt: Py2.5 differences in traceback formatting
    • test_helpers.make_test_tarball_2: odd discrepancy
    • test_raising_with_unprintable_exception (canonical.launchpad.webapp.tests.test_errorlog.TestErrorReportingUtility): looks benign

    • lib/lp/translations/utilities/tests/test_xpi_properties_format.py: several escaping issues