[PATCH 00 of 11] a lot of patches concerning casefolding filesystems

Simon Heimberg simohe at besonet.ch
Thu Aug 13 01:08:44 CDT 2009


Several fixes are applied. The code is at
http://bitbucket.org/simohe/hg-folding or at
http://bitbucket.org/simohe/hg-folding-mq

Shall I send it to the list again?

Changes since the last version:
fix util.temprename
util.fspath is quicker on '', '.', 
files deleted since os.lstat do not raise an error
quicker version for foldedpath for mac os x
realpath returns path relative to root (on mac os x and win32)

Am Dienstag, den 11.08.2009, 17:55 +0000 schrieb Simon Heimberg:
> For those who prefer pulling to importing (like me):
> 
> http://bitbucket.org/simohe/hg-folding/
> 
> It is the same as in the list. Pending:
> correction for util.temprename (in patch #5)
> quicker version for foldedpath for mac os X (in patch #6)
> 
> Dan pointed out that mac os X needs folding on case sensitive
> filesystems too (example: Ä to Ä ).
> Does Windows has case sensitive filesystems too? Maybe it is the same
> there (example: A. to A)
> IMHO it is simpler to fix this in a new series.
> 
> Greetings,
> Simon
> 
> Am Freitag, den 07.08.2009, 21:42 +0200 schrieb Simon Heimberg:
> > test-casefolding (extended) finally works on linux on hfs.
> > On caseinsensitive filesystems,
> > - it is not possible anymore to add A and a (with hg add or hg addremove or ...)
> > - it is possible to rename a to A
> > - it is even not possible to add 'Ä ' and 'Ä' on hfs or 'a' and 'a.' on ntfs or fat
> > 
> > test-issue660 fails on linux with hfs, but it did this bofore
> > it passes on linux with vfat
> > test-casefolding fails with vfat because renaming with changing the case is not 
> > possible (even not mv a zf1x; mv zf1x A)
> > the other test pass
> > 
> > testing on os x and windows is not done
> > 
> > -----------------------------------------------------------------------------
> > 
> > It is important to distinguish two path functions (name as in mercurial.util):
> > - realpath, returns path as it is on the filesystem
> > - foldedpath, returns the same path for all possible folded paths
> >     (example for ntfs: return 'a' for 'a', 'A', 'a.', 'A.', ...)
> > And it is important to use each of them in the right place (and only use them 
> > on folding filesystems).
> > 
> > There are simple versions of this functions in util. The improved versions for 
> > some platforms are defined in posix and windows.
> > 
[snip]



More information about the Mercurial-devel mailing list