torstai 26. kesäkuuta 2008

Merging Conflicts is Not Fun

My decision to postpone creating a feature branch finally bit me. While I was scratching my head, Nedko implemented some good new stuff in the repository. Long story short: I can only blame myself for needing to go through a bunch of files to manually merge conflicts.

But every cloud has a silver lining, which in this case means that I get to mention a wonderful tool called Kompare. A picture is worth more than a thousand diffs:



I can tell you right now that this baby takes away a lot of hassle from manually merging conflicts. Give it a spin if you can.

So, I'm a bit wiser now. After I'm done with the merge I'll finally upload the new liblash code to a feature branch which I created last night. That should speed things up a little again.

perjantai 13. kesäkuuta 2008

Slow blogging, fast progress

I admit, I'm a slow blogger. Fortunately, I tend to write code considerably more often than I talk about it here.

I've spent the past week or two converting liblash to use D-Bus for its communication with the LASH server. It's too big of a change to be done one commit at a time, as that would introduce major breakage to the repository. Thus I've worked on it locally, sending regular backups to two remote locations just to be safe.

In my previous post I expressed optimism about reaching and even exceeding my goals, and that hasn't changed. Here's a run-down of what's hip and cool (or, in other words, fresh and fragile ;)) in LASH land:

- The LASH server now communicates with JACK using D-Bus; lashd is no longer linked against libjack. There's still one or two snags to take care of, but for the most part it works as it should.
- The LASH server has an almost feature-complete D-Bus control interface.
- The client library is on its way to using D-Bus for communication with the LASH server. Most of the code is written but not yet committed to the main repository.
- A callback-based API is currently forming around the new D-Bus code in liblash. This is also not yet committed.

The observant reader will notice how one of my goals has changed priority from the original plan. Communication with JACK used to be the last goalpost, but I found it easiest to actually write it first. Save for that minor thing, everything else is happening in order.

In my next posting I'll try to list the extra feature additions which I believe will be completed before September. Hopefully I'll also have a photo of how my Summercode beard is progressing. :)