changeset 22781:70624fda193d

normcase: for darwin, use fast ASCII lower Constructing the foldmap is much faster on OS X now. For a large real-world repo, hg perfdirstatefoldmap: before: wall 0.805278 comb 0.800000 user 0.790000 sys 0.010000 (best of 13) after: wall 0.399708 comb 0.410000 user 0.390000 sys 0.020000 (best of 25) This is a nice boost to 'hg status', especially with the third-party hgwatchman extension enabled (which eliminates stat calls). For the above repo, 'hg status' goes from 1.17 seconds to 0.74.
author Siddharth Agarwal <sid0@fb.com>
date Fri, 03 Oct 2014 18:47:28 -0700
parents d8ff1f671aed
children a1eb21f5caea
files mercurial/posix.py
diffstat 1 files changed, 1 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/mercurial/posix.py	Fri Oct 03 19:58:26 2014 -0700
+++ b/mercurial/posix.py	Fri Oct 03 18:47:28 2014 -0700
@@ -217,8 +217,7 @@
         '''
 
         try:
-            path.decode('ascii') # throw exception for non-ASCII character
-            return path.lower()
+            return encoding.asciilower(path)  # exception for non-ASCII
         except UnicodeDecodeError:
             pass
         try: