KamranKhan

Contact information

Project

Project Name

Bug Triaging Improvements for Launchpad/Arsenal

Project Description

The features mentioned below were originally part of the Arsenal bug auto-triaging tools proposal. However, a useful implementation of some of these features requires modifications in the Launchpad API. Similarly, some of the features retain their usability in the web-interface as well. For these reasons, the title of this proposal was changed to reflect the fact that the will not just be limited to Arsenal.

Currently, there is no easy way of searching through a project's bug attachments because of the following reasons:

The solution would be to:

   1 class IProduct(...):
   2     ...
   3     bugs = exported(
   4         CollectionField(
   5             title=_("List of bugs for this project."),
   6             value_type=Reference(schema=IBug),
   7             readonly=True))

   1 class IBug(...):
   2     ....
   3     @operation_parameters(
   4         text=TextLine(title=_("Search text"), default=u""))
   5     @operation_returns_collection_of(IBugAttachment)
   6     @export_read_operation()
   7     def findAttachments(text=""):
   8     """Return all attachments which contain <text>."""

Automatic Upstreamer

Add the functionality to forward a bug along with attachments to a remote tracker. General summary of the approach:

Bug Matchmaker

For a given Bugzilla bug, add the functionality to search the remote tracker. However, depending solely on a web-service API or parsing HTML pages will again bring in the issue of 'one trip for each item' for the search. Therefore:

Automatic Patcher

For a given bug, generate an automatically patched package from an attachment. The procedure would be to:

The functionality will be built directly in Arsenal.

If you would be willing and able to do other projects instead, which ones?

I shall be focusing only on these improvements. They will require lot of polish and testing to reach a level of productivity where compatibility issues among the API's will not hinder the bug triaging process. Therefore, I will not be spending time on other projects during the summer.

Why did you like this idea?

Because:

Please describe a tentative project architecture or an approach to it

Give us details about the milestones for this project

Why will your proposal benefit Ubuntu?

Open Source

Please describe any previous Open Source development experience

Why are you interested in Open Source?

Because trusting closed source is akin to having an unpublished and unreviewed block cipher as the AES.

Availability

How long will the project take? When can you begin?

The project should take around two months for releasing the features in a production-ready state. I can begin after May 19, i.e., after my current semester ends.

How much time do you expect to dedicate to this project? (weekly)

Around 7-8 hours per day for 4-5 days each week.

Where will you based during the summer?

Islamabad, Pakistan.

Do you have any commitments for the summer? (holidays/work/summer courses)

I have 37 movies — and 2 seasons of Flying Circus pending — on my wishlist, that's about it.

Please designate a back up student (in case you need to withdraw your application)

I don't personally know anyone interested in Launchpad development so any designation would be a random guess at best.

Other

Have you ever participated in a previous GSoC? (describe your project)

No.

Have you applied for any other 2010 Summer of Code projects? If yes, which ones?

Going to apply for the LSB project of cross-distribution dependency translation tool.

Why did you apply for the Google Summer of Code ?

Why did you choose Ubuntu as a mentoring organisation?

Because I have worked with Launchpad before and I use it for managing all of my tiny open-source utilities. My project is essentially concerned with Launchpad and Ubuntu is the organization associated with it.

Why do you want to participate and why should Ubuntu choose you?

I want to participate in order to have some productive fun during the summers and contribute to the open-source world. Ubuntu should choose me because I have a great deal of enthusiasm for working on Launchpad with some open-source experience already at my hands. I have a fair amount of experience with Python, GTK+, C/C++, PHP and x86 in particular; and POSIX, open-source and web development in general.

GSoC/2010/KamranKhan (last edited 2010-04-09 17:33:52 by mbl-65-148-129)