[Unison-hackers] Wrong error message

Jerome Vouillon Jerome.Vouillon at pps.jussieu.fr
Thu Jul 14 10:05:11 EDT 2005


Hi Alan and Benjamin,

> Did you manage to track down the source of the confusing messages in
> the end?  (I.e., is there something we should fix?)

The code for path translation from case insensitive to case sensitive
uses the archive to perform its work.  This requires the paths given
by the "path" directive to be in the archive.  Thus, when checking for
updates, they are added to both archives with the correct case.  This
should not be a problem, as these paths must exist on both sides for
unison to work properly.  Unison checks for this, and used to fail in
a fatal way for non-existent paths.  (Actually, in Unison 2.10 and
2.12, the check is at the wrong place, so it fails with a somewhat
cryptic error message.)

I have recently changed Unison so that it just reports an error for
these paths instead of failing.  Indeed, it is not very nice to fail
in a fatal way after possibly spending a long time checking for
updates.  But now, if a path exists on one side but not on the other,
the archives are modified in an incompatible way.  Hence the error
message reported by Alan.

I think a short term solution is to switch back to raising a fatal
error in Update.buildUpdate.  A better solution would be to validate
all paths before checking for updates.

(If I have time, I will make the changes before going on vacation next
Monday.)

-- Jerome


More information about the Unison-hackers mailing list