RAD validator checkouts files - clearcase

I am using ClearCase with RAD. Sometimes I notice that RAD validator checkouts many files itself. How can I stop RAD validator from checking out files?

It depends on your ClearCase version and view type.
If you are working in a snapshot view (ClearCase 7.x), and have some modified files without them being checked out first (hijacked files), RAD validator can save them before validation (which can generate a checkout first)
See if that option changes anything (as described in "Enable or disable validators in Rational Application Developer")
Otherwise, try and and override the settings at the project level:
Projects can override the options in Window > Preferences > Validation.
By doing this, individual projects will be validated depending on the current selected option.
It can be Manual, Build, and the selectable Settings.
See if by settings all validators at Manual, and then settings only one to Build, you have the same issue.
Settings progressively more at "Build" would allow you to pinpoint the validator that causes the issue.

Related

Could i make a custom function in Clearcase's Toolbox ?

I want to make a new icon and a fuction for clearcase, i want to activate and deactivate the element * MAIN/LATEST function without to change manually the config spec.
I would like to have also the icon on my toolbox so i could know every time if MAIN/LATEST is active. My question is if someone could manipulate the clearcase's Toolbox. I was searching in google without to find out an answer!
The usual customization I see is through the ClearCase Context Menu Editor for Windows Explorer.
That would apply for Windows client only, and for ClearCase 7.x, not ClearTeam Explorer 8 though:
The tool that allows you to change the behavior of existing dialog boxes in Windows and ClearCase Explorer is ClearCase Context Menu Editor (tool called clearmenuadmin typical found in C:\Program Files\Rational\ClearCase\bin\clearmenuadmin.exe) which is available on all ClearCase Windows installations.
With the Context Menu Editor it is possible to:
Create new commands and other menu items available to ClearCase context menus.
Change properties of built-in and custom ClearCase context menu items.
Add items to or remove items from ClearCase context menus.
Test the changes to ClearCase context menus.
It would be good to know why you want to "disable /main/LATEST" and how you plan on doing that. Completely removing the line may cause problems if you need to create new elements, for example.
Whatever script that you're planning on using would need to:
Grab the current view configspec using cleartool getcs
Edit it to make the desired changes
use cleartool setcs {filename} to apply the changes
Some key "gotchas".
Removing /main/LATEST completely will break mkelem, unless have a "element * /main/0 -mkbranch {some branch}" rule.
If you use "-time now" to prevent seeing stuff on /main that others may still be checking in, that will work up to a point. This "now" means "when the configspec is recompiled" which can happen: on starting the view server process or if "cleartool setcs -current" is used to clear view caches.
Not having a configspec line for /main is intentionally introducing "no version selected by configuration" errors. As is using "element ... -none" rules. If you use snapshot or snapshot-derived view types (Web views, and likely Automatic views), you may see error messages on updating/loading views. You can ignore these messages, but only if you're aware they will happen. If you're doing automated updates (say as part of a build process) that tooling needs to be set up to ignore the "spurious" errors and catch the "real" ones.

How do I stop the remote client showing all folders even unloaded ones?

I am using Clearteam Explorer 8. I recently was browsing a project folder which contained a symbolic link. Explorer said that I would need to enable something in order to follow the link. I said ok.
Now it insists on showing me every possible folder in all of my views including unloaded ones. The folders have no contents, but it makes all views really hard to navigate as there is a lot of chaff in the view's tree.
I cannot find where this option is set/unset because I set it in response to a one-time prompt. Does anyone know how to turn this off and have it only show me loaded folders?
Check in the Load Rules tab of the "Edit Configuration" dialog box, for Web views only, if you have the option "Show Obsolete Directories and Files" selected.
Un-selecting this option might help.
If you can edit the config spec of your view, you can add cleaning rules, like:
element /avob/* -none
If you placed it just before the last one (element * /main/LATEST), that would hep ClearCase to not select at all any element which wasn't already selected before by the config spec selection rules.
I had the same problem and I solved it by:
Removing the parameter ccvtreeviewer.fetchFullTree=true from file com.ibm.rational.clearcase.prefs. On my machine, this file is located in folder: C:\Documents and Settings\UserName\.Rational\CTE8\workspace\.metadata\.plugins\org.eclipse.core.runtime\.settings\com.ibm.rational.clearcase.prefs
Editing the file com.ibm.rational.team.client.ui.model.prefs and update theses parameters:
appliedTreeRules_0=com.ibm.rational.clearcase.ui.actions.ShowLoadedVobsAction|Public and Private VOBs|true|true|true|System;
nonappliedTreeRules_0=com.ibm.rational.clearcase.ui.actions.ShowUnloadedVobsAction|Unloaded VOBs|true|false|false|System;com.ibm.rational.clearcase.ui.actions.ShowUnloadedElementsAction|Unloaded Elements|true|false|false|System;com.ibm.rational.clearcase.ui.actions.ShowLoadedPrivateVobsAction|Private VOBs only|true|true|false|System;com.ibm.rational.clearcase.ui.actions.ShowLoadedPublicVobsAction|Public VOBs only|true|true|false|System;com.ibm.rational.clearcase.ui.actions.ShowUnmountedVobsAction|Unmounted VOBs|true|false|false|System;

SlowCheetah placing settings in app.config.deploy and not .exe.config

I'm using the latest version of SlowCheetah on an existing WPF project I have that was already using ClickOnce.
I'm trying to provide different application settings (the applicationSettings node in app.config; the ones that form the Settings.settings file) for each environment. When I publish I'm getting a app.config.deploy (with the correctly transformed settings inside) and also a ProjectName.exe.config file that doesn't have transformed settings.
When someone installs the application and runs it, it's just using the settings inside ProjectName.exe.config (which is correct) and obviously the transformed settings in app.config are ignored. Is there an extra step to get SlowCheetah to put the transformed settings into the exe.config instead?

Browsing projects without creating views in ClearTeam Explorer for Rational ClearCase

My company has recently switched from using Perforce to Rational ClearCase for version control.
In the P4Win client it was possible to select View -> Entire Depot and browse depot files that were outside my client spec and this was useful for figuring out exactly what I needed to add to my client spec.
Significantly this avoided the need to synch the files from the depot before viewing them, and was therefore quicker.
I'm now using ClearTeam Explorer and can't seem to find an equivalent. I'd like to have this for a similar purpose, to figure out exactly what I need in the load rules for my snapshot view and also to decide what views I need to create.
Does anyone know if it is possible to view what files exist under a project in ClearTeam Explorer without first creating a view on the project / joining it?
ClearTeam Explorer is basically a trimmed down Eclipse with ClearCase specific plugins.
thanks.
The easiest way would be to create a dynamic view (you need to add -stream yourStream#\yourPvob to the mkview command, I know it looks like you "joining a project", but still, dynamic view are quick to setup).
The idea is to configure your config spec with the right selection rules (a dynamic view will display the files instantly), and then make your snapshot view with those same selection rules (and the appropriate load rules, specific to a snapshot view)
Note that, according to the CCRC wiki:
With the Release of v8.0, the ClearTeam Explorer is the common Eclipse UI client that supports MVFS on native clients, as well as webviews.
CM Server in 7.1.x was renamed to CCRC Wan Server in v8.
If you don't have cleartool installed, that means you are using webviews (which are snapshot views with web access to the CCRC Wan server).
In that case, there is no easy way to browse any code from any Baseline (other than joining a project)
FWIW now, wanted to suggest a different solution here.
I would create a web view on the stream with empty load rule.
This will ensure a faster view creation.
Then from ClearTeam Navigator menu, I will enable the options to show
Unloaded VOBs
Unloaded Elements
This will ensure that the unloaded elements chosen from my element rules are displayed in ClearTeam Details and ClearTeam Navigator.
Note: You need to be connected to the CCRC server to view the unloaded elements.
Then I can browse the file structure and decide which files needs to be added to my view's load rule.
Or I can just right click on any unloaded/partially loaded resource and select "Load Resource..." which will load the item to my view.

How to simulate multi developer scenario with RTC source control

Is it possible to simulate multi developer scenario with RTC source control so that when I make code changes I can test accepting change sets for example. This is just so I can test a multi developer environment but using just one user.
I've tried creating multiple Eclipse workspaces, and loading the same project area into each Eclipse workspace. Using this method I am unable to accept change sets as RTC source control will just ask me to resync my workspace once I make a change in work Eclipse workspace:
It seems the only method of accepting incoming changes is to
1. Right click on the stream from within 'Pending CHanges' view
2. Select load
3. Select following option :
Make sure you use the Stream (ie make sure you don't deliver directly to another repo workspace simulating another user)
(Note: this is entirely different in ClearCase, where the "out of sync" can happen between the configuration of an UCM view and the one of a Stream after a rebase)
If you create different repo workspace (loaded in different Eclipse workspace), this can cause some confusion when used within the same Eclipse instance.
As said in this thread
repository workspaces are meant to isolate changes - being your private stream.
There is no automatic accepting of changes so you are in full control of what flows in. You can also run private builds on them. that is the whole idea.
If you want to run several repository workspaces with shared code you should use a Stream I think.
The clean repo workspace would be used to accept the changes you decide to deliver to your stream.
So you are trying to use a repository workspace as a stream. While they are almost identical, I am not sure about how they would react to changes delivered to them. Especially while being loaded.
You should use two Eclipse instances. I am concerned about having the same eclipse projects loaded multiple times in the same sandbox and the same Eclipse
That "confusion" is explained in the same thread:
This is expected behavior.
When you change WS1 by delivering to it, the content you've loaded to disk for WS1 isn't updated. So you have to reload.
For this reason, you are not allowed to deliver to other user's workspaces. You can't alter someone's workspace but you can alter your own because you would know why it went out of sync.
Check out point 7 and 10 of "Good practices and key workflows for Rational Team Concert Source Control users".
Note: the article "Loading Content from a Jazz Source Control Repository in Rational Team Concert 2.0" (also valid for RTC3.0) mentions in the section "Reloading Out-of-sync Shared Folders" a similar advice than the one given by the OP:
The local workspace can become out of sync with the remote workspace due to a couple of reasons:
The remote workspace is loaded multiple times and changes have been checked in or accepted from another client session.
An error was encountered during an operation (e.g. Accept) that modifies both the local and remote workspaces.
When the local workspace became out of sync with the remote workspace in RTC 1.0, the user was forced to run the Load wizard and reselect the folders that needed to be reloaded.
In RTC 2.0, this new option will automatically select the out of sync folders and reload them so they are no longer out of sync.
Also new in RTC 2.0 is an indication in the Pending Changes view that there are projects out of sync, as shown below.
Clicking on the Reload out of sync link in the Pending Changes view will open the Load wizard.
The reload option will be selected by default and clicking next will then allow you to select which folders to reload.
As you can see in the following screen shot, all the projects in the Foundation component are out of sync and need to be reloaded.
Clicking Finish will reload these folders and bring them back in sync.
Also the thread "How to handle project out of sync " provides an interesting illustration of that mechanism (even though it isn't exactly your situation).

Resources