diff --git a/mercurial/thirdparty/concurrent/futures/__init__.py b/mercurial/thirdparty/concurrent/futures/__init__.py --- a/mercurial/thirdparty/concurrent/futures/__init__.py +++ b/mercurial/thirdparty/concurrent/futures/__init__.py @@ -3,21 +3,25 @@ """Execute computations asynchronously using threads or processes.""" +from __future__ import absolute_import + __author__ = 'Brian Quinlan (brian@sweetapp.com)' -from concurrent.futures._base import (FIRST_COMPLETED, - FIRST_EXCEPTION, - ALL_COMPLETED, - CancelledError, - TimeoutError, - Future, - Executor, - wait, - as_completed) -from concurrent.futures.thread import ThreadPoolExecutor +from ._base import ( + FIRST_COMPLETED, + FIRST_EXCEPTION, + ALL_COMPLETED, + CancelledError, + TimeoutError, + Future, + Executor, + wait, + as_completed, +) +from .thread import ThreadPoolExecutor try: - from concurrent.futures.process import ProcessPoolExecutor + from .process import ProcessPoolExecutor except ImportError: # some platforms don't have multiprocessing pass diff --git a/mercurial/thirdparty/concurrent/futures/_base.py b/mercurial/thirdparty/concurrent/futures/_base.py --- a/mercurial/thirdparty/concurrent/futures/_base.py +++ b/mercurial/thirdparty/concurrent/futures/_base.py @@ -1,6 +1,8 @@ # Copyright 2009 Brian Quinlan. All Rights Reserved. # Licensed to PSF under a Contributor Agreement. +from __future__ import absolute_import + import collections import logging import threading diff --git a/mercurial/thirdparty/concurrent/futures/process.py b/mercurial/thirdparty/concurrent/futures/process.py --- a/mercurial/thirdparty/concurrent/futures/process.py +++ b/mercurial/thirdparty/concurrent/futures/process.py @@ -43,8 +43,10 @@ _ResultItems in "Request Q" """ +from __future__ import absolute_import + import atexit -from concurrent.futures import _base +from . import _base import Queue as queue import multiprocessing import threading diff --git a/mercurial/thirdparty/concurrent/futures/thread.py b/mercurial/thirdparty/concurrent/futures/thread.py --- a/mercurial/thirdparty/concurrent/futures/thread.py +++ b/mercurial/thirdparty/concurrent/futures/thread.py @@ -3,8 +3,10 @@ """Implements ThreadPoolExecutor.""" +from __future__ import absolute_import + import atexit -from concurrent.futures import _base +from . import _base import itertools import Queue as queue import threading