Not logged in - Log In / Register

Provide Link Between LP Package/Products and Bugzilla Components

Map Launchpad source packages and products to the correct Bugzilla Product/Component set in a remote bugtracker.

As an Ubuntu developer
I want to see the component filled in on the bug filing form
so that I don't have to figure out the correct component when forwarding bugs upstream.

As an launchpadlib API user
I want to look up what bugzilla component a source package is associated with
so that I can forward bugs upstream mechanically.

As an launchpadlib API user
I want to write a script to set what bugzilla component a source package is associated with
so that I can generate all my component-to-source_package mappings mechanically.



Bug upstreaming is a key part of the development process at Ubuntu. Users like using Launchpad for reporting bugs, and thus many are filed which really are upstream issues. Ubuntu developers fix some bugs, but the distro team simply lacks manpower to address every bug that gets reported. Thus it is vital that these bug reports get communicated upstream so that the right people can work on them. For this reason, the simpler the bug forwarding process can be made, the higher volume of bug reports can be forwarded, and the higher the quality Ubuntu can gain from its upstreams.

Why now?

Bryce has posted a prototype of a bug upstreamer tool[1] that goes beyond what Launchpad's bug filing form does. Ultimately, we want to enable analogous functionality inside Launchpad itself. This LEP is a first step towards this goal.

This is also being done, even if it's out of scope for our current priorities, because this is one of Bryce's goals for his rotation on the Launchpad bugs team, to get some part of this work into Launchpad itself and leave a foundation where this work could continue after he returns to Ubuntu Platform.

What value does this bring?

Currently, mapping source_packages in Launchpad to products/components in Bugzilla is hard, because there is so much variation in naming schemes between the two bug trackers. The bug filing form sidesteps this by simply requiring the user to select the component at point of bug filing. Sometimes this is easy, sometimes this requires extra knowledge that an ordinary user might not have. However, the mappings are 1-to-1, so is something that Launchpad can do, thereby removing one manual step from the process.

Furthermore, Bryce's prototype also lacks this mapping functionality, and just achieves it through some limited package-specific heuristics. Providing the mapping functionality as API calls will thus also enable his prototype to be more useful by using the package mapping in Launchpad itself. Or in other words, it is an incremental step towards implementing functionality for the prototype into Launchpad itself.


Who will care about this work?

In particular, Ubuntu developers who frequently forward bugs upstream.

When did we last talk to these stakeholders?

The prototype was presented at UDS Maverick in a session held by jcastro to discuss improvements to the bug upstreaming process. This was discussed in relation to the following Ubuntu blueprint:


Bryce and Deryck also talked extensively about this at the Launchpad Epic.


This Feature Provides

This Features Does Not Provide


Project Page

Configuring the upstream component for a package:

Bug page

Forwarding a bug for a package with a known upstream component:


How will we know when we are done?

When the bug filing form is correctly inserting the component field, and when Bryce is able to add support for using launchpad's source_package to component mapping in his prototype upstream too.

How will we measure how well we have done?

In theory, this should make it a tiny bit easier to upstream bugs, which might be measurable via an uptick in the rate of bugs being forwarded upstream. So some stats we could do include:


1: The prototype is currently hosted at http://www2.bryceharrington.org:8080/cgi-bin/send_upstream.cgi

LEP/BugzillaComponents (last edited 2010-08-12 15:00:15 by deryck)