In Launchpad, we have a thing called a “product series” that represents a series of releases from the same branch. For example, Firefox 1.5, 220.127.116.11, 1.5.1 etc would all belong to the “1.5” series. The name “product series” sucks horribly, and I’d really like to get a better name. Suggestions welcome, on #launchpad or on the launchpad-users mailing list.
So, why do we have these?
Very simply, because many (if not most) of the things that developers care about are related to work in progress. Think about it. We don’t really edit the translations of the 18.104.22.168 release of Firefox – because those are in the tarball, they are done and dusted. If we are editing translations for 22.214.171.124 its because we actually want those translations published along with 1.5.1… the next release in the series. So we should track the translations of the series, not the release.
Similarly, if you want to fix a bug in an upstream product, and do it for say 1.5 of Firefox, then once again you are “targeting this fix to the next release in the series” of the branch you are landing it on.
So, in Launchpad, both translations and bugs are tightly coupled to upstream product series.
Of course, a product series is very similar to a special branch of that product. And in fact, in Launchpad you can associate a particular branch with a series. This then means that we can monitor that branch for special events. In future, for example, we will be able to know that you have fixed a bug in a particular series when we see a commit message to that effect on the branch. Pretty cool vapourware 🙂