Diff for "LaunchpadOnKarmic"

Not logged in - Log In / Register

Differences between revisions 49 and 50
Revision 49 as of 2009-09-20 08:30:18
Size: 7881
Editor: maxb
Comment:
Revision 50 as of 2009-09-20 14:02:27
Size: 8579
Editor: maxb
Comment:
Deletions are marked like this. Additions are marked like this.
Line 50: Line 50:
'''''RUNNING'''''

== Test Status for lp:~maxb/launchpad/python2.5@9012 based on lp:launchpad/stable@9287 ==
* ''canonical.testing.layers.!BaseLayer tests: Ran 250 tests with 0 failures and 0 errors''
 * ''canonical.testing.layers.!BaseLayer tests: Ran 256 tests with 0 failures and 0 errors''
Line 57: Line 54:
 * ''canonical.testing.layers.!ZopelessLayer tests: Ran 17 tests with 0 failures and 0 errors''  * ''canonical.testing.layers.!ZopelessLayer tests: Ran 19 tests with 0 failures and 0 errors''
Line 59: Line 56:
 * canonical.testing.layers.!LaunchpadZopelessLayer tests: Ran 3158 tests with '''2 failures''' and 0 errors  * canonical.testing.layers.!LaunchpadZopelessLayer tests: Ran 3192 tests with '''2 failures''' and 0 errors
Line 64: Line 61:
 * canonical.testing.layers.!LaunchpadFunctionalLayer tests: Ran 8174 tests with '''10 failures''' and 0 errors  * canonical.testing.layers.!LaunchpadFunctionalLayer tests: Ran 8001 tests with '''11 failures''' and 0 errors
Line 66: Line 63:
  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/ftests/../doc/tales.txt: Exception message concerning no len() changed in Py2.5.
  1. lib/canonical/launchpad/ftests/../doc/unicode_csv.txt: Py2.5 behaviour change in comparison of unicode / nonunicode
Line 69: Line 66:
  1. lib/lp/bugs/tests/externalbugtracker-xmlrpc-transport.txt: urllib2 seems to be behaving differently   1. lib/lp/bugs/tests/externalbugtracker-xmlrpc-transport.txt: urllib2 seems to be behaving differently concerning installed handlers
  1. lib/lp/registry/browser/tests/person-views.txt: bytestring vs unicode issue
Line 76: Line 74:
 * canonical.testing.layers.!DatabaseFunctionalLayer tests: Ran 3265 tests with '''1 failures''' and 0 errors  * canonical.testing.layers.!DatabaseFunctionalLayer tests: Ran 3677 tests with '''1 failures''' and 0 errors
Line 78: Line 76:
 * canonical.testing.layers.!PageTestLayer tests: Ran 5964 tests with '''6 failures''' and 0 errors  * canonical.testing.layers.!PageTestLayer tests: Ran 5965 tests with '''7 failures''' and 0 errors
Line 85: Line 83:
  1. lib/lp/registry/tests/../stories/foaf/xx-person-working-on.txt: bytestring vs unicode issue
Line 88: Line 87:
 * ''canonical.testing.layers.!ZopelessAppServerLayer tests: Ran 69 tests with 0 failures and 0 errors''
 * ''canonical.testing.layers.!ZopelessDatabaseLayer tests: Ran 178 tests with 0 failures and 0 errors''
 * ''canonical.testing.layers.!ZopelessAppServerLayer tests: Ran 73 tests with 0 failures and 0 errors''
 * ''canonical.testing.layers.!ZopelessDatabaseLayer tests: Ran 192 tests with 0 failures and 0 errors''
Line 91: Line 90:
 * zope.testing.testrunner.layer.!UnitTests tests: Ran 1348 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
 * zope.testing.testrunner.layer.!UnitTests tests: Ran 1378 tests with '''8 failures''' and 0 errors
  1. librarianformatter_noca.txt: Py2.5 differences in traceback formatting
  1. test_helpers.make_test_tarball_2: odd discrepancy
  1. test_raising_with_unprintable_exception (canonical.launchpad.webapp.tests.test_errorlog.!TestErrorReportingUtility): looks benign
  1. test_EscapedQuotesPropertyFileTest (lp.translations.utilities.tests.test_xpi_properties_format.PropertyFileFormatTestCase)
  1. test_In
validPropertyFileUnicodeEscape (lp.translations.utilities.tests.test_xpi_properties_format.PropertyFileFormatTestCase)
  1. test_MultilinePropertyFileTest (lp.translations.utilities.tests.test_xpi_properties_format.PropertyFileFormatTestCase)
  1. test_Trail
ingBackslashPropertyFileTest (lp.translations.utilities.tests.test_xpi_properties_format.PropertyFileFormatTestCase)
  1. test_UnicodeEscapedPropertyFileTest (lp.translations.utilities.tests.test_xpi_properties_format.PropertyFileFormatTestCase)

This page is a place to collect notes written for and by people living on the bleeding edge and developing Launchpad on Karmic.

It has also become slightly co-opted as a place to manage the migration towards compatibility with the newer Python versions which Karmic prefers by default.

PPA Dependencies

The Launchpad PPA now contains a complete set of packages for the Karmic series.

Launchpad on Karmic with Python 2.4

It works pretty much, but there's an unresolved issue wherein setuptools' way of supporting Python namespace packages tends to leave you using the lazr.* packages installed into the system site-packages directory, despite the Launchpad buildout's best efforts.

This manifests as the following test failures:

  • Problems importing lazr.enum:

    • lp.codehosting.puller.tests.test_scheduler.TestPullerMasterIntegration.test_mirror

    • lp.codehosting.puller.tests.test_scheduler.TestPullerMasterIntegration.test_mirror_with_destination_self_locked

    • lp.codehosting.puller.tests.test_acceptance.TestBranchPuller.test_hosted_branch_stacked_on_mirrored_branch

    • lp.codehosting.puller.tests.test_acceptance.TestBranchPuller.test_manual_stacking

    • lp.codehosting.puller.tests.test_acceptance.TestBranchPuller.test_mirror_hosted_branch

    • lp.codehosting.puller.tests.test_acceptance.TestBranchPuller.test_mirror_hosted_loom_branch

    • lp.codehosting.puller.tests.test_acceptance.TestBranchPuller.test_mirror_imported_branch

    • lp.codehosting.puller.tests.test_acceptance.TestBranchPuller.test_mirror_mirrored_branch

    • lp.codehosting.puller.tests.test_acceptance.TestBranchPuller.test_mirror_private_branch

    • lp.codehosting.puller.tests.test_acceptance.TestBranchPuller.test_remirror_hosted_branch

    • lp.codehosting.puller.tests.test_acceptance.TestBranchPuller.test_stack_mirrored_branch

    • lp.codehosting.puller.tests.test_acceptance.TestBranchPuller.test_stack_mirrored_branch_onto_private

    • lp.services.scripts.tests.test_all_scripts.ScriptsTestCase.test_scripts

  • Unicode vs. bytestring issues:
    • eggs/launchpadlib-1.5.1-py2.4.egg/launchpadlib/docs/people.txt
    • eggs/launchpadlib-1.5.1-py2.4.egg/launchpadlib/docs/toplevel.txt

Workaround: Remove the symlinks at /usr/lib/python2.{4,5}/site-packages/lazr.*-nspkg.pth and trust to the fact that Karmic's default Python is 2.6 to hopefully not break anything on your system that wanted to use them.

Moving to newer Python versions: 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 tracks lp:launchpad/stable (or occasionally devel), on a manual basis, and acts as a one-stop-shop for something that people can check out and build using Python 2.5

Remaining changes in python2.5 branch:

  • Changed PYTHON_VERSION in Makefiles

  • Changed shebang in cronscripts/*, scripts/*,

Launchpad source dependencies (sourcecode bzr trees)

The Makefiles of pygettextpo & pygpgme make direct reference to Python 2.4, you'll need to amend them appropriately.

Test Status for lp:~maxb/launchpad/python2.5@9026 based on lp:launchpad/stable@9539

  • canonical.testing.layers.BaseLayer tests: Ran 256 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 19 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 3192 tests with 2 failures and 0 errors

    1. lib/lp/bugs/doc/checkwatches-cli-switches.txt: Looks to be formatting differences in help message
    2. lib/lp/bugs/doc/externalbugtracker-mantis-csv.txt: Sort order problem.
  • 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 8001 tests with 11 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 concerning no len() changed in Py2.5.
    3. lib/canonical/launchpad/ftests/../doc/unicode_csv.txt: Py2.5 behaviour change in comparison of unicode / nonunicode
    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 concerning installed handlers
    6. lib/lp/registry/browser/tests/person-views.txt: bytestring vs unicode issue
    7. lp.soyuz.scripts.tests.test_copypackage.ReUploadFileTestCase.test_re_upload_file_does_not_leak_file_descriptors - 1 != 0

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

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

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

    1. lib/canonical/launchpad/pagetests/feeds/xx-links.txt: No longer replaces " with ".

    2. lib/lp/answers/stories/question-add.txt: Escaping issues as above, but with < and > too.

    3. lib/lp/answers/stories/question-obfuscation.txt: Ditto.
    4. lib/lp/bugs/stories/feeds/xx-bug-atom.txt: Looks like benign formatting issue
    5. lib/lp/bugs/stories/feeds/xx-bug-html.txt: Looks like benign formatting issue.
    6. lib/lp/bugs/stories/distribution/xx-distribution-upstream-bug-report.txt: Formatting issue.
    7. lib/lp/registry/tests/../stories/foaf/xx-person-working-on.txt: bytestring vs unicode 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 73 tests with 0 failures and 0 errors

  • canonical.testing.layers.ZopelessDatabaseLayer tests: Ran 192 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 1378 tests with 8 failures and 0 errors

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

    4. test_EscapedQuotesPropertyFileTest (lp.translations.utilities.tests.test_xpi_properties_format.PropertyFileFormatTestCase)

    5. test_InvalidPropertyFileUnicodeEscape (lp.translations.utilities.tests.test_xpi_properties_format.PropertyFileFormatTestCase)

    6. test_MultilinePropertyFileTest (lp.translations.utilities.tests.test_xpi_properties_format.PropertyFileFormatTestCase)

    7. test_TrailingBackslashPropertyFileTest (lp.translations.utilities.tests.test_xpi_properties_format.PropertyFileFormatTestCase)

    8. test_UnicodeEscapedPropertyFileTest (lp.translations.utilities.tests.test_xpi_properties_format.PropertyFileFormatTestCase)