[PATCH 4 of 7] util: use absolute_import

Gregory Szorc gregory.szorc at gmail.com
Sun Dec 13 01:34:14 CST 2015


# HG changeset patch
# User Gregory Szorc <gregory.szorc at gmail.com>
# Date 1449990848 28800
#      Sat Dec 12 23:14:08 2015 -0800
# Node ID 61c3572b5a00aa40f542206cd3e12175b3bbc71d
# Parent  c89f43464425967a0968564bacb0332f82810238
util: use absolute_import

diff --git a/mercurial/util.py b/mercurial/util.py
--- a/mercurial/util.py
+++ b/mercurial/util.py
@@ -12,28 +12,49 @@
 This contains helper routines that are independent of the SCM core and
 hide platform-specific details from the core.
 """
 
-import i18n
-_ = i18n._
-import error, osutil, encoding, parsers
-import errno, shutil, sys, tempfile, traceback
+from __future__ import absolute_import
+
+import bz2
+import calendar
+import collections
+import datetime
+import errno
+import gc
+import hashlib
+import imp
+import os
 import re as remod
-import os, time, datetime, calendar, textwrap, signal, collections
-import imp, socket, urllib
-import gc
-import bz2
+import shutil
+import signal
+import socket
+import subprocess
+import sys
+import tempfile
+import textwrap
+import time
+import traceback
+import urllib
 import zlib
-import hashlib
+
+from . import (
+    encoding,
+    error,
+    i18n,
+    osutil,
+    parsers,
+)
 
 if os.name == 'nt':
-    import windows as platform
+    from . import windows as platform
 else:
-    import posix as platform
+    from . import posix as platform
 
 md5 = hashlib.md5
 sha1 = hashlib.sha1
 sha512 = hashlib.sha512
+_ = i18n._
 
 cachestat = platform.cachestat
 checkexec = platform.checkexec
 checklink = platform.checklink
@@ -199,9 +220,8 @@ except NameError:
     else:
         def buffer(sliceable, offset=0):
             return memoryview(sliceable)[offset:]
 
-import subprocess
 closefds = os.name == 'posix'
 
 _chunksize = 4096
 
@@ -325,9 +345,9 @@ def popen4(cmd, env=None, newlines=False
 
 def version():
     """Return version information if available."""
     try:
-        import __version__
+        from . import __version__
         return __version__.version
     except ImportError:
         return 'unknown'
 
diff --git a/tests/test-check-py3-compat.t b/tests/test-check-py3-compat.t
--- a/tests/test-check-py3-compat.t
+++ b/tests/test-check-py3-compat.t
@@ -128,9 +128,8 @@
   mercurial/scmutil.py not using absolute_import
   mercurial/scmwindows.py not using absolute_import
   mercurial/similar.py not using absolute_import
   mercurial/store.py not using absolute_import
-  mercurial/util.py not using absolute_import
   mercurial/windows.py not using absolute_import
   setup.py not using absolute_import
   tests/filterpyflakes.py requires print_function
   tests/generate-working-copy-states.py requires print_function


More information about the Mercurial-devel mailing list