Friday, August 24, 2007

QVCS-Enterprise 2.0.22 Release Available

I posted QVCS-Enterprise 2.0.22 earlier today. It has several changes for users who didn't want to wait for the upcoming 2.1 release (which is on track for a late September release date). The changes are described here. 

If you are upgrading from an earlier 2.0 release, the simplest approach is to:

  1. Download the 2.0.22 release from here.
  2. Shutdown your existing server application.
  3. Exit any IDE's that use the IDE integration feature.
  4. Copy the server_out.jar from the 2.0.22 download .zip file so that it replaces your existing server_out.jar file.
  5. Restart your server.

Your clients should then reconnect to the server in order to get 'automatically' updated. Note that in order for the IDE integration .dll to get updated you need to login to the server using the client application (gui.bat).

Thursday, August 09, 2007

QVCS-Enterprise 2.1.9 Beta Now Available

I just uploaded the first beta of the upcoming 2.1 release. You can get a copy here ... look for the beta download after the standard QVCS-Enterprise download.

This 2.1.9 beta release has all the major features that I want to include in the 2.1 release -- we've been using early versions of the 2.1 release internally now for several months.

As noted earlier, the big deal in this release is support for "views".

Things remaining to be done:

  • Support for directory level operations from within a view. The workaround is to enable recursion, and select all the files in the view that you want to work on.
  • Complete the work to get the IDE integration feature complete (i.e. support for file rename).
  • Support for undelete so you can easily move a file from the cemetery back to where it came from (provided you have the proper privileges).

I also added a new forum for discussion of this beta. You have to login to the forums  in order to see the new forum... Becoming a new forum member is bit tedious because I have to filter out all the potential forum spammers.

Please do not use this beta for production use. A safe way to test this beta with your current archives is to create a copy of your current server directory tree (the directory where server_out.jar is located), then in that copied directory, replace the old server_out.jar with the one from the 2.1.9 release. You'll then need to manually edit all the qvcs.served.project.... property files located in the copied qvcsProjectProperties directory so that the archive location and reference location point to the alternate copied location instead of your production location. If the test server is running on the same machine as your production server you'll also probably want to change the server.bat in the copied directory so that the test server uses a different set of ports than those used by the production server.

Please post issues or comments on the forum, or send me e-mail. (jimv at qumasoft dot com).

Tuesday, August 07, 2007

Understanding Views

We'll soon be publishing an early beta for the upcoming 2.1 release. I don't want to commit to a date -- I've not been very good at predicting those lately. In any case, the big new shiny thing in 2.1 will be its support for 'Views'.

QVCS-Enterprise 2.1 will support 4 different kinds of views:

  1. The 'Trunk'
  2. Read-only date based views
  3. Read-only label based views
  4. Read-write label based views

The 'Trunk' view is the default view and is identical to what exists in the current 2.0 product.

The read-only date base view is described in this blog entry.

The read-only label based view is similar to the read-only date based view except that is uses a label to anchor the view instead of a date. You use this kind of view to see what a project looked like when a particular label was applied. You might use this kind of view to perform a build -- just create the label based view, assign a location for the view's workfiles, do a 'get' on the files of the view, and -- poof, you now have a workfile directory tree that matches what the project looked like based on the view's anchor label. As a read-only view, you are not allowed to make any changes to the files in the view, but it is a handy way to recreate what a project looked like at some particular label.

The read-write label based view is similar to the read-only label based view except you are also allowed to checkout and checkin revisions -- with some limitations: you are only allowed to work on the view's 'tip' revisions. QVCS-Enterprise will handle the details 'under-the-hood'. This kind of view is ideal for performing patches to a labeled release: create the read-write view based on the label, assign the workfile location for the view, get the files to that workfile location, and then make your edits (checkout/checkin) as needed in order to patch that labeled release. Once you are happy with your changes, apply a new label to the result, and then do a build based on that new label.

One constraint I've imposed with label based views: you are not allowed to move the anchor label of a view.... i.e. if there is a label-based view that uses label "2.1" (for example) as its anchor, then you are not allowed to apply or remove the "2.1" label from any files on any view, including the Trunk.

Views are a big deal -- and getting them implemented has been a lot of work. You have to look at products that cost a lot more (e.g. Starteam, MKS Source Integrity) to find this kind of feature. For later releases, views will serve as the foundation needed for some other cool features.