py3: replace os.sep with pycompat.ossep (part 1 of 4)
os.sep returns unicodes on Python 3. We have pycompat.ossep which returns
bytes. This patch is a part of 4 patch series which will replace all the
occurrences of os.sep to pycompat.ossep
--- a/mercurial/commands.py Sat Dec 17 19:47:17 2016 +0530
+++ b/mercurial/commands.py Sat Dec 17 19:56:30 2016 +0530
@@ -2356,7 +2356,7 @@
def complete(path, acceptable):
dirstate = repo.dirstate
spec = os.path.normpath(os.path.join(pycompat.getcwd(), path))
- rootdir = repo.root + os.sep
+ rootdir = repo.root + pycompat.ossep
if spec != repo.root and not spec.startswith(rootdir):
return [], []
if os.path.isdir(spec):
@@ -2364,7 +2364,7 @@
spec = spec[len(rootdir):]
fixpaths = pycompat.ossep != '/'
if fixpaths:
- spec = spec.replace(os.sep, '/')
+ spec = spec.replace(pycompat.ossep, '/')
speclen = len(spec)
fullpaths = opts['full']
files, dirs = set(), set()
@@ -2372,11 +2372,11 @@
for f, st in dirstate.iteritems():
if f.startswith(spec) and st[0] in acceptable:
if fixpaths:
- f = f.replace('/', os.sep)
+ f = f.replace('/', pycompat.ossep)
if fullpaths:
addfile(f)
continue
- s = f.find(os.sep, speclen)
+ s = f.find(pycompat.ossep, speclen)
if s >= 0:
adddir(f[:s])
else:
--- a/mercurial/util.py Sat Dec 17 19:47:17 2016 +0530
+++ b/mercurial/util.py Sat Dec 17 19:56:30 2016 +0530
@@ -916,7 +916,7 @@
a.pop()
b.pop()
b.reverse()
- return os.sep.join((['..'] * len(a)) + b) or '.'
+ return pycompat.ossep.join((['..'] * len(a)) + b) or '.'
def mainfrozen():
"""return True if we are a frozen executable.
@@ -1303,7 +1303,7 @@
def _makefspathcacheentry(dir):
return dict((normcase(n), n) for n in os.listdir(dir))
- seps = os.sep
+ seps = pycompat.ossep
if os.altsep:
seps = seps + os.altsep
# Protect backslashes. This gets silly very quickly.
@@ -1370,7 +1370,8 @@
def endswithsep(path):
'''Check path ends with os.sep or os.altsep.'''
- return path.endswith(os.sep) or os.altsep and path.endswith(os.altsep)
+ return (path.endswith(pycompat.ossep)
+ or os.altsep and path.endswith(os.altsep))
def splitpath(path):
'''Split path by os.sep.
@@ -1378,7 +1379,7 @@
an alternative of simple "xxx.split(os.sep)".
It is recommended to use os.path.normpath() before using this
function if need.'''
- return path.split(os.sep)
+ return path.split(pycompat.ossep)
def gui():
'''Are we running in a GUI?'''