diff --git a/mercurial/pycompat.py b/mercurial/pycompat.py new file mode 100644 --- /dev/null +++ b/mercurial/pycompat.py @@ -0,0 +1,18 @@ +# pycompat.py - portability shim for python 3 +# +# This software may be used and distributed according to the terms of the +# GNU General Public License version 2 or any later version. + +"""Mercurial portability shim for python 3. + +This contains aliases to hide python version-specific details from the core. +""" + +from __future__ import absolute_import + +try: + import Queue as _queue +except ImportError: + import queue as _queue +empty = _queue.Empty +queue = _queue.Queue diff --git a/mercurial/util.py b/mercurial/util.py --- a/mercurial/util.py +++ b/mercurial/util.py @@ -43,8 +43,15 @@ from . import ( i18n, osutil, parsers, + pycompat, ) +for attr in ( + 'empty', + 'queue', +): + globals()[attr] = getattr(pycompat, attr) + if os.name == 'nt': from . import windows as platform else: