Subcommander Development Blog

Subcommander Status..

with 6 comments


It looks like I’m currently (currently!?) losing a bit track of things in Subcommander development… :-(

I tried to upgrade from Qt 4.4 to Qt 4.5. Bam, a couple of (my few) tests for the custom QAbstractItemModel (which is the base for the working copy display) don’t run anymore. The working copy view now crashes randomly. Great. Unfortunately I have so few test for the model, that I’m sure I will break other things trying to fix the broken tests. I’ve already wasted a lot of time debugging that code in the past with all the QModelIndex objects you can’t look into. I don’t want to waste more time on this….

So I took another step back (moving the proxy model into the TODO list again) and started another round on the QAbstractItemModel stuff. I’m now trying to TDD the model into existence. This is going a bit slow because I ‘m still a beginner at TDD. But I have about 20 tests around the new custom model implementation now and slowly it begins to do something.. :)

So far I always used cppunit to write tests. I think I’m going to drop it in favor of gtest/gmock. Allthough gmock does work together with cppunit, it is simpler and faster for me to create new tests with gtest instead of cppunit. With cppunit I always had a header and a implementation file. With gtest I just need an implementation file. This is a lot easier. Maybe this would work with cppunit too, but since gmock includes gtest anyway I have one dependency less to care for (just gmock instead of cppunit & gmock).

Another big issue that keeps me from making real progress is the maintainability of 3 build environments. Another time waster. I’m considering to move to qmake as the build environment and to drop the hand made configure/XCode/Visual Studio builds.

I also wonder if it wouldn’t be a lot easier to drop Visual Studio completely and use MinGW to build Subcommander on Windows. That way I would more or less use the same build environment (gcc and friends) on all the three platforms (Mac/Linux/Windows). This should improve maintainability as well.

So I’m still working on Subcommander, but I can’t tell when there will be a new release… but maybe I’m the only Subcommander  user anyway… ;)

Written by hauner

Sunday, 2 August, 2009 at 14:52

Posted in subcommander

Tagged with ,

6 Responses

Subscribe to comments with RSS.

  1. I am a fan as well. I’m a little down that 2.0.0 has been in beta status for so long. I’m an old Visual Source Safe hack and Subcommander is so much more appealing than Tortoise. I’ve compared it with SmartSVN but have yet to commit to that product as I like subcommander.


    Thursday, 22 October, 2009 at 20:15

    • Yes, I’m not happy either with the slow progress. Moving from qt3 to qt4 (and from qt 4.4 to qt 4.5) and subcommander from 1.2 to 2.0 was a bit too much…

      I’m trying to get control again by tdd’ing new code. It’s still going slow but I’m making progress.. :-)


      Sunday, 1 November, 2009 at 17:24

  2. I use it everyday too. I’m a big fan.
    I use Perforce at work everyday and i can appreciate all the hardwork that goes into making something like this.
    I’ve also written a svn client myself, however that was for a very specific reason. So, i really appreciate your work.

    keep it going.

    FYI, i’m using the 2.0 B4 on Windows 7…

    Paul Tham

    Wednesday, 12 August, 2009 at 07:37

  3. You are not alone. :)Just found Subcommander, count me.^_^


    Sunday, 9 August, 2009 at 13:58

  4. I’m still there :)

    I use the last Subcommander 2.0 Beta every day and I’m still a fan of it also after seeing other things like SmartSVN (very powerful), qsvn and esvn on Linux.

    (I tried to build a Linux binary directly from the sources but my openSUSE has still exactly those unsupported 1.5.0 svn libs and I didn’t want to replace them. So, on Linux I use qsvn but it’s much simpler and has no repository features at all. I plan to move to Arch in the next weeks and than compile again.)

    The Windows Beta is a bit out of date now because the last Tortoise releases are linked with much newer 1.6.x subversion libs, so the working copies are not longer compatible with the Subcommander Beta anymore. But this hasn’t a serious impact on my work.


    Monday, 3 August, 2009 at 07:23

    • Hi,

      nice to hear from you :)

      I will come up with a svn 1.6 build. I was on may way until I decided to upgrade Qt too… and ended up with the current mess. I didn’t think this would be a problem ;)

      I guess I will just move back to the previous Qt version and create a 2.0.0b5 or 6 with svn 1.6.

      So at least there would be a version with the latest svn.


      Tuesday, 4 August, 2009 at 20:32

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: