Most probably comes from my recent patch "resolve issue2181: put cache
in $XDG_CACHE_HOME (~/.cache by default)".
Can you try to compile without this patch?
I don't understand why ownerModes is the faulty function while
unix-compat provides it (like the other functions used in
Darcs.Util.File).
Does anyone know how unix-compat works in darcs, and how come we are
able to import System.Posix.Files while unix-compat only seems to
provide System.PosixCompat.Files?
Yes, removing "resolve issue2181: put cache in $XDG_CACHE_HOME
(~/.cache by default)" patch lets Darcs compile in windows. The rest of
the issue is . . .beyond my understanding.
I confirm that without the patch I get a build failure on Windows and with
the patch the build is fine.
Apologies for not doing something about this myself earlier!
The following patch sent by Guillaume Hoffmann <guillaumh@gmail.com> updated issue issue2334 with
status=resolved;resolvedin=2.10.0 HEAD
* resolve issue2334 fix win32 build removing file permission functions
Ignore-this: ee88db0d9edaca8ed962a92e0c136233
gh, to answer your question, even if it's been 5 years ago:
Darcs defines its own System.Posix.Files, that's why. It mostly re-
exports System.PosixCompat.Files. But it doesn't do so via module export
but rather lists several functions. The function ownermode is missing
here, which is why it didn't compile on windows.
It is better to just import stuff from System.PosixCompat.Files
everywhere. Will send a patch.