[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] master a59839d: file-truename now uses realpath for local
From: |
Eli Zaretskii |
Subject: |
[Emacs-diffs] master a59839d: file-truename now uses realpath for local files |
Date: |
Sat, 07 Sep 2019 10:27:05 +0300 |
Paul,
I had to revert this commit, as it had multiple issues:
. It breaks the MS-Windows build, because there's no realpath (and we
cannot use the Gnulib replacement, due to non-ASCII file names
Gnulib doesn't support well on Windows).
. Even when I modified file--truename to always signal an error on
MS-Windows, Emacs wouldn't build, probably because the
corresponding change in files.el has another mistake. Did you test
the build when realpath signals an error?
. I don't think it's a good idea to favor GNU/Linux systems by
punishing the rest. We should have a better way than signaling an
error on platforms where realpath doesn't work well enough. And in
any case, using Gnulib's realpath will not make file-truename
faster on those other systems.
. The code of file--truename incorrectly looked for the trailing
slash ion the encoded file name, something you can only do reliably
if the file-name encoding is UTF-8, because other encodings don't
guarantee a single slash is never part of a multibyte sequence.
. Last, but not least: there was no documentation of the new
primitive.
For all of these reasons, I think we need to talk about the issue
before implementing it, and the implementation, if we will have one,
should resolve all of the problems mentioned above.
- [Emacs-diffs] master a59839d: file-truename now uses realpath for local files,
Eli Zaretskii <=