diff mercurial/posix.py @ 17203:0cb55b5c19a3

util, posix: eliminate encodinglower and encodingupper 2ebe3d0ce91d claims this was needed "to avoid cyclic dependency", but there is no cyclic dependency. windows.py already imports encoding, posix.py can import it too, so we can simply use encoding.upper in windows.py and in posix.py. (this is a partial backout of 2ebe3d0ce91d)
author Adrian Buehlmann <adrian@cadifra.com>
date Wed, 18 Jul 2012 14:41:58 +0200
parents 7002bb17cc5e
children fc24c10424d2
line wrap: on
line diff
--- a/mercurial/posix.py
+++ b/mercurial/posix.py
@@ -6,6 +6,7 @@
 # GNU General Public License version 2 or any later version.
 
 from i18n import _
+import encoding
 import os, sys, errno, stat, getpass, pwd, grp, tempfile, unicodedata
 
 posixfile = open
@@ -164,9 +165,6 @@
     st2 = os.lstat(fpath2)
     return st1.st_dev == st2.st_dev
 
-encodinglower = None
-encodingupper = None
-
 # os.path.normcase is a no-op, which doesn't help us on non-native filesystems
 def normcase(path):
     return path.lower()
@@ -255,7 +253,7 @@
         pathlen = len(path)
         if (pathlen == 0) or (path[0] != os.sep):
             # treat as relative
-            return encodingupper(path)
+            return encoding.upper(path)
 
         # to preserve case of mountpoint part
         for mp in cygwinmountpoints:
@@ -266,9 +264,9 @@
             if mplen == pathlen: # mount point itself
                 return mp
             if path[mplen] == os.sep:
-                return mp + encodingupper(path[mplen:])
+                return mp + encoding.upper(path[mplen:])
 
-        return encodingupper(path)
+        return encoding.upper(path)
 
     # Cygwin translates native ACLs to POSIX permissions,
     # but these translations are not supported by native