<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>subcommanderblog.wordpress.com</title>
	<atom:link href="http://subcommanderblog.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://subcommanderblog.wordpress.com</link>
	<description>Subcommander Development Blog</description>
	<lastBuildDate>Sun, 01 Nov 2009 16:05:22 +0000</lastBuildDate>
	<generator>http://wordpress.com/</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<cloud domain='subcommanderblog.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://www.gravatar.com/blavatar/6ea4f0a465f40b991a82bc88e21a8604?s=96&#038;d=http://s.wordpress.com/i/buttonw-com.png</url>
		<title>subcommanderblog.wordpress.com</title>
		<link>http://subcommanderblog.wordpress.com</link>
	</image>
			<item>
		<title>Subcommander 2.0.0 b5 (MacOSX)</title>
		<link>http://subcommanderblog.wordpress.com/2009/11/01/subcommander-2-0-0-b5-macosx/</link>
		<comments>http://subcommanderblog.wordpress.com/2009/11/01/subcommander-2-0-0-b5-macosx/#comments</comments>
		<pubDate>Sun, 01 Nov 2009 16:05:22 +0000</pubDate>
		<dc:creator>hauner</dc:creator>
				<category><![CDATA[Releases]]></category>
		<category><![CDATA[subcommander]]></category>

		<guid isPermaLink="false">http://subcommanderblog.wordpress.com/?p=217</guid>
		<description><![CDATA[Hi,
I have uploaded b5 binaries for MacOSX. They are built against subversion 1.6.6.
The binaries are available at http://subcommander.tigris.org.
Posted in Releases, subcommander       <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=subcommanderblog.wordpress.com&blog=5978721&post=217&subd=subcommanderblog&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Hi,</p>
<p>I have uploaded b5 binaries for MacOSX. They are built against subversion 1.6.6.</p>
<p>The binaries are available at <a href="http://subcommander.tigris.org">http://subcommander.tigris.org</a>.</p>
Posted in Releases, subcommander  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/subcommanderblog.wordpress.com/217/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/subcommanderblog.wordpress.com/217/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/subcommanderblog.wordpress.com/217/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/subcommanderblog.wordpress.com/217/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/subcommanderblog.wordpress.com/217/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/subcommanderblog.wordpress.com/217/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/subcommanderblog.wordpress.com/217/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/subcommanderblog.wordpress.com/217/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/subcommanderblog.wordpress.com/217/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/subcommanderblog.wordpress.com/217/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=subcommanderblog.wordpress.com&blog=5978721&post=217&subd=subcommanderblog&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://subcommanderblog.wordpress.com/2009/11/01/subcommander-2-0-0-b5-macosx/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/b8275cd51c46ecd441233ec6ddd7b7db?s=96&#38;d=http%3A%2F%2Fa.wordpress.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">hauner</media:title>
		</media:content>
	</item>
		<item>
		<title>Subcommander 2.0.0 b5 (Win32) &#8211; fixed</title>
		<link>http://subcommanderblog.wordpress.com/2009/10/13/subcommander-2-0-0-b5-win32-fixed/</link>
		<comments>http://subcommanderblog.wordpress.com/2009/10/13/subcommander-2-0-0-b5-win32-fixed/#comments</comments>
		<pubDate>Tue, 13 Oct 2009 21:09:37 +0000</pubDate>
		<dc:creator>hauner</dc:creator>
				<category><![CDATA[Releases]]></category>
		<category><![CDATA[subcommander]]></category>

		<guid isPermaLink="false">http://subcommanderblog.wordpress.com/?p=215</guid>
		<description><![CDATA[Hi,
I have updated the  b5 Windows Installer to fix the startup problems with the &#8220;The application failed to initialize properly (0xc0150002)&#8221; error message.
Unfortunately my binaries were linked against the release AND the debug run time. Which is a really bad idea. 
The new installer is online at http://subcommander.tigris.org.
Thanks for reporting the startup issue :-)
Posted [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=subcommanderblog.wordpress.com&blog=5978721&post=215&subd=subcommanderblog&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Hi,</p>
<p>I have updated the  b5 Windows Installer to fix the startup problems with the &#8220;The application failed to initialize properly (0xc0150002)&#8221; error message.</p>
<p>Unfortunately my binaries were linked against the release AND the debug run time. Which is a really bad idea. </p>
<p>The new installer is online at <a href="http://subcommander.tigris.org">http://subcommander.tigris.org</a>.</p>
<p>Thanks for reporting the startup issue :-)</p>
Posted in Releases, subcommander  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/subcommanderblog.wordpress.com/215/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/subcommanderblog.wordpress.com/215/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/subcommanderblog.wordpress.com/215/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/subcommanderblog.wordpress.com/215/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/subcommanderblog.wordpress.com/215/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/subcommanderblog.wordpress.com/215/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/subcommanderblog.wordpress.com/215/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/subcommanderblog.wordpress.com/215/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/subcommanderblog.wordpress.com/215/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/subcommanderblog.wordpress.com/215/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=subcommanderblog.wordpress.com&blog=5978721&post=215&subd=subcommanderblog&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://subcommanderblog.wordpress.com/2009/10/13/subcommander-2-0-0-b5-win32-fixed/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/b8275cd51c46ecd441233ec6ddd7b7db?s=96&#38;d=http%3A%2F%2Fa.wordpress.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">hauner</media:title>
		</media:content>
	</item>
		<item>
		<title>Subcommander 2.0.0 b5 patch 1 (Source)</title>
		<link>http://subcommanderblog.wordpress.com/2009/09/28/subcommander-2-0-0-b5-patch-1-source/</link>
		<comments>http://subcommanderblog.wordpress.com/2009/09/28/subcommander-2-0-0-b5-patch-1-source/#comments</comments>
		<pubDate>Mon, 28 Sep 2009 21:57:48 +0000</pubDate>
		<dc:creator>hauner</dc:creator>
				<category><![CDATA[Releases]]></category>
		<category><![CDATA[subcommander]]></category>

		<guid isPermaLink="false">http://subcommanderblog.wordpress.com/?p=213</guid>
		<description><![CDATA[Hi,
I have updated the the source archive for b5 to b5 patch 1 (version numbering gets crazy now.. :-). It fixes a couple of build issues for gcc newer than 4.0. I added a few additional #includes and fixed an #include case error.
It is online at http://subcommander.tigris.org.
Thanks to everyone for reporting the build issues :-)
Posted [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=subcommanderblog.wordpress.com&blog=5978721&post=213&subd=subcommanderblog&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Hi,</p>
<p>I have updated the the source archive for b5 to b5 patch 1 (version numbering gets crazy now.. :-). It fixes a couple of build issues for gcc newer than 4.0. I added a few additional #includes and fixed an #include case error.</p>
<p>It is online at <a href="http://subcommander.tigris.org">http://subcommander.tigris.org</a>.</p>
<p>Thanks to everyone for reporting the build issues :-)</p>
Posted in Releases, subcommander  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/subcommanderblog.wordpress.com/213/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/subcommanderblog.wordpress.com/213/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/subcommanderblog.wordpress.com/213/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/subcommanderblog.wordpress.com/213/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/subcommanderblog.wordpress.com/213/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/subcommanderblog.wordpress.com/213/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/subcommanderblog.wordpress.com/213/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/subcommanderblog.wordpress.com/213/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/subcommanderblog.wordpress.com/213/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/subcommanderblog.wordpress.com/213/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=subcommanderblog.wordpress.com&blog=5978721&post=213&subd=subcommanderblog&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://subcommanderblog.wordpress.com/2009/09/28/subcommander-2-0-0-b5-patch-1-source/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/b8275cd51c46ecd441233ec6ddd7b7db?s=96&#38;d=http%3A%2F%2Fa.wordpress.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">hauner</media:title>
		</media:content>
	</item>
		<item>
		<title>Subcommander 2.0.0 b5 (Source)</title>
		<link>http://subcommanderblog.wordpress.com/2009/09/20/subcommander-2-0-0-b5-source/</link>
		<comments>http://subcommanderblog.wordpress.com/2009/09/20/subcommander-2-0-0-b5-source/#comments</comments>
		<pubDate>Sun, 20 Sep 2009 09:51:50 +0000</pubDate>
		<dc:creator>hauner</dc:creator>
				<category><![CDATA[Releases]]></category>
		<category><![CDATA[subcommander]]></category>

		<guid isPermaLink="false">http://subcommanderblog.wordpress.com/?p=211</guid>
		<description><![CDATA[Hi,
the source archive for b5 is now online at http://subcommander.tigris.org.
Posted in Releases, subcommander       <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=subcommanderblog.wordpress.com&blog=5978721&post=211&subd=subcommanderblog&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Hi,</p>
<p>the source archive for b5 is now online at <a href="http://subcommander.tigris.org">http://subcommander.tigris.org</a>.</p>
Posted in Releases, subcommander  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/subcommanderblog.wordpress.com/211/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/subcommanderblog.wordpress.com/211/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/subcommanderblog.wordpress.com/211/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/subcommanderblog.wordpress.com/211/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/subcommanderblog.wordpress.com/211/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/subcommanderblog.wordpress.com/211/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/subcommanderblog.wordpress.com/211/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/subcommanderblog.wordpress.com/211/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/subcommanderblog.wordpress.com/211/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/subcommanderblog.wordpress.com/211/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=subcommanderblog.wordpress.com&blog=5978721&post=211&subd=subcommanderblog&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://subcommanderblog.wordpress.com/2009/09/20/subcommander-2-0-0-b5-source/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/b8275cd51c46ecd441233ec6ddd7b7db?s=96&#38;d=http%3A%2F%2Fa.wordpress.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">hauner</media:title>
		</media:content>
	</item>
		<item>
		<title>Subcommander 2.0.0 b5 (Win32)</title>
		<link>http://subcommanderblog.wordpress.com/2009/09/13/subcommander-2-0-0-b5-win32/</link>
		<comments>http://subcommanderblog.wordpress.com/2009/09/13/subcommander-2-0-0-b5-win32/#comments</comments>
		<pubDate>Sun, 13 Sep 2009 11:59:57 +0000</pubDate>
		<dc:creator>hauner</dc:creator>
				<category><![CDATA[Releases]]></category>
		<category><![CDATA[subcommander]]></category>

		<guid isPermaLink="false">http://subcommanderblog.wordpress.com/?p=208</guid>
		<description><![CDATA[Hi,
finally a new Subcommander beta (b5) release is available :-) Currently only for Windows built against subversion 1.6.5. The source archive and MacOSX binaries will follow.
Download it from http://subcommander.tigris.org
Posted in Releases, subcommander       <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=subcommanderblog.wordpress.com&blog=5978721&post=208&subd=subcommanderblog&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Hi,</p>
<p>finally a new Subcommander beta (b5) release is available :-) Currently only for Windows built against subversion 1.6.5. The source archive and MacOSX binaries will follow.</p>
<p>Download it from <a href="http://subcommander.tigris.org">http://subcommander.tigris.org</a></p>
Posted in Releases, subcommander  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/subcommanderblog.wordpress.com/208/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/subcommanderblog.wordpress.com/208/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/subcommanderblog.wordpress.com/208/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/subcommanderblog.wordpress.com/208/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/subcommanderblog.wordpress.com/208/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/subcommanderblog.wordpress.com/208/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/subcommanderblog.wordpress.com/208/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/subcommanderblog.wordpress.com/208/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/subcommanderblog.wordpress.com/208/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/subcommanderblog.wordpress.com/208/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=subcommanderblog.wordpress.com&blog=5978721&post=208&subd=subcommanderblog&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://subcommanderblog.wordpress.com/2009/09/13/subcommander-2-0-0-b5-win32/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/b8275cd51c46ecd441233ec6ddd7b7db?s=96&#38;d=http%3A%2F%2Fa.wordpress.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">hauner</media:title>
		</media:content>
	</item>
		<item>
		<title>Subcommander progress</title>
		<link>http://subcommanderblog.wordpress.com/2009/09/03/subcommander-progress/</link>
		<comments>http://subcommanderblog.wordpress.com/2009/09/03/subcommander-progress/#comments</comments>
		<pubDate>Thu, 03 Sep 2009 21:21:23 +0000</pubDate>
		<dc:creator>hauner</dc:creator>
				<category><![CDATA[subcommander]]></category>

		<guid isPermaLink="false">http://subcommanderblog.wordpress.com/?p=199</guid>
		<description><![CDATA[Surprisingly there is a little bit progress.. :-)
I&#8217;m temporarily switching back to Qt 4.4 until I finish my new custom QAbstractItemModel  code. That allows me to create a new beta (5) based on subversion 1.6.5.
It won&#8217;t include all things planned for b5 but there are still a few improvements. I will play with it a [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=subcommanderblog.wordpress.com&blog=5978721&post=199&subd=subcommanderblog&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Surprisingly there is a little bit progress.. :-)</p>
<p>I&#8217;m temporarily switching back to Qt 4.4 until I finish my new custom QAbstractItemModel  code. That allows me to create a new beta (5) based on subversion 1.6.5.</p>
<p>It won&#8217;t include all things planned for b5 but there are still a few improvements. I will play with it a couple of days at work and hope to release it next week.</p>
<p>I also started to play with the latest mingw. It is not as easy as I would like to build all the libraries Subcommander depends on.  So far I can build apr, apr-util and openssl. openssl worked out of the box. apr &amp; apr-util needed a few libtool tweaks. So there is still some work ahead to build Subcommander on Windows with gcc and friends.</p>
<p>But I think it is worth the effort. My goal is to use the configure/make build on all platforms so I have to maintain only a single build environment.</p>
<p>I can then also drop Visual Studio on Windows and move to QtCreator as IDE on  MacOSX and Windows. After playing with it a couple of days on the subversion code I&#8217;m quite satisfied with it.</p>
<p>I like it better than XCode or Visual Studio (with the exception of the debugger) although it is still quite simple. It can switch very reliable between declaration and implementation. Something where Visual Studio is really weak&#8230; ;)</p>
Posted in subcommander  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/subcommanderblog.wordpress.com/199/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/subcommanderblog.wordpress.com/199/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/subcommanderblog.wordpress.com/199/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/subcommanderblog.wordpress.com/199/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/subcommanderblog.wordpress.com/199/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/subcommanderblog.wordpress.com/199/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/subcommanderblog.wordpress.com/199/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/subcommanderblog.wordpress.com/199/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/subcommanderblog.wordpress.com/199/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/subcommanderblog.wordpress.com/199/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=subcommanderblog.wordpress.com&blog=5978721&post=199&subd=subcommanderblog&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://subcommanderblog.wordpress.com/2009/09/03/subcommander-progress/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/b8275cd51c46ecd441233ec6ddd7b7db?s=96&#38;d=http%3A%2F%2Fa.wordpress.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">hauner</media:title>
		</media:content>
	</item>
		<item>
		<title>Subcommander Status..</title>
		<link>http://subcommanderblog.wordpress.com/2009/08/02/subcommander-status/</link>
		<comments>http://subcommanderblog.wordpress.com/2009/08/02/subcommander-status/#comments</comments>
		<pubDate>Sun, 02 Aug 2009 13:52:58 +0000</pubDate>
		<dc:creator>hauner</dc:creator>
				<category><![CDATA[subcommander]]></category>
		<category><![CDATA[Qt4]]></category>
		<category><![CDATA[test]]></category>

		<guid isPermaLink="false">http://subcommanderblog.wordpress.com/?p=197</guid>
		<description><![CDATA[Hi,
It looks like I&#8217;m currently (currently!?) losing a bit track of things in Subcommander development&#8230; :-(
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&#8217;t run anymore. The working copy view now crashes randomly. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=subcommanderblog.wordpress.com&blog=5978721&post=197&subd=subcommanderblog&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Hi,</p>
<p style="text-align:justify;">It looks like I&#8217;m <span>currently (currently!?) losing a bit track of things in Subcommander development&#8230; :-(</span></p>
<p style="text-align:justify;"><span>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&#8217;t run anymore. The working copy view</span> now crashes randomly. Great. Unfortunately I have so few test for the model, that I&#8217;m sure I will break other things trying to fix the broken tests. I&#8217;ve already wasted a lot of time debugging that code in the past with all the QModelIndex objects you can&#8217;t look into. I don&#8217;t want to waste more time on this&#8230;.</p>
<p style="text-align:justify;">So I took another step back (moving the proxy model into the TODO list again) and started another round on the QAbstractItemModel stuff. I&#8217;m now trying to TDD the model into existence. This is going a bit slow because I &#8216;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.. :)</p>
<p style="text-align:justify;">So far I always used cppunit to write tests. I think I&#8217;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 <strong>lot</strong> 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 &amp; gmock).</p>
<p style="text-align:justify;">Another big issue that keeps me from making real progress is the maintainability of 3 build environments. Another time waster. I&#8217;m considering to move to qmake as the build environment and to drop the hand made configure/XCode/Visual Studio builds.</p>
<p style="text-align:justify;">I also wonder if it wouldn&#8217;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.</p>
<p style="text-align:justify;">So I&#8217;m still working on Subcommander, but I can&#8217;t tell when there will be a new release&#8230; but maybe I&#8217;m the only Subcommander  user anyway&#8230; ;)</p>
Posted in subcommander Tagged: Qt4, test <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/subcommanderblog.wordpress.com/197/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/subcommanderblog.wordpress.com/197/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/subcommanderblog.wordpress.com/197/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/subcommanderblog.wordpress.com/197/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/subcommanderblog.wordpress.com/197/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/subcommanderblog.wordpress.com/197/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/subcommanderblog.wordpress.com/197/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/subcommanderblog.wordpress.com/197/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/subcommanderblog.wordpress.com/197/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/subcommanderblog.wordpress.com/197/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=subcommanderblog.wordpress.com&blog=5978721&post=197&subd=subcommanderblog&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://subcommanderblog.wordpress.com/2009/08/02/subcommander-status/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/b8275cd51c46ecd441233ec6ddd7b7db?s=96&#38;d=http%3A%2F%2Fa.wordpress.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">hauner</media:title>
		</media:content>
	</item>
		<item>
		<title>creating a custom QAbstractProxyModel &#8211; Google Mock</title>
		<link>http://subcommanderblog.wordpress.com/2009/06/03/creating-a-custom-qabstractproxymodel-google-mock/</link>
		<comments>http://subcommanderblog.wordpress.com/2009/06/03/creating-a-custom-qabstractproxymodel-google-mock/#comments</comments>
		<pubDate>Wed, 03 Jun 2009 20:42:45 +0000</pubDate>
		<dc:creator>hauner</dc:creator>
				<category><![CDATA[subcommander]]></category>
		<category><![CDATA[mock]]></category>
		<category><![CDATA[test]]></category>

		<guid isPermaLink="false">http://subcommanderblog.wordpress.com/?p=185</guid>
		<description><![CDATA[Part I redone, getting started using Google Mock.
A while ago I started to build a custom QAbstractProxyModel for subcommanders working copy view in creating a custom QAbstractProxyModel.
A few weeks ago I red about Google Mock, a mock framework for C++ and I planned to try it. There is a nice, simple and short introduction: Google [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=subcommanderblog.wordpress.com&blog=5978721&post=185&subd=subcommanderblog&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p style="clear:both;"><strong>Part I redone, getting started using <a href="http://code.google.com/p/googlemock/">Google Mock</a>.</strong></p>
<p style="text-align:justify;">A while ago I started to build a custom <tt>QAbstractProxyModel</tt> for subcommanders working copy view in <a href="2009/02/08/creating-a-custom-qabstractproxymodel/"><em>creating a custom QAbstractProxyModel</em></a>.</p>
<p style="text-align:justify;">A few weeks ago I red about <a href="http://code.google.com/p/googlemock/">Google Mock</a>, a mock framework for C++ and I planned to try it. There is a nice, simple and short introduction: <a href="http://code.google.com/p/googlemock/wiki/ForDummies">Google Mock for Dummies</a>.</p>
<p style="text-align:justify;">In the last <a><em>creating a custom QAbstractProxyModel</em></a> article I created a simple mock from scratch that is simple enough for a first try. So the goal is to simplify that. If it doesn&#8217;t simplify that code, why would I want to use a mock framework? :)</p>
<p style="text-align:justify;">Here is the original hand made mock class and test. Constructor and destructor connect and disconnect the signals from <tt>src</tt> (that is the proxy model) to the slots and verify is used to verify the results.</p>
<pre class="brush: cpp;">
class SignalTarget : public QObject
{
  Q_OBJECT;

public:
  SignalTarget( QObject* src );
  ~SignalTarget();

  virtual void verify();

public slots:
  void modelAboutToBeReset();
  void modelReset();

private:
  QObject* _src;

protected:
  int  _hitModelAboutToBeReset;
  int  _hitModelReset;
};
</pre>
<p style="text-align:justify;">To check that the tested class (the proxy model) properly emits the signals, I subclassed <tt>SignalTarget</tt> to <tt>ASSERTS</tt> that the slots were called as many times as they should. Here is the test code:</p>
<pre class="brush: cpp;">
void WcViewItemProxyModelTest::emitsModelResetSignals()
{
  class Target : public SignalTarget {
  public:
    Target( QObject* src ) : SignalTarget(src) {
    }

    void verify() {
      CPPUNIT_ASSERT_EQUAL( 1, _hitModelAboutToBeReset );
      CPPUNIT_ASSERT_EQUAL( 1, _hitModelReset );
    }
  };

  Target target(_proxy);
  _proxy-&gt;reset();
  target.verify();
}
</pre>
<p style="text-align:justify;">Using <a href="http://code.google.com/p/googlemock/">Google Mock</a> this gets a bit simpler. The basic mock class get a bit shorter because I no longer need the <tt>verify</tt> method and the <tt>int</tt> counters. Google Mock will take care of it:</p>
<pre class="brush: cpp;">
class SignalTarget : public QObject
{
  Q_OBJECT; 

public:
  SignalTarget( QObject* src );
  ~SignalTarget(); 

public slots:
  void modelAboutToBeReset();
  void modelReset(); 

private:
  QObject* _src;
};
</pre>
<p style="text-align:justify;">To a create the actual mock class I derive a new class from <tt>SignalTarget</tt> and tell it to mock the <tt>...Reset()</tt> methods by using the <tt>MOCK_METHODx</tt> macro:</p>
<pre class="brush: cpp;">
class MockSignal : SignalTarget
{
public:
  MockSignal(QObject* target) : SignalTarget(target) {
  }

  MOCK_METHOD0(modelAboutToBeReset, void());
  MOCK_METHOD0(modelReset, void());
};
</pre>
<p style="text-align:justify;">Finally I create the mock object in the test and set the <em>expectations</em> (the methods should be called 1 time) by using the <tt>EXPECT_CALL</tt> macro and calling <tt>Times</tt> with the expected number of calls. This is a lot simpler than creating the mock class in the original code to set up the expectations in the <tt>verify()</tt> method.</p>
<pre class="brush: cpp;">
void WcViewItemProxyModelTest::emitsModelResetSignals()
{
  MockSignal mtarget(_proxy);
  EXPECT_CALL(mtarget, modelAboutToBeReset()).Times(1);
  EXPECT_CALL(mtarget, modelReset()).Times(1);

  _model-&gt;reset();
}
</pre>
<p style="text-align:justify;">All in all it was quite easy to get started with <a href="http://code.google.com/p/googlemock/">Google Mock</a>. Although I used it only on a very simple example I think it is a nice help for writing tests. If it fits the thing you want to test it can reduce the <em>code noise</em> required to set up the test.</p>
<p style="text-align:justify;">If you write tests in c++, check it out.. :-)</p>
Posted in subcommander Tagged: mock, test <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/subcommanderblog.wordpress.com/185/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/subcommanderblog.wordpress.com/185/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/subcommanderblog.wordpress.com/185/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/subcommanderblog.wordpress.com/185/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/subcommanderblog.wordpress.com/185/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/subcommanderblog.wordpress.com/185/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/subcommanderblog.wordpress.com/185/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/subcommanderblog.wordpress.com/185/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/subcommanderblog.wordpress.com/185/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/subcommanderblog.wordpress.com/185/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=subcommanderblog.wordpress.com&blog=5978721&post=185&subd=subcommanderblog&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://subcommanderblog.wordpress.com/2009/06/03/creating-a-custom-qabstractproxymodel-google-mock/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/b8275cd51c46ecd441233ec6ddd7b7db?s=96&#38;d=http%3A%2F%2Fa.wordpress.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">hauner</media:title>
		</media:content>
	</item>
		<item>
		<title>Building Qt on Windows&#8230;</title>
		<link>http://subcommanderblog.wordpress.com/2009/05/27/building-qt-on-windows/</link>
		<comments>http://subcommanderblog.wordpress.com/2009/05/27/building-qt-on-windows/#comments</comments>
		<pubDate>Wed, 27 May 2009 19:09:22 +0000</pubDate>
		<dc:creator>hauner</dc:creator>
				<category><![CDATA[subcommander]]></category>
		<category><![CDATA[Qt4]]></category>

		<guid isPermaLink="false">http://subcommanderblog.wordpress.com/?p=183</guid>
		<description><![CDATA[Building Qt (4.5.1) on Windows in a Fusion virtual machine with limited disk space is an adventure&#8230; :)  The build eats endless Gigabytes. Unfortunately the configure.exe is a bit limited and doesn&#8217;t allow to disable building of the demos and the examples.
After getting some hints and ideas by googling I did the following steps:

I did [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=subcommanderblog.wordpress.com&blog=5978721&post=183&subd=subcommanderblog&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p style="text-align:justify;">Building Qt (4.5.1) on Windows in a Fusion virtual machine with limited disk space is an adventure&#8230; :)  The build eats endless Gigabytes. Unfortunately the <tt>configure.exe</tt> is a bit limited and doesn&#8217;t allow to disable building of the demos and the examples.</p>
<p style="text-align:justify;">After getting some hints and ideas by googling I did the following steps:</p>
<ol>
<li>I did run <tt>configure.exe</tt> with the <tt>-fast</tt> option. According to <tt>configure.exe -help</tt>, <tt>-fast</tt> only creates Makefiles for library and subdirectory targets.</li>
<li>Then I entered the <tt>src</tt> directory (that is the source directory for the libraries) and called <tt>nmake</tt>. That way qt builds only the libraries without the demos or examples.</li>
<li>After  the library build finished, I called <tt>nmake clean</tt> in the <tt>src</tt> directory. <tt>make clean</tt> removes all temporary stuff in the <tt>src</tt> directory (like the obj files) but NOT the finished libraries and binaries from the top level bin and lib directory.</li>
</ol>
<p style="text-align:justify;">If you don&#8217;t plan to rebuild the libraries the third step  frees up about 5 Gigabytes(!) of disk space. I wouldn&#8217;t recommend cleaning the src directory if rebuilding is required though. Building the libraries takes several hours&#8230;</p>
Posted in subcommander Tagged: Qt4 <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/subcommanderblog.wordpress.com/183/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/subcommanderblog.wordpress.com/183/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/subcommanderblog.wordpress.com/183/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/subcommanderblog.wordpress.com/183/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/subcommanderblog.wordpress.com/183/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/subcommanderblog.wordpress.com/183/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/subcommanderblog.wordpress.com/183/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/subcommanderblog.wordpress.com/183/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/subcommanderblog.wordpress.com/183/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/subcommanderblog.wordpress.com/183/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=subcommanderblog.wordpress.com&blog=5978721&post=183&subd=subcommanderblog&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://subcommanderblog.wordpress.com/2009/05/27/building-qt-on-windows/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/b8275cd51c46ecd441233ec6ddd7b7db?s=96&#38;d=http%3A%2F%2Fa.wordpress.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">hauner</media:title>
		</media:content>
	</item>
		<item>
		<title>msgmerge on MacOSX and &#8216;No such file or directory&#8217;</title>
		<link>http://subcommanderblog.wordpress.com/2009/05/16/msgmerge-on-macosx-and-no-such-file-or-directory/</link>
		<comments>http://subcommanderblog.wordpress.com/2009/05/16/msgmerge-on-macosx-and-no-such-file-or-directory/#comments</comments>
		<pubDate>Sat, 16 May 2009 16:36:51 +0000</pubDate>
		<dc:creator>hauner</dc:creator>
				<category><![CDATA[subcommander]]></category>
		<category><![CDATA[gettext]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[msgmerge]]></category>

		<guid isPermaLink="false">http://subcommanderblog.wordpress.com/?p=173</guid>
		<description><![CDATA[Hi,
I am still around and plan to work more on Subcommander again. :-)
Today I tried to understand a long standing annoying build issue on MacOSX: msgmerge (for me always) fails on MacOSX with a &#8220;no such file or directory&#8221; error on a file that definitely exists. msgmerge is part of the gettext package which is [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=subcommanderblog.wordpress.com&blog=5978721&post=173&subd=subcommanderblog&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p style="text-align:justify;">Hi,</p>
<p style="text-align:justify;">I am still around and plan to work more on Subcommander again. :-)</p>
<p style="text-align:justify;">Today I tried to understand a long standing annoying build issue on MacOSX: <tt>msgmerge</tt> (for me always) fails on MacOSX with a &#8220;no such file or directory&#8221; error on a file that definitely exists. <tt>msgmerge</tt> is part of the gettext package which is used to add multiple language support to Subcommander.</p>
<p>Here is the failing command line:</p>
<pre>&gt; msgmerge de.po Subcommander.pot
&gt; msgmerge: `./de.po': No such file or directory
 </pre>
<p style="text-align:justify;">The quick fix is to disable backups with <tt>--backup=off</tt>.</p>
<p style="text-align:justify;">The reason why it fails is that the backup code tries to not simply copy the file but also the file permissions and acl information.</p>
<p style="text-align:justify;">Copying the acl information seems to be the problem. If the po file doesn&#8217;t have any acl information, copying the acl information fails. After setting some dummy acl info it works. Interesting enough it seems to work also after removing the acl info again (see man chown to read about setting and deleting acl information).</p>
<p>In copy_acl the following code returns <tt>ENOENT</tt> if the file has no acl info:</p>
<pre>int copy_acl(...):
{
  ...
  acl = acl_get_fd (source_desc);
  ...
 </pre>
<p style="text-align:justify;">The man page of <tt>ac_get_fd</tt> says for <tt>ENOENT: The named object does not exist, or the path_p argument points to an empty string</tt>.</p>
<p style="text-align:justify;">This doesn&#8217;t explain anything, at least to me, so I am not sure if this is a bug in MacOSX or in <tt>msgmerge</tt>s copy code&#8230;</p>
Posted in subcommander Tagged: gettext, Mac, msgmerge <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/subcommanderblog.wordpress.com/173/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/subcommanderblog.wordpress.com/173/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/subcommanderblog.wordpress.com/173/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/subcommanderblog.wordpress.com/173/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/subcommanderblog.wordpress.com/173/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/subcommanderblog.wordpress.com/173/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/subcommanderblog.wordpress.com/173/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/subcommanderblog.wordpress.com/173/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/subcommanderblog.wordpress.com/173/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/subcommanderblog.wordpress.com/173/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=subcommanderblog.wordpress.com&blog=5978721&post=173&subd=subcommanderblog&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://subcommanderblog.wordpress.com/2009/05/16/msgmerge-on-macosx-and-no-such-file-or-directory/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/b8275cd51c46ecd441233ec6ddd7b7db?s=96&#38;d=http%3A%2F%2Fa.wordpress.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">hauner</media:title>
		</media:content>
	</item>
	</channel>
</rss>