Tuesday, July 25, 2006
QVCS-Enterprise 2.0.4 beta now available
Yesterday, I posted the 2.0.4 beta. You can download it from here.
This beta begins to flesh out the directory level operations from the client application. With 2.0.4, you can do a directory level 'get' operation, directory level label, and directory level unlabel. This stuff is not feature complete yet, but it is functional. There are fewer round-trips to the server, so things are a bit faster than selecting an entire batch of files and performing the operation on that set of selected files (as is required in the current 1.2.12 release).
I plan to have 2.0 feature complete by mid-August, and available for general release at the end of August.
Tuesday, July 18, 2006
QVCS and QVCS-Pro 3.10.11 Release Now Available
I posted the 3.10.11 release late yesterday. It's a bug fix release. You can download it from the usual location.
The bug it addresses is a little obscure -- but if you meet the conditions of the bug, it can be a real nuisance. The bug will appear if you create a branched revision on a file and you change the default branch of that file to be something other than the TRUNK.
The symptoms of the bug: QWin will not start up -- it will exit at startup, complaining of an unknown exception in QWin4.cpp at line 614. You can sometimes workaround the bug by rebuilding the cache file -- i.e. manually delete the Q$QCache file located in the archive directory.
The bug was caused by some bad serialization code in reading and writing to the cache. That code only got used in the case where a file's default branch was set to something other than the TRUNK.
I wrote the original code a long time ago (back in 1999) based on some code that dates back to 1995. That original C++ code was based on some C code that dates back to the origins of QVCS on the Amiga (say back in 1991). Back then, the idioms I was using for structured file I/O were C style idioms. The bug came about because I began to change to C++ idioms for file I/O but neglected to change the code that still relied on C style idioms for some of the low level I/O.
I guess one lesson from this is that while C and C++ can co-exist, their respective coding idioms do not -- at least not without more care than is built into the respective languages.
Oops.
Monday, July 10, 2006
QVCS-Enterprise 2.0.3 beta now available
It's still a work-in-progress, but I wanted to post this build to fix some of the more troublesome bugs present in the 2.0.2 beta.
This beta also begins to rough in some project level operations (e.g. the get operation). The current implementation is not yet complete, so use it at your own risk. (It does not do a good job of testing for overwrites, for example).
To get this to work correctly, you need to make sure to update your clients with both the gui_out.jar, and make sure to add the swing-layout-1.0.jar to the lib directory on the client. You'll also need to download and re-run the client installer program (to update the IDE .dll).
When you run your client for the first time, you'll have to re-enter your workfile locations for each project that you use -- I had to refactor some of the code in this area to get things to work correctly for some scenarios with IDE integration.
The IDE integration is now close to feature complete. It now includes option support so you get 'get by label', or checkout 'by label'. You can also apply a label at checkin time. Whether you can actually do this from within your IDE will depend on the IDE -- it does work in Visual Studio 2003 and VS 2005.
Thursday, July 06, 2006
QVCS-Enterprise 1.2.12 release available
Yesterday, I posted the 1.2.12 release. It's a bug fix release that addresses the bug I described in this blog entry.
You can download the bits from the usual location.