changeset 30634:ad15646dc61c

py3: replace os.environ with encoding.environ (part 1 of 5) os.environ is a dictionary which has string elements on Python 3. We have encoding.environ which take care of all these things. This is the first patch of 5 patch series which tend to replace the occurences of os.environ with encoding.environ as using os.environ will result in unusual behaviour.
author Pulkit Goyal <7895pulkit@gmail.com>
date Sun, 18 Dec 2016 01:34:41 +0530
parents fd244e047ec0
children a150173da1c1
files mercurial/bookmarks.py mercurial/dirstate.py mercurial/localrepo.py mercurial/phases.py mercurial/posix.py
diffstat 5 files changed, 8 insertions(+), 9 deletions(-) [+]
line wrap: on
line diff
--- a/mercurial/bookmarks.py	Tue Dec 20 20:28:41 2016 -0800
+++ b/mercurial/bookmarks.py	Sun Dec 18 01:34:41 2016 +0530
@@ -8,7 +8,6 @@
 from __future__ import absolute_import
 
 import errno
-import os
 
 from .i18n import _
 from .node import (
@@ -31,7 +30,7 @@
     may need to tweak this behavior further.
     """
     bkfile = None
-    if 'HG_PENDING' in os.environ:
+    if 'HG_PENDING' in encoding.environ:
         try:
             bkfile = repo.vfs('bookmarks.pending')
         except IOError as inst:
--- a/mercurial/dirstate.py	Tue Dec 20 20:28:41 2016 -0800
+++ b/mercurial/dirstate.py	Sun Dec 18 01:34:41 2016 +0530
@@ -67,7 +67,7 @@
 
     This returns '(fp, is_pending_opened)' tuple.
     '''
-    if root == os.environ.get('HG_PENDING'):
+    if root == encoding.environ.get('HG_PENDING'):
         try:
             return (vfs('%s.pending' % filename), True)
         except IOError as inst:
--- a/mercurial/localrepo.py	Tue Dec 20 20:28:41 2016 -0800
+++ b/mercurial/localrepo.py	Sun Dec 18 01:34:41 2016 +0530
@@ -499,8 +499,8 @@
     @storecache('00changelog.i')
     def changelog(self):
         c = changelog.changelog(self.svfs)
-        if 'HG_PENDING' in os.environ:
-            p = os.environ['HG_PENDING']
+        if 'HG_PENDING' in encoding.environ:
+            p = encoding.environ['HG_PENDING']
             if p.startswith(self.root):
                 c.readpending('00changelog.i.a')
         return c
@@ -1299,7 +1299,7 @@
         # the contents of parentenvvar are used by the underlying lock to
         # determine whether it can be inherited
         if parentenvvar is not None:
-            parentlock = os.environ.get(parentenvvar)
+            parentlock = encoding.environ.get(parentenvvar)
         try:
             l = lockmod.lock(vfs, lockname, 0, releasefn=releasefn,
                              acquirefn=acquirefn, desc=desc,
--- a/mercurial/phases.py	Tue Dec 20 20:28:41 2016 -0800
+++ b/mercurial/phases.py	Sun Dec 18 01:34:41 2016 +0530
@@ -103,7 +103,6 @@
 from __future__ import absolute_import
 
 import errno
-import os
 
 from .i18n import _
 from .node import (
@@ -114,6 +113,7 @@
     short,
 )
 from . import (
+    encoding,
     error,
 )
 
@@ -137,7 +137,7 @@
     roots = [set() for i in allphases]
     try:
         f = None
-        if 'HG_PENDING' in os.environ:
+        if 'HG_PENDING' in encoding.environ:
             try:
                 f = repo.svfs('phaseroots.pending')
             except IOError as inst:
--- a/mercurial/posix.py	Tue Dec 20 20:28:41 2016 -0800
+++ b/mercurial/posix.py	Sun Dec 18 01:34:41 2016 +0530
@@ -462,7 +462,7 @@
     if sys.platform == 'plan9':
         return findexisting(os.path.join('/bin', command))
 
-    for path in os.environ.get('PATH', '').split(pycompat.ospathsep):
+    for path in encoding.environ.get('PATH', '').split(pycompat.ospathsep):
         executable = findexisting(os.path.join(path, command))
         if executable is not None:
             return executable