~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/errors.py

  • Committer: Vincent Ladeuil
  • Date: 2010-02-09 17:27:46 UTC
  • mto: (5029.1.1 integration)
  • mto: This revision was merged to the branch mainline in revision 5030.
  • Revision ID: v.ladeuil+lp@free.fr-20100209172746-6f4mvlnr2mac807j
Move NoSmartTransportServer to bzrlib.tests.test_server

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
# Copyright (C) 2005-2010 Canonical Ltd
 
1
# Copyright (C) 2005, 2006, 2007, 2008 Canonical Ltd
2
2
#
3
3
# This program is free software; you can redistribute it and/or modify
4
4
# it under the terms of the GNU General Public License as published by
680
680
 
681
681
    _fmt = 'Path "%(path)s" is not a child of path "%(base)s"%(extra)s'
682
682
 
683
 
    internal_error = False
 
683
    internal_error = True
684
684
 
685
685
    def __init__(self, path, base, extra=None):
686
686
        BzrError.__init__(self)
782
782
 
783
783
    _fmt = 'File "%(path)s" is not in branch %(branch_base)s.'
784
784
 
785
 
    # use PathNotChild instead
786
 
    @symbol_versioning.deprecated_method(symbol_versioning.deprecated_in((2, 3, 0)))
787
785
    def __init__(self, branch, path):
788
786
        BzrError.__init__(self)
789
787
        self.branch = branch
949
947
    # original exception is available as e.original_error
950
948
    #
951
949
    # New code should prefer to raise specific subclasses
952
 
    def __init__(self, msg):
953
 
        self.msg = msg
 
950
    def __init__(self, message):
 
951
        # Python 2.5 uses a slot for StandardError.message,
 
952
        # so use a different variable name.  We now work around this in
 
953
        # BzrError.__str__, but this member name is kept for compatability.
 
954
        self.msg = message
954
955
 
955
956
 
956
957
class LockActive(LockError):
1040
1041
class LockContention(LockError):
1041
1042
 
1042
1043
    _fmt = 'Could not acquire lock "%(lock)s": %(msg)s'
 
1044
    # TODO: show full url for lock, combining the transport and relative
 
1045
    # bits?
1043
1046
 
1044
1047
    internal_error = False
1045
1048
 
1072
1075
        self.target = target
1073
1076
 
1074
1077
 
1075
 
class LockCorrupt(LockError):
1076
 
 
1077
 
    _fmt = ("Lock is apparently held, but corrupted: %(corruption_info)s\n"
1078
 
            "Use 'bzr break-lock' to clear it")
1079
 
 
1080
 
    internal_error = False
1081
 
 
1082
 
    def __init__(self, corruption_info, file_data=None):
1083
 
        self.corruption_info = corruption_info
1084
 
        self.file_data = file_data
1085
 
 
1086
 
 
1087
1078
class LockNotHeld(LockError):
1088
1079
 
1089
1080
    _fmt = "Lock not held: %(lock)s"
1188
1179
 
1189
1180
class InvalidRevisionSpec(BzrError):
1190
1181
 
1191
 
    _fmt = ("Requested revision: '%(spec)s' does not exist in branch:"
1192
 
            " %(branch_url)s%(extra)s")
 
1182
    _fmt = ("Requested revision: %(spec)r does not exist in branch:"
 
1183
            " %(branch)s%(extra)s")
1193
1184
 
1194
1185
    def __init__(self, spec, branch, extra=None):
1195
1186
        BzrError.__init__(self, branch=branch, spec=spec)
1196
 
        self.branch_url = getattr(branch, 'user_url', str(branch))
1197
1187
        if extra:
1198
1188
            self.extra = '\n' + str(extra)
1199
1189
        else:
1307
1297
class BoundBranchOutOfDate(BzrError):
1308
1298
 
1309
1299
    _fmt = ("Bound branch %(branch)s is out of date with master branch"
1310
 
            " %(master)s.%(extra_help)s")
 
1300
            " %(master)s.")
1311
1301
 
1312
1302
    def __init__(self, branch, master):
1313
1303
        BzrError.__init__(self)
1314
1304
        self.branch = branch
1315
1305
        self.master = master
1316
 
        self.extra_help = ''
1317
1306
 
1318
1307
 
1319
1308
class CommitToDoubleBoundBranch(BzrError):
1390
1379
 
1391
1380
class WeaveParentMismatch(WeaveError):
1392
1381
 
1393
 
    _fmt = "Parents are mismatched between two revisions. %(msg)s"
 
1382
    _fmt = "Parents are mismatched between two revisions. %(message)s"
1394
1383
 
1395
1384
 
1396
1385
class WeaveInvalidChecksum(WeaveError):
1397
1386
 
1398
 
    _fmt = "Text did not match its checksum: %(msg)s"
 
1387
    _fmt = "Text did not match it's checksum: %(message)s"
1399
1388
 
1400
1389
 
1401
1390
class WeaveTextDiffers(WeaveError):
1449
1438
 
1450
1439
class VersionedFileInvalidChecksum(VersionedFileError):
1451
1440
 
1452
 
    _fmt = "Text did not match its checksum: %(msg)s"
 
1441
    _fmt = "Text did not match its checksum: %(message)s"
1453
1442
 
1454
1443
 
1455
1444
class KnitError(InternalBzrError):
1935
1924
    _fmt = "Moving the root directory is not supported at this time"
1936
1925
 
1937
1926
 
1938
 
class TransformRenameFailed(BzrError):
1939
 
 
1940
 
    _fmt = "Failed to rename %(from_path)s to %(to_path)s: %(why)s"
1941
 
 
1942
 
    def __init__(self, from_path, to_path, why, errno):
1943
 
        self.from_path = from_path
1944
 
        self.to_path = to_path
1945
 
        self.why = why
1946
 
        self.errno = errno
1947
 
 
1948
 
 
1949
1927
class BzrMoveFailedError(BzrError):
1950
1928
 
1951
1929
    _fmt = "Could not move %(from_path)s%(operator)s %(to_path)s%(extra)s"
1996
1974
        "Use --keep to not delete them, or --force to delete them regardless.")
1997
1975
 
1998
1976
    def __init__(self, tree_delta):
1999
 
        symbol_versioning.warn(symbol_versioning.deprecated_in((2, 3, 0)) %
2000
 
            "BzrRemoveChangedFilesError", DeprecationWarning, stacklevel=2)
2001
1977
        BzrError.__init__(self)
2002
1978
        self.changes_as_text = tree_delta.get_changes_as_text()
2003
1979
        #self.paths_as_string = '\n'.join(changed_files)
2199
2175
 
2200
2176
    def __init__(self, repo):
2201
2177
        BzrError.__init__(self)
2202
 
        self.repo_path = repo.user_url
 
2178
        self.repo_path = repo.bzrdir.root_transport.base
2203
2179
 
2204
2180
 
2205
2181
class InconsistentDelta(BzrError):
2777
2753
 
2778
2754
    def __init__(self, bzrdir):
2779
2755
        import bzrlib.urlutils as urlutils
2780
 
        display_url = urlutils.unescape_for_display(bzrdir.user_url,
 
2756
        display_url = urlutils.unescape_for_display(bzrdir.root_transport.base,
2781
2757
                                                    'ascii')
2782
2758
        BzrError.__init__(self, bzrdir=bzrdir, display_url=display_url)
2783
2759
 
2857
2833
        else:
2858
2834
            more = ' ' + more
2859
2835
        import bzrlib.urlutils as urlutils
2860
 
        user_url = getattr(tree, "user_url", None)
2861
 
        if user_url is None:
2862
 
            display_url = str(tree)
2863
 
        else:
2864
 
            display_url = urlutils.unescape_for_display(user_url, 'ascii')
 
2836
        display_url = urlutils.unescape_for_display(
 
2837
            tree.bzrdir.root_transport.base, 'ascii')
2865
2838
        BzrError.__init__(self, tree=tree, display_url=display_url, more=more)
2866
2839
 
2867
2840
 
2868
 
class ShelvedChanges(UncommittedChanges):
2869
 
 
2870
 
    _fmt = ('Working tree "%(display_url)s" has shelved changes'
2871
 
            ' (See bzr shelve --list).%(more)s')
2872
 
 
2873
 
 
2874
2841
class MissingTemplateVariable(BzrError):
2875
2842
 
2876
2843
    _fmt = 'Variable {%(name)s} is not available.'
3157
3124
 
3158
3125
    def __init__(self, path):
3159
3126
        self.path = path
3160
 
 
3161
 
 
3162
 
class NoColocatedBranchSupport(BzrError):
3163
 
 
3164
 
    _fmt = ("%(bzrdir)r does not support co-located branches.")
3165
 
 
3166
 
    def __init__(self, bzrdir):
3167
 
        self.bzrdir = bzrdir
3168
 
 
3169
 
 
3170
 
class NoWhoami(BzrError):
3171
 
 
3172
 
    _fmt = ('Unable to determine your name.\n'
3173
 
        "Please, set your name with the 'whoami' command.\n"
3174
 
        'E.g. bzr whoami "Your Name <name@example.com>"')
3175
 
 
3176
 
 
3177
 
class InvalidPattern(BzrError):
3178
 
 
3179
 
    _fmt = ('Invalid pattern(s) found. %(msg)s')
3180
 
 
3181
 
    def __init__(self, msg):
3182
 
        self.msg = msg
3183
 
 
3184
 
 
3185
 
class RecursiveBind(BzrError):
3186
 
 
3187
 
    _fmt = ('Branch "%(branch_url)s" appears to be bound to itself. '
3188
 
        'Please use `bzr unbind` to fix.')
3189
 
 
3190
 
    def __init__(self, branch_url):
3191
 
        self.branch_url = branch_url
3192