Launchpad API Uses

Below are programs that use the Launchpad APIs (usually through the launchpadlib Python interface) that you can use as examples if you're starting out with Launchpad API programming. See also the API/Examples page, which contains code snippets specifically meant as examples, the Clients page (into which this page should probably be merged), and the Launchpad Extensions (lpx) project group.

Program

Purpose

Notes

Launchpadlib "contrib" scripts

Various scripts shipped with Launchpadlib, meant both as examples and as real-world tools.

In particular, see lp-bug-ifier.py (expands raw bug numbers to show the bug summaries as fetched from Launchpad), close_bugs_from_commits.py (the name is self-explanatory), and the lpscripts.py convenience library they both use.

bughugger

Py Gtk Client for Ubuntu bugs in Launchpad. Currently supports listing bugs by team, user, and package. Supports plugins for changing bugs.

Still in development, join ~bughuggers

bzr-eclipse

A Bazaar plugin for Eclipse, that talks to the Launchpad/Bazaar integration using launchpadlib.

The developer says: "The API is straightforward to learn, also if you can use launchpadlib it's far easier, just start the python interactive interpreter, import launchpadlib and start prototyping your app :)"

Tarmac

"The Launchpad Landing Strip": an automatic branch lander for the Bazaar branches hosted on Launchpad. Tarmac uses the Launchpad API to manage a development focus branch's proposed merges. It will automatically merge approved branch merge proposals and push them back up to Launchpad.

apport

A crash detection system that automatically generates reports with debugging information from crashed programs and provides UI frontends for handling these reports.

See the script apport-collect, which adds apport data to existing bug reports

ubuntu-dev-tools

A collection of useful tools that Ubuntu developers use to make their packaging work a lot easier (bug filing, packaging preparation, package analysis, etc).

See the manage-credentials, requestsync, massfile, lp-set-dup, grab-attachments, and hugdaylist scripts. They're all sharing the ubuntutools/lp/libsupport.py library, which might be a good place to start.

ubuntu-qa-tools

A collection of tools used by the Ubuntu QA Team (like ubuntu-dev-tools, but for QA).

See the ml-fixes-report.py, ml-team-fixes-report.py, b-tool, package-bugs-gravity.py, team-reported-bug-tasks.py, and team-assigned-bug-tasks.py scripts.

ubuntu-archive-tools

A couple of small tools used by the Ubuntu archive administration team. Likely to grow as the Soyuz API gets richer.

Thanks to Colin Watson for pointing this one out.

loco-directory

LoCo Team organisation site

See, e.g., /loco_directory/includes/launchpad.py or /loco_directory/teams/management/commands/lpupdate.py

MeMaker

Uses python-launchpadlib to update users mugshot on Launchpad.net.

OpenHatch

A website for talking about your Free Software contributions and finding new ways to contribute

We use launchpadlib to convert email addresses into lp.net usernames, and we pull information about your project experiences from your lp.net user page. See the script.

Laika

"a guide dog for launchpad" -- prints a summary of the bugs you touched this week

API/Uses (last edited 2011-12-01 13:34:50 by cpe-076-182-040-015)