[PATCH 1 of 7] pycompat: add empty and queue to handle py3 divergence

Augie Fackler raf at durin42.com
Wed Apr 6 21:18:44 EDT 2016


On Wed, Apr 06, 2016 at 04:57:38PM -0500, timeless wrote:
> # HG changeset patch
> # User timeless <timeless at mozdev.org>
> # Date 1459972849 0
> #      Wed Apr 06 20:00:49 2016 +0000
> # Node ID 10f4f7b32691075ed2f3d9aa9301d4e54006ac55
> # Parent  ea86cdcd9b50bf38c6b9dd7bbaa04b9c8cc0aefb
> pycompat: add empty and queue to handle py3 divergence
>
> While the pycompat module will actually handle divergence, please
> access these properties from the util module:
> util.queue = Queue.Queue / queue.Queue
> util.empty = Queue.Empty / queue.Empty
>
> diff --git a/mercurial/pycompat.py b/mercurial/pycompat.py
> new file mode 100644
> --- /dev/null
> +++ b/mercurial/pycompat.py
> @@ -0,0 +1,18 @@
> +# util.py - Mercurial utility functions and platform specific implementations

queued with this comment fixed up

> +#
> +# 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 @@
>      i18n,
>      osutil,
>      parsers,
> +    pycompat,
>  )
>
> +for attr in (
> +    'empty',
> +    'queue',
> +):
> +    globals()[attr] = getattr(pycompat, attr)
> +
>  if os.name == 'nt':
>      from . import windows as platform
>  else:
> _______________________________________________
> Mercurial-devel mailing list
> Mercurial-devel at mercurial-scm.org
> https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel


More information about the Mercurial-devel mailing list