Since I saw that Vault 4.0 and 5.0 development is starting to get underway, I thought I'd voice my opinions on a few features I'd like to see added and a few bugs I'd like to see fixed.
Better support for Programmer QA
Probably #1 on this list is how it handles (or rather, doesn't handle) PQA. PQA is Programmer Quality Assurance, something I picked up at my year working at Epic Systems. PQA is simply having another programmer (or preferably 2) take a good look at your changes to make sure you didn't screw anything up. It is much easier to catch bugs before they even get checked in than to let a tester or customer find them. Not only does it help find bugs, but also architectual and design problems.
At Epic, we used to tag every change in the code with a project number. The PQAers would then search for that project number and review the changes that were made. With Vault, we don't have to be so archane; we have MergeDiff, which does, for the most part, do an excellent job of figuring out what's changed and what hasn't. The problem is, Vault doesn't let you see other people's changes until they have checked them in (by definition, really).
The problem with checking in files that hasn't been PQAed is Get Latest on the tree grabs that new code, even though it may change drastically before it is finally considered done. Sometimes you might want to ask another developer's opinion on what you're doing even before you're done. At that point, your code may not even compile or it may break 5 other things. But as soon as you check it in, the compile server will pick it up and try to use it, as may other developers. That's bad.
What do I want? I want to be able to do a diff between the lastest version in Vault and what's sitting on another developer's machine without checking it in and without resorting to manually copying the files through some other method. Basicaly I want to see the diff that the other developer sees on their machine, without actually using his/her machine.
How could this be implemented? I'm not exactly sure, but something like a "staging area" per developer seems like a pretty good idea. You would essentially upload (check-in) the files to your staging area. But no one would see those files on a normal Get Latest. It wouldn't touch the main branch at all. I would be able to see the other developer's changes only by specifying I want to see their staging area. That's just one idea. Any solution that adequately solves this problem would thrill me.
Other little problems in vault I'd like to see fixed
There's a bug with the double-click handler on a file in the upper right window view. Sometimes this will give you an index out of bounds error. I haven't been able to reliably reproduce it, but it seems to happen if you have a different file selected than the one you are trying to double click on.
The search window won't let you check out multiple files at once if your search is set to "Any Status". If you right-click on an individual Renegade file, you can check it out. If you select multiple renegade files, the option to Check Out goes away from the context menu. If you search by "Renegade", only then you can select multiple files from the search window.
DiffMerge
The one thing I'd like to see in DiffMerge is the ability to manually align files. It does a pretty good job, but sometimes you want to say - No, that's wrong, THESE two lines actually match. Beyond Compare has this ability and it comes in quite handy sometimes, especially for particularly messy diffs. As a visual thing it doesn't much matter, but for a merge, it can mean the difference between being able to do the merge with DiffMerge and having to do it by hand.
I'd also like to see the ability to edit a line manually in DiffMerge. I'm not looking for a full-featured editor or anything, just a single-line edit. Again, this is a feature Beyond Compare has.
Why don't I just use Beyond Compare? I'm not particularly fond of the way it handles other things, particularly the "thumbnail" bar on the left. DiffMerge shows you the entire file. BeyondCompare doesn't if your file is really long. Instead, it scrolls with you, meaning you can't really get a good overview of what's going on sometimes.
Feature Requests (long)
Moderator: SourceGear
Thanks for your detailed suggestions.
http://support.sourcegear.com/viewtopic.php?t=1620
I'll log feature requests for the Diff/Merge suggestions, too.
We do appreciate user feedback. Thanks for using Vault.
We have a request logged for a feature that would allow users to "shelve" their work -- store it in the repository, but not actually check it in to the tree. I'll add your comments to that request. See the discussion at this link for other users' thoughts:How could this be implemented? I'm not exactly sure, but something like a "staging area" per developer seems like a pretty good idea.
http://support.sourcegear.com/viewtopic.php?t=1620
We'll see if we can reproduce this.There's a bug with the double-click handler on a file in the upper right window view. Sometimes this will give you an index out of bounds error.
We have feature requests to add more functionality to the GUI Client Search results. I'll add your "vote."The search window won't let you check out multiple files at once if your search is set to "Any Status".
I'll log feature requests for the Diff/Merge suggestions, too.
We do appreciate user feedback. Thanks for using Vault.
Linda Bauer
SourceGear
Technical Support Manager
SourceGear
Technical Support Manager
-
- Posts: 7
- Joined: Wed Dec 29, 2004 6:45 pm
- Contact:
Another vote
I absolutely subscribe these features requests.
In particular the "SHELVE" function (so I can change the dev machine to continue to make changes on a working folder) and the manual diffmerge. Count another vote!
Marco
In particular the "SHELVE" function (so I can change the dev machine to continue to make changes on a working folder) and the manual diffmerge. Count another vote!
Marco