Categories
My Media System

My Media System 1.1.1 released

A minor bugfix release for the 1.1.0 series was released today. Special thanks to the many contributors.

Categories
My Media System

My Media System 1.1.0 released

Finally the day has arrived when mms 1.1.0 has been released. After 9 release candidates the release is finally here. The last couple of months of only focusing on bugs has really payed off. Everyone was only fixing bugs which means that we where able to squaze in 67 bug fixes in 2 and a half month.

See photos of mms running in the flickr group.

Categories
Blog

Distributed development using bzr

It’s no secret that I have been a big fan of distributed development tools for a while. One of the maybe best things about them is that they have almost zero overhead settings up. This means that the biggest argument for not using (are there really any?) a version control system is gone. We have been using bzr in MMS for quite a while and recently the core team of developers with access to the source code has grown quite a bit.  So we started having trouble with revision numbers, since they are in a distributed version control by definition not absolute. But fear not, there is a good solution to “work around” that problem. One that goes well with the good idea of having multiple branches. I’ll just use mms as an example. First thing to do is to create a local main branch, a mirror of the what is available on the web:

bzr get http://bazaar.launchpad.net/~team-mms/mms/1.1.0 mms-1.1.0

Now we have a local version of the main repo. So lets branch that for our own changes:

bzr branch mms-1.1.0 mms-1.1.0-arj

Then whenever I want to do something I just work in mms-1.1.0-arj. Commit to that locally. Then when the changs are look good enough to be push, do a bzr pull in the main repo, bzr merge ../mms-1.1.0-arj. Then bzr push to push the changes to main repo.

When changes come in from other people through local the main repo, just do a bzr merge ../mms-1.1.0 inside the mms-1.1.0-arj directory.

Futhermore if one is working on a big new feature, it might be a good idea to create another local branch just for that. This makes it easier to track everything in the long run.