Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/websdk/mercurial/error.py
diff options
context:
space:
mode:
Diffstat (limited to 'websdk/mercurial/error.py')
-rw-r--r--[l---------]websdk/mercurial/error.py91
1 files changed, 90 insertions, 1 deletions
diff --git a/websdk/mercurial/error.py b/websdk/mercurial/error.py
index 06ca817..462b971 120000..100644
--- a/websdk/mercurial/error.py
+++ b/websdk/mercurial/error.py
@@ -1 +1,90 @@
-/usr/share/pyshared/mercurial/error.py \ No newline at end of file
+# error.py - Mercurial exceptions
+#
+# Copyright 2005-2008 Matt Mackall <mpm@selenic.com>
+#
+# This software may be used and distributed according to the terms of the
+# GNU General Public License version 2 or any later version.
+
+"""Mercurial exceptions.
+
+This allows us to catch exceptions at higher levels without forcing
+imports.
+"""
+
+# Do not import anything here, please
+
+class RevlogError(Exception):
+ pass
+
+class LookupError(RevlogError, KeyError):
+ def __init__(self, name, index, message):
+ self.name = name
+ if isinstance(name, str) and len(name) == 20:
+ from node import short
+ name = short(name)
+ RevlogError.__init__(self, '%s@%s: %s' % (index, name, message))
+
+ def __str__(self):
+ return RevlogError.__str__(self)
+
+class CommandError(Exception):
+ """Exception raised on errors in parsing the command line."""
+
+class Abort(Exception):
+ """Raised if a command needs to print an error and exit."""
+ def __init__(self, *args, **kw):
+ Exception.__init__(self, *args)
+ self.hint = kw.get('hint')
+
+class ConfigError(Abort):
+ 'Exception raised when parsing config files'
+
+class OutOfBandError(Exception):
+ 'Exception raised when a remote repo reports failure'
+
+class ParseError(Exception):
+ 'Exception raised when parsing config files (msg[, pos])'
+
+class RepoError(Exception):
+ def __init__(self, *args, **kw):
+ Exception.__init__(self, *args)
+ self.hint = kw.get('hint')
+
+class RepoLookupError(RepoError):
+ pass
+
+class CapabilityError(RepoError):
+ pass
+
+class RequirementError(RepoError):
+ """Exception raised if .hg/requires has an unknown entry."""
+ pass
+
+class LockError(IOError):
+ def __init__(self, errno, strerror, filename, desc):
+ IOError.__init__(self, errno, strerror, filename)
+ self.desc = desc
+
+class LockHeld(LockError):
+ def __init__(self, errno, filename, desc, locker):
+ LockError.__init__(self, errno, 'Lock held', filename, desc)
+ self.locker = locker
+
+class LockUnavailable(LockError):
+ pass
+
+class ResponseError(Exception):
+ """Raised to print an error with part of output and exit."""
+
+class UnknownCommand(Exception):
+ """Exception raised if command is not in the command table."""
+
+class AmbiguousCommand(Exception):
+ """Exception raised if command shortcut matches more than one command."""
+
+# derived from KeyboardInterrupt to simplify some breakout code
+class SignalInterrupt(KeyboardInterrupt):
+ """Exception raised on SIGTERM and SIGHUP."""
+
+class SignatureError(Exception):
+ pass