revset: don't import discovery at module level

discovery.py imports a lot of the world. Pierre-Yves told me to move it
to a function-level import to avoid an import cycle in a future patch.
This commit is contained in:
Gregory Szorc 2015-04-14 12:54:16 -04:00
parent d4eb35d7ec
commit 7498d10d47
2 changed files with 5 additions and 3 deletions

View File

@ -6,7 +6,7 @@
# GNU General Public License version 2 or any later version.
import re
import parser, util, error, discovery, hbisect, phases
import parser, util, error, hbisect, phases
import node
import heapq
import match as matchmod
@ -1372,7 +1372,9 @@ def outgoing(repo, subset, x):
Changesets not found in the specified destination repository, or the
default push location.
"""
import hg # avoid start-up nasties
# Avoid cycles.
import discovery
import hg
# i18n: "outgoing" is a keyword
l = getargs(x, 0, 1, _("outgoing takes one or no arguments"))
# i18n: "outgoing" is a keyword

View File

@ -32,7 +32,7 @@ these may expose other cycles.
relative: error, merge, util
mercurial/revset.py mixed imports
stdlib: parser
relative: discovery, error, hbisect, phases, util
relative: error, hbisect, phases, util
mercurial/templater.py mixed imports
stdlib: parser
relative: config, error, templatefilters, templatekw, util