Very interesting thread.
A couple (hopefully new) comments:
1) if perforce had an ability to determine and use the closest common ancestor
(base version)
when doing baseless intergrations, then the integ-and-delete solution would work
much
better for renaming. It would not completely solve it, but it would become
more user friendly and adequately address more situations. I might even say
that
it may be acceptable :-)
2) if one _needs_ versioned directories and changesets out of the box, then one
may want to look at accurev. accurev and perforce are very similar, but accurev
has an implementation that considers a change in the filename to be somewhat
the same as a change in the file content.
In clearcase, to change a file name one has to do something different then
change
the file, namely change (version) the directory. Which as noted, causes issues
when merging.
-sandy