Status of subversion support in Cervisia

I thought that some of you might be interested in the current status of the long-promised subversion support in Cervisia. Especially since the competition (kdesvn, eSvn, etc) is maturing fast.

With this post, I hope to show you that Cervisia is still a valuable developer tool with a bright future. 🙂

Where is the code?

You can find the code in KDE’s subversion repository under branches/cervisia/subversion_support. It is still in a work branch because the cvs plugin isn’t feature complete (compared to the KDE 3.5 version).

Will you make the KDE 3.5 feature freeze deadline?

Realistically speaking, no. As hinted above, the main problem is the cvs plugin. We will not be able to provide all features that the KDE 3.4 version of Cervisia offered to cvs users by August 25th. The KDE 3.5 release definitely comes to early for us.

Does it mean I have to wait for KDE 4?

I hope not. I’m thinking about a separate release of Cervisia with subversion support after KDE 3.5. But I can’t promise it because I don’t have any experiences with such releases.

What subversion commands are implemented?

The current version has support for add, remove, commit, status, annotate/blame and log. After we finished update and diff, the basic features for the daily work are available.

Do you use the subversion library?

At the moment we use a subversion DCOP service which starts the subversion command-line client. The output is later parsed by the svn plugin. We used this approach because of our experiences with cvs but there is also a discussion on Cervisia’s mailing list about kio_svn.

There is a good chance that we will switch to this subversion kioslave in the near future.

How does it look like?

For current Cervisia users, it looks pretty boring. 😉


main view


log dialog


annotate dialog

Power of KDE API

Today Cervisia’s changelog and commit dialogs both gained the capability to check the spelling while the user types in the log message.

Although this feature sounds like something that is hard to implement, the KDE API makes it very easy. The change to the changelog dialog was actually just a one-liner since it already used the KTextEdit class. So the addition of the following line was enough to activate the spellchecker:

That was easy. 🙂

resolve dialog is in…

I finally checked-in the new resolve dialog code. This should fix all known bugs like removed characters or added new lines. Another thing that should work now, is the case when a conflict marker and the content is on the same line. This never worked before. Yippee!

Unfortunately it was too late to backport it to the KDE 3.2.2 branch, because there wasn’t enough time to test it. So it will be part of the KDE 3.2.3 release.

cervisia’s resolve dialog

I’m currently working on the resolve dialog in Cervisia. It has some bug reports (see bug #74903 and bug #46871) that are not easy to fix in a sane manner without changing the design. The main problem is the handling of the new line markers, especially at the end of the file.

The redesign will hopefully fix the above bugs and make the source code more readable. Unfortunately I’m not sure if this will be “back-portable” to the stable branch without some testing and the next minor release is near.