Bazaar does not support umlauts in file names on Mac OS X

John Arbash Meinel john at
Sat Nov 28 20:18:36 GMT 2009

Hash: SHA1

John Szakmeister wrote:
> On Sat, Nov 28, 2009 at 6:19 AM, John Szakmeister <john at> wrote:
> [snip]
>>> This is known problem with native Mac filesystem, because it tends to do denormalization of unicode
>>> filenames. John Meinel can provide more details, but as I remember there is no simple way to solve
>>> this problem because when you wrote unicode filename from python and then read back directory
>>> listing you'll get different form of unicode (literally: different bytes).
>> I remember Subversion ran into this issue years ago.  I seem to recall
>> them standardizing on NFC for paths, and using some functions
>> available on Mac OS X to convert NFD into NFC form.  I'll see if I can
>> track down some details there.
> This may or may not be helpful, but this is what Erik ended up
> proposing for SVN:
> Admittedly, constantly recoding paths is probably not the best idea
> for performance.  OTOH, having things Just Work is a good win.
> -John

So in the beginning... we did translate to NFC internally from the Mac
filesystem. With the idea that most other platforms should only create
NFC, and thus it was obvious what you would end up with.

Except it turned out that Japanese windows creates wide () characters,
which turn out not to be NFC. (So the expectation that internally we
would always use NFC means that you need to translate on more than just

Also, I just got tired of trying to keep it up to date and keep it
performing well. So at *this* point I'm thinking to ditch all attempts
at normalization and let people get bit when checking out on Mac and
having the filesystem rename everything for them.

If someone wants to go through the code and pull out the last few
checks, so that we don't abort when seeing something that looks invalid,
I'll be happy to approve the patch.


Version: GnuPG v1.4.9 (Cygwin)
Comment: Using GnuPG with Mozilla -


More information about the bazaar mailing list