Diff for "LaunchpadPpa"

Not logged in - Log In / Register

Differences between revisions 1 and 27 (spanning 26 versions)
Revision 1 as of 2009-11-12 04:16:49
Size: 2554
Editor: maxb
Comment:
Revision 27 as of 2010-05-06 01:10:12
Size: 3897
Editor: maxb
Comment:
Deletions are marked like this. Additions are marked like this.
Line 5: Line 5:
= launchpad-dependencies =  = launchpad-dependencies =
Line 9: Line 9:
 1. Remember that launchpad-dependencies should not have an ubuntu1 suffix on its version number, so if dch -i adds that for you, take it out again and increment the unsuffixed version number instead.
Line 13: Line 14:
bzr builddeb --native -- --no-lintian bzr builddeb
Line 16: Line 17:
bzr builddeb -S --native -- --no-lintian bzr builddeb -S
Line 21: Line 22:
dput ppa:launchpad/ppa ../launchpad-dependencies_<whatever>_source.changes debsign -S
debrelease --dput -S ppa:launchpad/ppa
Line 23: Line 25:
   1. If uploading a version from the trunk branch, after it has built, go to the PPA +copy-packages page copy it to all the other distroseries that the trunk branch is currently serving. Use the ''copy existing binaries'' option when copying.

After you've done this, you may need to update [[EC2Test/Image]]
Line 27: Line 31:
 * Because we are using it only for tests and updating too frequently may actually break some tests (we've seen it happen). It's no big deal if developers don't get the fully up-to-date geoIP DB. Production uses the proprietary geoIP DB instead. — Danilo (2010-01-21)
Line 28: Line 33:
= Rebuilds to restore Python 2.4 support =

= Rebuilds to restore older Python support =
Line 31: Line 38:
maxb is leading a migration towards using no-source-change rebuilds for this where possible. In jaunty/karmic, the need was to re-add Python 2.4 support. Launchpad made it to Python 2.5 for Karmic... and now the need is to re-add Python 2.5 support in lucid packages.

This should generally be done with a no-source-change rebuild where possible.
Line 34: Line 43:
  * python-defaults - https://code.edge.launchpad.net/~maxb/ubuntu/karmic/python-defaults/launchpad-ppa   * python-defaults (https://code.edge.launchpad.net/~launchpad-committers/ubuntu/lucid/python-defaults/launchpad-ppa)
  * python-support (https://code.edge.launchpad.net/~launchpad-committers/ubuntu/lucid/python-support/launchpad-ppa)
Line 36: Line 46:
 * Sourceful changes - not in bzr branches
  * pysvn - debian/rules required rework to deal with changed Python versions. Should go to branch and should be pushed upstream.
  * python-support:
   * Embedded list of supported python versions is changed.
   * Python version-specific Provides added, so that launchpad-dependencies can enforce a launchpad-modified version.
  * subversion - requires XS-Python-Version amendment. Change to trivial to be worth maintaining in a bzr branch.

 * Sourceful changes - not rebuilt since jaunty, might be able to be no-source-change on next upload
 * No-source-change rebuilds
  * distribute (didn't actually work, was just to facilitate building 2.5 eggs, for which the immediate need passed, so hasn't been fixed.)
  * egenix-mx-base
Line 46: Line 51:
  * python-imaging
  * python-sqlite
  * tickcount

 * No-source-change rebuilds
  * pysvn (no-source-change since lucid; earlier patching in branches)
Line 54: Line 55:
  * python-imaging
Line 55: Line 57:
  * subversion (no-source-change since lucid)
  * tickcount

 * In PPA for karmic but not for lucid:
  * python-sqlite: lucid version is still Python 2.5 compatible so far

= Other compatibility issues (Lucid) =

 * postgresql-8.3: was dropped, we need it still, and it needed a no-change rebuild to pick up a ${shlibs:Depends} change.
 * python2.5: was dropped, binary-copied last version from the primary archive.
 * slony1: build against postgresql 8.3 instead of 8.4. (should put this in a branch)
 * xulrunner: The Ubuntu source no longer builds spidermonkey-bin. This is the Debian source, minimally hacked to build only the binary packages which the Ubuntu source no longer provides. (should put this in a branch)

This page is documentation for uploaders to the Launchpad PPA.

The Launchpad PPA (https://launchpad.net/~launchpad/+archive/ppa) contains dependencies for running Launchpad.

launchpad-dependencies

The launchpad-dependencies source is managed in Bazaar branches at https://code.launchpad.net/meta-lp-deps.

Policy/procedure for updates:

  1. Remember that launchpad-dependencies should not have an ubuntu1 suffix on its version number, so if dch -i adds that for you, take it out again and increment the unsuffixed version number instead.
  2. Exercise personal judgment on whether your change merits a merge proposal, or is sufficiently trivial to just be committed directly.
  3. If preparing a merge proposal, please ensure your branch for review contains a complete debian/changelog entry ready for release.
  4. Go to the trunk (or older distro) branch and merge / commit or pull changes ready to build.
  5. Test-build your package:

    bzr builddeb
  6. Actually build your source upload:

    bzr builddeb -S
  7. Tag it, push it, upload it:

    bzr mark-uploaded
    bzr push
    debsign -S
    debrelease --dput -S ppa:launchpad/ppa
  8. If uploading a version from the trunk branch, after it has built, go to the PPA +copy-packages page copy it to all the other distroseries that the trunk branch is currently serving. Use the copy existing binaries option when copying.

After you've done this, you may need to update EC2Test/Image

geoip-data-city-lite

This package is a single data file, which upstream publishes updates to monthly. Why haven't we updated it since 2008?

  • Because we are using it only for tests and updating too frequently may actually break some tests (we've seen it happen). It's no big deal if developers don't get the fully up-to-date geoIP DB. Production uses the proprietary geoIP DB instead. — Danilo (2010-01-21)

Rebuilds to restore older Python support

Most of the PPA is rebuilds of python library packages to re-instate support for the old Python version Launchpad requires, which has since been dropped as a supported version in Ubuntu.

In jaunty/karmic, the need was to re-add Python 2.4 support. Launchpad made it to Python 2.5 for Karmic... and now the need is to re-add Python 2.5 support in lucid packages.

This should generally be done with a no-source-change rebuild where possible.

Other compatibility issues (Lucid)

  • postgresql-8.3: was dropped, we need it still, and it needed a no-change rebuild to pick up a ${shlibs:Depends} change.
  • python2.5: was dropped, binary-copied last version from the primary archive.
  • slony1: build against postgresql 8.3 instead of 8.4. (should put this in a branch)
  • xulrunner: The Ubuntu source no longer builds spidermonkey-bin. This is the Debian source, minimally hacked to build only the binary packages which the Ubuntu source no longer provides. (should put this in a branch)

LaunchpadPpa (last edited 2021-08-24 10:48:34 by cjwatson)