The test captures parts of the requirement: the symbolic link should be
ignored and *not* resolved. But I maintain that Darcs should issue a
warning. There are two cases to consider:
(1) a symlink with a name that collides with a known file or directory
(known = in recorded or pending)
(2) a symlink that targets a known file or directory
In case (1) I think it would be wrong to "ignore the symlink" as that
would mean the file or directory is regarded as deleted. This would be
very surprising. One might even make this an error ("error: linkname has
been replaced with symbolic link to linktarget").
Case (2) is slightly more benign, but I would still want a warning
(something like "warning: ignoring symbolic link linkname -> linktarget").
Variants could include asking the user how to proceed (resolve, ignore,
terminate).
|