~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/errors.py

Merge bzr.dev to resolve news conflict

Show diffs side-by-side

added added

removed removed

Lines of Context:
723
723
                    self.bzrdir.open_repository()
724
724
                except NoRepositoryPresent:
725
725
                    self.detail = ''
 
726
                except Exception:
 
727
                    # Just ignore unexpected errors.  Raising arbitrary errors
 
728
                    # during str(err) can provoke strange bugs.  Concretely
 
729
                    # Launchpad's codehosting managed to raise NotBranchError
 
730
                    # here, and then get stuck in an infinite loop/recursion
 
731
                    # trying to str() that error.  All this error really cares
 
732
                    # about that there's no working repository there, and if
 
733
                    # open_repository() fails, there probably isn't.
 
734
                    self.detail = ''
726
735
                else:
727
736
                    self.detail = ': location is a repository'
728
737
            else:
1072
1081
        self.target = target
1073
1082
 
1074
1083
 
 
1084
class LockCorrupt(LockError):
 
1085
 
 
1086
    _fmt = ("Lock is apparently held, but corrupted: %(corruption_info)s\n"
 
1087
            "Use 'bzr break-lock' to clear it")
 
1088
 
 
1089
    internal_error = False
 
1090
 
 
1091
    def __init__(self, corruption_info, file_data=None):
 
1092
        self.corruption_info = corruption_info
 
1093
        self.file_data = file_data
 
1094
 
 
1095
 
1075
1096
class LockNotHeld(LockError):
1076
1097
 
1077
1098
    _fmt = "Lock not held: %(lock)s"
1383
1404
 
1384
1405
class WeaveInvalidChecksum(WeaveError):
1385
1406
 
1386
 
    _fmt = "Text did not match it's checksum: %(msg)s"
 
1407
    _fmt = "Text did not match its checksum: %(msg)s"
1387
1408
 
1388
1409
 
1389
1410
class WeaveTextDiffers(WeaveError):
2933
2954
        self.user_encoding = osutils.get_user_encoding()
2934
2955
 
2935
2956
 
 
2957
class NoSuchConfig(BzrError):
 
2958
 
 
2959
    _fmt = ('The "%(config_id)s" configuration does not exist.')
 
2960
 
 
2961
    def __init__(self, config_id):
 
2962
        BzrError.__init__(self, config_id=config_id)
 
2963
 
 
2964
 
 
2965
class NoSuchConfigOption(BzrError):
 
2966
 
 
2967
    _fmt = ('The "%(option_name)s" configuration option does not exist.')
 
2968
 
 
2969
    def __init__(self, option_name):
 
2970
        BzrError.__init__(self, option_name=option_name)
 
2971
 
 
2972
 
2936
2973
class NoSuchAlias(BzrError):
2937
2974
 
2938
2975
    _fmt = ('The alias "%(alias_name)s" does not exist.')