Posts Tagged ‘front-page’

Three tips for faster launchpadlib api clients

Wednesday, July 14th, 2010

Three tips from Leonard’s lightning talk in Prague about writing faster Launchpadlib API clients:

1. Use the latest launchpadlib. It gets faster from one release to the next. (The versions in the current Ubuntu release should be fine; otherwise run from the branch or the latest tarball.)

2. Profile:

    import httplib2
    httplib2.debuglevel = 1

will show each http request and response, so that you can see what’s taking time.

3. Fetch objects only once:

Don’t do this:

    if bug.person is not None:


    p = bug.person
    if p is not None:

In the first case, the client may fetch the Person object twice. (We may fix this in future.)

New Launchpad Bugs Status: Opinion

Wednesday, July 7th, 2010

Many different types of information are stored in bug reports in Launchpad.

Some are actual defects, some are feature requests, some are general issues, and so on.  It is not uncommon on Launchpad to have a bug that deals with an issue that a developer cannot resolve.  In Launchpad, we offer a couple of bug statuses that allow a developer to close a bug report without actually doing what is requested in the report: these are Won’t Fix and Invalid.

Often, though, there may still be a discussion. Won’t Fix and Invalid are useful for the developer, and the project, to know that they don’t need to schedule time for a fix. However, they can sometimes — rightly or wrongly — be seen as an attempt to close down to discussion.

We’ve just added a new bug status to Launchpad: Opinion. Now, this is a fairly momentous occasion; we hardly ever make changes to bug statuses because they, naturally, have a great impact on how you and others use Launchpad to track bugs. However, we feel it’s important to find a way to balance a project’s need for useful work planning with the need for intelligent and open discussion.

Opinion says: there’s a difference of opinion around this bug and people are free to continue the discussion, but the project or package maintainers need to move to other work and are considering the issue closed.

Like I said, adding a new bug status to Launchpad is a big deal. So, we’re treating Opinion as an experiment. We’ll watch how it is used over the next three months and then we’ll decide if the status is proving useful and effective at closing bugs while leaving the discussion open.

I’d love to hear your views on this new status: leave a comment here, join us on the launchpad-users mailing list or mail me directly.

SFTP uploads to PPAs!

Wednesday, July 7th, 2010

You can now use SFTP to upload source packages to your Personal Package Archive!

If you’re already familiar with uploading to a PPA, all you need to do is ensure your includes the following:

method = sftp
login = <your Launchpad account name>

If you’re new to PPAs, but already know how to create packages for Ubuntu, take a look at our guide.

Take the Launchpad user survey!

Wednesday, June 23rd, 2010

There are all sorts of different ways in which we in Canonical’s Launchpad team keep in touch with people who use Launchpad: informal conversations on IRC, attending Ubuntu Developer Summits, formal user research and so on.

We want to hear from as many people who use Launchpad as possible. To help get there, I’ve created a survey with five questions. Tell us what you like about Launchpad, what you don’t and what sort of work you do in Launchpad:

Take the Launchpad user survey!

Meet Steve Kowalik

Monday, June 21st, 2010

Steve Kowalik recently joined the Soyuz part of the Launchpad team at Canonical, so I asked him the, by now familiar, questions!

Matthew: What were you doing before you joined the Launchpad team?

Steve: I worked on the Ubuntu Mobile team for 2.5 years before switching to the Launchpad team to work on Soyuz.

Matthew: Can we see something that you’ve worked on from that time?

Steve: You sure can. The images and large parts of the integration work for Ubuntu Netbook Remix 9.04 and Ubuntu Netbook Edition 9.10 were done by me. I was also responsible for image builds for the three ARM sub-architectures for the 9.10 release.

Matthew: Where do you work?

Steve: I work from my apartment in Sydney, Australia.

Matthew: What can you see from your office window?

Steve: Another apartment block, so not the most glamorous of settings. From the other side of my apartment, I can see the local river. So it depends on the definition of office, if it’s my “office” or the balcony I work from on summer days.

Matthew: What did you do before working at Canonical?

Steve: I worked at a company in Burwood, NSW specializing in satellite communications, and worked on supporting and developing their in-house Debian-derived distribution.

Matthew: How did you get into free software?

Steve: I became interested in Linux when I was in high school, after I came across the term and researched it on the Internet. I started running it in 1999, and switched to Debian from Red Hat in 2000. I became a Debian Developer in 2001, and switched to Ubuntu in mid 2005.

Matthew: What’s more important? Principle or pragmatism?

Steve: I believe pragmatism is more important, as it allows people to use hard data to define the problem or solution space, and work within its boundaries.

Matthew: Do you/have you contribute(d) to any free software projects?

Steve: I’ve had a large number of patches and changes in Ubuntu, some in Debian, and I’ve written a Debian package checker from scratch, called Linda. I’ve been involved in free software for over ten years now.

Matthew: Tell us something really cool about Launchpad that not enough people know about.

Steve: You can now upload packages to PPAs and Ubuntu via SFTP! As an added bonus, I wrote the support for it in Launchpad.

Matthew: Is there anything in particular you plan to work on while you’re with Launchpad?

Steve: I plan on helping to make Soyuz more stable, more feature-ful and hopefully, faster.

Matthew: Okay, Kiko‘s special question! You’re at your computer, you reach for your wallet: what are you most likely to be doing?

Steve: I’m either paying a bill, or buying something online.

Faster pages

Friday, June 11th, 2010

I am happy to report that caching rules I put in place on many pages last week are effective. I did not want to announce that pages were faster until I could see read a week of oops reports to verify that the slow pages owned by the Launchpad registry team were no longer listed as problems. I am honestly surprised that all the slow pages I changes are not listed. I expected to make a reduction in timeouts between 50% and 80%. This looks like a 100% success. I know it is not 100%, but I think this means that milestone, series, and project pages load quicker and you are seeing fewer timeouts.

Launchpad pages now have access to memcached to store fragments of pages. Parts of pages that are costly to generate are cached for minutes or hours depending on how often the data can change. In the case of distro series pages, architecture data changes every few months so the cache rules are 6 hours. Milestone pages were a challenge to cache. Active milestones cache bugs for 10 minutes, Inactive milestones cache for 3 hours. The milestone summary of statuses and assignments cache for 1 hour. If you do not know this, you may suspect there is a bug in launchpad, or wonder if you did not update a bug as you thought. We need a mechanism to expire change when data is changed.

We are now adding cache rules to other pages to improve page load times.