Steve Borho avatar Steve Borho committed e0b6f2c

many exceptions have been moved to error.py

Comments (0)

Files changed (1)

 import re
 import shutil
 
-from mercurial import cmdutil, commands, hg, hgweb, node, util
+from mercurial import cmdutil, commands, error, hg, hgweb, node, util
 from mercurial import localrepo, sshrepo, sshserver, httprepo, statichttprepo
 from mercurial.i18n import gettext as _
-from mercurial.repo import RepoError
 
 # For backwards compatibility, we need the following function definition.
 # If we didn't want that, we'd have just written:
 try:
     findcmd.findcmd = cmdutil.findcmd
     findcmd.__doc__ = cmdutil.findcmd.__doc__
-    findcmd.UnknownCommand = cmdutil.UnknownCommand
 except AttributeError:
     findcmd.findcmd = commands.findcmd
     findcmd.__doc__ = commands.findcmd.__doc__
-    findcmd.UnknownCommand = commands.UnknownCommand
+for m in (error, cmdutil, commands):
+    if hasattr(m, "UnknownCommand"):
+        findcmd.UnknownCommand = m.UnknownCommand
+        break
+try:
+    from mercurial.error import RepoError
+except AttributeError:
+    from mercurial.repo import RepoError
 
 # For backwards compatibility, find the parseurl() function that splits
 # urls and revisions.  Mercurial 0.9.3 doesn't have this, so we need
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.