##// END OF EJS Templates
chgserver: delay importing commands and dispatch modules...
Yuya Nishihara -
r30512:cc374292 default
parent child Browse files
Show More
@@ -54,9 +54,7 b' from mercurial.i18n import _'
54
54
55 from mercurial import (
55 from mercurial import (
56 cmdutil,
56 cmdutil,
57 commands,
58 commandserver,
57 commandserver,
59 dispatch,
60 error,
58 error,
61 extensions,
59 extensions,
62 osutil,
60 osutil,
@@ -181,6 +179,8 b' class hashstate(object):'
181
179
182 # copied from hgext/pager.py:uisetup()
180 # copied from hgext/pager.py:uisetup()
183 def _setuppagercmd(ui, options, cmd):
181 def _setuppagercmd(ui, options, cmd):
182 from mercurial import commands # avoid cycle
183
184 if not ui.formatted():
184 if not ui.formatted():
185 return
185 return
186
186
@@ -260,6 +260,8 b' def _newchgui(srcui, csystem):'
260 return chgui(srcui)
260 return chgui(srcui)
261
261
262 def _loadnewui(srcui, args):
262 def _loadnewui(srcui, args):
263 from mercurial import dispatch # avoid cycle
264
263 newui = srcui.__class__()
265 newui = srcui.__class__()
264 for a in ['fin', 'fout', 'ferr', 'environ']:
266 for a in ['fin', 'fout', 'ferr', 'environ']:
265 setattr(newui, a, getattr(srcui, a))
267 setattr(newui, a, getattr(srcui, a))
@@ -439,6 +441,8 b' class chgcmdserver(commandserver.server)'
439 list, the client can continue with this server after completing all
441 list, the client can continue with this server after completing all
440 the instructions.
442 the instructions.
441 """
443 """
444 from mercurial import dispatch # avoid cycle
445
442 args = self._readlist()
446 args = self._readlist()
443 try:
447 try:
444 self.ui, lui = _loadnewui(self.ui, args)
448 self.ui, lui = _loadnewui(self.ui, args)
@@ -486,6 +490,8 b' class chgcmdserver(commandserver.server)'
486 If pager isn't enabled, this writes '\0' because channeledoutput
490 If pager isn't enabled, this writes '\0' because channeledoutput
487 does not allow to write empty data.
491 does not allow to write empty data.
488 """
492 """
493 from mercurial import dispatch # avoid cycle
494
489 args = self._readlist()
495 args = self._readlist()
490 try:
496 try:
491 cmd, _func, args, options, _cmdoptions = dispatch._parse(self.ui,
497 cmd, _func, args, options, _cmdoptions = dispatch._parse(self.ui,
General Comments 0
You need to be logged in to leave comments. Login now