5557.1.7
by John Arbash Meinel
Merge in the bzr.dev 5582 |
1 |
# Copyright (C) 2005-2011 Canonical Ltd
|
1830.3.5
by John Arbash Meinel
make_entry refuses to create non-normalized entries. |
2 |
#
|
1
by mbp at sourcefrog
import from baz patch-364 |
3 |
# This program is free software; you can redistribute it and/or modify
|
4 |
# it under the terms of the GNU General Public License as published by
|
|
5 |
# the Free Software Foundation; either version 2 of the License, or
|
|
6 |
# (at your option) any later version.
|
|
1830.3.5
by John Arbash Meinel
make_entry refuses to create non-normalized entries. |
7 |
#
|
1
by mbp at sourcefrog
import from baz patch-364 |
8 |
# This program is distributed in the hope that it will be useful,
|
9 |
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
10 |
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
11 |
# GNU General Public License for more details.
|
|
1830.3.5
by John Arbash Meinel
make_entry refuses to create non-normalized entries. |
12 |
#
|
1
by mbp at sourcefrog
import from baz patch-364 |
13 |
# You should have received a copy of the GNU General Public License
|
14 |
# along with this program; if not, write to the Free Software
|
|
4183.7.1
by Sabin Iacob
update FSF mailing address |
15 |
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
1
by mbp at sourcefrog
import from baz patch-364 |
16 |
|
1185.16.61
by mbp at sourcefrog
- start introducing hct error classes |
17 |
"""Exceptions for bzr, and reporting of them.
|
18 |
"""
|
|
19 |
||
6379.6.7
by Jelmer Vernooij
Move importing from future until after doc string, otherwise the doc string will disappear. |
20 |
from __future__ import absolute_import |
21 |
||
1185.16.62
by mbp at sourcefrog
- convert NotBranchError to new exception base |
22 |
# TODO: is there any value in providing the .args field used by standard
|
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
23 |
# python exceptions? A list of values with no names seems less useful
|
1185.16.62
by mbp at sourcefrog
- convert NotBranchError to new exception base |
24 |
# to me.
|
25 |
||
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
26 |
# TODO: Perhaps convert the exception to a string at the moment it's
|
1185.16.63
by Martin Pool
- more error conversion |
27 |
# constructed to make sure it will succeed. But that says nothing about
|
28 |
# exceptions that are never raised.
|
|
29 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
30 |
# TODO: selftest assertRaises should probably also check that every error
|
31 |
# raised can be formatted as a string successfully, and without giving
|
|
32 |
# 'unprintable'.
|
|
1662.1.12
by Martin Pool
Translate unknown sftp errors to PathError, no NoSuchFile |
33 |
|
1185.16.61
by mbp at sourcefrog
- start introducing hct error classes |
34 |
|
2713.2.1
by Martin Pool
Return exitcode 4 if an internal error occurs |
35 |
# return codes from the bzr program
|
2830.2.9
by Martin Pool
Add EXIT_OK=0 |
36 |
EXIT_OK = 0 |
2713.2.1
by Martin Pool
Return exitcode 4 if an internal error occurs |
37 |
EXIT_ERROR = 3 |
38 |
EXIT_INTERNAL_ERROR = 4 |
|
39 |
||
40 |
||
1
by mbp at sourcefrog
import from baz patch-364 |
41 |
class BzrError(StandardError): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
42 |
"""
|
43 |
Base class for errors raised by bzrlib.
|
|
44 |
||
2535.1.1
by Adeodato Simó
Fix BzrError docstring: internal_error defaults to False, not to True. |
45 |
:cvar internal_error: if True this was probably caused by a bzr bug and
|
5891.1.2
by Andrew Bennetts
Fix a bunch of docstring formatting nits, making pydoctor a bit happier. |
46 |
should be displayed with a traceback; if False (or absent) this was
|
47 |
probably a user or environment error and they don't need the gory
|
|
48 |
details. (That can be overridden by -Derror on the command line.)
|
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
49 |
|
2067.3.2
by Martin Pool
Error cleanup review comments: |
50 |
:cvar _fmt: Format string to display the error; this is expanded
|
5891.1.2
by Andrew Bennetts
Fix a bunch of docstring formatting nits, making pydoctor a bit happier. |
51 |
by the instance's dict.
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
52 |
"""
|
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
53 |
|
2067.3.2
by Martin Pool
Error cleanup review comments: |
54 |
internal_error = False |
1685.2.1
by Brian M. Carlson
Add a workaround for usage of the args attribute in exceptions. |
55 |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
56 |
def __init__(self, msg=None, **kwds): |
57 |
"""Construct a new BzrError.
|
|
58 |
||
59 |
There are two alternative forms for constructing these objects.
|
|
60 |
Either a preformatted string may be passed, or a set of named
|
|
61 |
arguments can be given. The first is for generic "user" errors which
|
|
62 |
are not intended to be caught and so do not need a specific subclass.
|
|
63 |
The second case is for use with subclasses that provide a _fmt format
|
|
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
64 |
string to print the arguments.
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
65 |
|
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
66 |
Keyword arguments are taken as parameters to the error, which can
|
67 |
be inserted into the format string template. It's recommended
|
|
68 |
that subclasses override the __init__ method to require specific
|
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
69 |
parameters.
|
70 |
||
2067.3.2
by Martin Pool
Error cleanup review comments: |
71 |
:param msg: If given, this is the literal complete text for the error,
|
3734.2.7
by Vincent Ladeuil
Fix python-2.6 BaseException 'message' attribute deprecation. |
72 |
not subject to expansion. 'msg' is used instead of 'message' because
|
73 |
python evolved and, in 2.6, forbids the use of 'message'.
|
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
74 |
"""
|
75 |
StandardError.__init__(self) |
|
76 |
if msg is not None: |
|
2067.3.4
by Martin Pool
Error deprecations will come in for 0.13 |
77 |
# I was going to deprecate this, but it actually turns out to be
|
78 |
# quite handy - mbp 20061103.
|
|
2067.3.2
by Martin Pool
Error cleanup review comments: |
79 |
self._preformatted_string = msg |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
80 |
else: |
2067.3.2
by Martin Pool
Error cleanup review comments: |
81 |
self._preformatted_string = None |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
82 |
for key, value in kwds.items(): |
83 |
setattr(self, key, value) |
|
84 |
||
3577.1.1
by Andrew Bennetts
Cherry-pick TipChangeRejected changes from pre-branch-tip-changed-hook loom. |
85 |
def _format(self): |
2067.3.2
by Martin Pool
Error cleanup review comments: |
86 |
s = getattr(self, '_preformatted_string', None) |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
87 |
if s is not None: |
3577.1.3
by Andrew Bennetts
Fix test_trace failure: BzrError._format shouldn't call str() itself, it should leave that to __str__. |
88 |
# contains a preformatted message
|
89 |
return s |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
90 |
try: |
2067.3.2
by Martin Pool
Error cleanup review comments: |
91 |
fmt = self._get_format_string() |
92 |
if fmt: |
|
2854.1.2
by Martin Pool
Review feedback on BzrError.message handling |
93 |
d = dict(self.__dict__) |
2854.1.1
by Martin Pool
Fix "unprintable error" message for BzrCheckError and others |
94 |
s = fmt % d |
2067.3.2
by Martin Pool
Error cleanup review comments: |
95 |
# __str__() should always return a 'str' object
|
96 |
# never a 'unicode' object.
|
|
97 |
return s |
|
6318.2.3
by Martin Packman
Unify unprintable exception logic and catch all non-base exceptions |
98 |
except Exception, e: |
99 |
pass # just bind to 'e' for formatting below |
|
100 |
else: |
|
101 |
e = None |
|
102 |
return 'Unprintable exception %s: dict=%r, fmt=%r, error=%r' \ |
|
103 |
% (self.__class__.__name__, |
|
104 |
self.__dict__, |
|
105 |
getattr(self, '_fmt', None), |
|
106 |
e) |
|
1193
by Martin Pool
- better string formatting of BzrErrors with explanation |
107 |
|
3577.1.1
by Andrew Bennetts
Cherry-pick TipChangeRejected changes from pre-branch-tip-changed-hook loom. |
108 |
def __unicode__(self): |
109 |
u = self._format() |
|
110 |
if isinstance(u, str): |
|
111 |
# Try decoding the str using the default encoding.
|
|
112 |
u = unicode(u) |
|
3577.1.3
by Andrew Bennetts
Fix test_trace failure: BzrError._format shouldn't call str() itself, it should leave that to __str__. |
113 |
elif not isinstance(u, unicode): |
114 |
# Try to make a unicode object from it, because __unicode__ must
|
|
115 |
# return a unicode object.
|
|
116 |
u = unicode(u) |
|
3577.1.1
by Andrew Bennetts
Cherry-pick TipChangeRejected changes from pre-branch-tip-changed-hook loom. |
117 |
return u |
3734.2.7
by Vincent Ladeuil
Fix python-2.6 BaseException 'message' attribute deprecation. |
118 |
|
3577.1.1
by Andrew Bennetts
Cherry-pick TipChangeRejected changes from pre-branch-tip-changed-hook loom. |
119 |
def __str__(self): |
120 |
s = self._format() |
|
121 |
if isinstance(s, unicode): |
|
3577.1.3
by Andrew Bennetts
Fix test_trace failure: BzrError._format shouldn't call str() itself, it should leave that to __str__. |
122 |
s = s.encode('utf8') |
123 |
else: |
|
124 |
# __str__ must return a str.
|
|
125 |
s = str(s) |
|
3577.1.1
by Andrew Bennetts
Cherry-pick TipChangeRejected changes from pre-branch-tip-changed-hook loom. |
126 |
return s |
127 |
||
3786.4.3
by Andrew Bennetts
Add __repr__ to BzrError to make some test failure output clearer. |
128 |
def __repr__(self): |
129 |
return '%s(%s)' % (self.__class__.__name__, str(self)) |
|
130 |
||
2067.3.2
by Martin Pool
Error cleanup review comments: |
131 |
def _get_format_string(self): |
132 |
"""Return format string for this exception or None"""
|
|
133 |
fmt = getattr(self, '_fmt', None) |
|
134 |
if fmt is not None: |
|
6318.2.5
by Martin Packman
Remove separate i18n.install() call and module level i18n imports |
135 |
from bzrlib.i18n import gettext |
6318.2.2
by Martin Packman
Remove unneeded mutter over unicode _fmt attributes |
136 |
return gettext(unicode(fmt)) # _fmt strings should be ascii |
2067.3.2
by Martin Pool
Error cleanup review comments: |
137 |
|
3533.3.3
by Andrew Bennetts
Add unit tests for bzrlib.remote._translate_error. |
138 |
def __eq__(self, other): |
4088.3.1
by Benjamin Peterson
compare types with 'is' not == |
139 |
if self.__class__ is not other.__class__: |
3533.3.3
by Andrew Bennetts
Add unit tests for bzrlib.remote._translate_error. |
140 |
return NotImplemented |
141 |
return self.__dict__ == other.__dict__ |
|
142 |
||
1185.1.14
by Robert Collins
remove more duplicate merged hunks. Bad MERGE3, BAD. |
143 |
|
2871.1.1
by Robert Collins
* New class ``bzrlib.errors.InternalBzrError`` which is just a convenient |
144 |
class InternalBzrError(BzrError): |
145 |
"""Base class for errors that are internal in nature.
|
|
146 |
||
147 |
This is a convenience class for errors that are internal. The
|
|
148 |
internal_error attribute can still be altered in subclasses, if needed.
|
|
149 |
Using this class is simply an easy way to get internal errors.
|
|
150 |
"""
|
|
151 |
||
152 |
internal_error = True |
|
153 |
||
154 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
155 |
class AlreadyBuilding(BzrError): |
2929.3.5
by Vincent Ladeuil
New files, same warnings, same fixes. |
156 |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
157 |
_fmt = "The tree builder is already building a tree." |
158 |
||
159 |
||
3221.11.2
by Robert Collins
Create basic stackable branch facility. |
160 |
class BranchError(BzrError): |
161 |
"""Base class for concrete 'errors about a branch'."""
|
|
162 |
||
163 |
def __init__(self, branch): |
|
164 |
BzrError.__init__(self, branch=branch) |
|
165 |
||
166 |
||
2871.1.1
by Robert Collins
* New class ``bzrlib.errors.InternalBzrError`` which is just a convenient |
167 |
class BzrCheckError(InternalBzrError): |
2929.3.5
by Vincent Ladeuil
New files, same warnings, same fixes. |
168 |
|
169 |
_fmt = "Internal check failed: %(msg)s" |
|
170 |
||
171 |
def __init__(self, msg): |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
172 |
BzrError.__init__(self) |
2929.3.5
by Vincent Ladeuil
New files, same warnings, same fixes. |
173 |
self.msg = msg |
1185.16.63
by Martin Pool
- more error conversion |
174 |
|
175 |
||
3640.2.5
by John Arbash Meinel
Change from using AssertionError to using DirstateCorrupt in a few places |
176 |
class DirstateCorrupt(BzrError): |
177 |
||
178 |
_fmt = "The dirstate file (%(state)s) appears to be corrupt: %(msg)s" |
|
179 |
||
180 |
def __init__(self, state, msg): |
|
181 |
BzrError.__init__(self) |
|
182 |
self.state = state |
|
183 |
self.msg = msg |
|
184 |
||
185 |
||
2871.1.1
by Robert Collins
* New class ``bzrlib.errors.InternalBzrError`` which is just a convenient |
186 |
class DisabledMethod(InternalBzrError): |
2018.9.1
by Andrew Bennetts
Merge from bzr.dev. |
187 |
|
188 |
_fmt = "The smart server method '%(class_name)s' is disabled." |
|
189 |
||
2018.5.24
by Andrew Bennetts
Setting NO_SMART_VFS in environment will disable VFS methods in the smart server. (Robert Collins, John Arbash Meinel, Andrew Bennetts) |
190 |
def __init__(self, class_name): |
2018.9.1
by Andrew Bennetts
Merge from bzr.dev. |
191 |
BzrError.__init__(self) |
2018.5.24
by Andrew Bennetts
Setting NO_SMART_VFS in environment will disable VFS methods in the smart server. (Robert Collins, John Arbash Meinel, Andrew Bennetts) |
192 |
self.class_name = class_name |
193 |
||
194 |
||
2550.2.3
by Robert Collins
Add require_api API. |
195 |
class IncompatibleAPI(BzrError): |
196 |
||
197 |
_fmt = 'The API for "%(api)s" is not compatible with "%(wanted)s". '\ |
|
198 |
'It supports versions "%(minimum)s" to "%(current)s".' |
|
199 |
||
200 |
def __init__(self, api, wanted, minimum, current): |
|
201 |
self.api = api |
|
202 |
self.wanted = wanted |
|
203 |
self.minimum = minimum |
|
204 |
self.current = current |
|
205 |
||
206 |
||
2634.1.1
by Robert Collins
(robertc) Reinstate the accidentally backed out external_url patch. |
207 |
class InProcessTransport(BzrError): |
208 |
||
209 |
_fmt = "The transport '%(transport)s' is only accessible within this " \ |
|
210 |
"process."
|
|
211 |
||
212 |
def __init__(self, transport): |
|
213 |
self.transport = transport |
|
214 |
||
215 |
||
2871.1.1
by Robert Collins
* New class ``bzrlib.errors.InternalBzrError`` which is just a convenient |
216 |
class InvalidEntryName(InternalBzrError): |
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
217 |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
218 |
_fmt = "Invalid entry name: %(name)s" |
1740.5.6
by Martin Pool
Clean up many exception classes. |
219 |
|
1185.16.63
by Martin Pool
- more error conversion |
220 |
def __init__(self, name): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
221 |
BzrError.__init__(self) |
1185.16.63
by Martin Pool
- more error conversion |
222 |
self.name = name |
223 |
||
224 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
225 |
class InvalidRevisionNumber(BzrError): |
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
226 |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
227 |
_fmt = "Invalid revision number %(revno)s" |
228 |
||
1185.16.63
by Martin Pool
- more error conversion |
229 |
def __init__(self, revno): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
230 |
BzrError.__init__(self) |
1185.16.63
by Martin Pool
- more error conversion |
231 |
self.revno = revno |
232 |
||
233 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
234 |
class InvalidRevisionId(BzrError): |
235 |
||
2745.3.3
by Daniel Watkins
Changed to remove need for escaping of quotes. |
236 |
_fmt = "Invalid revision-id {%(revision_id)s} in %(branch)s" |
1908.5.9
by Robert Collins
Add a guard against setting the tree last-revision value to a ghost in the new tree parent management api. |
237 |
|
1185.16.103
by mbp at sourcefrog
Fix up all calls to InvalidRevisionId() to specify parameters. |
238 |
def __init__(self, revision_id, branch): |
1668.5.1
by Olaf Conradi
Fix bug in knits when raising InvalidRevisionId without the required |
239 |
# branch can be any string or object with __str__ defined
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
240 |
BzrError.__init__(self) |
1185.12.90
by Aaron Bentley
Fixed InvalidRevisionID handling in Branch.get_revision_xml |
241 |
self.revision_id = revision_id |
1185.16.103
by mbp at sourcefrog
Fix up all calls to InvalidRevisionId() to specify parameters. |
242 |
self.branch = branch |
974.1.26
by aaron.bentley at utoronto
merged mbp@sourcefrog.net-20050817233101-0939da1cf91f2472 |
243 |
|
3006.2.1
by Alexander Belchenko
workaround for bug #81689: give a proper error message instead of traceback when symlink cannot be created (e.g. on Windows) |
244 |
|
2229.2.1
by Aaron Bentley
Reject reserved ids in versiondfile, tree, branch and repository |
245 |
class ReservedId(BzrError): |
2229.2.3
by Aaron Bentley
change reserved_id to is_reserved_id, add check_not_reserved for DRY |
246 |
|
2745.3.3
by Daniel Watkins
Changed to remove need for escaping of quotes. |
247 |
_fmt = "Reserved revision-id {%(revision_id)s}" |
2229.2.3
by Aaron Bentley
change reserved_id to is_reserved_id, add check_not_reserved for DRY |
248 |
|
2229.2.1
by Aaron Bentley
Reject reserved ids in versiondfile, tree, branch and repository |
249 |
def __init__(self, revision_id): |
250 |
self.revision_id = revision_id |
|
974.1.26
by aaron.bentley at utoronto
merged mbp@sourcefrog.net-20050817233101-0939da1cf91f2472 |
251 |
|
2432.1.4
by Robert Collins
Add an explicit error for missing help topics. |
252 |
|
2871.1.2
by Robert Collins
* ``CommitBuilder.record_entry_contents`` now requires the root entry of a |
253 |
class RootMissing(InternalBzrError): |
254 |
||
255 |
_fmt = ("The root entry of a tree must be the first entry supplied to " |
|
5883.1.3
by Jelmer Vernooij
s/record_entry_contents/commit builder/. |
256 |
"the commit builder.") |
2871.1.2
by Robert Collins
* ``CommitBuilder.record_entry_contents`` now requires the root entry of a |
257 |
|
258 |
||
3200.2.1
by Robert Collins
* The ``register-branch`` command will now use the public url of the branch |
259 |
class NoPublicBranch(BzrError): |
260 |
||
261 |
_fmt = 'There is no public branch set for "%(branch_url)s".' |
|
262 |
||
263 |
def __init__(self, branch): |
|
264 |
import bzrlib.urlutils as urlutils |
|
265 |
public_location = urlutils.unescape_for_display(branch.base, 'ascii') |
|
266 |
BzrError.__init__(self, branch_url=public_location) |
|
267 |
||
268 |
||
2432.1.4
by Robert Collins
Add an explicit error for missing help topics. |
269 |
class NoHelpTopic(BzrError): |
270 |
||
271 |
_fmt = ("No help could be found for '%(topic)s'. " |
|
272 |
"Please use 'bzr help topics' to obtain a list of topics.") |
|
273 |
||
274 |
def __init__(self, topic): |
|
275 |
self.topic = topic |
|
276 |
||
277 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
278 |
class NoSuchId(BzrError): |
279 |
||
2745.3.3
by Daniel Watkins
Changed to remove need for escaping of quotes. |
280 |
_fmt = 'The file id "%(file_id)s" is not present in the tree %(tree)s.' |
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
281 |
|
1988.2.1
by Robert Collins
WorkingTree has a new api ``unversion`` which allow the unversioning of |
282 |
def __init__(self, tree, file_id): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
283 |
BzrError.__init__(self) |
1988.2.1
by Robert Collins
WorkingTree has a new api ``unversion`` which allow the unversioning of |
284 |
self.file_id = file_id |
285 |
self.tree = tree |
|
286 |
||
287 |
||
2708.1.11
by Aaron Bentley
Test and tweak error handling |
288 |
class NoSuchIdInRepository(NoSuchId): |
289 |
||
2745.3.3
by Daniel Watkins
Changed to remove need for escaping of quotes. |
290 |
_fmt = ('The file id "%(file_id)s" is not present in the repository' |
291 |
' %(repository)r') |
|
2708.1.11
by Aaron Bentley
Test and tweak error handling |
292 |
|
293 |
def __init__(self, repository, file_id): |
|
294 |
BzrError.__init__(self, repository=repository, file_id=file_id) |
|
295 |
||
296 |
||
3221.11.2
by Robert Collins
Create basic stackable branch facility. |
297 |
class NotStacked(BranchError): |
298 |
||
299 |
_fmt = "The branch '%(branch)s' is not stacked." |
|
300 |
||
301 |
||
2871.1.1
by Robert Collins
* New class ``bzrlib.errors.InternalBzrError`` which is just a convenient |
302 |
class InventoryModified(InternalBzrError): |
2067.3.3
by Martin Pool
merge bzr.dev and reconcile several changes, also some test fixes |
303 |
|
2221.5.14
by Dmitry Vasiliev
Wrapped long lines |
304 |
_fmt = ("The current inventory for the tree %(tree)r has been modified," |
305 |
" so a clean inventory cannot be read without data loss.") |
|
2067.3.3
by Martin Pool
merge bzr.dev and reconcile several changes, also some test fixes |
306 |
|
307 |
def __init__(self, tree): |
|
308 |
self.tree = tree |
|
309 |
||
310 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
311 |
class NoWorkingTree(BzrError): |
312 |
||
2745.3.3
by Daniel Watkins
Changed to remove need for escaping of quotes. |
313 |
_fmt = 'No WorkingTree exists for "%(base)s".' |
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
314 |
|
1497
by Robert Collins
Move Branch.read_working_inventory to WorkingTree. |
315 |
def __init__(self, base): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
316 |
BzrError.__init__(self) |
1497
by Robert Collins
Move Branch.read_working_inventory to WorkingTree. |
317 |
self.base = base |
1506
by Robert Collins
Merge Johns current integration work. |
318 |
|
319 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
320 |
class NotBuilding(BzrError): |
321 |
||
322 |
_fmt = "Not currently building a tree." |
|
323 |
||
324 |
||
325 |
class NotLocalUrl(BzrError): |
|
326 |
||
327 |
_fmt = "%(url)s is not a local path." |
|
2067.3.3
by Martin Pool
merge bzr.dev and reconcile several changes, also some test fixes |
328 |
|
1534.4.42
by Robert Collins
add working tree to the BzrDir facilities. |
329 |
def __init__(self, url): |
330 |
self.url = url |
|
331 |
||
332 |
||
2871.1.1
by Robert Collins
* New class ``bzrlib.errors.InternalBzrError`` which is just a convenient |
333 |
class WorkingTreeAlreadyPopulated(InternalBzrError): |
2067.3.3
by Martin Pool
merge bzr.dev and reconcile several changes, also some test fixes |
334 |
|
2745.3.3
by Daniel Watkins
Changed to remove need for escaping of quotes. |
335 |
_fmt = 'Working tree already populated in "%(base)s"' |
2067.3.3
by Martin Pool
merge bzr.dev and reconcile several changes, also some test fixes |
336 |
|
337 |
def __init__(self, base): |
|
338 |
self.base = base |
|
339 |
||
2871.1.1
by Robert Collins
* New class ``bzrlib.errors.InternalBzrError`` which is just a convenient |
340 |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
341 |
class BzrCommandError(BzrError): |
1740.5.6
by Martin Pool
Clean up many exception classes. |
342 |
"""Error from user command"""
|
1740.5.8
by Martin Pool
Review cleanups: better error reporting, put back report_exception. |
343 |
|
344 |
# Error from malformed user command; please avoid raising this as a
|
|
345 |
# generic exception not caused by user input.
|
|
1185.54.18
by Aaron Bentley
Noted difference of opinion wrt BzrCommandError |
346 |
#
|
347 |
# I think it's a waste of effort to differentiate between errors that
|
|
348 |
# are not intended to be caught anyway. UI code need not subclass
|
|
349 |
# BzrCommandError, and non-UI code should not throw a subclass of
|
|
350 |
# BzrCommandError. ADHB 20051211
|
|
1740.5.6
by Martin Pool
Clean up many exception classes. |
351 |
|
352 |
||
2067.3.3
by Martin Pool
merge bzr.dev and reconcile several changes, also some test fixes |
353 |
class NotWriteLocked(BzrError): |
354 |
||
355 |
_fmt = """%(not_locked)r is not write locked but needs to be.""" |
|
356 |
||
357 |
def __init__(self, not_locked): |
|
358 |
self.not_locked = not_locked |
|
359 |
||
360 |
||
1740.5.8
by Martin Pool
Review cleanups: better error reporting, put back report_exception. |
361 |
class BzrOptionError(BzrCommandError): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
362 |
|
363 |
_fmt = "Error in command line options" |
|
1740.5.8
by Martin Pool
Review cleanups: better error reporting, put back report_exception. |
364 |
|
2221.4.1
by Aaron Bentley
Get registry options working |
365 |
|
2592.1.7
by Robert Collins
A validate that goes boom. |
366 |
class BadIndexFormatSignature(BzrError): |
367 |
||
368 |
_fmt = "%(value)s is not an index of type %(_type)s." |
|
369 |
||
370 |
def __init__(self, value, _type): |
|
371 |
BzrError.__init__(self) |
|
372 |
self.value = value |
|
373 |
self._type = _type |
|
374 |
||
375 |
||
2592.1.11
by Robert Collins
Detect truncated indices. |
376 |
class BadIndexData(BzrError): |
377 |
||
378 |
_fmt = "Error in data for index %(value)s." |
|
379 |
||
380 |
def __init__(self, value): |
|
381 |
BzrError.__init__(self) |
|
382 |
self.value = value |
|
383 |
||
384 |
||
2592.1.15
by Robert Collins
Detect duplicate key insertion. |
385 |
class BadIndexDuplicateKey(BzrError): |
386 |
||
387 |
_fmt = "The key '%(key)s' is already in index '%(index)s'." |
|
388 |
||
389 |
def __init__(self, key, index): |
|
390 |
BzrError.__init__(self) |
|
391 |
self.key = key |
|
392 |
self.index = index |
|
393 |
||
394 |
||
2592.1.12
by Robert Collins
Handle basic node adds. |
395 |
class BadIndexKey(BzrError): |
396 |
||
397 |
_fmt = "The key '%(key)s' is not a valid key." |
|
398 |
||
399 |
def __init__(self, key): |
|
400 |
BzrError.__init__(self) |
|
401 |
self.key = key |
|
402 |
||
403 |
||
2592.1.10
by Robert Collins
Make validate detect node reference parsing errors. |
404 |
class BadIndexOptions(BzrError): |
405 |
||
406 |
_fmt = "Could not parse options for index %(value)s." |
|
407 |
||
408 |
def __init__(self, value): |
|
409 |
BzrError.__init__(self) |
|
410 |
self.value = value |
|
411 |
||
412 |
||
2592.1.12
by Robert Collins
Handle basic node adds. |
413 |
class BadIndexValue(BzrError): |
414 |
||
415 |
_fmt = "The value '%(value)s' is not a valid value." |
|
416 |
||
417 |
def __init__(self, value): |
|
418 |
BzrError.__init__(self) |
|
419 |
self.value = value |
|
420 |
||
421 |
||
2221.4.6
by Aaron Bentley
Improve text and naming |
422 |
class BadOptionValue(BzrError): |
2221.4.1
by Aaron Bentley
Get registry options working |
423 |
|
2221.4.6
by Aaron Bentley
Improve text and naming |
424 |
_fmt = """Bad value "%(value)s" for option "%(name)s".""" |
2221.4.1
by Aaron Bentley
Get registry options working |
425 |
|
426 |
def __init__(self, name, value): |
|
427 |
BzrError.__init__(self, name=name, value=value) |
|
428 |
||
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
429 |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
430 |
class StrictCommitFailed(BzrError): |
431 |
||
432 |
_fmt = "Commit refused because there are unknown files in the tree" |
|
1
by mbp at sourcefrog
import from baz patch-364 |
433 |
|
1185.31.41
by John Arbash Meinel
Creating a PathNotChild exception, and using relpath in HTTPTestUtil |
434 |
|
1662.1.12
by Martin Pool
Translate unknown sftp errors to PathError, no NoSuchFile |
435 |
# XXX: Should be unified with TransportError; they seem to represent the
|
436 |
# same thing
|
|
2052.6.1
by Robert Collins
``Transport.get`` has had its interface made more clear for ease of use. |
437 |
# RBC 20060929: I think that unifiying with TransportError would be a mistake
|
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
438 |
# - this is finer than a TransportError - and more useful as such. It
|
2052.6.1
by Robert Collins
``Transport.get`` has had its interface made more clear for ease of use. |
439 |
# differentiates between 'transport has failed' and 'operation on a transport
|
440 |
# has failed.'
|
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
441 |
class PathError(BzrError): |
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
442 |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
443 |
_fmt = "Generic path error: %(path)r%(extra)s)" |
1654.1.4
by Robert Collins
Teach `bzr init` how to init at the root of a repository. |
444 |
|
1185.31.44
by John Arbash Meinel
Cleaned up Exceptions for all transports. |
445 |
def __init__(self, path, extra=None): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
446 |
BzrError.__init__(self) |
1185.31.44
by John Arbash Meinel
Cleaned up Exceptions for all transports. |
447 |
self.path = path |
1908.4.11
by John Arbash Meinel
reverting changes to errors.py and local transport. |
448 |
if extra: |
449 |
self.extra = ': ' + str(extra) |
|
450 |
else: |
|
451 |
self.extra = '' |
|
1185.31.44
by John Arbash Meinel
Cleaned up Exceptions for all transports. |
452 |
|
453 |
||
454 |
class NoSuchFile(PathError): |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
455 |
|
456 |
_fmt = "No such file: %(path)r%(extra)s" |
|
1185.31.44
by John Arbash Meinel
Cleaned up Exceptions for all transports. |
457 |
|
458 |
||
459 |
class FileExists(PathError): |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
460 |
|
461 |
_fmt = "File exists: %(path)r%(extra)s" |
|
1185.31.44
by John Arbash Meinel
Cleaned up Exceptions for all transports. |
462 |
|
463 |
||
2220.1.11
by Marius Kruger
* bzrlib/errors.py |
464 |
class RenameFailedFilesExist(BzrError): |
465 |
"""Used when renaming and both source and dest exist."""
|
|
466 |
||
2220.1.12
by Marius Kruger
* Fix errors.py import order |
467 |
_fmt = ("Could not rename %(source)s => %(dest)s because both files exist." |
2967.3.6
by Daniel Watkins
Extracted the string from every use of RenameFailedFilesExist to RenameFailedFilesExist itself. |
468 |
" (Use --after to tell bzr about a rename that has already"
|
469 |
" happened)%(extra)s") |
|
2220.1.11
by Marius Kruger
* bzrlib/errors.py |
470 |
|
471 |
def __init__(self, source, dest, extra=None): |
|
2206.1.5
by Marius Kruger
* errors |
472 |
BzrError.__init__(self) |
2220.1.11
by Marius Kruger
* bzrlib/errors.py |
473 |
self.source = str(source) |
474 |
self.dest = str(dest) |
|
2206.1.5
by Marius Kruger
* errors |
475 |
if extra: |
2220.1.11
by Marius Kruger
* bzrlib/errors.py |
476 |
self.extra = ' ' + str(extra) |
2206.1.5
by Marius Kruger
* errors |
477 |
else: |
478 |
self.extra = '' |
|
479 |
||
2206.1.9
by Marius Kruger
* Change move/rename errors yet again |
480 |
|
2206.1.4
by Marius Kruger
Improved WorkingTree.move excptions. (as requested) |
481 |
class NotADirectory(PathError): |
482 |
||
2745.3.3
by Daniel Watkins
Changed to remove need for escaping of quotes. |
483 |
_fmt = '"%(path)s" is not a directory %(extra)s' |
2206.1.4
by Marius Kruger
Improved WorkingTree.move excptions. (as requested) |
484 |
|
485 |
||
486 |
class NotInWorkingDirectory(PathError): |
|
487 |
||
2745.3.3
by Daniel Watkins
Changed to remove need for escaping of quotes. |
488 |
_fmt = '"%(path)s" is not in the working directory %(extra)s' |
2206.1.4
by Marius Kruger
Improved WorkingTree.move excptions. (as requested) |
489 |
|
490 |
||
1553.5.10
by Martin Pool
New DirectoryNotEmpty exception, and raise this from local and memory |
491 |
class DirectoryNotEmpty(PathError): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
492 |
|
2745.3.3
by Daniel Watkins
Changed to remove need for escaping of quotes. |
493 |
_fmt = 'Directory not empty: "%(path)s"%(extra)s' |
1553.5.10
by Martin Pool
New DirectoryNotEmpty exception, and raise this from local and memory |
494 |
|
495 |
||
3136.1.10
by Aaron Bentley
Clean error if filesystem does not support hard-links |
496 |
class HardLinkNotSupported(PathError): |
497 |
||
498 |
_fmt = 'Hard-linking "%(path)s" is not supported' |
|
499 |
||
500 |
||
2871.1.1
by Robert Collins
* New class ``bzrlib.errors.InternalBzrError`` which is just a convenient |
501 |
class ReadingCompleted(InternalBzrError): |
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
502 |
|
2067.3.3
by Martin Pool
merge bzr.dev and reconcile several changes, also some test fixes |
503 |
_fmt = ("The MediumRequest '%(request)s' has already had finish_reading " |
504 |
"called upon it - the request has been completed and no more "
|
|
505 |
"data may be read.") |
|
506 |
||
2018.2.4
by Robert Collins
separate out the client medium from the client encoding protocol for the smart server. |
507 |
def __init__(self, request): |
508 |
self.request = request |
|
509 |
||
510 |
||
1558.10.1
by Aaron Bentley
Handle lockdirs over NFS properly |
511 |
class ResourceBusy(PathError): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
512 |
|
2745.3.3
by Daniel Watkins
Changed to remove need for escaping of quotes. |
513 |
_fmt = 'Device or resource busy: "%(path)s"%(extra)s' |
1558.10.1
by Aaron Bentley
Handle lockdirs over NFS properly |
514 |
|
515 |
||
1185.31.44
by John Arbash Meinel
Cleaned up Exceptions for all transports. |
516 |
class PermissionDenied(PathError): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
517 |
|
2745.3.3
by Daniel Watkins
Changed to remove need for escaping of quotes. |
518 |
_fmt = 'Permission denied: "%(path)s"%(extra)s' |
1740.5.8
by Martin Pool
Review cleanups: better error reporting, put back report_exception. |
519 |
|
520 |
||
1185.85.76
by John Arbash Meinel
Adding an InvalidURL so transports can report they expect utf-8 quoted paths. Updated tests |
521 |
class InvalidURL(PathError): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
522 |
|
2745.3.3
by Daniel Watkins
Changed to remove need for escaping of quotes. |
523 |
_fmt = 'Invalid url supplied to transport: "%(path)s"%(extra)s' |
1185.85.76
by John Arbash Meinel
Adding an InvalidURL so transports can report they expect utf-8 quoted paths. Updated tests |
524 |
|
525 |
||
1685.1.55
by John Arbash Meinel
Adding bzrlib.urlutils.join() to handle joining URLs |
526 |
class InvalidURLJoin(PathError): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
527 |
|
2692.1.1
by Andrew Bennetts
Add translate_client_path method to SmartServerRequest. |
528 |
_fmt = "Invalid URL join request: %(reason)s: %(base)r + %(join_args)r" |
1685.1.55
by John Arbash Meinel
Adding bzrlib.urlutils.join() to handle joining URLs |
529 |
|
2692.1.1
by Andrew Bennetts
Add translate_client_path method to SmartServerRequest. |
530 |
def __init__(self, reason, base, join_args): |
531 |
self.reason = reason |
|
532 |
self.base = base |
|
533 |
self.join_args = join_args |
|
534 |
PathError.__init__(self, base, reason) |
|
1685.1.55
by John Arbash Meinel
Adding bzrlib.urlutils.join() to handle joining URLs |
535 |
|
536 |
||
3242.3.33
by Aaron Bentley
Handle relative URL stacking cleanly |
537 |
class InvalidRebaseURLs(PathError): |
538 |
||
539 |
_fmt = "URLs differ by more than path: %(from_)r and %(to)r" |
|
540 |
||
541 |
def __init__(self, from_, to): |
|
542 |
self.from_ = from_ |
|
543 |
self.to = to |
|
544 |
PathError.__init__(self, from_, 'URLs differ by more than path.') |
|
545 |
||
546 |
||
3350.3.3
by Robert Collins
Functional get_record_stream interface tests covering full interface. |
547 |
class UnavailableRepresentation(InternalBzrError): |
548 |
||
549 |
_fmt = ("The encoding '%(wanted)s' is not available for key %(key)s which " |
|
550 |
"is encoded as '%(native)s'.") |
|
551 |
||
552 |
def __init__(self, key, wanted, native): |
|
553 |
InternalBzrError.__init__(self) |
|
554 |
self.wanted = wanted |
|
555 |
self.native = native |
|
556 |
self.key = key |
|
557 |
||
558 |
||
2245.1.3
by Robert Collins
Add install_hook to the BranchHooks class as the official means for installing a hook. |
559 |
class UnknownHook(BzrError): |
560 |
||
561 |
_fmt = "The %(type)s hook '%(hook)s' is unknown in this version of bzrlib." |
|
562 |
||
563 |
def __init__(self, hook_type, hook_name): |
|
564 |
BzrError.__init__(self) |
|
565 |
self.type = hook_type |
|
566 |
self.hook = hook_name |
|
567 |
||
568 |
||
1843.1.1
by John Arbash Meinel
Update get_transport to raise a nicer error which includes dependency info |
569 |
class UnsupportedProtocol(PathError): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
570 |
|
2745.3.3
by Daniel Watkins
Changed to remove need for escaping of quotes. |
571 |
_fmt = 'Unsupported protocol for url "%(path)s"%(extra)s' |
1843.1.1
by John Arbash Meinel
Update get_transport to raise a nicer error which includes dependency info |
572 |
|
6030.2.1
by Jelmer Vernooij
Create location_to_url. |
573 |
def __init__(self, url, extra=""): |
1843.1.1
by John Arbash Meinel
Update get_transport to raise a nicer error which includes dependency info |
574 |
PathError.__init__(self, url, extra=extra) |
575 |
||
576 |
||
3221.11.2
by Robert Collins
Create basic stackable branch facility. |
577 |
class UnstackableBranchFormat(BzrError): |
578 |
||
579 |
_fmt = ("The branch '%(url)s'(%(format)s) is not a stackable format. " |
|
580 |
"You will need to upgrade the branch to permit branch stacking.") |
|
581 |
||
582 |
def __init__(self, format, url): |
|
583 |
BzrError.__init__(self) |
|
584 |
self.format = format |
|
585 |
self.url = url |
|
586 |
||
587 |
||
4462.3.2
by Robert Collins
Do not stack on the same branch/repository anymore. This was never supported and would generally result in infinite recursion. Fixes bug 376243. |
588 |
class UnstackableLocationError(BzrError): |
589 |
||
590 |
_fmt = "The branch '%(branch_url)s' cannot be stacked on '%(target_url)s'." |
|
591 |
||
592 |
def __init__(self, branch_url, target_url): |
|
593 |
BzrError.__init__(self) |
|
594 |
self.branch_url = branch_url |
|
595 |
self.target_url = target_url |
|
596 |
||
597 |
||
3221.11.2
by Robert Collins
Create basic stackable branch facility. |
598 |
class UnstackableRepositoryFormat(BzrError): |
599 |
||
600 |
_fmt = ("The repository '%(url)s'(%(format)s) is not a stackable format. " |
|
601 |
"You will need to upgrade the repository to permit branch stacking.") |
|
602 |
||
603 |
def __init__(self, format, url): |
|
604 |
BzrError.__init__(self) |
|
605 |
self.format = format |
|
606 |
self.url = url |
|
607 |
||
608 |
||
2052.6.1
by Robert Collins
``Transport.get`` has had its interface made more clear for ease of use. |
609 |
class ReadError(PathError): |
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
610 |
|
2052.6.2
by Robert Collins
Merge bzr.dev. |
611 |
_fmt = """Error reading from %(path)r.""" |
2052.6.1
by Robert Collins
``Transport.get`` has had its interface made more clear for ease of use. |
612 |
|
613 |
||
2001.3.2
by John Arbash Meinel
Force all transports to raise ShortReadvError if they can |
614 |
class ShortReadvError(PathError): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
615 |
|
2745.3.3
by Daniel Watkins
Changed to remove need for escaping of quotes. |
616 |
_fmt = ('readv() read %(actual)s bytes rather than %(length)s bytes' |
617 |
' at %(offset)s for "%(path)s"%(extra)s') |
|
2001.3.2
by John Arbash Meinel
Force all transports to raise ShortReadvError if they can |
618 |
|
2067.3.2
by Martin Pool
Error cleanup review comments: |
619 |
internal_error = True |
2001.3.2
by John Arbash Meinel
Force all transports to raise ShortReadvError if they can |
620 |
|
2001.3.3
by John Arbash Meinel
review feedback: add the actual count written to ShortReadvError |
621 |
def __init__(self, path, offset, length, actual, extra=None): |
2001.3.2
by John Arbash Meinel
Force all transports to raise ShortReadvError if they can |
622 |
PathError.__init__(self, path, extra=extra) |
623 |
self.offset = offset |
|
624 |
self.length = length |
|
2001.3.3
by John Arbash Meinel
review feedback: add the actual count written to ShortReadvError |
625 |
self.actual = actual |
2001.3.2
by John Arbash Meinel
Force all transports to raise ShortReadvError if they can |
626 |
|
627 |
||
2485.8.18
by Vincent Ladeuil
PathNotChild inherits from PathError, not BzrError. |
628 |
class PathNotChild(PathError): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
629 |
|
2745.3.3
by Daniel Watkins
Changed to remove need for escaping of quotes. |
630 |
_fmt = 'Path "%(path)s" is not a child of path "%(base)s"%(extra)s' |
1740.5.6
by Martin Pool
Clean up many exception classes. |
631 |
|
5346.3.1
by Martin Pool
* `PathNotChild` should not give a traceback. |
632 |
internal_error = False |
1740.5.6
by Martin Pool
Clean up many exception classes. |
633 |
|
1185.31.44
by John Arbash Meinel
Cleaned up Exceptions for all transports. |
634 |
def __init__(self, path, base, extra=None): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
635 |
BzrError.__init__(self) |
1185.31.41
by John Arbash Meinel
Creating a PathNotChild exception, and using relpath in HTTPTestUtil |
636 |
self.path = path |
637 |
self.base = base |
|
1185.31.44
by John Arbash Meinel
Cleaned up Exceptions for all transports. |
638 |
if extra: |
639 |
self.extra = ': ' + str(extra) |
|
640 |
else: |
|
641 |
self.extra = '' |
|
1185.31.41
by John Arbash Meinel
Creating a PathNotChild exception, and using relpath in HTTPTestUtil |
642 |
|
643 |
||
1830.3.5
by John Arbash Meinel
make_entry refuses to create non-normalized entries. |
644 |
class InvalidNormalization(PathError): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
645 |
|
2745.3.3
by Daniel Watkins
Changed to remove need for escaping of quotes. |
646 |
_fmt = 'Path "%(path)s" is not unicode normalized' |
1830.3.5
by John Arbash Meinel
make_entry refuses to create non-normalized entries. |
647 |
|
648 |
||
1685.1.60
by Martin Pool
[broken] NotBranchError should unescape the url if possible |
649 |
# TODO: This is given a URL; we try to unescape it but doing that from inside
|
650 |
# the exception object is a bit undesirable.
|
|
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
651 |
# TODO: Probably this behavior of should be a common superclass
|
1654.1.4
by Robert Collins
Teach `bzr init` how to init at the root of a repository. |
652 |
class NotBranchError(PathError): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
653 |
|
4734.4.7
by Andrew Bennetts
Defer checking for a repository in NotBranchError case until we format the error as a string. (test_smart currently fails) |
654 |
_fmt = 'Not a branch: "%(path)s"%(detail)s.' |
1685.1.60
by Martin Pool
[broken] NotBranchError should unescape the url if possible |
655 |
|
4734.4.8
by Andrew Bennetts
Fix HPSS tests; pass 'location is a repository' message via smart server when possible (adds BzrDir.open_branchV3 verb). |
656 |
def __init__(self, path, detail=None, bzrdir=None): |
1685.1.60
by Martin Pool
[broken] NotBranchError should unescape the url if possible |
657 |
import bzrlib.urlutils as urlutils |
4734.4.1
by Brian de Alwis
Add a 'detail' field to NotBranchError to hold additional helpful |
658 |
path = urlutils.unescape_for_display(path, 'ascii') |
4734.4.8
by Andrew Bennetts
Fix HPSS tests; pass 'location is a repository' message via smart server when possible (adds BzrDir.open_branchV3 verb). |
659 |
if detail is not None: |
660 |
detail = ': ' + detail |
|
661 |
self.detail = detail |
|
4734.4.7
by Andrew Bennetts
Defer checking for a repository in NotBranchError case until we format the error as a string. (test_smart currently fails) |
662 |
self.bzrdir = bzrdir |
663 |
PathError.__init__(self, path=path) |
|
664 |
||
5050.60.1
by Andrew Bennetts
Override __repr__ in NotBranchError to avoid side-effects during repr(e). |
665 |
def __repr__(self): |
666 |
return '<%s %r>' % (self.__class__.__name__, self.__dict__) |
|
667 |
||
4734.4.7
by Andrew Bennetts
Defer checking for a repository in NotBranchError case until we format the error as a string. (test_smart currently fails) |
668 |
def _format(self): |
669 |
# XXX: Ideally self.detail would be a property, but Exceptions in
|
|
670 |
# Python 2.4 have to be old-style classes so properties don't work.
|
|
671 |
# Instead we override _format.
|
|
672 |
if self.detail is None: |
|
673 |
if self.bzrdir is not None: |
|
674 |
try: |
|
675 |
self.bzrdir.open_repository() |
|
676 |
except NoRepositoryPresent: |
|
677 |
self.detail = '' |
|
5050.46.1
by Andrew Bennetts
Suppress unexpected errors during NotBranchError's call to open_repository. |
678 |
except Exception: |
679 |
# Just ignore unexpected errors. Raising arbitrary errors
|
|
680 |
# during str(err) can provoke strange bugs. Concretely
|
|
681 |
# Launchpad's codehosting managed to raise NotBranchError
|
|
682 |
# here, and then get stuck in an infinite loop/recursion
|
|
683 |
# trying to str() that error. All this error really cares
|
|
684 |
# about that there's no working repository there, and if
|
|
685 |
# open_repository() fails, there probably isn't.
|
|
686 |
self.detail = '' |
|
4734.4.7
by Andrew Bennetts
Defer checking for a repository in NotBranchError case until we format the error as a string. (test_smart currently fails) |
687 |
else: |
688 |
self.detail = ': location is a repository' |
|
689 |
else: |
|
690 |
self.detail = '' |
|
691 |
return PathError._format(self) |
|
1654.1.4
by Robert Collins
Teach `bzr init` how to init at the root of a repository. |
692 |
|
693 |
||
1551.10.32
by Aaron Bentley
Add submit: specifier, for merge-directive-like diffs |
694 |
class NoSubmitBranch(PathError): |
695 |
||
2745.3.3
by Daniel Watkins
Changed to remove need for escaping of quotes. |
696 |
_fmt = 'No submit branch available for branch "%(path)s"' |
1551.10.32
by Aaron Bentley
Add submit: specifier, for merge-directive-like diffs |
697 |
|
698 |
def __init__(self, branch): |
|
699 |
import bzrlib.urlutils as urlutils |
|
700 |
self.path = urlutils.unescape_for_display(branch.base, 'ascii') |
|
701 |
||
702 |
||
6437.10.2
by Jelmer Vernooij
Raise AlreadyControlDirError. |
703 |
class AlreadyControlDirError(PathError): |
704 |
||
705 |
_fmt = 'A control directory already exists: "%(path)s".' |
|
706 |
||
707 |
||
1654.1.4
by Robert Collins
Teach `bzr init` how to init at the root of a repository. |
708 |
class AlreadyBranchError(PathError): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
709 |
|
2745.3.3
by Daniel Watkins
Changed to remove need for escaping of quotes. |
710 |
_fmt = 'Already a branch: "%(path)s".' |
1662.1.19
by Martin Pool
Better error message when initting existing tree |
711 |
|
712 |
||
6437.18.2
by Jelmer Vernooij
Check for slashes in branch names. |
713 |
class ParentBranchExists(AlreadyBranchError): |
714 |
||
715 |
_fmt = 'Parent branch already exists: "%(path)s".' |
|
716 |
||
717 |
||
1662.1.19
by Martin Pool
Better error message when initting existing tree |
718 |
class BranchExistsWithoutWorkingTree(PathError): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
719 |
|
2745.3.3
by Daniel Watkins
Changed to remove need for escaping of quotes. |
720 |
_fmt = 'Directory contains a branch, but no working tree \ |
721 |
(use bzr checkout if you wish to build a working tree): "%(path)s"' |
|
1185.16.62
by mbp at sourcefrog
- convert NotBranchError to new exception base |
722 |
|
573
by Martin Pool
- new exception NotBranchError |
723 |
|
1755.3.6
by John Arbash Meinel
Add a test suite for Atomic File, and clean it up so that it really does set the mode properly. |
724 |
class AtomicFileAlreadyClosed(PathError): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
725 |
|
2745.3.3
by Daniel Watkins
Changed to remove need for escaping of quotes. |
726 |
_fmt = ('"%(function)s" called on an AtomicFile after it was closed:' |
727 |
' "%(path)s"') |
|
1755.3.6
by John Arbash Meinel
Add a test suite for Atomic File, and clean it up so that it really does set the mode properly. |
728 |
|
729 |
def __init__(self, path, function): |
|
730 |
PathError.__init__(self, path=path, extra=None) |
|
731 |
self.function = function |
|
732 |
||
733 |
||
1864.7.2
by John Arbash Meinel
Test that we copy the parent across properly (if it is available) |
734 |
class InaccessibleParent(PathError): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
735 |
|
2745.3.3
by Daniel Watkins
Changed to remove need for escaping of quotes. |
736 |
_fmt = ('Parent not accessible given base "%(base)s" and' |
737 |
' relative path "%(path)s"') |
|
1864.7.2
by John Arbash Meinel
Test that we copy the parent across properly (if it is available) |
738 |
|
739 |
def __init__(self, path, base): |
|
740 |
PathError.__init__(self, path) |
|
741 |
self.base = base |
|
742 |
||
743 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
744 |
class NoRepositoryPresent(BzrError): |
745 |
||
2745.3.3
by Daniel Watkins
Changed to remove need for escaping of quotes. |
746 |
_fmt = 'No repository present: "%(path)s"' |
1534.4.47
by Robert Collins
Split out repository into .bzr/repository |
747 |
def __init__(self, bzrdir): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
748 |
BzrError.__init__(self) |
1534.4.47
by Robert Collins
Split out repository into .bzr/repository |
749 |
self.path = bzrdir.transport.clone('..').base |
750 |
||
751 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
752 |
class UnsupportedFormatError(BzrError): |
2379.4.1
by John Arbash Meinel
(John Arbash Meinel) Make it clearer what to do if you have a (very) old branch. |
753 |
|
754 |
_fmt = "Unsupported branch format: %(format)s\nPlease run 'bzr upgrade'" |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
755 |
|
756 |
||
757 |
class UnknownFormatError(BzrError): |
|
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
758 |
|
3246.3.1
by Daniel Watkins
Modified UnknownFormatError to allow a kind to be specified. |
759 |
_fmt = "Unknown %(kind)s format: %(format)r" |
760 |
||
761 |
def __init__(self, format, kind='branch'): |
|
762 |
self.kind = kind |
|
763 |
self.format = format |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
764 |
|
765 |
||
766 |
class IncompatibleFormat(BzrError): |
|
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
767 |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
768 |
_fmt = "Format %(format)s is not compatible with .bzr version %(bzrdir)s." |
1534.4.44
by Robert Collins
Make a new BzrDir format that uses a versioned branch format in a branch/ subdirectory. |
769 |
|
770 |
def __init__(self, format, bzrdir_format): |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
771 |
BzrError.__init__(self) |
1534.4.44
by Robert Collins
Make a new BzrDir format that uses a versioned branch format in a branch/ subdirectory. |
772 |
self.format = format |
773 |
self.bzrdir = bzrdir_format |
|
774 |
||
775 |
||
6213.1.53
by Jelmer Vernooij
Add ParseFormatError. |
776 |
class ParseFormatError(BzrError): |
777 |
||
778 |
_fmt = "Parse error on line %(lineno)d of %(format)s format: %(line)s" |
|
779 |
||
780 |
def __init__(self, format, lineno, line, text): |
|
781 |
BzrError.__init__(self) |
|
782 |
self.format = format |
|
783 |
self.lineno = lineno |
|
784 |
self.line = line |
|
785 |
self.text = text |
|
786 |
||
787 |
||
2323.8.2
by Aaron Bentley
Give a nicer error on fetch when repos are in incompatible formats |
788 |
class IncompatibleRepositories(BzrError): |
4650.2.1
by Robert Collins
Deserialise IncompatibleRepositories errors in the client, generating |
789 |
"""Report an error that two repositories are not compatible.
|
790 |
||
791 |
Note that the source and target repositories are permitted to be strings:
|
|
792 |
this exception is thrown from the smart server and may refer to a
|
|
793 |
repository the client hasn't opened.
|
|
794 |
"""
|
|
2323.8.2
by Aaron Bentley
Give a nicer error on fetch when repos are in incompatible formats |
795 |
|
3582.1.2
by Martin Pool
Default InterRepository.fetch raises IncompatibleRepositories |
796 |
_fmt = "%(target)s\n" \ |
797 |
"is not compatible with\n" \ |
|
798 |
"%(source)s\n" \ |
|
799 |
"%(details)s" |
|
2323.8.2
by Aaron Bentley
Give a nicer error on fetch when repos are in incompatible formats |
800 |
|
3582.1.2
by Martin Pool
Default InterRepository.fetch raises IncompatibleRepositories |
801 |
def __init__(self, source, target, details=None): |
3582.1.5
by Martin Pool
style tweak |
802 |
if details is None: |
3582.1.2
by Martin Pool
Default InterRepository.fetch raises IncompatibleRepositories |
803 |
details = "(no details)" |
804 |
BzrError.__init__(self, target=target, source=source, details=details) |
|
2323.8.2
by Aaron Bentley
Give a nicer error on fetch when repos are in incompatible formats |
805 |
|
806 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
807 |
class IncompatibleRevision(BzrError): |
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
808 |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
809 |
_fmt = "Revision is not compatible with %(repo_format)s" |
1910.2.60
by Aaron Bentley
Ensure that new-model revisions aren't installed into old-model repos |
810 |
|
811 |
def __init__(self, repo_format): |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
812 |
BzrError.__init__(self) |
1910.2.60
by Aaron Bentley
Ensure that new-model revisions aren't installed into old-model repos |
813 |
self.repo_format = repo_format |
814 |
||
815 |
||
2206.1.5
by Marius Kruger
* errors |
816 |
class AlreadyVersionedError(BzrError): |
2206.1.7
by Marius Kruger
* errors |
817 |
"""Used when a path is expected not to be versioned, but it is."""
|
2220.1.9
by Marius Kruger
Remove all trailing white space this bundle would have |
818 |
|
2745.3.1
by Daniel Watkins
Modified errors.py to quote paths just before full stops. Also added some full stops to error messages without them. |
819 |
_fmt = "%(context_info)s%(path)s is already versioned." |
2206.1.5
by Marius Kruger
* errors |
820 |
|
2206.1.7
by Marius Kruger
* errors |
821 |
def __init__(self, path, context_info=None): |
2255.2.29
by Robert Collins
Change the error raised from Dirstate.add for an unversioned parent path to match the WorkingTree interface. |
822 |
"""Construct a new AlreadyVersionedError.
|
2206.1.5
by Marius Kruger
* errors |
823 |
|
2220.1.9
by Marius Kruger
Remove all trailing white space this bundle would have |
824 |
:param path: This is the path which is versioned,
|
5891.1.2
by Andrew Bennetts
Fix a bunch of docstring formatting nits, making pydoctor a bit happier. |
825 |
which should be in a user friendly form.
|
2206.1.7
by Marius Kruger
* errors |
826 |
:param context_info: If given, this is information about the context,
|
5891.1.2
by Andrew Bennetts
Fix a bunch of docstring formatting nits, making pydoctor a bit happier. |
827 |
which could explain why this is expected to not be versioned.
|
2206.1.5
by Marius Kruger
* errors |
828 |
"""
|
829 |
BzrError.__init__(self) |
|
830 |
self.path = path |
|
2206.1.7
by Marius Kruger
* errors |
831 |
if context_info is None: |
832 |
self.context_info = '' |
|
2206.1.5
by Marius Kruger
* errors |
833 |
else: |
2206.1.7
by Marius Kruger
* errors |
834 |
self.context_info = context_info + ". " |
2206.1.5
by Marius Kruger
* errors |
835 |
|
836 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
837 |
class NotVersionedError(BzrError): |
2206.1.7
by Marius Kruger
* errors |
838 |
"""Used when a path is expected to be versioned, but it is not."""
|
2220.1.9
by Marius Kruger
Remove all trailing white space this bundle would have |
839 |
|
2745.3.1
by Daniel Watkins
Modified errors.py to quote paths just before full stops. Also added some full stops to error messages without them. |
840 |
_fmt = "%(context_info)s%(path)s is not versioned." |
2206.1.2
by Marius Kruger
* Made whitespace and puntuation improvements, as requested. |
841 |
|
2206.1.7
by Marius Kruger
* errors |
842 |
def __init__(self, path, context_info=None): |
2206.1.2
by Marius Kruger
* Made whitespace and puntuation improvements, as requested. |
843 |
"""Construct a new NotVersionedError.
|
844 |
||
2220.1.9
by Marius Kruger
Remove all trailing white space this bundle would have |
845 |
:param path: This is the path which is not versioned,
|
5891.1.2
by Andrew Bennetts
Fix a bunch of docstring formatting nits, making pydoctor a bit happier. |
846 |
which should be in a user friendly form.
|
2206.1.7
by Marius Kruger
* errors |
847 |
:param context_info: If given, this is information about the context,
|
5891.1.2
by Andrew Bennetts
Fix a bunch of docstring formatting nits, making pydoctor a bit happier. |
848 |
which could explain why this is expected to be versioned.
|
2206.1.2
by Marius Kruger
* Made whitespace and puntuation improvements, as requested. |
849 |
"""
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
850 |
BzrError.__init__(self) |
1185.16.72
by Martin Pool
[merge] from robert and fix up tests |
851 |
self.path = path |
2206.1.7
by Marius Kruger
* errors |
852 |
if context_info is None: |
853 |
self.context_info = '' |
|
2206.1.2
by Marius Kruger
* Made whitespace and puntuation improvements, as requested. |
854 |
else: |
2206.1.7
by Marius Kruger
* errors |
855 |
self.context_info = context_info + ". " |
2206.1.8
by Marius Kruger
Converted move/rename error messages to show source => target. |
856 |
|
857 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
858 |
class PathsNotVersionedError(BzrError): |
2206.1.7
by Marius Kruger
* errors |
859 |
"""Used when reporting several paths which are not versioned"""
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
860 |
|
861 |
_fmt = "Path(s) are not versioned: %(paths_as_string)s" |
|
1658.1.9
by Martin Pool
Give an error for bzr diff on an nonexistent file (Malone #3619) |
862 |
|
863 |
def __init__(self, paths): |
|
864 |
from bzrlib.osutils import quotefn |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
865 |
BzrError.__init__(self) |
1658.1.9
by Martin Pool
Give an error for bzr diff on an nonexistent file (Malone #3619) |
866 |
self.paths = paths |
867 |
self.paths_as_string = ' '.join([quotefn(p) for p in paths]) |
|
868 |
||
869 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
870 |
class PathsDoNotExist(BzrError): |
871 |
||
2206.1.5
by Marius Kruger
* errors |
872 |
_fmt = "Path(s) do not exist: %(paths_as_string)s%(extra)s" |
1662.1.14
by Martin Pool
(PathsDoNotExist) review style comments |
873 |
|
1662.1.9
by Martin Pool
Give a clear error for bzr status of an unversioned, nonexistent file. (Malone #3619) |
874 |
# used when reporting that paths are neither versioned nor in the working
|
875 |
# tree
|
|
876 |
||
2206.1.5
by Marius Kruger
* errors |
877 |
def __init__(self, paths, extra=None): |
1662.1.14
by Martin Pool
(PathsDoNotExist) review style comments |
878 |
# circular import
|
1662.1.9
by Martin Pool
Give a clear error for bzr status of an unversioned, nonexistent file. (Malone #3619) |
879 |
from bzrlib.osutils import quotefn |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
880 |
BzrError.__init__(self) |
1662.1.9
by Martin Pool
Give a clear error for bzr status of an unversioned, nonexistent file. (Malone #3619) |
881 |
self.paths = paths |
882 |
self.paths_as_string = ' '.join([quotefn(p) for p in paths]) |
|
2206.1.5
by Marius Kruger
* errors |
883 |
if extra: |
884 |
self.extra = ': ' + str(extra) |
|
885 |
else: |
|
886 |
self.extra = '' |
|
1662.1.9
by Martin Pool
Give a clear error for bzr status of an unversioned, nonexistent file. (Malone #3619) |
887 |
|
888 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
889 |
class BadFileKindError(BzrError): |
890 |
||
2100.3.21
by Aaron Bentley
Work on checking out by-reference trees |
891 |
_fmt = 'Cannot operate on "%(filename)s" of unsupported kind "%(kind)s"' |
892 |
||
893 |
def __init__(self, filename, kind): |
|
894 |
BzrError.__init__(self, filename=filename, kind=kind) |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
895 |
|
896 |
||
3287.20.2
by John Arbash Meinel
Raise a clear error about the offending filename when there is a filename with bad characters. |
897 |
class BadFilenameEncoding(BzrError): |
898 |
||
899 |
_fmt = ('Filename %(filename)r is not valid in your current filesystem' |
|
900 |
' encoding %(fs_encoding)s') |
|
901 |
||
902 |
def __init__(self, filename, fs_encoding): |
|
903 |
BzrError.__init__(self) |
|
904 |
self.filename = filename |
|
905 |
self.fs_encoding = fs_encoding |
|
906 |
||
907 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
908 |
class ForbiddenControlFileError(BzrError): |
909 |
||
2745.3.3
by Daniel Watkins
Changed to remove need for escaping of quotes. |
910 |
_fmt = 'Cannot operate on "%(filename)s" because it is a control file' |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
911 |
|
912 |
||
2871.1.1
by Robert Collins
* New class ``bzrlib.errors.InternalBzrError`` which is just a convenient |
913 |
class LockError(InternalBzrError): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
914 |
|
2321.3.6
by Alexander Belchenko
LockError produce unprintable exception on Python 2.5 because it try to override StandardError.message attribute |
915 |
_fmt = "Lock error: %(msg)s" |
2221.2.2
by Aaron Bentley
PEP8-correctness |
916 |
|
1185.16.63
by Martin Pool
- more error conversion |
917 |
# All exceptions from the lock/unlock functions should be from
|
918 |
# this exception class. They will be translated as necessary. The
|
|
919 |
# original exception is available as e.original_error
|
|
1553.5.11
by Martin Pool
Change some lock and transaction related exceptions to BzrNewException style |
920 |
#
|
921 |
# New code should prefer to raise specific subclasses
|
|
5050.8.1
by Parth Malwankar
added test to ensure that BzrError subclasses dont use "message" as a name |
922 |
def __init__(self, msg): |
923 |
self.msg = msg |
|
882
by Martin Pool
- Optionally raise EmptyCommit if there are no changes. Test for this. |
924 |
|
925 |
||
2255.2.145
by Robert Collins
Support unbreakable locks for trees. |
926 |
class LockActive(LockError): |
927 |
||
928 |
_fmt = "The lock for '%(lock_description)s' is in use and cannot be broken." |
|
929 |
||
930 |
internal_error = False |
|
931 |
||
932 |
def __init__(self, lock_description): |
|
933 |
self.lock_description = lock_description |
|
934 |
||
935 |
||
1417.1.6
by Robert Collins
introduce transactions for grouping actions done to and with branches |
936 |
class CommitNotPossible(LockError): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
937 |
|
938 |
_fmt = "A commit was attempted but we do not have a write lock open." |
|
2067.3.2
by Martin Pool
Error cleanup review comments: |
939 |
|
1553.5.11
by Martin Pool
Change some lock and transaction related exceptions to BzrNewException style |
940 |
def __init__(self): |
941 |
pass
|
|
1417.1.6
by Robert Collins
introduce transactions for grouping actions done to and with branches |
942 |
|
943 |
||
944 |
class AlreadyCommitted(LockError): |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
945 |
|
946 |
_fmt = "A rollback was requested, but is not able to be accomplished." |
|
2067.3.2
by Martin Pool
Error cleanup review comments: |
947 |
|
1553.5.11
by Martin Pool
Change some lock and transaction related exceptions to BzrNewException style |
948 |
def __init__(self): |
949 |
pass
|
|
1417.1.6
by Robert Collins
introduce transactions for grouping actions done to and with branches |
950 |
|
951 |
||
1417.1.8
by Robert Collins
use transactions in the weave store interface, which enables caching for log |
952 |
class ReadOnlyError(LockError): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
953 |
|
954 |
_fmt = "A write attempt was made in a read only transaction on %(obj)s" |
|
2067.3.2
by Martin Pool
Error cleanup review comments: |
955 |
|
2255.2.158
by Martin Pool
Most of the integration of dirstate and subtree |
956 |
# TODO: There should also be an error indicating that you need a write
|
957 |
# lock and don't have any lock at all... mbp 20070226
|
|
958 |
||
1553.5.33
by Martin Pool
LockDir review comment fixes |
959 |
def __init__(self, obj): |
960 |
self.obj = obj |
|
1553.5.11
by Martin Pool
Change some lock and transaction related exceptions to BzrNewException style |
961 |
|
962 |
||
2872.5.1
by Martin Pool
Avoid internal error tracebacks on failure to lock on readonly transport (#129701). |
963 |
class LockFailed(LockError): |
964 |
||
965 |
internal_error = False |
|
966 |
||
967 |
_fmt = "Cannot lock %(lock)s: %(why)s" |
|
968 |
||
969 |
def __init__(self, lock, why): |
|
970 |
LockError.__init__(self, '') |
|
971 |
self.lock = lock |
|
972 |
self.why = why |
|
973 |
||
974 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
975 |
class OutSideTransaction(BzrError): |
976 |
||
2221.5.9
by Dmitry Vasiliev
Removed trailing whitespaces and wrapped all long lines |
977 |
_fmt = ("A transaction related operation was attempted after" |
978 |
" the transaction finished.") |
|
1594.2.21
by Robert Collins
Teach versioned files to prevent mutation after finishing. |
979 |
|
980 |
||
1553.5.36
by Martin Pool
Clean up duplicate BranchNotLocked error and rename to ObjectNotLocked |
981 |
class ObjectNotLocked(LockError): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
982 |
|
983 |
_fmt = "%(obj)r is not locked" |
|
1740.5.8
by Martin Pool
Review cleanups: better error reporting, put back report_exception. |
984 |
|
1553.5.36
by Martin Pool
Clean up duplicate BranchNotLocked error and rename to ObjectNotLocked |
985 |
# this can indicate that any particular object is not locked; see also
|
986 |
# LockNotHeld which means that a particular *lock* object is not held by
|
|
987 |
# the caller -- perhaps they should be unified.
|
|
988 |
def __init__(self, obj): |
|
989 |
self.obj = obj |
|
1553.5.11
by Martin Pool
Change some lock and transaction related exceptions to BzrNewException style |
990 |
|
991 |
||
992 |
class ReadOnlyObjectDirtiedError(ReadOnlyError): |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
993 |
|
994 |
_fmt = "Cannot change object %(obj)r in read only transaction" |
|
2067.3.2
by Martin Pool
Error cleanup review comments: |
995 |
|
1553.5.11
by Martin Pool
Change some lock and transaction related exceptions to BzrNewException style |
996 |
def __init__(self, obj): |
997 |
self.obj = obj |
|
998 |
||
999 |
||
1000 |
class UnlockableTransport(LockError): |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1001 |
|
2872.5.1
by Martin Pool
Avoid internal error tracebacks on failure to lock on readonly transport (#129701). |
1002 |
internal_error = False |
1003 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1004 |
_fmt = "Cannot lock: transport is read only: %(transport)s" |
2067.3.2
by Martin Pool
Error cleanup review comments: |
1005 |
|
1553.5.11
by Martin Pool
Change some lock and transaction related exceptions to BzrNewException style |
1006 |
def __init__(self, transport): |
1007 |
self.transport = transport |
|
1008 |
||
1009 |
||
1010 |
class LockContention(LockError): |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1011 |
|
4121.1.1
by Martin Pool
Python2.6 dislikes the attribute name Exception.message |
1012 |
_fmt = 'Could not acquire lock "%(lock)s": %(msg)s' |
2221.2.2
by Aaron Bentley
PEP8-correctness |
1013 |
|
2221.2.1
by Aaron Bentley
Make most lock errors internal |
1014 |
internal_error = False |
2353.4.3
by John Arbash Meinel
Implement a 'ReadLock.temporary_write_lock()' to upgrade to a write-lock in-process. |
1015 |
|
4121.1.1
by Martin Pool
Python2.6 dislikes the attribute name Exception.message |
1016 |
def __init__(self, lock, msg=''): |
1553.5.11
by Martin Pool
Change some lock and transaction related exceptions to BzrNewException style |
1017 |
self.lock = lock |
4121.1.1
by Martin Pool
Python2.6 dislikes the attribute name Exception.message |
1018 |
self.msg = msg |
1553.5.11
by Martin Pool
Change some lock and transaction related exceptions to BzrNewException style |
1019 |
|
1020 |
||
1553.5.23
by Martin Pool
Start LockDir.confirm method and LockBroken exception |
1021 |
class LockBroken(LockError): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1022 |
|
2221.5.9
by Dmitry Vasiliev
Removed trailing whitespaces and wrapped all long lines |
1023 |
_fmt = ("Lock was broken while still open: %(lock)s" |
1024 |
" - check storage consistency!") |
|
2221.2.2
by Aaron Bentley
PEP8-correctness |
1025 |
|
2221.2.1
by Aaron Bentley
Make most lock errors internal |
1026 |
internal_error = False |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1027 |
|
1553.5.23
by Martin Pool
Start LockDir.confirm method and LockBroken exception |
1028 |
def __init__(self, lock): |
1029 |
self.lock = lock |
|
1030 |
||
1031 |
||
1553.5.27
by Martin Pool
Confirm that only the intended holder of a lock was broken. |
1032 |
class LockBreakMismatch(LockError): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1033 |
|
2221.5.9
by Dmitry Vasiliev
Removed trailing whitespaces and wrapped all long lines |
1034 |
_fmt = ("Lock was released and re-acquired before being broken:" |
1035 |
" %(lock)s: held by %(holder)r, wanted to break %(target)r") |
|
2221.2.2
by Aaron Bentley
PEP8-correctness |
1036 |
|
2221.2.1
by Aaron Bentley
Make most lock errors internal |
1037 |
internal_error = False |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1038 |
|
1553.5.27
by Martin Pool
Confirm that only the intended holder of a lock was broken. |
1039 |
def __init__(self, lock, holder, target): |
1040 |
self.lock = lock |
|
1041 |
self.holder = holder |
|
1042 |
self.target = target |
|
1043 |
||
1044 |
||
4634.161.1
by Andrew Bennetts
Add LockCorrupt error, and use it to provide nicer handling of unparseable lock/held/info files. |
1045 |
class LockCorrupt(LockError): |
1046 |
||
1047 |
_fmt = ("Lock is apparently held, but corrupted: %(corruption_info)s\n" |
|
1048 |
"Use 'bzr break-lock' to clear it") |
|
1049 |
||
1050 |
internal_error = False |
|
1051 |
||
1052 |
def __init__(self, corruption_info, file_data=None): |
|
1053 |
self.corruption_info = corruption_info |
|
1054 |
self.file_data = file_data |
|
1055 |
||
1056 |
||
1553.5.11
by Martin Pool
Change some lock and transaction related exceptions to BzrNewException style |
1057 |
class LockNotHeld(LockError): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1058 |
|
1059 |
_fmt = "Lock not held: %(lock)s" |
|
2221.2.2
by Aaron Bentley
PEP8-correctness |
1060 |
|
2221.2.1
by Aaron Bentley
Make most lock errors internal |
1061 |
internal_error = False |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1062 |
|
1553.5.11
by Martin Pool
Change some lock and transaction related exceptions to BzrNewException style |
1063 |
def __init__(self, lock): |
1064 |
self.lock = lock |
|
1065 |
||
1066 |
||
2279.7.1
by Andrew Bennetts
``LockableFiles.lock_write()`` now accepts a ``token`` keyword argument, so that |
1067 |
class TokenLockingNotSupported(LockError): |
1068 |
||
1069 |
_fmt = "The object %(obj)s does not support token specifying a token when locking." |
|
1070 |
||
1071 |
def __init__(self, obj): |
|
1072 |
self.obj = obj |
|
1073 |
||
1074 |
||
2018.5.78
by Andrew Bennetts
Implement RemoteRepository.lock_write/unlock to expect and send tokens over the |
1075 |
class TokenMismatch(LockBroken): |
2279.7.1
by Andrew Bennetts
``LockableFiles.lock_write()`` now accepts a ``token`` keyword argument, so that |
1076 |
|
1077 |
_fmt = "The lock token %(given_token)r does not match lock token %(lock_token)r." |
|
1078 |
||
1079 |
internal_error = True |
|
1080 |
||
1081 |
def __init__(self, given_token, lock_token): |
|
1082 |
self.given_token = given_token |
|
1083 |
self.lock_token = lock_token |
|
1084 |
||
1085 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1086 |
class PointlessCommit(BzrError): |
1087 |
||
1088 |
_fmt = "No changes to commit" |
|
1089 |
||
1090 |
||
1551.15.9
by Aaron Bentley
Better error for selected-file commit of merges |
1091 |
class CannotCommitSelectedFileMerge(BzrError): |
1092 |
||
1093 |
_fmt = 'Selected-file commit of merges is not supported yet:'\ |
|
1094 |
' files %(files_str)s' |
|
1095 |
||
1096 |
def __init__(self, files): |
|
1097 |
files_str = ', '.join(files) |
|
1098 |
BzrError.__init__(self, files=files, files_str=files_str) |
|
1099 |
||
1100 |
||
5718.4.1
by Jelmer Vernooij
Add CommitBuilder.supports_record_entry_contents. |
1101 |
class ExcludesUnsupported(BzrError): |
1102 |
||
1103 |
_fmt = ('Excluding paths during commit is not supported by ' |
|
1104 |
'repository at %(repository)r.') |
|
1105 |
||
1106 |
def __init__(self, repository): |
|
1107 |
BzrError.__init__(self, repository=repository) |
|
1108 |
||
1109 |
||
2625.9.3
by Daniel Watkins
Added BadCommitMessageEncoding error. |
1110 |
class BadCommitMessageEncoding(BzrError): |
1111 |
||
1112 |
_fmt = 'The specified commit message contains characters unsupported by '\ |
|
1113 |
'the current encoding.'
|
|
1114 |
||
1115 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1116 |
class UpgradeReadonly(BzrError): |
1117 |
||
1118 |
_fmt = "Upgrade URL cannot work with readonly URLs." |
|
1119 |
||
1120 |
||
1121 |
class UpToDateFormat(BzrError): |
|
1122 |
||
1123 |
_fmt = "The branch format %(format)s is already at the most recent format." |
|
1534.5.7
by Robert Collins
Start factoring out the upgrade policy logic. |
1124 |
|
1125 |
def __init__(self, format): |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1126 |
BzrError.__init__(self) |
1534.5.7
by Robert Collins
Start factoring out the upgrade policy logic. |
1127 |
self.format = format |
1128 |
||
1129 |
||
1185.22.1
by Michael Ellerman
Implement strict commits with --strict flag. |
1130 |
class StrictCommitFailed(Exception): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1131 |
|
1132 |
_fmt = "Commit refused because there are unknowns in the tree." |
|
1133 |
||
1134 |
||
2871.1.1
by Robert Collins
* New class ``bzrlib.errors.InternalBzrError`` which is just a convenient |
1135 |
class NoSuchRevision(InternalBzrError): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1136 |
|
2696.3.3
by Martin Pool
Start setting the default format to dirstate-tags |
1137 |
_fmt = "%(branch)s has no revision %(revision)s" |
1740.5.6
by Martin Pool
Clean up many exception classes. |
1138 |
|
974.1.26
by aaron.bentley at utoronto
merged mbp@sourcefrog.net-20050817233101-0939da1cf91f2472 |
1139 |
def __init__(self, branch, revision): |
2696.3.3
by Martin Pool
Start setting the default format to dirstate-tags |
1140 |
# 'branch' may sometimes be an internal object like a KnitRevisionStore
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1141 |
BzrError.__init__(self, branch=branch, revision=revision) |
1142 |
||
1143 |
||
2745.4.4
by Lukáš Lalinsky
- Make the description of --change more general |
1144 |
class RangeInChangeOption(BzrError): |
1145 |
||
1146 |
_fmt = "Option --change does not accept revision ranges" |
|
1147 |
||
1148 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1149 |
class NoSuchRevisionSpec(BzrError): |
1150 |
||
1151 |
_fmt = "No namespace registered for string: %(spec)r" |
|
1948.4.25
by John Arbash Meinel
Check that invalid specs are properly handled |
1152 |
|
1153 |
def __init__(self, spec): |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1154 |
BzrError.__init__(self, spec=spec) |
1155 |
||
1156 |
||
1908.11.1
by Robert Collins
Add a new method ``Tree.revision_tree`` which allows access to cached |
1157 |
class NoSuchRevisionInTree(NoSuchRevision): |
1908.11.5
by John Arbash Meinel
[merge] bzr.dev 2240 |
1158 |
"""When using Tree.revision_tree, and the revision is not accessible."""
|
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
1159 |
|
2745.3.3
by Daniel Watkins
Changed to remove need for escaping of quotes. |
1160 |
_fmt = "The revision id {%(revision_id)s} is not present in the tree %(tree)s." |
1908.11.1
by Robert Collins
Add a new method ``Tree.revision_tree`` which allows access to cached |
1161 |
|
1162 |
def __init__(self, tree, revision_id): |
|
1908.11.5
by John Arbash Meinel
[merge] bzr.dev 2240 |
1163 |
BzrError.__init__(self) |
1908.11.1
by Robert Collins
Add a new method ``Tree.revision_tree`` which allows access to cached |
1164 |
self.tree = tree |
1165 |
self.revision_id = revision_id |
|
1166 |
||
1167 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1168 |
class InvalidRevisionSpec(BzrError): |
1169 |
||
5349.3.2
by Neil Martinsen-Burrell
use a computed URL member rather than a custom __str__ method as suggested by JAM in review |
1170 |
_fmt = ("Requested revision: '%(spec)s' does not exist in branch:" |
1171 |
" %(branch_url)s%(extra)s") |
|
1172 |
||
1948.4.1
by John Arbash Meinel
Update number parsers to raise InvalidRevisionSpec. Update revno: itself so it supports negative numbers |
1173 |
def __init__(self, spec, branch, extra=None): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1174 |
BzrError.__init__(self, branch=branch, spec=spec) |
5349.3.2
by Neil Martinsen-Burrell
use a computed URL member rather than a custom __str__ method as suggested by JAM in review |
1175 |
self.branch_url = getattr(branch, 'user_url', str(branch)) |
1948.4.1
by John Arbash Meinel
Update number parsers to raise InvalidRevisionSpec. Update revno: itself so it supports negative numbers |
1176 |
if extra: |
1948.4.15
by John Arbash Meinel
Change the InvalidRevisionSpec formatting to be more readable |
1177 |
self.extra = '\n' + str(extra) |
1948.4.1
by John Arbash Meinel
Update number parsers to raise InvalidRevisionSpec. Update revno: itself so it supports negative numbers |
1178 |
else: |
1179 |
self.extra = '' |
|
1740.5.6
by Martin Pool
Clean up many exception classes. |
1180 |
|
1181 |
||
2230.3.40
by Aaron Bentley
Rename strict_revision_history to append_revisions_only |
1182 |
class AppendRevisionsOnlyViolation(BzrError): |
2230.3.32
by Aaron Bentley
Implement strict history policy |
1183 |
|
2221.5.14
by Dmitry Vasiliev
Wrapped long lines |
1184 |
_fmt = ('Operation denied because it would change the main history,' |
1185 |
' which is not permitted by the append_revisions_only setting on'
|
|
1186 |
' branch "%(location)s".') |
|
2230.3.39
by Aaron Bentley
Improve history violation message |
1187 |
|
1188 |
def __init__(self, location): |
|
1189 |
import bzrlib.urlutils as urlutils |
|
1190 |
location = urlutils.unescape_for_display(location, 'ascii') |
|
1191 |
BzrError.__init__(self, location=location) |
|
2230.3.32
by Aaron Bentley
Implement strict history policy |
1192 |
|
1193 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1194 |
class DivergedBranches(BzrError): |
2221.5.9
by Dmitry Vasiliev
Removed trailing whitespaces and wrapped all long lines |
1195 |
|
1196 |
_fmt = ("These branches have diverged." |
|
4297.3.1
by Samuel Bronson
Add suggestion to use "missing" to message for DivergedBranches. |
1197 |
" Use the missing command to see how.\n" |
4297.3.2
by Jelmer Vernooij
Remove extra space. |
1198 |
"Use the merge command to reconcile them.") |
1740.5.6
by Martin Pool
Clean up many exception classes. |
1199 |
|
1185.2.1
by Lalo Martins
moving DivergedBranches from bzrlib.branch to bzrlib.errors, obeying: |
1200 |
def __init__(self, branch1, branch2): |
1201 |
self.branch1 = branch1 |
|
1202 |
self.branch2 = branch2 |
|
1203 |
||
1390
by Robert Collins
pair programming worx... merge integration and weave |
1204 |
|
2871.1.1
by Robert Collins
* New class ``bzrlib.errors.InternalBzrError`` which is just a convenient |
1205 |
class NotLefthandHistory(InternalBzrError): |
2230.3.44
by Aaron Bentley
Change asserts to specific errors for left-hand history violations |
1206 |
|
1207 |
_fmt = "Supplied history does not follow left-hand parents" |
|
1208 |
||
1209 |
def __init__(self, history): |
|
1210 |
BzrError.__init__(self, history=history) |
|
1211 |
||
1212 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1213 |
class UnrelatedBranches(BzrError): |
2067.3.2
by Martin Pool
Error cleanup review comments: |
1214 |
|
2221.5.9
by Dmitry Vasiliev
Removed trailing whitespaces and wrapped all long lines |
1215 |
_fmt = ("Branches have no common ancestor, and" |
1216 |
" no merge base revision was specified.") |
|
2067.3.2
by Martin Pool
Error cleanup review comments: |
1217 |
|
1740.5.6
by Martin Pool
Clean up many exception classes. |
1218 |
|
3062.2.7
by Aaron Bentley
Prevent reverse cherry-picking with weave |
1219 |
class CannotReverseCherrypick(BzrError): |
1220 |
||
1221 |
_fmt = ('Selected merge cannot perform reverse cherrypicks. Try merge3' |
|
1222 |
' or diff3.') |
|
1223 |
||
1224 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1225 |
class NoCommonAncestor(BzrError): |
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
1226 |
|
2067.3.2
by Martin Pool
Error cleanup review comments: |
1227 |
_fmt = "Revisions have no common ancestor: %(revision_a)s %(revision_b)s" |
1740.5.6
by Martin Pool
Clean up many exception classes. |
1228 |
|
974.1.80
by Aaron Bentley
Improved merge error handling and testing |
1229 |
def __init__(self, revision_a, revision_b): |
1740.5.6
by Martin Pool
Clean up many exception classes. |
1230 |
self.revision_a = revision_a |
1231 |
self.revision_b = revision_b |
|
974.1.80
by Aaron Bentley
Improved merge error handling and testing |
1232 |
|
1551.2.1
by Aaron Bentley
recommit 1527 PEP8 fixes |
1233 |
|
974.1.80
by Aaron Bentley
Improved merge error handling and testing |
1234 |
class NoCommonRoot(BzrError): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1235 |
|
2221.5.9
by Dmitry Vasiliev
Removed trailing whitespaces and wrapped all long lines |
1236 |
_fmt = ("Revisions are not derived from the same root: " |
1237 |
"%(revision_a)s %(revision_b)s.") |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1238 |
|
974.1.80
by Aaron Bentley
Improved merge error handling and testing |
1239 |
def __init__(self, revision_a, revision_b): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1240 |
BzrError.__init__(self, revision_a=revision_a, revision_b=revision_b) |
1551.2.1
by Aaron Bentley
recommit 1527 PEP8 fixes |
1241 |
|
1587.1.6
by Robert Collins
Update bound branch implementation to 0.8. |
1242 |
|
974.2.7
by aaron.bentley at utoronto
Merged from bzr.24 |
1243 |
class NotAncestor(BzrError): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1244 |
|
1245 |
_fmt = "Revision %(rev_id)s is not an ancestor of %(not_ancestor_id)s" |
|
1246 |
||
974.2.7
by aaron.bentley at utoronto
Merged from bzr.24 |
1247 |
def __init__(self, rev_id, not_ancestor_id): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1248 |
BzrError.__init__(self, rev_id=rev_id, |
1249 |
not_ancestor_id=not_ancestor_id) |
|
1185.1.12
by Robert Collins
merge in lsdiff/filterdiff friendliness |
1250 |
|
1251 |
||
3221.11.2
by Robert Collins
Create basic stackable branch facility. |
1252 |
class NoCommits(BranchError): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1253 |
|
1254 |
_fmt = "Branch %(branch)s has no commits." |
|
1948.4.20
by John Arbash Meinel
Make NoCommits a BzrNewError |
1255 |
|
1551.2.1
by Aaron Bentley
recommit 1527 PEP8 fixes |
1256 |
|
1185.10.1
by Aaron Bentley
Added --basis option to bzr branch |
1257 |
class UnlistableStore(BzrError): |
2067.3.2
by Martin Pool
Error cleanup review comments: |
1258 |
|
1185.10.1
by Aaron Bentley
Added --basis option to bzr branch |
1259 |
def __init__(self, store): |
1260 |
BzrError.__init__(self, "Store %s is not listable" % store) |
|
1261 |
||
1551.2.1
by Aaron Bentley
recommit 1527 PEP8 fixes |
1262 |
|
1587.1.6
by Robert Collins
Update bound branch implementation to 0.8. |
1263 |
|
1185.10.1
by Aaron Bentley
Added --basis option to bzr branch |
1264 |
class UnlistableBranch(BzrError): |
2067.3.2
by Martin Pool
Error cleanup review comments: |
1265 |
|
1185.10.1
by Aaron Bentley
Added --basis option to bzr branch |
1266 |
def __init__(self, br): |
1267 |
BzrError.__init__(self, "Stores for branch %s are not listable" % br) |
|
1392
by Robert Collins
reinstate testfetch test case |
1268 |
|
1269 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1270 |
class BoundBranchOutOfDate(BzrError): |
1271 |
||
2745.3.3
by Daniel Watkins
Changed to remove need for escaping of quotes. |
1272 |
_fmt = ("Bound branch %(branch)s is out of date with master branch" |
5066.1.1
by Gary van der Merwe
Make it possible to detect a BoundBranchOutOfDate from commit. |
1273 |
" %(master)s.%(extra_help)s") |
2067.3.2
by Martin Pool
Error cleanup review comments: |
1274 |
|
1505.1.24
by John Arbash Meinel
Updated commit to handle bound branches. Included test to handle commit after merge |
1275 |
def __init__(self, branch, master): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1276 |
BzrError.__init__(self) |
1505.1.24
by John Arbash Meinel
Updated commit to handle bound branches. Included test to handle commit after merge |
1277 |
self.branch = branch |
1278 |
self.master = master |
|
5066.1.1
by Gary van der Merwe
Make it possible to detect a BoundBranchOutOfDate from commit. |
1279 |
self.extra_help = '' |
1505.1.24
by John Arbash Meinel
Updated commit to handle bound branches. Included test to handle commit after merge |
1280 |
|
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
1281 |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1282 |
class CommitToDoubleBoundBranch(BzrError): |
1283 |
||
2745.3.3
by Daniel Watkins
Changed to remove need for escaping of quotes. |
1284 |
_fmt = ("Cannot commit to branch %(branch)s." |
1285 |
" It is bound to %(master)s, which is bound to %(remote)s.") |
|
2067.3.2
by Martin Pool
Error cleanup review comments: |
1286 |
|
1505.1.24
by John Arbash Meinel
Updated commit to handle bound branches. Included test to handle commit after merge |
1287 |
def __init__(self, branch, master, remote): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1288 |
BzrError.__init__(self) |
1505.1.24
by John Arbash Meinel
Updated commit to handle bound branches. Included test to handle commit after merge |
1289 |
self.branch = branch |
1290 |
self.master = master |
|
1291 |
self.remote = remote |
|
1292 |
||
1505.1.25
by John Arbash Meinel
Updated pull. Now all paths which call set_revision_history maintain the branch invariant. All tests pass. |
1293 |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1294 |
class OverwriteBoundBranch(BzrError): |
1295 |
||
2745.3.3
by Daniel Watkins
Changed to remove need for escaping of quotes. |
1296 |
_fmt = "Cannot pull --overwrite to a branch which is bound %(branch)s" |
2067.3.2
by Martin Pool
Error cleanup review comments: |
1297 |
|
1505.1.25
by John Arbash Meinel
Updated pull. Now all paths which call set_revision_history maintain the branch invariant. All tests pass. |
1298 |
def __init__(self, branch): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1299 |
BzrError.__init__(self) |
1505.1.25
by John Arbash Meinel
Updated pull. Now all paths which call set_revision_history maintain the branch invariant. All tests pass. |
1300 |
self.branch = branch |
1301 |
||
1505.1.29
by John Arbash Meinel
Added special exceptions when unable to contact parent branch. Added tests for failure. bind() no longer updates the remote working tree |
1302 |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1303 |
class BoundBranchConnectionFailure(BzrError): |
1304 |
||
2221.5.9
by Dmitry Vasiliev
Removed trailing whitespaces and wrapped all long lines |
1305 |
_fmt = ("Unable to connect to target of bound branch %(branch)s" |
1306 |
" => %(target)s: %(error)s") |
|
2067.3.2
by Martin Pool
Error cleanup review comments: |
1307 |
|
1505.1.29
by John Arbash Meinel
Added special exceptions when unable to contact parent branch. Added tests for failure. bind() no longer updates the remote working tree |
1308 |
def __init__(self, branch, target, error): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1309 |
BzrError.__init__(self) |
1505.1.29
by John Arbash Meinel
Added special exceptions when unable to contact parent branch. Added tests for failure. bind() no longer updates the remote working tree |
1310 |
self.branch = branch |
1311 |
self.target = target |
|
1312 |
self.error = error |
|
1313 |
||
1314 |
||
5582.9.20
by Jelmer Vernooij
remove some of the weave changes. |
1315 |
class WeaveError(BzrError): |
1316 |
||
1317 |
_fmt = "Error in processing weave: %(msg)s" |
|
1318 |
||
1319 |
def __init__(self, msg=None): |
|
1320 |
BzrError.__init__(self) |
|
1321 |
self.msg = msg |
|
1322 |
||
1323 |
||
1324 |
class WeaveRevisionAlreadyPresent(WeaveError): |
|
1325 |
||
1326 |
_fmt = "Revision {%(revision_id)s} already present in %(weave)s" |
|
1327 |
||
1328 |
def __init__(self, revision_id, weave): |
|
1329 |
||
1330 |
WeaveError.__init__(self) |
|
1331 |
self.revision_id = revision_id |
|
1332 |
self.weave = weave |
|
1333 |
||
1334 |
||
1335 |
class WeaveRevisionNotPresent(WeaveError): |
|
1336 |
||
1337 |
_fmt = "Revision {%(revision_id)s} not present in %(weave)s" |
|
1338 |
||
1339 |
def __init__(self, revision_id, weave): |
|
1340 |
WeaveError.__init__(self) |
|
1341 |
self.revision_id = revision_id |
|
1342 |
self.weave = weave |
|
1343 |
||
1344 |
||
1345 |
class WeaveFormatError(WeaveError): |
|
1346 |
||
1347 |
_fmt = "Weave invariant violated: %(what)s" |
|
1348 |
||
1349 |
def __init__(self, what): |
|
1350 |
WeaveError.__init__(self) |
|
1351 |
self.what = what |
|
1352 |
||
1353 |
||
1354 |
class WeaveParentMismatch(WeaveError): |
|
1355 |
||
1356 |
_fmt = "Parents are mismatched between two revisions. %(msg)s" |
|
1357 |
||
1358 |
||
1359 |
class WeaveInvalidChecksum(WeaveError): |
|
1360 |
||
1361 |
_fmt = "Text did not match its checksum: %(msg)s" |
|
1362 |
||
1363 |
||
1364 |
class WeaveTextDiffers(WeaveError): |
|
1365 |
||
1366 |
_fmt = ("Weaves differ on text content. Revision:" |
|
1367 |
" {%(revision_id)s}, %(weave_a)s, %(weave_b)s") |
|
1368 |
||
1369 |
def __init__(self, revision_id, weave_a, weave_b): |
|
1370 |
WeaveError.__init__(self) |
|
1371 |
self.revision_id = revision_id |
|
1372 |
self.weave_a = weave_a |
|
1373 |
self.weave_b = weave_b |
|
1374 |
||
1375 |
||
1376 |
class WeaveTextDiffers(WeaveError): |
|
1377 |
||
1378 |
_fmt = ("Weaves differ on text content. Revision:" |
|
1379 |
" {%(revision_id)s}, %(weave_a)s, %(weave_b)s") |
|
1380 |
||
1381 |
def __init__(self, revision_id, weave_a, weave_b): |
|
1382 |
WeaveError.__init__(self) |
|
1383 |
self.revision_id = revision_id |
|
1384 |
self.weave_a = weave_a |
|
1385 |
self.weave_b = weave_b |
|
1386 |
||
1387 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1388 |
class VersionedFileError(BzrError): |
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
1389 |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1390 |
_fmt = "Versioned file error" |
1563.2.1
by Robert Collins
Merge in a variation of the versionedfile api from versioned-file. |
1391 |
|
1392 |
||
1393 |
class RevisionNotPresent(VersionedFileError): |
|
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
1394 |
|
2745.3.3
by Daniel Watkins
Changed to remove need for escaping of quotes. |
1395 |
_fmt = 'Revision {%(revision_id)s} not present in "%(file_id)s".' |
1563.2.1
by Robert Collins
Merge in a variation of the versionedfile api from versioned-file. |
1396 |
|
1397 |
def __init__(self, revision_id, file_id): |
|
1398 |
VersionedFileError.__init__(self) |
|
1399 |
self.revision_id = revision_id |
|
1400 |
self.file_id = file_id |
|
1401 |
||
1402 |
||
1403 |
class RevisionAlreadyPresent(VersionedFileError): |
|
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
1404 |
|
2745.3.3
by Daniel Watkins
Changed to remove need for escaping of quotes. |
1405 |
_fmt = 'Revision {%(revision_id)s} already present in "%(file_id)s".' |
1563.2.1
by Robert Collins
Merge in a variation of the versionedfile api from versioned-file. |
1406 |
|
1407 |
def __init__(self, revision_id, file_id): |
|
1408 |
VersionedFileError.__init__(self) |
|
1409 |
self.revision_id = revision_id |
|
1410 |
self.file_id = file_id |
|
1411 |
||
1412 |
||
2520.4.71
by Aaron Bentley
Update test to accept VersionedFileInvalidChecksum instead of TestamentMismatch |
1413 |
class VersionedFileInvalidChecksum(VersionedFileError): |
1414 |
||
5050.8.1
by Parth Malwankar
added test to ensure that BzrError subclasses dont use "message" as a name |
1415 |
_fmt = "Text did not match its checksum: %(msg)s" |
2520.4.71
by Aaron Bentley
Update test to accept VersionedFileInvalidChecksum instead of TestamentMismatch |
1416 |
|
1417 |
||
2871.1.1
by Robert Collins
* New class ``bzrlib.errors.InternalBzrError`` which is just a convenient |
1418 |
class KnitError(InternalBzrError): |
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
1419 |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1420 |
_fmt = "Knit error" |
1563.2.1
by Robert Collins
Merge in a variation of the versionedfile api from versioned-file. |
1421 |
|
1422 |
||
2535.3.4
by Andrew Bennetts
Simple implementation of Knit.insert_data_stream. |
1423 |
class KnitCorrupt(KnitError): |
1424 |
||
1425 |
_fmt = "Knit %(filename)s corrupt: %(how)s" |
|
1426 |
||
1427 |
def __init__(self, filename, how): |
|
1428 |
KnitError.__init__(self) |
|
1429 |
self.filename = filename |
|
1430 |
self.how = how |
|
1431 |
||
1432 |
||
3787.1.1
by Robert Collins
Embed the failed text in sha1 knit errors. |
1433 |
class SHA1KnitCorrupt(KnitCorrupt): |
1434 |
||
3787.1.2
by Robert Collins
Ensure SHA1KnitCorrupt formats ok. |
1435 |
_fmt = ("Knit %(filename)s corrupt: sha-1 of reconstructed text does not " |
3787.1.1
by Robert Collins
Embed the failed text in sha1 knit errors. |
1436 |
"match expected sha-1. key %(key)s expected sha %(expected)s actual " |
3787.1.2
by Robert Collins
Ensure SHA1KnitCorrupt formats ok. |
1437 |
"sha %(actual)s") |
3787.1.1
by Robert Collins
Embed the failed text in sha1 knit errors. |
1438 |
|
1439 |
def __init__(self, filename, actual, expected, key, content): |
|
1440 |
KnitError.__init__(self) |
|
1441 |
self.filename = filename |
|
1442 |
self.actual = actual |
|
1443 |
self.expected = expected |
|
1444 |
self.key = key |
|
1445 |
self.content = content |
|
1446 |
||
1447 |
||
2535.3.4
by Andrew Bennetts
Simple implementation of Knit.insert_data_stream. |
1448 |
class KnitDataStreamIncompatible(KnitError): |
3052.2.5
by Andrew Bennetts
Address the rest of the review comments from John and myself. |
1449 |
# Not raised anymore, as we can convert data streams. In future we may
|
1450 |
# need it again for more exotic cases, so we're keeping it around for now.
|
|
2535.3.4
by Andrew Bennetts
Simple implementation of Knit.insert_data_stream. |
1451 |
|
1452 |
_fmt = "Cannot insert knit data stream of format \"%(stream_format)s\" into knit of format \"%(target_format)s\"." |
|
1453 |
||
1454 |
def __init__(self, stream_format, target_format): |
|
1455 |
self.stream_format = stream_format |
|
1456 |
self.target_format = target_format |
|
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
1457 |
|
2535.3.4
by Andrew Bennetts
Simple implementation of Knit.insert_data_stream. |
1458 |
|
3052.2.1
by Robert Collins
Add a new KnitDataStreamUnknown error class for showing formats we can't understand. |
1459 |
class KnitDataStreamUnknown(KnitError): |
1460 |
# Indicates a data stream we don't know how to handle.
|
|
1461 |
||
1462 |
_fmt = "Cannot parse knit data stream of format \"%(stream_format)s\"." |
|
1463 |
||
1464 |
def __init__(self, stream_format): |
|
1465 |
self.stream_format = stream_format |
|
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
1466 |
|
3052.2.1
by Robert Collins
Add a new KnitDataStreamUnknown error class for showing formats we can't understand. |
1467 |
|
1563.2.1
by Robert Collins
Merge in a variation of the versionedfile api from versioned-file. |
1468 |
class KnitHeaderError(KnitError): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1469 |
|
2745.3.3
by Daniel Watkins
Changed to remove need for escaping of quotes. |
1470 |
_fmt = 'Knit header error: %(badline)r unexpected for file "%(filename)s".' |
1563.2.1
by Robert Collins
Merge in a variation of the versionedfile api from versioned-file. |
1471 |
|
2171.1.1
by John Arbash Meinel
Knit index files should ignore empty indexes rather than consider them corrupt. |
1472 |
def __init__(self, badline, filename): |
1563.2.1
by Robert Collins
Merge in a variation of the versionedfile api from versioned-file. |
1473 |
KnitError.__init__(self) |
1474 |
self.badline = badline |
|
2171.1.1
by John Arbash Meinel
Knit index files should ignore empty indexes rather than consider them corrupt. |
1475 |
self.filename = filename |
1563.2.1
by Robert Collins
Merge in a variation of the versionedfile api from versioned-file. |
1476 |
|
2196.2.5
by John Arbash Meinel
Add an exception class when the knit index storage method is unknown, and properly test for it |
1477 |
class KnitIndexUnknownMethod(KnitError): |
1478 |
"""Raised when we don't understand the storage method.
|
|
1479 |
||
1480 |
Currently only 'fulltext' and 'line-delta' are supported.
|
|
1481 |
"""
|
|
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
1482 |
|
2196.2.5
by John Arbash Meinel
Add an exception class when the knit index storage method is unknown, and properly test for it |
1483 |
_fmt = ("Knit index %(filename)s does not have a known method" |
1484 |
" in options: %(options)r") |
|
1485 |
||
1486 |
def __init__(self, filename, options): |
|
1487 |
KnitError.__init__(self) |
|
1488 |
self.filename = filename |
|
1489 |
self.options = options |
|
1490 |
||
1491 |
||
3789.2.1
by John Arbash Meinel
_DirectPackAccess can now raise RetryWithNewPacks when we think something has happened. |
1492 |
class RetryWithNewPacks(BzrError): |
1493 |
"""Raised when we realize that the packs on disk have changed.
|
|
1494 |
||
1495 |
This is meant as more of a signaling exception, to trap between where a
|
|
1496 |
local error occurred and the code that can actually handle the error and
|
|
1497 |
code that can retry appropriately.
|
|
1498 |
"""
|
|
1499 |
||
1500 |
internal_error = True |
|
1501 |
||
3789.2.27
by John Arbash Meinel
Add some context information to the Retry exceptions. |
1502 |
_fmt = ("Pack files have changed, reload and retry. context: %(context)s" |
1503 |
" %(orig_error)s") |
|
3789.2.1
by John Arbash Meinel
_DirectPackAccess can now raise RetryWithNewPacks when we think something has happened. |
1504 |
|
3789.2.27
by John Arbash Meinel
Add some context information to the Retry exceptions. |
1505 |
def __init__(self, context, reload_occurred, exc_info): |
3789.2.20
by John Arbash Meinel
The autopack code can now trigger itself to retry when _copy_revision_texts fails. |
1506 |
"""create a new RetryWithNewPacks error.
|
3789.2.1
by John Arbash Meinel
_DirectPackAccess can now raise RetryWithNewPacks when we think something has happened. |
1507 |
|
1508 |
:param reload_occurred: Set to True if we know that the packs have
|
|
1509 |
already been reloaded, and we are failing because of an in-memory
|
|
1510 |
cache miss. If set to True then we will ignore if a reload says
|
|
1511 |
nothing has changed, because we assume it has already reloaded. If
|
|
1512 |
False, then a reload with nothing changed will force an error.
|
|
1513 |
:param exc_info: The original exception traceback, so if there is a
|
|
1514 |
problem we can raise the original error (value from sys.exc_info())
|
|
1515 |
"""
|
|
1516 |
BzrError.__init__(self) |
|
5609.58.1
by Andrew Bennetts
Fix 'Unprintable exception' when displaying RetryWithNewPacks error. |
1517 |
self.context = context |
3789.2.1
by John Arbash Meinel
_DirectPackAccess can now raise RetryWithNewPacks when we think something has happened. |
1518 |
self.reload_occurred = reload_occurred |
1519 |
self.exc_info = exc_info |
|
3789.2.10
by John Arbash Meinel
The first function for KnitVersionedFiles can now retry on request. |
1520 |
self.orig_error = exc_info[1] |
3789.2.1
by John Arbash Meinel
_DirectPackAccess can now raise RetryWithNewPacks when we think something has happened. |
1521 |
# TODO: The global error handler should probably treat this by
|
1522 |
# raising/printing the original exception with a bit about
|
|
1523 |
# RetryWithNewPacks also not being caught
|
|
1524 |
||
1525 |
||
3789.2.20
by John Arbash Meinel
The autopack code can now trigger itself to retry when _copy_revision_texts fails. |
1526 |
class RetryAutopack(RetryWithNewPacks): |
1527 |
"""Raised when we are autopacking and we find a missing file.
|
|
1528 |
||
1529 |
Meant as a signaling exception, to tell the autopack code it should try
|
|
1530 |
again.
|
|
1531 |
"""
|
|
1532 |
||
3789.2.22
by John Arbash Meinel
We need the Packer class to cleanup if it is getting a Retry it isn't handling. |
1533 |
internal_error = True |
1534 |
||
3789.2.27
by John Arbash Meinel
Add some context information to the Retry exceptions. |
1535 |
_fmt = ("Pack files have changed, reload and try autopack again." |
1536 |
" context: %(context)s %(orig_error)s") |
|
3789.2.20
by John Arbash Meinel
The autopack code can now trigger itself to retry when _copy_revision_texts fails. |
1537 |
|
1538 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1539 |
class NoSuchExportFormat(BzrError): |
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
1540 |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1541 |
_fmt = "Export format %(format)r not supported" |
1542 |
||
1185.31.12
by John Arbash Meinel
Refactored the export code to make it easier to add new export formats. |
1543 |
def __init__(self, format): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1544 |
BzrError.__init__(self) |
1185.31.12
by John Arbash Meinel
Refactored the export code to make it easier to add new export formats. |
1545 |
self.format = format |
1546 |
||
1547 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1548 |
class TransportError(BzrError): |
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
1549 |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1550 |
_fmt = "Transport error: %(msg)s %(orig_error)s" |
1824.2.1
by Johan Rydberg
Let TransportError inherit BzrNerError. |
1551 |
|
1185.11.9
by John Arbash Meinel
Most tests pass, some problems with unavailable socket recv |
1552 |
def __init__(self, msg=None, orig_error=None): |
1553 |
if msg is None and orig_error is not None: |
|
1554 |
msg = str(orig_error) |
|
1824.2.1
by Johan Rydberg
Let TransportError inherit BzrNerError. |
1555 |
if orig_error is None: |
1556 |
orig_error = '' |
|
1557 |
if msg is None: |
|
1558 |
msg = '' |
|
1185.11.9
by John Arbash Meinel
Most tests pass, some problems with unavailable socket recv |
1559 |
self.msg = msg |
1560 |
self.orig_error = orig_error |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1561 |
BzrError.__init__(self) |
1185.11.9
by John Arbash Meinel
Most tests pass, some problems with unavailable socket recv |
1562 |
|
1551.2.1
by Aaron Bentley
recommit 1527 PEP8 fixes |
1563 |
|
2871.1.1
by Robert Collins
* New class ``bzrlib.errors.InternalBzrError`` which is just a convenient |
1564 |
class TooManyConcurrentRequests(InternalBzrError): |
2067.3.3
by Martin Pool
merge bzr.dev and reconcile several changes, also some test fixes |
1565 |
|
2221.5.9
by Dmitry Vasiliev
Removed trailing whitespaces and wrapped all long lines |
1566 |
_fmt = ("The medium '%(medium)s' has reached its concurrent request limit." |
2221.5.14
by Dmitry Vasiliev
Wrapped long lines |
1567 |
" Be sure to finish_writing and finish_reading on the"
|
2018.5.134
by Andrew Bennetts
Fix the TooManyConcurrentRequests error message. |
1568 |
" currently open request.") |
2067.3.3
by Martin Pool
merge bzr.dev and reconcile several changes, also some test fixes |
1569 |
|
1570 |
def __init__(self, medium): |
|
1571 |
self.medium = medium |
|
1185.11.9
by John Arbash Meinel
Most tests pass, some problems with unavailable socket recv |
1572 |
|
1551.2.1
by Aaron Bentley
recommit 1527 PEP8 fixes |
1573 |
|
1910.19.14
by Robert Collins
Fix up all tests to pass, remove a couple more deprecated function calls, and break the dependency on sftp for the smart transport. |
1574 |
class SmartProtocolError(TransportError): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1575 |
|
1576 |
_fmt = "Generic bzr smart protocol error: %(details)s" |
|
1910.19.13
by Andrew Bennetts
Address various review comments. |
1577 |
|
1578 |
def __init__(self, details): |
|
1579 |
self.details = details |
|
1580 |
||
1581 |
||
3245.4.42
by Andrew Bennetts
Make _SmartClient automatically detect and use the highest protocol version compatible with the server. |
1582 |
class UnexpectedProtocolVersionMarker(TransportError): |
1583 |
||
3245.4.56
by Andrew Bennetts
Clearer message for UnexpectedProtocolVersionMarker. |
1584 |
_fmt = "Received bad protocol version marker: %(marker)r" |
3245.4.42
by Andrew Bennetts
Make _SmartClient automatically detect and use the highest protocol version compatible with the server. |
1585 |
|
1586 |
def __init__(self, marker): |
|
1587 |
self.marker = marker |
|
1588 |
||
1589 |
||
3297.3.1
by Andrew Bennetts
Raise UnknownSmartMethod automatically from read_response_tuple. |
1590 |
class UnknownSmartMethod(InternalBzrError): |
1591 |
||
1592 |
_fmt = "The server does not recognise the '%(verb)s' request." |
|
1593 |
||
1594 |
def __init__(self, verb): |
|
1595 |
self.verb = verb |
|
1596 |
||
1597 |
||
3245.4.49
by Andrew Bennetts
Distinguish between errors in decoding a message into message parts from errors in handling decoded message parts, and use that to make sure that entire requests are read even when they result in exceptions. |
1598 |
class SmartMessageHandlerError(InternalBzrError): |
1599 |
||
3695.2.2
by Andrew Bennetts
Rough cut of implementing and using a VersionedFiles.get_parent_map RPC. |
1600 |
_fmt = ("The message handler raised an exception:\n" |
3883.2.3
by Andrew Bennetts
Add test, tweak traceback formatting. |
1601 |
"%(traceback_text)s") |
3245.4.49
by Andrew Bennetts
Distinguish between errors in decoding a message into message parts from errors in handling decoded message parts, and use that to make sure that entire requests are read even when they result in exceptions. |
1602 |
|
1603 |
def __init__(self, exc_info): |
|
3695.2.2
by Andrew Bennetts
Rough cut of implementing and using a VersionedFiles.get_parent_map RPC. |
1604 |
import traceback |
5340.15.1
by John Arbash Meinel
supersede exc-info branch |
1605 |
# GZ 2010-08-10: Cycle with exc_tb/exc_info affects at least one test
|
3695.2.2
by Andrew Bennetts
Rough cut of implementing and using a VersionedFiles.get_parent_map RPC. |
1606 |
self.exc_type, self.exc_value, self.exc_tb = exc_info |
1607 |
self.exc_info = exc_info |
|
3883.2.3
by Andrew Bennetts
Add test, tweak traceback formatting. |
1608 |
traceback_strings = traceback.format_exception( |
1609 |
self.exc_type, self.exc_value, self.exc_tb) |
|
1610 |
self.traceback_text = ''.join(traceback_strings) |
|
3695.2.2
by Andrew Bennetts
Rough cut of implementing and using a VersionedFiles.get_parent_map RPC. |
1611 |
|
3245.4.49
by Andrew Bennetts
Distinguish between errors in decoding a message into message parts from errors in handling decoded message parts, and use that to make sure that entire requests are read even when they result in exceptions. |
1612 |
|
1185.11.9
by John Arbash Meinel
Most tests pass, some problems with unavailable socket recv |
1613 |
# A set of semi-meaningful errors which can be thrown
|
1614 |
class TransportNotPossible(TransportError): |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1615 |
|
1616 |
_fmt = "Transport operation not possible: %(msg)s %(orig_error)s" |
|
1185.11.9
by John Arbash Meinel
Most tests pass, some problems with unavailable socket recv |
1617 |
|
1185.31.44
by John Arbash Meinel
Cleaned up Exceptions for all transports. |
1618 |
|
1619 |
class ConnectionError(TransportError): |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1620 |
|
1621 |
_fmt = "Connection error: %(msg)s %(orig_error)s" |
|
1185.31.44
by John Arbash Meinel
Cleaned up Exceptions for all transports. |
1622 |
|
1185.11.9
by John Arbash Meinel
Most tests pass, some problems with unavailable socket recv |
1623 |
|
2052.4.4
by John Arbash Meinel
Create a SocketConnectionError to make creating nice errors easier |
1624 |
class SocketConnectionError(ConnectionError): |
2067.3.3
by Martin Pool
merge bzr.dev and reconcile several changes, also some test fixes |
1625 |
|
1626 |
_fmt = "%(msg)s %(host)s%(port)s%(orig_error)s" |
|
2052.4.4
by John Arbash Meinel
Create a SocketConnectionError to make creating nice errors easier |
1627 |
|
1628 |
def __init__(self, host, port=None, msg=None, orig_error=None): |
|
1629 |
if msg is None: |
|
1630 |
msg = 'Failed to connect to' |
|
1631 |
if orig_error is None: |
|
1632 |
orig_error = '' |
|
1633 |
else: |
|
1634 |
orig_error = '; ' + str(orig_error) |
|
1635 |
ConnectionError.__init__(self, msg=msg, orig_error=orig_error) |
|
1636 |
self.host = host |
|
1637 |
if port is None: |
|
1638 |
self.port = '' |
|
1639 |
else: |
|
1640 |
self.port = ':%s' % port |
|
1641 |
||
1642 |
||
4070.8.1
by Martin Pool
Remove 'try -Dhpss' from error messages |
1643 |
# XXX: This is also used for unexpected end of file, which is different at the
|
1644 |
# TCP level from "connection reset".
|
|
1185.11.9
by John Arbash Meinel
Most tests pass, some problems with unavailable socket recv |
1645 |
class ConnectionReset(TransportError): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1646 |
|
1647 |
_fmt = "Connection closed: %(msg)s %(orig_error)s" |
|
1185.11.9
by John Arbash Meinel
Most tests pass, some problems with unavailable socket recv |
1648 |
|
1551.2.1
by Aaron Bentley
recommit 1527 PEP8 fixes |
1649 |
|
6133.4.11
by John Arbash Meinel
It turns out that if we don't explicitly close the socket, it hangs around somewhere. |
1650 |
class ConnectionTimeout(ConnectionError): |
1651 |
||
6133.4.34
by John Arbash Meinel
get the blackbox tests passing. |
1652 |
_fmt = "Connection Timeout: %(msg)s%(orig_error)s" |
6133.4.11
by John Arbash Meinel
It turns out that if we don't explicitly close the socket, it hangs around somewhere. |
1653 |
|
1654 |
||
1786.1.8
by John Arbash Meinel
[merge] Johan Rydberg test updates |
1655 |
class InvalidRange(TransportError): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1656 |
|
3059.2.2
by Vincent Ladeuil
Read http responses on demand without buffering the whole body |
1657 |
_fmt = "Invalid range access in %(path)s at %(offset)s: %(msg)s" |
1658 |
||
1659 |
def __init__(self, path, offset, msg=None): |
|
1660 |
TransportError.__init__(self, msg) |
|
1979.1.1
by John Arbash Meinel
Fix bug #57723, parse boundary="" correctly, since Squid uses it |
1661 |
self.path = path |
1662 |
self.offset = offset |
|
1786.1.8
by John Arbash Meinel
[merge] Johan Rydberg test updates |
1663 |
|
1664 |
||
1786.1.17
by John Arbash Meinel
Adding tests for _parse_boundary. |
1665 |
class InvalidHttpResponse(TransportError): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1666 |
|
5609.39.8
by Vincent Ladeuil
Stop swallowing details about the original error |
1667 |
_fmt = "Invalid http response for %(path)s: %(msg)s%(orig_error)s" |
1786.1.17
by John Arbash Meinel
Adding tests for _parse_boundary. |
1668 |
|
1786.1.31
by John Arbash Meinel
Update http errors to properly use BzrNewError |
1669 |
def __init__(self, path, msg, orig_error=None): |
1786.1.17
by John Arbash Meinel
Adding tests for _parse_boundary. |
1670 |
self.path = path |
5609.39.8
by Vincent Ladeuil
Stop swallowing details about the original error |
1671 |
if orig_error is None: |
1672 |
orig_error = '' |
|
1673 |
else: |
|
1674 |
# This is reached for obscure and unusual errors so we want to
|
|
1675 |
# preserve as much info as possible to ease debug.
|
|
1676 |
orig_error = ': %r' % (orig_error,) |
|
1786.1.31
by John Arbash Meinel
Update http errors to properly use BzrNewError |
1677 |
TransportError.__init__(self, msg, orig_error=orig_error) |
1786.1.17
by John Arbash Meinel
Adding tests for _parse_boundary. |
1678 |
|
1679 |
||
6238.2.4
by Jelmer Vernooij
Verify ssl certificates when using urllib. |
1680 |
class CertificateError(TransportError): |
1681 |
||
1682 |
_fmt = "Certificate error: %(error)s" |
|
1683 |
||
1684 |
def __init__(self, error): |
|
1685 |
self.error = error |
|
1686 |
||
1687 |
||
1786.1.17
by John Arbash Meinel
Adding tests for _parse_boundary. |
1688 |
class InvalidHttpRange(InvalidHttpResponse): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1689 |
|
1690 |
_fmt = "Invalid http range %(range)r for %(path)s: %(msg)s" |
|
3059.2.2
by Vincent Ladeuil
Read http responses on demand without buffering the whole body |
1691 |
|
1786.1.13
by John Arbash Meinel
Found a few bugs in error handling code, updated tests |
1692 |
def __init__(self, path, range, msg): |
1693 |
self.range = range |
|
1786.1.17
by John Arbash Meinel
Adding tests for _parse_boundary. |
1694 |
InvalidHttpResponse.__init__(self, path, msg) |
1695 |
||
1696 |
||
5609.52.1
by Martin Pool
Cope with buggy squids interrupting the response before a mime multipart boundary |
1697 |
class HttpBoundaryMissing(InvalidHttpResponse): |
1698 |
"""A multipart response ends with no boundary marker.
|
|
1699 |
||
1700 |
This is a special case caused by buggy proxies, described in
|
|
1701 |
<https://bugs.launchpad.net/bzr/+bug/198646>.
|
|
1702 |
"""
|
|
1703 |
||
1704 |
_fmt = "HTTP MIME Boundary missing for %(path)s: %(msg)s" |
|
1705 |
||
1706 |
def __init__(self, path, msg): |
|
1707 |
InvalidHttpResponse.__init__(self, path, msg) |
|
1708 |
||
1709 |
||
1786.1.17
by John Arbash Meinel
Adding tests for _parse_boundary. |
1710 |
class InvalidHttpContentType(InvalidHttpResponse): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1711 |
|
1712 |
_fmt = 'Invalid http Content-type "%(ctype)s" for %(path)s: %(msg)s' |
|
3059.2.2
by Vincent Ladeuil
Read http responses on demand without buffering the whole body |
1713 |
|
1786.1.17
by John Arbash Meinel
Adding tests for _parse_boundary. |
1714 |
def __init__(self, path, ctype, msg): |
1715 |
self.ctype = ctype |
|
1716 |
InvalidHttpResponse.__init__(self, path, msg) |
|
1786.1.13
by John Arbash Meinel
Found a few bugs in error handling code, updated tests |
1717 |
|
1718 |
||
2164.2.1
by v.ladeuil+lp at free
First rough http branch redirection implementation. |
1719 |
class RedirectRequested(TransportError): |
1720 |
||
1721 |
_fmt = '%(source)s is%(permanently)s redirected to %(target)s' |
|
1722 |
||
3878.4.4
by Vincent Ladeuil
Cleanup. |
1723 |
def __init__(self, source, target, is_permanent=False): |
2164.2.1
by v.ladeuil+lp at free
First rough http branch redirection implementation. |
1724 |
self.source = source |
1725 |
self.target = target |
|
2949.4.1
by Vincent Ladeuil
Fix typo (is_permament => is_permanent) reported on IRC |
1726 |
if is_permanent: |
2164.2.1
by v.ladeuil+lp at free
First rough http branch redirection implementation. |
1727 |
self.permanently = ' permanently' |
1728 |
else: |
|
1729 |
self.permanently = '' |
|
2164.2.7
by v.ladeuil+lp at free
First implementation of transport hints. |
1730 |
TransportError.__init__(self) |
1731 |
||
2164.2.22
by Vincent Ladeuil
Take Aaron's review comments into account. |
1732 |
|
1733 |
class TooManyRedirections(TransportError): |
|
1734 |
||
1735 |
_fmt = "Too many redirections" |
|
2164.2.7
by v.ladeuil+lp at free
First implementation of transport hints. |
1736 |
|
2930.1.1
by Ian Clatworthy
error msg instead of assert when connection over bzr+ssh fails (#115601) |
1737 |
|
1185.14.10
by Aaron Bentley
Commit aborts with conflicts in the tree. |
1738 |
class ConflictsInTree(BzrError): |
2067.3.2
by Martin Pool
Error cleanup review comments: |
1739 |
|
1740 |
_fmt = "Working tree has conflicts." |
|
1185.12.49
by Aaron Bentley
Switched to ConfigObj |
1741 |
|
1551.2.1
by Aaron Bentley
recommit 1527 PEP8 fixes |
1742 |
|
5987.1.3
by Vincent Ladeuil
Proper message when authentication.conf has non-utf8 content |
1743 |
class ConfigContentError(BzrError): |
1744 |
||
1745 |
_fmt = "Config file %(filename)s is not UTF-8 encoded\n" |
|
1746 |
||
1747 |
def __init__(self, filename): |
|
1748 |
BzrError.__init__(self) |
|
1749 |
self.filename = filename |
|
1750 |
||
1751 |
||
1185.12.49
by Aaron Bentley
Switched to ConfigObj |
1752 |
class ParseConfigError(BzrError): |
2067.3.2
by Martin Pool
Error cleanup review comments: |
1753 |
|
5743.2.7
by Vincent Ladeuil
Implement loading a config store from a string or a file. |
1754 |
_fmt = "Error(s) parsing config file %(filename)s:\n%(errors)s" |
1755 |
||
1185.12.49
by Aaron Bentley
Switched to ConfigObj |
1756 |
def __init__(self, errors, filename): |
5743.2.7
by Vincent Ladeuil
Implement loading a config store from a string or a file. |
1757 |
BzrError.__init__(self) |
1758 |
self.filename = filename |
|
1759 |
self.errors = '\n'.join(e.msg for e in errors) |
|
1185.12.52
by Aaron Bentley
Merged more config stuff from Robert |
1760 |
|
1551.2.1
by Aaron Bentley
recommit 1527 PEP8 fixes |
1761 |
|
6059.1.5
by Vincent Ladeuil
Handle invalid config option values. |
1762 |
class ConfigOptionValueError(BzrError): |
1763 |
||
6437.25.6
by Vincent Ladeuil
Feedback from mgz. |
1764 |
_fmt = ('Bad value "%(value)s" for option "%(name)s".\n' |
1765 |
'See ``bzr help %(name)s``') |
|
6059.1.5
by Vincent Ladeuil
Handle invalid config option values. |
1766 |
|
1767 |
def __init__(self, name, value): |
|
1768 |
BzrError.__init__(self, name=name, value=value) |
|
1769 |
||
1770 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1771 |
class NoEmailInUsername(BzrError): |
1772 |
||
1773 |
_fmt = "%(username)r does not seem to contain a reasonable email address" |
|
2055.2.2
by John Arbash Meinel
Switch extract_email_address() to use a more specific exception |
1774 |
|
1775 |
def __init__(self, username): |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1776 |
BzrError.__init__(self) |
2055.2.2
by John Arbash Meinel
Switch extract_email_address() to use a more specific exception |
1777 |
self.username = username |
1778 |
||
1779 |
||
1442.1.58
by Robert Collins
gpg signing of content |
1780 |
class SigningFailed(BzrError): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1781 |
|
5971.1.5
by Jonathan Riddell
catch errors from gpgme, implement verify in dummy gpg strategies |
1782 |
_fmt = 'Failed to GPG sign data with command "%(command_line)s"' |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1783 |
|
1442.1.58
by Robert Collins
gpg signing of content |
1784 |
def __init__(self, command_line): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1785 |
BzrError.__init__(self, command_line=command_line) |
1185.12.83
by Aaron Bentley
Preliminary weave merge support |
1786 |
|
1551.2.1
by Aaron Bentley
recommit 1527 PEP8 fixes |
1787 |
|
5971.1.33
by Jonathan Riddell
rename errors.VerifyFailed to errors.SignatureVerificationFailed |
1788 |
class SignatureVerificationFailed(BzrError): |
5971.1.5
by Jonathan Riddell
catch errors from gpgme, implement verify in dummy gpg strategies |
1789 |
|
1790 |
_fmt = 'Failed to verify GPG signature data with error "%(error)s"' |
|
1791 |
||
1792 |
def __init__(self, error): |
|
1793 |
BzrError.__init__(self, error=error) |
|
1794 |
||
1795 |
||
5971.1.35
by Jonathan Riddell
set gpgme in tests.features |
1796 |
class DependencyNotPresent(BzrError): |
1797 |
||
1798 |
_fmt = 'Unable to import library "%(library)s": %(error)s' |
|
1799 |
||
1800 |
def __init__(self, library, error): |
|
1801 |
BzrError.__init__(self, library=library, error=error) |
|
1802 |
||
1803 |
||
5971.1.34
by Jonathan Riddell
make GpgmeNotInstalled inherit from DependencyNotPresent |
1804 |
class GpgmeNotInstalled(DependencyNotPresent): |
5971.1.4
by Jonathan Riddell
tidy up repository and gpg.py |
1805 |
|
1806 |
_fmt = 'python-gpgme is not installed, it is needed to verify signatures' |
|
1807 |
||
5971.1.34
by Jonathan Riddell
make GpgmeNotInstalled inherit from DependencyNotPresent |
1808 |
def __init__(self, error): |
1809 |
DependencyNotPresent.__init__(self, 'gpgme', error) |
|
1810 |
||
5971.1.4
by Jonathan Riddell
tidy up repository and gpg.py |
1811 |
|
1185.12.83
by Aaron Bentley
Preliminary weave merge support |
1812 |
class WorkingTreeNotRevision(BzrError): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1813 |
|
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
1814 |
_fmt = ("The working tree for %(basedir)s has changed since" |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1815 |
" the last commit, but weave merge requires that it be"
|
1816 |
" unchanged") |
|
1817 |
||
1185.12.83
by Aaron Bentley
Preliminary weave merge support |
1818 |
def __init__(self, tree): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1819 |
BzrError.__init__(self, basedir=tree.basedir) |
1820 |
||
1821 |
||
1822 |
class CantReprocessAndShowBase(BzrError): |
|
1823 |
||
2221.5.9
by Dmitry Vasiliev
Removed trailing whitespaces and wrapped all long lines |
1824 |
_fmt = ("Can't reprocess and show base, because reprocessing obscures " |
1825 |
"the relationship of conflicting lines to the base") |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1826 |
|
1827 |
||
1828 |
class GraphCycleError(BzrError): |
|
1829 |
||
1830 |
_fmt = "Cycle in graph %(graph)r" |
|
2067.3.2
by Martin Pool
Error cleanup review comments: |
1831 |
|
1185.16.114
by mbp at sourcefrog
Improved topological sort |
1832 |
def __init__(self, graph): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1833 |
BzrError.__init__(self) |
1185.16.114
by mbp at sourcefrog
Improved topological sort |
1834 |
self.graph = graph |
1185.35.1
by Aaron Bentley
Implemented conflicts.restore |
1835 |
|
1505.1.23
by John Arbash Meinel
Whitespace cleanup of bzrlib.errors |
1836 |
|
2871.1.1
by Robert Collins
* New class ``bzrlib.errors.InternalBzrError`` which is just a convenient |
1837 |
class WritingCompleted(InternalBzrError): |
2067.3.3
by Martin Pool
merge bzr.dev and reconcile several changes, also some test fixes |
1838 |
|
1839 |
_fmt = ("The MediumRequest '%(request)s' has already had finish_writing " |
|
1840 |
"called upon it - accept bytes may not be called anymore.") |
|
1841 |
||
1842 |
def __init__(self, request): |
|
1843 |
self.request = request |
|
1844 |
||
1845 |
||
2871.1.1
by Robert Collins
* New class ``bzrlib.errors.InternalBzrError`` which is just a convenient |
1846 |
class WritingNotComplete(InternalBzrError): |
2067.3.3
by Martin Pool
merge bzr.dev and reconcile several changes, also some test fixes |
1847 |
|
1848 |
_fmt = ("The MediumRequest '%(request)s' has not has finish_writing " |
|
1849 |
"called upon it - until the write phase is complete no "
|
|
1850 |
"data may be read.") |
|
1851 |
||
1852 |
def __init__(self, request): |
|
1853 |
self.request = request |
|
1854 |
||
1855 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1856 |
class NotConflicted(BzrError): |
1857 |
||
1858 |
_fmt = "File %(filename)s is not conflicted." |
|
1534.3.1
by Robert Collins
* bzrlib.osutils.safe_unicode now exists to provide parameter coercion |
1859 |
|
1185.35.1
by Aaron Bentley
Implemented conflicts.restore |
1860 |
def __init__(self, filename): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1861 |
BzrError.__init__(self) |
1185.35.1
by Aaron Bentley
Implemented conflicts.restore |
1862 |
self.filename = filename |
1185.35.13
by Aaron Bentley
Merged Martin |
1863 |
|
1505.1.23
by John Arbash Meinel
Whitespace cleanup of bzrlib.errors |
1864 |
|
2871.1.1
by Robert Collins
* New class ``bzrlib.errors.InternalBzrError`` which is just a convenient |
1865 |
class MediumNotConnected(InternalBzrError): |
2067.3.3
by Martin Pool
merge bzr.dev and reconcile several changes, also some test fixes |
1866 |
|
1867 |
_fmt = """The medium '%(medium)s' is not connected.""" |
|
1868 |
||
2018.2.3
by Andrew Bennetts
Starting factoring out the smart server client "medium" from the protocol. |
1869 |
def __init__(self, medium): |
1870 |
self.medium = medium |
|
1871 |
||
1872 |
||
1492
by Robert Collins
Support decoration of commands. |
1873 |
class MustUseDecorated(Exception): |
2221.5.9
by Dmitry Vasiliev
Removed trailing whitespaces and wrapped all long lines |
1874 |
|
1875 |
_fmt = "A decorating function has requested its original command be used." |
|
1876 |
||
1185.82.3
by John Arbash Meinel
Working on creating a factor for serializing changesets. |
1877 |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1878 |
class NoBundleFound(BzrError): |
1879 |
||
2745.3.3
by Daniel Watkins
Changed to remove need for escaping of quotes. |
1880 |
_fmt = 'No bundle was found in "%(filename)s".' |
2067.3.2
by Martin Pool
Error cleanup review comments: |
1881 |
|
1185.82.3
by John Arbash Meinel
Working on creating a factor for serializing changesets. |
1882 |
def __init__(self, filename): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1883 |
BzrError.__init__(self) |
1185.82.3
by John Arbash Meinel
Working on creating a factor for serializing changesets. |
1884 |
self.filename = filename |
1885 |
||
1886 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1887 |
class BundleNotSupported(BzrError): |
1888 |
||
1889 |
_fmt = "Unable to handle bundle version %(version)s: %(msg)s" |
|
2067.3.2
by Martin Pool
Error cleanup review comments: |
1890 |
|
1185.82.3
by John Arbash Meinel
Working on creating a factor for serializing changesets. |
1891 |
def __init__(self, version, msg): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1892 |
BzrError.__init__(self) |
1185.82.3
by John Arbash Meinel
Working on creating a factor for serializing changesets. |
1893 |
self.version = version |
1894 |
self.msg = msg |
|
1895 |
||
1896 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1897 |
class MissingText(BzrError): |
1898 |
||
2221.5.9
by Dmitry Vasiliev
Removed trailing whitespaces and wrapped all long lines |
1899 |
_fmt = ("Branch %(base)s is missing revision" |
1900 |
" %(text_revision)s of %(file_id)s") |
|
1534.3.1
by Robert Collins
* bzrlib.osutils.safe_unicode now exists to provide parameter coercion |
1901 |
|
1185.35.42
by Aaron Bentley
Fixed fetch to be safer wrt ghosts and corrupt branches |
1902 |
def __init__(self, branch, text_revision, file_id): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1903 |
BzrError.__init__(self) |
1185.35.42
by Aaron Bentley
Fixed fetch to be safer wrt ghosts and corrupt branches |
1904 |
self.branch = branch |
1905 |
self.base = branch.base |
|
1906 |
self.text_revision = text_revision |
|
1907 |
self.file_id = file_id |
|
1534.7.5
by Aaron Bentley
Got unique_add under test |
1908 |
|
2671.6.2
by Robert Collins
Prevent the duplicate additions of names to FileNames collections. |
1909 |
|
2255.7.16
by John Arbash Meinel
Make sure adding a duplicate file_id raises DuplicateFileId. |
1910 |
class DuplicateFileId(BzrError): |
1911 |
||
1912 |
_fmt = "File id {%(file_id)s} already exists in inventory as %(entry)s" |
|
1913 |
||
1914 |
def __init__(self, file_id, entry): |
|
1915 |
BzrError.__init__(self) |
|
1916 |
self.file_id = file_id |
|
1917 |
self.entry = entry |
|
1918 |
||
1919 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1920 |
class DuplicateKey(BzrError): |
1921 |
||
1922 |
_fmt = "Key %(key)s is already present in map" |
|
1923 |
||
1924 |
||
2432.1.19
by Robert Collins
Ensure each HelpIndex has a unique prefix. |
1925 |
class DuplicateHelpPrefix(BzrError): |
1926 |
||
1927 |
_fmt = "The prefix %(prefix)s is in the help search path twice." |
|
1928 |
||
1929 |
def __init__(self, prefix): |
|
1930 |
self.prefix = prefix |
|
1931 |
||
1932 |
||
6015.47.1
by Vincent Ladeuil
Turn MalformedTransform into an InternalBzrError so users get a traceback. |
1933 |
class MalformedTransform(InternalBzrError): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1934 |
|
1935 |
_fmt = "Tree transform is malformed %(conflicts)r" |
|
1936 |
||
1937 |
||
2067.3.3
by Martin Pool
merge bzr.dev and reconcile several changes, also some test fixes |
1938 |
class NoFinalPath(BzrError): |
1939 |
||
1940 |
_fmt = ("No final name for trans_id %(trans_id)r\n" |
|
1941 |
"file-id: %(file_id)r\n" |
|
1942 |
"root trans-id: %(root_trans_id)r\n") |
|
1731.1.33
by Aaron Bentley
Revert no-special-root changes |
1943 |
|
1944 |
def __init__(self, trans_id, transform): |
|
1945 |
self.trans_id = trans_id |
|
1946 |
self.file_id = transform.final_file_id(trans_id) |
|
1947 |
self.root_trans_id = transform.root |
|
1948 |
||
1949 |
||
2871.1.1
by Robert Collins
* New class ``bzrlib.errors.InternalBzrError`` which is just a convenient |
1950 |
class BzrBadParameter(InternalBzrError): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1951 |
|
1952 |
_fmt = "Bad parameter: %(param)r" |
|
2067.3.3
by Martin Pool
merge bzr.dev and reconcile several changes, also some test fixes |
1953 |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1954 |
# This exception should never be thrown, but it is a base class for all
|
1955 |
# parameter-to-function errors.
|
|
1956 |
||
1534.3.1
by Robert Collins
* bzrlib.osutils.safe_unicode now exists to provide parameter coercion |
1957 |
def __init__(self, param): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1958 |
BzrError.__init__(self) |
1534.3.1
by Robert Collins
* bzrlib.osutils.safe_unicode now exists to provide parameter coercion |
1959 |
self.param = param |
1534.7.32
by Aaron Bentley
Got conflict handling working when conflicts involve existing files |
1960 |
|
1534.4.3
by Robert Collins
Implement BranchTestProviderAdapter, so tests now run across all branch formats. |
1961 |
|
1185.65.29
by Robert Collins
Implement final review suggestions. |
1962 |
class BzrBadParameterNotUnicode(BzrBadParameter): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1963 |
|
1964 |
_fmt = "Parameter %(param)s is neither unicode nor utf8." |
|
1965 |
||
5279.2.14
by Eric Moritz
Deleted trailing whitespace |
1966 |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
1967 |
class ReusingTransform(BzrError): |
1968 |
||
1969 |
_fmt = "Attempt to reuse a transform that has already been applied." |
|
1970 |
||
1971 |
||
1972 |
class CantMoveRoot(BzrError): |
|
1973 |
||
1974 |
_fmt = "Moving the root directory is not supported at this time" |
|
5279.2.14
by Eric Moritz
Deleted trailing whitespace |
1975 |
|
1976 |
||
5186.2.5
by Martin Pool
Raise a specific clearer error when a rename fails inside transform |
1977 |
class TransformRenameFailed(BzrError): |
1978 |
||
1979 |
_fmt = "Failed to rename %(from_path)s to %(to_path)s: %(why)s" |
|
5279.2.14
by Eric Moritz
Deleted trailing whitespace |
1980 |
|
5186.2.7
by Martin Pool
Update other cases where transform detects failure to rename |
1981 |
def __init__(self, from_path, to_path, why, errno): |
5186.2.5
by Martin Pool
Raise a specific clearer error when a rename fails inside transform |
1982 |
self.from_path = from_path |
1983 |
self.to_path = to_path |
|
1984 |
self.why = why |
|
5186.2.7
by Martin Pool
Update other cases where transform detects failure to rename |
1985 |
self.errno = errno |
1185.65.29
by Robert Collins
Implement final review suggestions. |
1986 |
|
1534.7.120
by Aaron Bentley
PEP8 fixes |
1987 |
|
2206.1.9
by Marius Kruger
* Change move/rename errors yet again |
1988 |
class BzrMoveFailedError(BzrError): |
2220.1.9
by Marius Kruger
Remove all trailing white space this bundle would have |
1989 |
|
5609.8.3
by Martin
Ugly cheaty hack to make BzrMoveFailedError do something reasonable with non-ascii contents |
1990 |
_fmt = ("Could not move %(from_path)s%(operator)s %(to_path)s" |
1991 |
"%(_has_extra)s%(extra)s") |
|
2206.1.9
by Marius Kruger
* Change move/rename errors yet again |
1992 |
|
2220.1.3
by Marius Kruger
* errors.py |
1993 |
def __init__(self, from_path='', to_path='', extra=None): |
3224.5.1
by Andrew Bennetts
Lots of assorted hackery to reduce the number of imports for common operations. Improves 'rocks', 'st' and 'help' times by ~50ms on my laptop. |
1994 |
from bzrlib.osutils import splitpath |
2206.1.9
by Marius Kruger
* Change move/rename errors yet again |
1995 |
BzrError.__init__(self) |
1996 |
if extra: |
|
5609.8.3
by Martin
Ugly cheaty hack to make BzrMoveFailedError do something reasonable with non-ascii contents |
1997 |
self.extra, self._has_extra = extra, ': ' |
2206.1.9
by Marius Kruger
* Change move/rename errors yet again |
1998 |
else: |
5609.8.3
by Martin
Ugly cheaty hack to make BzrMoveFailedError do something reasonable with non-ascii contents |
1999 |
self.extra = self._has_extra = '' |
2220.1.9
by Marius Kruger
Remove all trailing white space this bundle would have |
2000 |
|
2206.1.9
by Marius Kruger
* Change move/rename errors yet again |
2001 |
has_from = len(from_path) > 0 |
2002 |
has_to = len(to_path) > 0 |
|
2003 |
if has_from: |
|
3224.5.1
by Andrew Bennetts
Lots of assorted hackery to reduce the number of imports for common operations. Improves 'rocks', 'st' and 'help' times by ~50ms on my laptop. |
2004 |
self.from_path = splitpath(from_path)[-1] |
2206.1.9
by Marius Kruger
* Change move/rename errors yet again |
2005 |
else: |
2006 |
self.from_path = '' |
|
2220.1.9
by Marius Kruger
Remove all trailing white space this bundle would have |
2007 |
|
2206.1.9
by Marius Kruger
* Change move/rename errors yet again |
2008 |
if has_to: |
3224.5.1
by Andrew Bennetts
Lots of assorted hackery to reduce the number of imports for common operations. Improves 'rocks', 'st' and 'help' times by ~50ms on my laptop. |
2009 |
self.to_path = splitpath(to_path)[-1] |
2206.1.9
by Marius Kruger
* Change move/rename errors yet again |
2010 |
else: |
2011 |
self.to_path = '' |
|
2012 |
||
2013 |
self.operator = "" |
|
2014 |
if has_from and has_to: |
|
2015 |
self.operator = " =>" |
|
2220.1.9
by Marius Kruger
Remove all trailing white space this bundle would have |
2016 |
elif has_from: |
2206.1.9
by Marius Kruger
* Change move/rename errors yet again |
2017 |
self.from_path = "from " + from_path |
2018 |
elif has_to: |
|
2019 |
self.operator = "to" |
|
2020 |
else: |
|
2021 |
self.operator = "file" |
|
2022 |
||
2023 |
||
2024 |
class BzrRenameFailedError(BzrMoveFailedError): |
|
2220.1.9
by Marius Kruger
Remove all trailing white space this bundle would have |
2025 |
|
5609.8.3
by Martin
Ugly cheaty hack to make BzrMoveFailedError do something reasonable with non-ascii contents |
2026 |
_fmt = ("Could not rename %(from_path)s%(operator)s %(to_path)s" |
2027 |
"%(_has_extra)s%(extra)s") |
|
2220.1.9
by Marius Kruger
Remove all trailing white space this bundle would have |
2028 |
|
2206.1.9
by Marius Kruger
* Change move/rename errors yet again |
2029 |
def __init__(self, from_path, to_path, extra=None): |
2030 |
BzrMoveFailedError.__init__(self, from_path, to_path, extra) |
|
2031 |
||
5609.8.3
by Martin
Ugly cheaty hack to make BzrMoveFailedError do something reasonable with non-ascii contents |
2032 |
|
1185.65.29
by Robert Collins
Implement final review suggestions. |
2033 |
class BzrBadParameterNotString(BzrBadParameter): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2034 |
|
2035 |
_fmt = "Parameter %(param)s is not a string or unicode string." |
|
1185.62.24
by John Arbash Meinel
Changing the exception that sftp.py throws when it can't find paramiko, so that the test suite can handle it. |
2036 |
|
2037 |
||
1534.4.44
by Robert Collins
Make a new BzrDir format that uses a versioned branch format in a branch/ subdirectory. |
2038 |
class BzrBadParameterMissing(BzrBadParameter): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2039 |
|
5609.1.1
by Vincent Ladeuil
Release 2.3b5 |
2040 |
_fmt = "Parameter %(param)s is required but not present." |
1534.4.44
by Robert Collins
Make a new BzrDir format that uses a versioned branch format in a branch/ subdirectory. |
2041 |
|
2042 |
||
1666.1.6
by Robert Collins
Make knit the default format. |
2043 |
class BzrBadParameterUnicode(BzrBadParameter): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2044 |
|
2221.5.9
by Dmitry Vasiliev
Removed trailing whitespaces and wrapped all long lines |
2045 |
_fmt = ("Parameter %(param)s is unicode but" |
2046 |
" only byte-strings are permitted.") |
|
1666.1.6
by Robert Collins
Make knit the default format. |
2047 |
|
2048 |
||
2049 |
class BzrBadParameterContainsNewline(BzrBadParameter): |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2050 |
|
2051 |
_fmt = "Parameter %(param)s contains a newline." |
|
2052 |
||
2053 |
||
1185.62.24
by John Arbash Meinel
Changing the exception that sftp.py throws when it can't find paramiko, so that the test suite can handle it. |
2054 |
class ParamikoNotPresent(DependencyNotPresent): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2055 |
|
2056 |
_fmt = "Unable to import paramiko (required for sftp support): %(error)s" |
|
1185.62.24
by John Arbash Meinel
Changing the exception that sftp.py throws when it can't find paramiko, so that the test suite can handle it. |
2057 |
|
2058 |
def __init__(self, error): |
|
2059 |
DependencyNotPresent.__init__(self, 'paramiko', error) |
|
2060 |
||
2061 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2062 |
class PointlessMerge(BzrError): |
2063 |
||
2064 |
_fmt = "Nothing to merge." |
|
2065 |
||
2066 |
||
2067 |
class UninitializableFormat(BzrError): |
|
2068 |
||
2069 |
_fmt = "Format %(format)s cannot be initialised by this version of bzr." |
|
1534.4.3
by Robert Collins
Implement BranchTestProviderAdapter, so tests now run across all branch formats. |
2070 |
|
2071 |
def __init__(self, format): |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2072 |
BzrError.__init__(self) |
1534.4.3
by Robert Collins
Implement BranchTestProviderAdapter, so tests now run across all branch formats. |
2073 |
self.format = format |
1551.3.4
by Aaron Bentley
Implemented default command options |
2074 |
|
1534.7.156
by Aaron Bentley
PEP8 fixes |
2075 |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2076 |
class BadConversionTarget(BzrError): |
2077 |
||
4608.1.3
by Martin Pool
BadConversionTarget error includes source format |
2078 |
_fmt = "Cannot convert from format %(from_format)s to format %(format)s." \ |
2079 |
" %(problem)s" |
|
1910.2.12
by Aaron Bentley
Implement knit repo format 2 |
2080 |
|
4608.1.3
by Martin Pool
BadConversionTarget error includes source format |
2081 |
def __init__(self, problem, format, from_format=None): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2082 |
BzrError.__init__(self) |
1910.2.12
by Aaron Bentley
Implement knit repo format 2 |
2083 |
self.problem = problem |
2084 |
self.format = format |
|
4608.1.3
by Martin Pool
BadConversionTarget error includes source format |
2085 |
self.from_format = from_format or '(unspecified)' |
1910.2.12
by Aaron Bentley
Implement knit repo format 2 |
2086 |
|
2087 |
||
3009.2.28
by Aaron Bentley
Add from_diff_tree factories |
2088 |
class NoDiffFound(BzrError): |
3009.2.19
by Aaron Bentley
Implement directory diffing |
2089 |
|
2090 |
_fmt = 'Could not find an appropriate Differ for file "%(path)s"' |
|
2091 |
||
2092 |
def __init__(self, path): |
|
2093 |
BzrError.__init__(self, path) |
|
2094 |
||
2095 |
||
3145.1.1
by Aaron Bentley
Handle missing tools gracefully in diff --using |
2096 |
class ExecutableMissing(BzrError): |
2097 |
||
2098 |
_fmt = "%(exe_name)s could not be found on this machine" |
|
2099 |
||
2100 |
def __init__(self, exe_name): |
|
2101 |
BzrError.__init__(self, exe_name=exe_name) |
|
2102 |
||
2103 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2104 |
class NoDiff(BzrError): |
2105 |
||
2106 |
_fmt = "Diff is not installed on this machine: %(msg)s" |
|
1711.2.56
by John Arbash Meinel
Raise NoDiff if 'diff' not present. |
2107 |
|
2108 |
def __init__(self, msg): |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2109 |
BzrError.__init__(self, msg=msg) |
2110 |
||
2111 |
||
2112 |
class NoDiff3(BzrError): |
|
2113 |
||
2114 |
_fmt = "Diff3 is not installed on this machine." |
|
2115 |
||
2116 |
||
2794.1.1
by Robert Collins
Allow knits to be instructed not to add a text based on a sha, for commit. |
2117 |
class ExistingContent(BzrError): |
2794.1.3
by Robert Collins
Review feedback. |
2118 |
# Added in bzrlib 0.92, used by VersionedFile.add_lines.
|
2794.1.1
by Robert Collins
Allow knits to be instructed not to add a text based on a sha, for commit. |
2119 |
|
2120 |
_fmt = "The content being inserted is already present." |
|
2121 |
||
2122 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2123 |
class ExistingLimbo(BzrError): |
2124 |
||
2125 |
_fmt = """This tree contains left-over files from a failed operation. |
|
2126 |
Please examine %(limbo_dir)s to see if it contains any files you wish to |
|
2127 |
keep, and delete it when you are done."""
|
|
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
2128 |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2129 |
def __init__(self, limbo_dir): |
2130 |
BzrError.__init__(self) |
|
2131 |
self.limbo_dir = limbo_dir |
|
2132 |
||
2133 |
||
2733.2.11
by Aaron Bentley
Detect irregularities with the pending-deletion directory |
2134 |
class ExistingPendingDeletion(BzrError): |
2135 |
||
2136 |
_fmt = """This tree contains left-over files from a failed operation. |
|
2137 |
Please examine %(pending_deletion)s to see if it contains any files you |
|
2138 |
wish to keep, and delete it when you are done."""
|
|
2139 |
||
2140 |
def __init__(self, pending_deletion): |
|
2141 |
BzrError.__init__(self, pending_deletion=pending_deletion) |
|
2142 |
||
2143 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2144 |
class ImmortalLimbo(BzrError): |
2145 |
||
2775.1.1
by James Westby
Fix the format string for ImmortalLimbo. |
2146 |
_fmt = """Unable to delete transform temporary directory %(limbo_dir)s. |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2147 |
Please examine %(limbo_dir)s to see if it contains any files you wish to |
2148 |
keep, and delete it when you are done."""
|
|
2149 |
||
2150 |
def __init__(self, limbo_dir): |
|
2151 |
BzrError.__init__(self) |
|
2152 |
self.limbo_dir = limbo_dir |
|
2153 |
||
2154 |
||
2733.2.11
by Aaron Bentley
Detect irregularities with the pending-deletion directory |
2155 |
class ImmortalPendingDeletion(BzrError): |
2156 |
||
2978.2.1
by Alexander Belchenko
fix formatting of ImmortalPendingDeletion error message. |
2157 |
_fmt = ("Unable to delete transform temporary directory " |
2158 |
"%(pending_deletion)s. Please examine %(pending_deletion)s to see if it " |
|
2159 |
"contains any files you wish to keep, and delete it when you are done.") |
|
2733.2.11
by Aaron Bentley
Detect irregularities with the pending-deletion directory |
2160 |
|
2161 |
def __init__(self, pending_deletion): |
|
2162 |
BzrError.__init__(self, pending_deletion=pending_deletion) |
|
2163 |
||
2164 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2165 |
class OutOfDateTree(BzrError): |
2166 |
||
4487.2.6
by Vincent Ladeuil
Fixed as per jam's review. |
2167 |
_fmt = "Working tree is out of date, please run 'bzr update'.%(more)s" |
1508.1.25
by Robert Collins
Update per review comments. |
2168 |
|
4487.2.6
by Vincent Ladeuil
Fixed as per jam's review. |
2169 |
def __init__(self, tree, more=None): |
2170 |
if more is None: |
|
2171 |
more = '' |
|
2172 |
else: |
|
2173 |
more = ' ' + more |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2174 |
BzrError.__init__(self) |
1508.1.25
by Robert Collins
Update per review comments. |
2175 |
self.tree = tree |
4487.2.6
by Vincent Ladeuil
Fixed as per jam's review. |
2176 |
self.more = more |
1534.7.196
by Aaron Bentley
Switched to Rio format for merge-modified list |
2177 |
|
1563.2.22
by Robert Collins
Move responsibility for repository.has_revision into RevisionStore |
2178 |
|
1551.12.5
by Aaron Bentley
Get MergeDirective.from_objects working |
2179 |
class PublicBranchOutOfDate(BzrError): |
2180 |
||
2181 |
_fmt = 'Public branch "%(public_location)s" lacks revision '\ |
|
2182 |
'"%(revstring)s".' |
|
2183 |
||
2184 |
def __init__(self, public_location, revstring): |
|
2185 |
import bzrlib.urlutils as urlutils |
|
2186 |
public_location = urlutils.unescape_for_display(public_location, |
|
2187 |
'ascii') |
|
2188 |
BzrError.__init__(self, public_location=public_location, |
|
2189 |
revstring=revstring) |
|
2190 |
||
2191 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2192 |
class MergeModifiedFormatError(BzrError): |
2193 |
||
2194 |
_fmt = "Error in merge modified format" |
|
2195 |
||
2196 |
||
2197 |
class ConflictFormatError(BzrError): |
|
2198 |
||
2199 |
_fmt = "Format error in conflict listings" |
|
2200 |
||
2201 |
||
3207.2.1
by jameinel
Add a test that _iter_changes raises a clearer error when we encounter an invalid rename. |
2202 |
class CorruptDirstate(BzrError): |
2203 |
||
3221.1.3
by Martin Pool
Review cleanups for CorruptDirstate: use the path everywhere rather than the object, and use more standard phrasing. |
2204 |
_fmt = ("Inconsistency in dirstate file %(dirstate_path)s.\n" |
3207.2.1
by jameinel
Add a test that _iter_changes raises a clearer error when we encounter an invalid rename. |
2205 |
"Error: %(description)s") |
2206 |
||
3221.1.3
by Martin Pool
Review cleanups for CorruptDirstate: use the path everywhere rather than the object, and use more standard phrasing. |
2207 |
def __init__(self, dirstate_path, description): |
3207.2.1
by jameinel
Add a test that _iter_changes raises a clearer error when we encounter an invalid rename. |
2208 |
BzrError.__init__(self) |
3221.1.3
by Martin Pool
Review cleanups for CorruptDirstate: use the path everywhere rather than the object, and use more standard phrasing. |
2209 |
self.dirstate_path = dirstate_path |
3207.2.1
by jameinel
Add a test that _iter_changes raises a clearer error when we encounter an invalid rename. |
2210 |
self.description = description |
2211 |
||
2212 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2213 |
class CorruptRepository(BzrError): |
2214 |
||
2221.5.9
by Dmitry Vasiliev
Removed trailing whitespaces and wrapped all long lines |
2215 |
_fmt = ("An error has been detected in the repository %(repo_path)s.\n" |
2216 |
"Please run bzr reconcile on this repository.") |
|
1570.1.13
by Robert Collins
Check for incorrect revision parentage in the weave during revision access. |
2217 |
|
2218 |
def __init__(self, repo): |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2219 |
BzrError.__init__(self) |
5158.6.9
by Martin Pool
Simplify various code to use user_url |
2220 |
self.repo_path = repo.user_url |
1587.1.6
by Robert Collins
Update bound branch implementation to 0.8. |
2221 |
|
2222 |
||
3207.2.2
by John Arbash Meinel
Fix bug #187169, when an invalid delta is supplied to update_basis_by_delta |
2223 |
class InconsistentDelta(BzrError): |
2224 |
"""Used when we get a delta that is not valid."""
|
|
2225 |
||
2226 |
_fmt = ("An inconsistent delta was supplied involving %(path)r," |
|
3221.1.4
by Martin Pool
Fix format string for InconsistentDelta |
2227 |
" %(file_id)r\nreason: %(reason)s") |
3207.2.2
by John Arbash Meinel
Fix bug #187169, when an invalid delta is supplied to update_basis_by_delta |
2228 |
|
2229 |
def __init__(self, path, file_id, reason): |
|
2230 |
BzrError.__init__(self) |
|
2231 |
self.path = path |
|
2232 |
self.file_id = file_id |
|
2233 |
self.reason = reason |
|
2234 |
||
2235 |
||
4505.5.1
by Robert Collins
Add more generic InconsistentDeltaDelta error class for use when the exact cause of an inconsistent delta isn't trivially accessible. |
2236 |
class InconsistentDeltaDelta(InconsistentDelta): |
2237 |
"""Used when we get a delta that is not valid."""
|
|
2238 |
||
2239 |
_fmt = ("An inconsistent delta was supplied: %(delta)r" |
|
2240 |
"\nreason: %(reason)s") |
|
2241 |
||
2242 |
def __init__(self, delta, reason): |
|
2243 |
BzrError.__init__(self) |
|
2244 |
self.delta = delta |
|
2245 |
self.reason = reason |
|
2246 |
||
2247 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2248 |
class UpgradeRequired(BzrError): |
2249 |
||
2250 |
_fmt = "To use this feature you must upgrade your branch at %(path)s." |
|
1587.1.6
by Robert Collins
Update bound branch implementation to 0.8. |
2251 |
|
2252 |
def __init__(self, path): |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2253 |
BzrError.__init__(self) |
1587.1.6
by Robert Collins
Update bound branch implementation to 0.8. |
2254 |
self.path = path |
2255 |
||
1587.1.8
by Robert Collins
Local commits on unbound branches fail. |
2256 |
|
3349.1.2
by Aaron Bentley
Change ValueError to RepositoryUpgradeRequired |
2257 |
class RepositoryUpgradeRequired(UpgradeRequired): |
2258 |
||
2259 |
_fmt = "To use this feature you must upgrade your repository at %(path)s." |
|
2260 |
||
2261 |
||
4416.6.1
by Neil Martinsen-Burrell
Fix #220067 adding more specificity to the error message when split fails |
2262 |
class RichRootUpgradeRequired(UpgradeRequired): |
2263 |
||
4446.1.1
by Ian Clatworthy
(igc) better message when split fails (Neil Martinsen-Burrell) |
2264 |
_fmt = ("To use this feature you must upgrade your branch at %(path)s to" |
2265 |
" a format which supports rich roots.") |
|
4416.6.1
by Neil Martinsen-Burrell
Fix #220067 adding more specificity to the error message when split fails |
2266 |
|
2267 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2268 |
class LocalRequiresBoundBranch(BzrError): |
2269 |
||
2270 |
_fmt = "Cannot perform local-only commits on unbound branches." |
|
2271 |
||
2272 |
||
2273 |
class UnsupportedOperation(BzrError): |
|
2274 |
||
2221.5.9
by Dmitry Vasiliev
Removed trailing whitespaces and wrapped all long lines |
2275 |
_fmt = ("The method %(mname)s is not supported on" |
2276 |
" objects of type %(tname)s.") |
|
2067.3.2
by Martin Pool
Error cleanup review comments: |
2277 |
|
1534.10.8
by Aaron Bentley
Implemented conflict_lines in terms of old system on WorkingTree |
2278 |
def __init__(self, method, method_self): |
2279 |
self.method = method |
|
2280 |
self.mname = method.__name__ |
|
2281 |
self.tname = type(method_self).__name__ |
|
1558.15.1
by Aaron Bentley
Add text_file function |
2282 |
|
2283 |
||
2150.2.2
by Robert Collins
Change the commit builder selected-revision-id test to use a unicode revision id where possible, leading to stricter testing of the hypothetical unicode revision id support in bzr. |
2284 |
class CannotSetRevisionId(UnsupportedOperation): |
2285 |
"""Raised when a commit is attempting to set a revision id but cant."""
|
|
2286 |
||
2287 |
||
2288 |
class NonAsciiRevisionId(UnsupportedOperation): |
|
2221.5.9
by Dmitry Vasiliev
Removed trailing whitespaces and wrapped all long lines |
2289 |
"""Raised when a commit is attempting to set a non-ascii revision id
|
2290 |
but cant.
|
|
2291 |
"""
|
|
2150.2.2
by Robert Collins
Change the commit builder selected-revision-id test to use a unicode revision id where possible, leading to stricter testing of the hypothetical unicode revision id support in bzr. |
2292 |
|
2293 |
||
6123.4.2
by Jelmer Vernooij
Tags containers can indicate whether they support ghost tags. |
2294 |
class GhostTagsNotSupported(BzrError): |
2295 |
||
2296 |
_fmt = "Ghost tags not supported by format %(format)r." |
|
2297 |
||
2298 |
def __init__(self, format): |
|
2299 |
self.format = format |
|
2300 |
||
2301 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2302 |
class BinaryFile(BzrError): |
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
2303 |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2304 |
_fmt = "File is binary but should be text." |
2305 |
||
2306 |
||
2307 |
class IllegalPath(BzrError): |
|
2308 |
||
2309 |
_fmt = "The path %(path)s is not permitted on this platform" |
|
1551.2.55
by abentley
Fix fileid involed tests on win32 (by skipping them for unescaped weave formats) |
2310 |
|
2311 |
def __init__(self, path): |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2312 |
BzrError.__init__(self) |
1551.2.55
by abentley
Fix fileid involed tests on win32 (by skipping them for unescaped weave formats) |
2313 |
self.path = path |
1185.82.118
by Aaron Bentley
Ensure that StrictTestament handles execute bit differences |
2314 |
|
2315 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2316 |
class TestamentMismatch(BzrError): |
2317 |
||
2221.5.9
by Dmitry Vasiliev
Removed trailing whitespaces and wrapped all long lines |
2318 |
_fmt = """Testament did not match expected value. |
2319 |
For revision_id {%(revision_id)s}, expected {%(expected)s}, measured |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2320 |
{%(measured)s}""" |
2321 |
||
1185.82.118
by Aaron Bentley
Ensure that StrictTestament handles execute bit differences |
2322 |
def __init__(self, revision_id, expected, measured): |
2323 |
self.revision_id = revision_id |
|
2324 |
self.expected = expected |
|
2325 |
self.measured = measured |
|
1185.82.131
by Aaron Bentley
Move BadBundle error (and subclasses) to errors.py |
2326 |
|
2327 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2328 |
class NotABundle(BzrError): |
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
2329 |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2330 |
_fmt = "Not a bzr revision-bundle: %(text)r" |
1185.82.142
by Aaron Bentley
Update for review comments |
2331 |
|
1185.82.139
by Aaron Bentley
Raise NotABundle when a non-bundle is supplied |
2332 |
def __init__(self, text): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2333 |
BzrError.__init__(self) |
1907.2.1
by Hermann Kraus
Convert bundle errors from Exception to BzrNewError. |
2334 |
self.text = text |
2335 |
||
2336 |
||
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
2337 |
class BadBundle(BzrError): |
2338 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2339 |
_fmt = "Bad bzr revision-bundle: %(text)r" |
1907.2.1
by Hermann Kraus
Convert bundle errors from Exception to BzrNewError. |
2340 |
|
2341 |
def __init__(self, text): |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2342 |
BzrError.__init__(self) |
1907.2.1
by Hermann Kraus
Convert bundle errors from Exception to BzrNewError. |
2343 |
self.text = text |
2344 |
||
2345 |
||
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
2346 |
class MalformedHeader(BadBundle): |
2347 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2348 |
_fmt = "Malformed bzr revision-bundle header: %(text)r" |
1907.2.1
by Hermann Kraus
Convert bundle errors from Exception to BzrNewError. |
2349 |
|
2350 |
||
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
2351 |
class MalformedPatches(BadBundle): |
2352 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2353 |
_fmt = "Malformed patches in bzr revision-bundle: %(text)r" |
1907.2.1
by Hermann Kraus
Convert bundle errors from Exception to BzrNewError. |
2354 |
|
2355 |
||
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
2356 |
class MalformedFooter(BadBundle): |
2357 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2358 |
_fmt = "Malformed footer in bzr revision-bundle: %(text)r" |
1907.2.2
by Hermann Kraus
Detect wrong eol markers. |
2359 |
|
1752.3.14
by Andrew Bennetts
Fix shallow bug (bad conflict resolution?) in errors.UnsupportedEOLMarker |
2360 |
|
1907.2.2
by Hermann Kraus
Detect wrong eol markers. |
2361 |
class UnsupportedEOLMarker(BadBundle): |
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
2362 |
|
2363 |
_fmt = "End of line marker was not \\n in bzr revision-bundle" |
|
1907.2.2
by Hermann Kraus
Detect wrong eol markers. |
2364 |
|
2365 |
def __init__(self): |
|
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
2366 |
# XXX: BadBundle's constructor assumes there's explanatory text,
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2367 |
# but for this there is not
|
2368 |
BzrError.__init__(self) |
|
2369 |
||
2370 |
||
2371 |
class IncompatibleBundleFormat(BzrError): |
|
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
2372 |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2373 |
_fmt = "Bundle format %(bundle_format)s is incompatible with %(other)s" |
1910.2.49
by Aaron Bentley
Ensure that 0.8 bundles aren't used with KnitRepository2 |
2374 |
|
2375 |
def __init__(self, bundle_format, other): |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2376 |
BzrError.__init__(self) |
1910.2.49
by Aaron Bentley
Ensure that 0.8 bundles aren't used with KnitRepository2 |
2377 |
self.bundle_format = bundle_format |
2378 |
self.other = other |
|
2379 |
||
2380 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2381 |
class BadInventoryFormat(BzrError): |
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
2382 |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2383 |
_fmt = "Root class for inventory serialization errors" |
1910.2.31
by Aaron Bentley
Fix bugs in basis inventory handling, change filename |
2384 |
|
2385 |
||
2386 |
class UnexpectedInventoryFormat(BadInventoryFormat): |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2387 |
|
2388 |
_fmt = "The inventory was not in the expected format:\n %(msg)s" |
|
1910.2.31
by Aaron Bentley
Fix bugs in basis inventory handling, change filename |
2389 |
|
2390 |
def __init__(self, msg): |
|
2391 |
BadInventoryFormat.__init__(self, msg=msg) |
|
1910.2.47
by Aaron Bentley
Merge bzr.dev |
2392 |
|
2393 |
||
2100.3.5
by Aaron Bentley
Merge nested-trees work |
2394 |
class RootNotRich(BzrError): |
2395 |
||
2396 |
_fmt = """This operation requires rich root data storage""" |
|
2397 |
||
2398 |
||
2871.1.1
by Robert Collins
* New class ``bzrlib.errors.InternalBzrError`` which is just a convenient |
2399 |
class NoSmartMedium(InternalBzrError): |
2067.3.3
by Martin Pool
merge bzr.dev and reconcile several changes, also some test fixes |
2400 |
|
2401 |
_fmt = "The transport '%(transport)s' cannot tunnel the smart protocol." |
|
2100.3.30
by Aaron Bentley
Merge from bzr.dev |
2402 |
|
2018.2.3
by Andrew Bennetts
Starting factoring out the smart server client "medium" from the protocol. |
2403 |
def __init__(self, transport): |
2404 |
self.transport = transport |
|
2405 |
||
2406 |
||
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2407 |
class UnknownSSH(BzrError): |
2408 |
||
2409 |
_fmt = "Unrecognised value for BZR_SSH environment variable: %(vendor)s" |
|
1951.1.8
by Andrew Bennetts
Make _get_ssh_vendor return the vendor object, rather than just a string. |
2410 |
|
2411 |
def __init__(self, vendor): |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2412 |
BzrError.__init__(self) |
1951.1.8
by Andrew Bennetts
Make _get_ssh_vendor return the vendor object, rather than just a string. |
2413 |
self.vendor = vendor |
2414 |
||
1908.5.16
by Robert Collins
Merge bzr.dev to resolve conflicts for merging. |
2415 |
|
2221.5.1
by Dmitry Vasiliev
Added support for Putty's SSH implementation |
2416 |
class SSHVendorNotFound(BzrError): |
2417 |
||
2221.5.9
by Dmitry Vasiliev
Removed trailing whitespaces and wrapped all long lines |
2418 |
_fmt = ("Don't know how to handle SSH connections." |
2419 |
" Please set BZR_SSH environment variable.") |
|
2221.5.1
by Dmitry Vasiliev
Added support for Putty's SSH implementation |
2420 |
|
2421 |
||
3445.1.1
by John Arbash Meinel
Start working on a new Graph api to make finding revision numbers faster. |
2422 |
class GhostRevisionsHaveNoRevno(BzrError): |
2423 |
"""When searching for revnos, if we encounter a ghost, we are stuck"""
|
|
2424 |
||
2425 |
_fmt = ("Could not determine revno for {%(revision_id)s} because" |
|
2426 |
" its ancestry shows a ghost at {%(ghost_revision_id)s}") |
|
2427 |
||
2428 |
def __init__(self, revision_id, ghost_revision_id): |
|
2429 |
self.revision_id = revision_id |
|
2430 |
self.ghost_revision_id = ghost_revision_id |
|
2431 |
||
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
2432 |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2433 |
class GhostRevisionUnusableHere(BzrError): |
2434 |
||
2435 |
_fmt = "Ghost revision {%(revision_id)s} cannot be used here." |
|
1908.5.9
by Robert Collins
Add a guard against setting the tree last-revision value to a ghost in the new tree parent management api. |
2436 |
|
2437 |
def __init__(self, revision_id): |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2438 |
BzrError.__init__(self) |
1908.5.9
by Robert Collins
Add a guard against setting the tree last-revision value to a ghost in the new tree parent management api. |
2439 |
self.revision_id = revision_id |
1996.1.16
by John Arbash Meinel
Raise an exception when ScopeReplacer has been misused |
2440 |
|
2441 |
||
2871.1.1
by Robert Collins
* New class ``bzrlib.errors.InternalBzrError`` which is just a convenient |
2442 |
class IllegalUseOfScopeReplacer(InternalBzrError): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2443 |
|
2221.5.9
by Dmitry Vasiliev
Removed trailing whitespaces and wrapped all long lines |
2444 |
_fmt = ("ScopeReplacer object %(name)r was used incorrectly:" |
2445 |
" %(msg)s%(extra)s") |
|
1996.1.16
by John Arbash Meinel
Raise an exception when ScopeReplacer has been misused |
2446 |
|
2447 |
def __init__(self, name, msg, extra=None): |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2448 |
BzrError.__init__(self) |
1996.1.16
by John Arbash Meinel
Raise an exception when ScopeReplacer has been misused |
2449 |
self.name = name |
2450 |
self.msg = msg |
|
2451 |
if extra: |
|
2452 |
self.extra = ': ' + str(extra) |
|
2453 |
else: |
|
2454 |
self.extra = '' |
|
2455 |
||
1996.1.18
by John Arbash Meinel
Add more structured error handling |
2456 |
|
2871.1.1
by Robert Collins
* New class ``bzrlib.errors.InternalBzrError`` which is just a convenient |
2457 |
class InvalidImportLine(InternalBzrError): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2458 |
|
2459 |
_fmt = "Not a valid import statement: %(msg)\n%(text)s" |
|
1996.1.18
by John Arbash Meinel
Add more structured error handling |
2460 |
|
2461 |
def __init__(self, text, msg): |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2462 |
BzrError.__init__(self) |
1996.1.18
by John Arbash Meinel
Add more structured error handling |
2463 |
self.text = text |
2464 |
self.msg = msg |
|
2465 |
||
2466 |
||
2871.1.1
by Robert Collins
* New class ``bzrlib.errors.InternalBzrError`` which is just a convenient |
2467 |
class ImportNameCollision(InternalBzrError): |
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2468 |
|
2221.5.9
by Dmitry Vasiliev
Removed trailing whitespaces and wrapped all long lines |
2469 |
_fmt = ("Tried to import an object to the same name as" |
2470 |
" an existing object. %(name)s") |
|
1996.1.18
by John Arbash Meinel
Add more structured error handling |
2471 |
|
2472 |
def __init__(self, name): |
|
2067.3.1
by Martin Pool
Clean up BzrNewError, other exception classes and users. |
2473 |
BzrError.__init__(self) |
1996.1.18
by John Arbash Meinel
Add more structured error handling |
2474 |
self.name = name |
1731.2.2
by Aaron Bentley
Test subsume failure modes |
2475 |
|
2100.3.1
by Aaron Bentley
Start roundtripping tree-reference entries |
2476 |
|
1551.12.49
by Aaron Bentley
Proper error when deserializing junk |
2477 |
class NotAMergeDirective(BzrError): |
2478 |
"""File starting with %(firstline)r is not a merge directive"""
|
|
2479 |
def __init__(self, firstline): |
|
2480 |
BzrError.__init__(self, firstline=firstline) |
|
2481 |
||
2482 |
||
1551.12.2
by Aaron Bentley
Got directives round-tripping, with bundles and everything |
2483 |
class NoMergeSource(BzrError): |
2484 |
"""Raise if no merge source was specified for a merge directive"""
|
|
2485 |
||
2486 |
_fmt = "A merge directive must provide either a bundle or a public"\ |
|
1551.12.5
by Aaron Bentley
Get MergeDirective.from_objects working |
2487 |
" branch location."
|
1551.12.2
by Aaron Bentley
Got directives round-tripping, with bundles and everything |
2488 |
|
2489 |
||
2520.4.73
by Aaron Bentley
Implement new merge directive format |
2490 |
class IllegalMergeDirectivePayload(BzrError): |
2491 |
"""A merge directive contained something other than a patch or bundle"""
|
|
2492 |
||
2493 |
_fmt = "Bad merge directive payload %(start)r" |
|
2494 |
||
2495 |
def __init__(self, start): |
|
2496 |
BzrError(self) |
|
2497 |
self.start = start |
|
2498 |
||
2499 |
||
2520.4.105
by Aaron Bentley
Implement patch verification |
2500 |
class PatchVerificationFailed(BzrError): |
2501 |
"""A patch from a merge directive could not be verified"""
|
|
2502 |
||
2520.4.106
by Aaron Bentley
Clarify what patch verification failure means |
2503 |
_fmt = "Preview patch does not match requested changes." |
2520.4.105
by Aaron Bentley
Implement patch verification |
2504 |
|
2505 |
||
1551.12.2
by Aaron Bentley
Got directives round-tripping, with bundles and everything |
2506 |
class PatchMissing(BzrError): |
2507 |
"""Raise a patch type was specified but no patch supplied"""
|
|
2508 |
||
2872.5.1
by Martin Pool
Avoid internal error tracebacks on failure to lock on readonly transport (#129701). |
2509 |
_fmt = "Patch_type was %(patch_type)s, but no patch was supplied." |
1551.12.2
by Aaron Bentley
Got directives round-tripping, with bundles and everything |
2510 |
|
2511 |
def __init__(self, patch_type): |
|
2512 |
BzrError.__init__(self) |
|
2513 |
self.patch_type = patch_type |
|
1551.12.25
by Aaron Bentley
Merge bzr.dev |
2514 |
|
2515 |
||
3535.8.1
by James Westby
Handle something that isn't a branch being specified in target_branch. |
2516 |
class TargetNotBranch(BzrError): |
2517 |
"""A merge directive's target branch is required, but isn't a branch"""
|
|
2518 |
||
2519 |
_fmt = ("Your branch does not have all of the revisions required in " |
|
3535.8.4
by James Westby
Replace "however" with "and" at John's request. |
2520 |
"order to merge this merge directive and the target "
|
3535.8.3
by James Westby
Use location instead of branch as suggested by Robert. |
2521 |
"location specified in the merge directive is not a branch: "
|
3535.8.1
by James Westby
Handle something that isn't a branch being specified in target_branch. |
2522 |
"%(location)s.") |
2523 |
||
2524 |
def __init__(self, location): |
|
2525 |
BzrError.__init__(self) |
|
2526 |
self.location = location |
|
2527 |
||
2528 |
||
2100.3.9
by Aaron Bentley
Clean up BzrNewError usage |
2529 |
class UnsupportedInventoryKind(BzrError): |
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
2530 |
|
2100.3.9
by Aaron Bentley
Clean up BzrNewError usage |
2531 |
_fmt = """Unsupported entry kind %(kind)s""" |
2100.3.1
by Aaron Bentley
Start roundtripping tree-reference entries |
2532 |
|
2533 |
def __init__(self, kind): |
|
2534 |
self.kind = kind |
|
2100.3.5
by Aaron Bentley
Merge nested-trees work |
2535 |
|
2536 |
||
2100.3.9
by Aaron Bentley
Clean up BzrNewError usage |
2537 |
class BadSubsumeSource(BzrError): |
2538 |
||
2745.3.3
by Daniel Watkins
Changed to remove need for escaping of quotes. |
2539 |
_fmt = "Can't subsume %(other_tree)s into %(tree)s. %(reason)s" |
1731.2.5
by Aaron Bentley
Ensure versionedfile will be produced for subsumed tree root |
2540 |
|
1731.2.2
by Aaron Bentley
Test subsume failure modes |
2541 |
def __init__(self, tree, other_tree, reason): |
2542 |
self.tree = tree |
|
2543 |
self.other_tree = other_tree |
|
2544 |
self.reason = reason |
|
1731.2.5
by Aaron Bentley
Ensure versionedfile will be produced for subsumed tree root |
2545 |
|
2546 |
||
2100.3.9
by Aaron Bentley
Clean up BzrNewError usage |
2547 |
class SubsumeTargetNeedsUpgrade(BzrError): |
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
2548 |
|
2745.3.3
by Daniel Watkins
Changed to remove need for escaping of quotes. |
2549 |
_fmt = """Subsume target %(other_tree)s needs to be upgraded.""" |
1731.2.5
by Aaron Bentley
Ensure versionedfile will be produced for subsumed tree root |
2550 |
|
2551 |
def __init__(self, other_tree): |
|
2552 |
self.other_tree = other_tree |
|
2100.3.8
by Aaron Bentley
Add add_reference |
2553 |
|
2554 |
||
2871.1.1
by Robert Collins
* New class ``bzrlib.errors.InternalBzrError`` which is just a convenient |
2555 |
class BadReferenceTarget(InternalBzrError): |
2100.3.8
by Aaron Bentley
Add add_reference |
2556 |
|
2745.3.3
by Daniel Watkins
Changed to remove need for escaping of quotes. |
2557 |
_fmt = "Can't add reference to %(other_tree)s into %(tree)s." \ |
2745.3.1
by Daniel Watkins
Modified errors.py to quote paths just before full stops. Also added some full stops to error messages without them. |
2558 |
"%(reason)s" |
2100.3.8
by Aaron Bentley
Add add_reference |
2559 |
|
2560 |
def __init__(self, tree, other_tree, reason): |
|
2561 |
self.tree = tree |
|
2562 |
self.other_tree = other_tree |
|
2563 |
self.reason = reason |
|
2255.2.182
by Martin Pool
merge dirstate and trunk |
2564 |
|
2565 |
||
2220.2.2
by Martin Pool
Add tag command and basic implementation |
2566 |
class NoSuchTag(BzrError): |
2567 |
||
2568 |
_fmt = "No such tag: %(tag_name)s" |
|
2569 |
||
2570 |
def __init__(self, tag_name): |
|
2571 |
self.tag_name = tag_name |
|
2220.2.4
by Martin Pool
Repositories which don't support tags now give a better message |
2572 |
|
2573 |
||
2574 |
class TagsNotSupported(BzrError): |
|
2575 |
||
2221.5.14
by Dmitry Vasiliev
Wrapped long lines |
2576 |
_fmt = ("Tags not supported by %(branch)s;" |
3596.1.1
by Jelmer Vernooij
Remove recommendation of old format when tags can't be copied. |
2577 |
" you may be able to use bzr upgrade.") |
2220.2.5
by Martin Pool
Better TagsNotSupported message |
2578 |
|
2220.2.21
by Martin Pool
Add tag --delete command and implementation |
2579 |
def __init__(self, branch): |
2220.2.23
by Martin Pool
Fix TagsNotSupportedError |
2580 |
self.branch = branch |
2220.2.42
by Martin Pool
Tag command refuses to replace existing tags unless you force it. |
2581 |
|
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
2582 |
|
2220.2.42
by Martin Pool
Tag command refuses to replace existing tags unless you force it. |
2583 |
class TagAlreadyExists(BzrError): |
2584 |
||
2585 |
_fmt = "Tag %(tag_name)s already exists." |
|
2586 |
||
2587 |
def __init__(self, tag_name): |
|
2588 |
self.tag_name = tag_name |
|
2018.5.163
by Andrew Bennetts
Deal with various review comments from Robert. |
2589 |
|
2590 |
||
2376.4.7
by jml at canonical
- Add docstrings to tests. |
2591 |
class MalformedBugIdentifier(BzrError): |
2592 |
||
3535.10.1
by James Westby
Point to "bzr help bugs" from MalformedBugIdentifier. |
2593 |
_fmt = ('Did not understand bug identifier %(bug_id)s: %(reason)s. ' |
3535.10.9
by James Westby
Make the improved messages show up in the UI. |
2594 |
'See "bzr help bugs" for more information on this feature.') |
2376.4.7
by jml at canonical
- Add docstrings to tests. |
2595 |
|
2596 |
def __init__(self, bug_id, reason): |
|
2597 |
self.bug_id = bug_id |
|
2598 |
self.reason = reason |
|
2376.4.26
by Jonathan Lange
Tests for MalformedBugIdentifier and new error UnknownBugTrackerAbbreviation. |
2599 |
|
2600 |
||
3035.3.1
by Lukáš Lalinský
Generic bug tracker configuration. |
2601 |
class InvalidBugTrackerURL(BzrError): |
2602 |
||
2603 |
_fmt = ("The URL for bug tracker \"%(abbreviation)s\" doesn't " |
|
2604 |
"contain {id}: %(url)s") |
|
2605 |
||
2606 |
def __init__(self, abbreviation, url): |
|
2607 |
self.abbreviation = abbreviation |
|
2608 |
self.url = url |
|
2609 |
||
2610 |
||
2376.4.26
by Jonathan Lange
Tests for MalformedBugIdentifier and new error UnknownBugTrackerAbbreviation. |
2611 |
class UnknownBugTrackerAbbreviation(BzrError): |
2612 |
||
2376.4.28
by Jonathan Lange
Focus the tests better and clean up some dodgy bits in UnknownBugTrackerAbbreviation |
2613 |
_fmt = ("Cannot find registered bug tracker called %(abbreviation)s " |
2376.4.27
by Jonathan Lange
Include branch information in UnknownBugTrackerAbbreviation |
2614 |
"on %(branch)s") |
2376.4.26
by Jonathan Lange
Tests for MalformedBugIdentifier and new error UnknownBugTrackerAbbreviation. |
2615 |
|
2376.4.27
by Jonathan Lange
Include branch information in UnknownBugTrackerAbbreviation |
2616 |
def __init__(self, abbreviation, branch): |
2376.4.26
by Jonathan Lange
Tests for MalformedBugIdentifier and new error UnknownBugTrackerAbbreviation. |
2617 |
self.abbreviation = abbreviation |
2376.4.27
by Jonathan Lange
Include branch information in UnknownBugTrackerAbbreviation |
2618 |
self.branch = branch |
2376.4.38
by Jonathan Lange
Merge bzr.dev, resolving conflicts in error code. |
2619 |
|
2620 |
||
4119.4.3
by Jonathan Lange
Add Revision.iter_bugs. |
2621 |
class InvalidLineInBugsProperty(BzrError): |
2622 |
||
2623 |
_fmt = ("Invalid line in bugs property: '%(line)s'") |
|
2624 |
||
2625 |
def __init__(self, line): |
|
2626 |
self.line = line |
|
2627 |
||
2628 |
||
2629 |
class InvalidBugStatus(BzrError): |
|
2630 |
||
2631 |
_fmt = ("Invalid bug status: '%(status)s'") |
|
2632 |
||
2633 |
def __init__(self, status): |
|
2634 |
self.status = status |
|
2635 |
||
2636 |
||
2018.5.163
by Andrew Bennetts
Deal with various review comments from Robert. |
2637 |
class UnexpectedSmartServerResponse(BzrError): |
2638 |
||
2639 |
_fmt = "Could not understand response from smart server: %(response_tuple)r" |
|
2640 |
||
2641 |
def __init__(self, response_tuple): |
|
2642 |
self.response_tuple = response_tuple |
|
2506.2.1
by Andrew Bennetts
Start implementing container format reading and writing. |
2643 |
|
2644 |
||
3245.4.5
by Andrew Bennetts
Implement interrupting body streams with an error. |
2645 |
class ErrorFromSmartServer(BzrError): |
3690.1.1
by Andrew Bennetts
Unexpected error responses from a smart server no longer cause the client to traceback. |
2646 |
"""An error was received from a smart server.
|
2647 |
||
3690.1.2
by Andrew Bennetts
Rename UntranslateableErrorFromSmartServer -> UnknownErrorFromSmartServer. |
2648 |
:seealso: UnknownErrorFromSmartServer
|
3690.1.1
by Andrew Bennetts
Unexpected error responses from a smart server no longer cause the client to traceback. |
2649 |
"""
|
3245.4.5
by Andrew Bennetts
Implement interrupting body streams with an error. |
2650 |
|
2651 |
_fmt = "Error received from smart server: %(error_tuple)r" |
|
2652 |
||
2653 |
internal_error = True |
|
2654 |
||
2655 |
def __init__(self, error_tuple): |
|
2656 |
self.error_tuple = error_tuple |
|
3245.4.53
by Andrew Bennetts
Add some missing 'raise' statements to test_remote. |
2657 |
try: |
2658 |
self.error_verb = error_tuple[0] |
|
2659 |
except IndexError: |
|
2660 |
self.error_verb = None |
|
3245.4.52
by Andrew Bennetts
Add 'error_verb' and 'error_args' attributes to ErrorFromSmartServer. |
2661 |
self.error_args = error_tuple[1:] |
3245.4.5
by Andrew Bennetts
Implement interrupting body streams with an error. |
2662 |
|
2663 |
||
3690.1.2
by Andrew Bennetts
Rename UntranslateableErrorFromSmartServer -> UnknownErrorFromSmartServer. |
2664 |
class UnknownErrorFromSmartServer(BzrError): |
3690.1.1
by Andrew Bennetts
Unexpected error responses from a smart server no longer cause the client to traceback. |
2665 |
"""An ErrorFromSmartServer could not be translated into a typical bzrlib
|
2666 |
error.
|
|
2667 |
||
2668 |
This is distinct from ErrorFromSmartServer so that it is possible to
|
|
2669 |
distinguish between the following two cases:
|
|
5891.1.2
by Andrew Bennetts
Fix a bunch of docstring formatting nits, making pydoctor a bit happier. |
2670 |
|
2671 |
- ErrorFromSmartServer was uncaught. This is logic error in the client
|
|
2672 |
and so should provoke a traceback to the user.
|
|
2673 |
- ErrorFromSmartServer was caught but its error_tuple could not be
|
|
2674 |
translated. This is probably because the server sent us garbage, and
|
|
2675 |
should not provoke a traceback.
|
|
3690.1.1
by Andrew Bennetts
Unexpected error responses from a smart server no longer cause the client to traceback. |
2676 |
"""
|
2677 |
||
2678 |
_fmt = "Server sent an unexpected error: %(error_tuple)r" |
|
2679 |
||
2680 |
internal_error = False |
|
2681 |
||
2682 |
def __init__(self, error_from_smart_server): |
|
2683 |
"""Constructor.
|
|
2684 |
||
2685 |
:param error_from_smart_server: An ErrorFromSmartServer instance.
|
|
2686 |
"""
|
|
2687 |
self.error_from_smart_server = error_from_smart_server |
|
2688 |
self.error_tuple = error_from_smart_server.error_tuple |
|
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
2689 |
|
3690.1.1
by Andrew Bennetts
Unexpected error responses from a smart server no longer cause the client to traceback. |
2690 |
|
2506.2.1
by Andrew Bennetts
Start implementing container format reading and writing. |
2691 |
class ContainerError(BzrError): |
2692 |
"""Base class of container errors."""
|
|
2693 |
||
2694 |
||
2695 |
class UnknownContainerFormatError(ContainerError): |
|
2696 |
||
2697 |
_fmt = "Unrecognised container format: %(container_format)r" |
|
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
2698 |
|
2506.2.1
by Andrew Bennetts
Start implementing container format reading and writing. |
2699 |
def __init__(self, container_format): |
2700 |
self.container_format = container_format |
|
2701 |
||
2702 |
||
2703 |
class UnexpectedEndOfContainerError(ContainerError): |
|
2704 |
||
2705 |
_fmt = "Unexpected end of container stream" |
|
2706 |
||
2707 |
||
2708 |
class UnknownRecordTypeError(ContainerError): |
|
2709 |
||
2710 |
_fmt = "Unknown record type: %(record_type)r" |
|
2711 |
||
2712 |
def __init__(self, record_type): |
|
2713 |
self.record_type = record_type |
|
2714 |
||
2715 |
||
2506.3.1
by Andrew Bennetts
More progress: |
2716 |
class InvalidRecordError(ContainerError): |
2717 |
||
2718 |
_fmt = "Invalid record: %(reason)s" |
|
2719 |
||
2720 |
def __init__(self, reason): |
|
2721 |
self.reason = reason |
|
2722 |
||
2506.2.6
by Andrew Bennetts
Add validate method to ContainerReader and BytesRecordReader. |
2723 |
|
2724 |
class ContainerHasExcessDataError(ContainerError): |
|
2725 |
||
2726 |
_fmt = "Container has data after end marker: %(excess)r" |
|
2727 |
||
2728 |
def __init__(self, excess): |
|
2729 |
self.excess = excess |
|
2730 |
||
2506.6.1
by Andrew Bennetts
Return a callable instead of a str from read, and add more validation. |
2731 |
|
2732 |
class DuplicateRecordNameError(ContainerError): |
|
2733 |
||
2745.3.3
by Daniel Watkins
Changed to remove need for escaping of quotes. |
2734 |
_fmt = "Container has multiple records with the same name: %(name)s" |
2506.6.1
by Andrew Bennetts
Return a callable instead of a str from read, and add more validation. |
2735 |
|
2736 |
def __init__(self, name): |
|
6112.5.11
by Jonathan Riddell
resolve that _fmt strings should be ascii so no longer allow for unicode prior to gettext() |
2737 |
self.name = name.decode("utf-8") |
2506.6.1
by Andrew Bennetts
Return a callable instead of a str from read, and add more validation. |
2738 |
|
2520.4.107
by Aaron Bentley
Merge bzr.dev |
2739 |
|
2871.1.1
by Robert Collins
* New class ``bzrlib.errors.InternalBzrError`` which is just a convenient |
2740 |
class NoDestinationAddress(InternalBzrError): |
2535.2.1
by Adeodato Simó
New SMTPConnection class, a reduced version of that in bzr-email. |
2741 |
|
2742 |
_fmt = "Message does not have a destination address." |
|
2535.2.2
by Adeodato Simó
Swap the order of internal_error and _fmt for consistency. |
2743 |
|
2535.2.4
by Adeodato Simó
Don't use BzrCommandError in non-UI code; create and use an SMTPError |
2744 |
|
2535.3.42
by Andrew Bennetts
Merge from bzr.dev |
2745 |
class RepositoryDataStreamError(BzrError): |
2746 |
||
2747 |
_fmt = "Corrupt or incompatible data stream: %(reason)s" |
|
2748 |
||
2749 |
def __init__(self, reason): |
|
2750 |
self.reason = reason |
|
2751 |
||
2752 |
||
2535.2.4
by Adeodato Simó
Don't use BzrCommandError in non-UI code; create and use an SMTPError |
2753 |
class SMTPError(BzrError): |
2754 |
||
2755 |
_fmt = "SMTP error: %(error)s" |
|
2756 |
||
2757 |
def __init__(self, error): |
|
2758 |
self.error = error |
|
2681.1.9
by Aaron Bentley
Add support for mail-from-editor |
2759 |
|
2760 |
||
2761 |
class NoMessageSupplied(BzrError): |
|
2762 |
||
2763 |
_fmt = "No message supplied." |
|
2681.1.10
by Aaron Bentley
Clean up handling of unknown mail clients |
2764 |
|
2765 |
||
3042.1.1
by Lukáš Lalinský
Make mail-to address in ``bzr send`` optional for interactive mail clients. |
2766 |
class NoMailAddressSpecified(BzrError): |
2767 |
||
3984.2.1
by Daniel Watkins
Fixed #198418 |
2768 |
_fmt = "No mail-to address (--mail-to) or output (-o) specified." |
3042.1.1
by Lukáš Lalinský
Make mail-to address in ``bzr send`` optional for interactive mail clients. |
2769 |
|
2770 |
||
2681.1.18
by Aaron Bentley
Refactor to increase code sharing, allow multiple command names for tbird |
2771 |
class MailClientNotFound(BzrError): |
2772 |
||
2773 |
_fmt = "Unable to find mail client with the following names:"\ |
|
2774 |
" %(mail_command_list_string)s" |
|
2775 |
||
2776 |
def __init__(self, mail_command_list): |
|
2777 |
mail_command_list_string = ', '.join(mail_command_list) |
|
2778 |
BzrError.__init__(self, mail_command_list=mail_command_list, |
|
2779 |
mail_command_list_string=mail_command_list_string) |
|
2681.1.31
by Aaron Bentley
Merge bzr.dev |
2780 |
|
2694.2.1
by Aaron Bentley
Make error handling nicer when SMTP server not working |
2781 |
class SMTPConnectionRefused(SMTPError): |
2782 |
||
2783 |
_fmt = "SMTP connection to %(host)s refused" |
|
2784 |
||
2785 |
def __init__(self, error, host): |
|
2786 |
self.error = error |
|
2787 |
self.host = host |
|
2788 |
||
2789 |
||
2790 |
class DefaultSMTPConnectionRefused(SMTPConnectionRefused): |
|
2791 |
||
2792 |
_fmt = "Please specify smtp_server. No server at default %(host)s." |
|
2796.2.1
by Aaron Bentley
Begin work on reconfigure command |
2793 |
|
2794 |
||
2795 |
class BzrDirError(BzrError): |
|
2796 |
||
2797 |
def __init__(self, bzrdir): |
|
2798 |
import bzrlib.urlutils as urlutils |
|
5158.6.9
by Martin Pool
Simplify various code to use user_url |
2799 |
display_url = urlutils.unescape_for_display(bzrdir.user_url, |
2796.2.1
by Aaron Bentley
Begin work on reconfigure command |
2800 |
'ascii') |
2801 |
BzrError.__init__(self, bzrdir=bzrdir, display_url=display_url) |
|
2802 |
||
2803 |
||
3338.1.1
by Aaron Bentley
Raise an error when converting a branch to a lightweight checkout loses data |
2804 |
class UnsyncedBranches(BzrDirError): |
2805 |
||
3338.1.4
by Aaron Bentley
Add sync-for-reconfigure help topic |
2806 |
_fmt = ("'%(display_url)s' is not in sync with %(target_url)s. See" |
3338.1.5
by Aaron Bentley
Tweak text |
2807 |
" bzr help sync-for-reconfigure.") |
3338.1.1
by Aaron Bentley
Raise an error when converting a branch to a lightweight checkout loses data |
2808 |
|
2809 |
def __init__(self, bzrdir, target_branch): |
|
2810 |
BzrDirError.__init__(self, bzrdir) |
|
2811 |
import bzrlib.urlutils as urlutils |
|
2812 |
self.target_url = urlutils.unescape_for_display(target_branch.base, |
|
2813 |
'ascii') |
|
2814 |
||
2815 |
||
2796.2.1
by Aaron Bentley
Begin work on reconfigure command |
2816 |
class AlreadyBranch(BzrDirError): |
2817 |
||
2818 |
_fmt = "'%(display_url)s' is already a branch." |
|
2819 |
||
2820 |
||
2796.2.3
by Aaron Bentley
Implement conversion to tree and checkout |
2821 |
class AlreadyTree(BzrDirError): |
2822 |
||
2823 |
_fmt = "'%(display_url)s' is already a tree." |
|
2824 |
||
2825 |
||
2826 |
class AlreadyCheckout(BzrDirError): |
|
2827 |
||
2828 |
_fmt = "'%(display_url)s' is already a checkout." |
|
2829 |
||
2830 |
||
2796.2.19
by Aaron Bentley
Support reconfigure --lightweight-checkout |
2831 |
class AlreadyLightweightCheckout(BzrDirError): |
2832 |
||
2833 |
_fmt = "'%(display_url)s' is already a lightweight checkout." |
|
2834 |
||
2835 |
||
3311.2.6
by Aaron Bentley
rename 'sharing' to 'use-shared' |
2836 |
class AlreadyUsingShared(BzrDirError): |
3311.2.2
by Aaron Bentley
Flesh out to_sharing |
2837 |
|
3311.2.6
by Aaron Bentley
rename 'sharing' to 'use-shared' |
2838 |
_fmt = "'%(display_url)s' is already using a shared repository." |
3311.2.2
by Aaron Bentley
Flesh out to_sharing |
2839 |
|
2840 |
||
3311.2.4
by Aaron Bentley
Implement conversion to standalone |
2841 |
class AlreadyStandalone(BzrDirError): |
2842 |
||
2843 |
_fmt = "'%(display_url)s' is already standalone." |
|
2844 |
||
2845 |
||
3921.4.1
by Matthew Fuller
Add some error classes for manipulating trees/no-trees settings on |
2846 |
class AlreadyWithTrees(BzrDirError): |
2847 |
||
3983.3.8
by Marius Kruger
use brakets for long string wrapping |
2848 |
_fmt = ("Shared repository '%(display_url)s' already creates " |
3983.3.11
by Vincent Ladeuil
Fix indentation as per Aaron's review and then some. |
2849 |
"working trees.") |
3921.4.1
by Matthew Fuller
Add some error classes for manipulating trees/no-trees settings on |
2850 |
|
2851 |
||
2852 |
class AlreadyWithNoTrees(BzrDirError): |
|
2853 |
||
3983.3.8
by Marius Kruger
use brakets for long string wrapping |
2854 |
_fmt = ("Shared repository '%(display_url)s' already doesn't create " |
3983.3.11
by Vincent Ladeuil
Fix indentation as per Aaron's review and then some. |
2855 |
"working trees.") |
3921.4.1
by Matthew Fuller
Add some error classes for manipulating trees/no-trees settings on |
2856 |
|
2857 |
||
2796.2.1
by Aaron Bentley
Begin work on reconfigure command |
2858 |
class ReconfigurationNotSupported(BzrDirError): |
2859 |
||
2860 |
_fmt = "Requested reconfiguration of '%(display_url)s' is not supported." |
|
2861 |
||
2862 |
||
2796.2.3
by Aaron Bentley
Implement conversion to tree and checkout |
2863 |
class NoBindLocation(BzrDirError): |
2864 |
||
2865 |
_fmt = "No location could be found to bind to at %(display_url)s." |
|
2866 |
||
2867 |
||
2796.2.1
by Aaron Bentley
Begin work on reconfigure command |
2868 |
class UncommittedChanges(BzrError): |
2869 |
||
4487.2.4
by Vincent Ladeuil
Start addressing jam's concerns. |
2870 |
_fmt = ('Working tree "%(display_url)s" has uncommitted changes' |
4487.2.6
by Vincent Ladeuil
Fixed as per jam's review. |
2871 |
' (See bzr status).%(more)s') |
2796.2.1
by Aaron Bentley
Begin work on reconfigure command |
2872 |
|
4487.2.6
by Vincent Ladeuil
Fixed as per jam's review. |
2873 |
def __init__(self, tree, more=None): |
2874 |
if more is None: |
|
2875 |
more = '' |
|
2876 |
else: |
|
2877 |
more = ' ' + more |
|
2796.2.1
by Aaron Bentley
Begin work on reconfigure command |
2878 |
import bzrlib.urlutils as urlutils |
5368.1.1
by Jelmer Vernooij
Allow passing a tree without a user_url attribute to UncommittedChanges. |
2879 |
user_url = getattr(tree, "user_url", None) |
2880 |
if user_url is None: |
|
2881 |
display_url = str(tree) |
|
2882 |
else: |
|
2883 |
display_url = urlutils.unescape_for_display(user_url, 'ascii') |
|
4487.2.6
by Vincent Ladeuil
Fixed as per jam's review. |
2884 |
BzrError.__init__(self, tree=tree, display_url=display_url, more=more) |
3006.2.1
by Alexander Belchenko
workaround for bug #81689: give a proper error message instead of traceback when symlink cannot be created (e.g. on Windows) |
2885 |
|
2886 |
||
5268.3.1
by Matt Giuca
remove-tree now refuses to run without --force if there are shelved changes. |
2887 |
class ShelvedChanges(UncommittedChanges): |
2888 |
||
2889 |
_fmt = ('Working tree "%(display_url)s" has shelved changes' |
|
2890 |
' (See bzr shelve --list).%(more)s') |
|
2891 |
||
2892 |
||
2948.4.6
by Lukáš Lalinský
Don't subclass dict in Template and raise an error on missing variable. |
2893 |
class MissingTemplateVariable(BzrError): |
2894 |
||
2895 |
_fmt = 'Variable {%(name)s} is not available.' |
|
2896 |
||
2897 |
def __init__(self, name): |
|
2898 |
self.name = name |
|
2948.4.7
by Lukáš Lalinský
Merge bzr.dev. |
2899 |
|
2900 |
||
3207.1.1
by Lukáš Lalinský
Raise a proper error when 'version-info --custom' is used without a template |
2901 |
class NoTemplate(BzrError): |
2902 |
||
2903 |
_fmt = 'No template specified.' |
|
2904 |
||
2905 |
||
3006.2.1
by Alexander Belchenko
workaround for bug #81689: give a proper error message instead of traceback when symlink cannot be created (e.g. on Windows) |
2906 |
class UnableCreateSymlink(BzrError): |
2907 |
||
3006.2.2
by Alexander Belchenko
tests added. |
2908 |
_fmt = 'Unable to create symlink %(path_str)son this platform' |
2909 |
||
2910 |
def __init__(self, path=None): |
|
2911 |
path_str = '' |
|
2912 |
if path: |
|
2913 |
try: |
|
2914 |
path_str = repr(str(path)) |
|
2915 |
except UnicodeEncodeError: |
|
2916 |
path_str = repr(path) |
|
2917 |
path_str += ' ' |
|
2918 |
self.path_str = path_str |
|
3144.1.1
by Lukáš Lalinský
Fixed error reporting of unsupported timezone format. |
2919 |
|
2920 |
||
2921 |
class UnsupportedTimezoneFormat(BzrError): |
|
2922 |
||
2923 |
_fmt = ('Unsupported timezone format "%(timezone)s", ' |
|
2924 |
'options are "utc", "original", "local".') |
|
2925 |
||
2926 |
def __init__(self, timezone): |
|
2927 |
self.timezone = timezone |
|
3246.7.1
by Martin Albisetti
Core code for automatic plugin suggestion |
2928 |
|
2929 |
||
2930 |
class CommandAvailableInPlugin(StandardError): |
|
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
2931 |
|
3246.7.1
by Martin Albisetti
Core code for automatic plugin suggestion |
2932 |
internal_error = False |
2933 |
||
2934 |
def __init__(self, cmd_name, plugin_metadata, provider): |
|
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
2935 |
|
3246.7.1
by Martin Albisetti
Core code for automatic plugin suggestion |
2936 |
self.plugin_metadata = plugin_metadata |
2937 |
self.cmd_name = cmd_name |
|
2938 |
self.provider = provider |
|
2939 |
||
2940 |
def __str__(self): |
|
2941 |
||
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
2942 |
_fmt = ('"%s" is not a standard bzr command. \n' |
3246.7.1
by Martin Albisetti
Core code for automatic plugin suggestion |
2943 |
'However, the following official plugin provides this command: %s\n' |
2944 |
'You can install it by going to: %s' |
|
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
2945 |
% (self.cmd_name, self.plugin_metadata['name'], |
3246.7.1
by Martin Albisetti
Core code for automatic plugin suggestion |
2946 |
self.plugin_metadata['url'])) |
2947 |
||
2948 |
return _fmt |
|
2949 |
||
2950 |
||
2951 |
class NoPluginAvailable(BzrError): |
|
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
2952 |
pass
|
3246.7.1
by Martin Albisetti
Core code for automatic plugin suggestion |
2953 |
|
3246.7.4
by Martin Albisetti
Merge from bzr.dev |
2954 |
|
3234.2.6
by Alexander Belchenko
because every mail client has different rules to compose command line we should encode arguments to 8 bit string only when needed. |
2955 |
class UnableEncodePath(BzrError): |
2956 |
||
3234.2.8
by Alexander Belchenko
fix grammar in formatting string of UnableEncodePath error. |
2957 |
_fmt = ('Unable to encode %(kind)s path %(path)r in ' |
3234.2.6
by Alexander Belchenko
because every mail client has different rules to compose command line we should encode arguments to 8 bit string only when needed. |
2958 |
'user encoding %(user_encoding)s') |
2959 |
||
2960 |
def __init__(self, path, kind): |
|
3224.5.8
by Andrew Bennetts
Fix failing tests. |
2961 |
from bzrlib.osutils import get_user_encoding |
3234.2.6
by Alexander Belchenko
because every mail client has different rules to compose command line we should encode arguments to 8 bit string only when needed. |
2962 |
self.path = path |
2963 |
self.kind = kind |
|
6318.2.4
by Martin Packman
Remove module level osutils import |
2964 |
self.user_encoding = get_user_encoding() |
3365.1.1
by Andrea Corbellini
Handle errors raised by socket.bind() (bug 200575) |
2965 |
|
3408.4.1
by Ian Clatworthy
Nicer error when smart server started on an address already in use (Andrea Corbellini) |
2966 |
|
5447.4.10
by Vincent Ladeuil
Using dedicated exceptions feels cleaner. |
2967 |
class NoSuchConfig(BzrError): |
2968 |
||
2969 |
_fmt = ('The "%(config_id)s" configuration does not exist.') |
|
2970 |
||
2971 |
def __init__(self, config_id): |
|
2972 |
BzrError.__init__(self, config_id=config_id) |
|
2973 |
||
2974 |
||
2975 |
class NoSuchConfigOption(BzrError): |
|
2976 |
||
2977 |
_fmt = ('The "%(option_name)s" configuration option does not exist.') |
|
2978 |
||
2979 |
def __init__(self, option_name): |
|
2980 |
BzrError.__init__(self, option_name=option_name) |
|
2981 |
||
2982 |
||
2900.3.7
by Tim Penhey
Updates from Aaron's review. |
2983 |
class NoSuchAlias(BzrError): |
2984 |
||
2985 |
_fmt = ('The alias "%(alias_name)s" does not exist.') |
|
2986 |
||
2987 |
def __init__(self, alias_name): |
|
2988 |
BzrError.__init__(self, alias_name=alias_name) |
|
2900.3.13
by Tim Penhey
Merge bzr.dev and resolve conflicts. |
2989 |
|
2990 |
||
3512.2.1
by Aaron Bentley
Add support for branch-associated locations |
2991 |
class DirectoryLookupFailure(BzrError): |
2992 |
"""Base type for lookup errors."""
|
|
2993 |
||
2994 |
pass
|
|
2995 |
||
2996 |
||
2997 |
class InvalidLocationAlias(DirectoryLookupFailure): |
|
2998 |
||
2999 |
_fmt = '"%(alias_name)s" is not a valid location alias.' |
|
3000 |
||
3001 |
def __init__(self, alias_name): |
|
3002 |
DirectoryLookupFailure.__init__(self, alias_name=alias_name) |
|
3003 |
||
3004 |
||
3005 |
class UnsetLocationAlias(DirectoryLookupFailure): |
|
3006 |
||
3007 |
_fmt = 'No %(alias_name)s location assigned.' |
|
3008 |
||
3009 |
def __init__(self, alias_name): |
|
3010 |
DirectoryLookupFailure.__init__(self, alias_name=alias_name[1:]) |
|
3011 |
||
3012 |
||
3365.1.1
by Andrea Corbellini
Handle errors raised by socket.bind() (bug 200575) |
3013 |
class CannotBindAddress(BzrError): |
3014 |
||
3015 |
_fmt = 'Cannot bind address "%(host)s:%(port)i": %(orig_error)s.' |
|
3016 |
||
3017 |
def __init__(self, host, port, orig_error): |
|
4634.1.5
by Martin Pool
python2.4 socket.error doesn't have a useful repr |
3018 |
# nb: in python2.4 socket.error doesn't have a useful repr
|
3365.1.1
by Andrea Corbellini
Handle errors raised by socket.bind() (bug 200575) |
3019 |
BzrError.__init__(self, host=host, port=port, |
4634.1.5
by Martin Pool
python2.4 socket.error doesn't have a useful repr |
3020 |
orig_error=repr(orig_error.args)) |
3398.1.29
by Ian Clatworthy
add UnknownRules class & test |
3021 |
|
3022 |
||
3023 |
class UnknownRules(BzrError): |
|
3024 |
||
3025 |
_fmt = ('Unknown rules detected: %(unknowns_str)s.') |
|
3026 |
||
3027 |
def __init__(self, unknowns): |
|
3028 |
BzrError.__init__(self, unknowns_str=", ".join(unknowns)) |
|
3577.1.1
by Andrew Bennetts
Cherry-pick TipChangeRejected changes from pre-branch-tip-changed-hook loom. |
3029 |
|
3030 |
||
3031 |
class TipChangeRejected(BzrError): |
|
3032 |
"""A pre_change_branch_tip hook function may raise this to cleanly and
|
|
3033 |
explicitly abort a change to a branch tip.
|
|
3034 |
"""
|
|
3943.8.1
by Marius Kruger
remove all trailing whitespace from bzr source |
3035 |
|
3577.1.1
by Andrew Bennetts
Cherry-pick TipChangeRejected changes from pre-branch-tip-changed-hook loom. |
3036 |
_fmt = u"Tip change rejected: %(msg)s" |
3037 |
||
3038 |
def __init__(self, msg): |
|
3039 |
self.msg = msg |
|
3040 |
||
0.12.68
by Aaron Bentley
Update docs, move items to proper files. |
3041 |
|
0.15.41
by Aaron Bentley
Replace assert with proper error handling |
3042 |
class ShelfCorrupt(BzrError): |
3043 |
||
3044 |
_fmt = "Shelf corrupt." |
|
0.12.75
by Aaron Bentley
Merge unshelve into shelf-manager |
3045 |
|
3046 |
||
5927.2.2
by Jonathan Riddell
throw the error |
3047 |
class DecompressCorruption(BzrError): |
3048 |
||
5927.2.7
by Jonathan Riddell
in DecompressCorruption keep _fmt as a class member. in test use with for opening files |
3049 |
_fmt = "Corruption while decompressing repository file%(orig_error)s" |
5927.2.6
by Jonathan Riddell
Make error message less specific (might not be a local disk issue) and pass through zlib error |
3050 |
|
3051 |
def __init__(self, orig_error=None): |
|
5927.2.7
by Jonathan Riddell
in DecompressCorruption keep _fmt as a class member. in test use with for opening files |
3052 |
if orig_error is not None: |
3053 |
self.orig_error = ", %s" % (orig_error,) |
|
5927.2.6
by Jonathan Riddell
Make error message less specific (might not be a local disk issue) and pass through zlib error |
3054 |
else: |
5927.2.7
by Jonathan Riddell
in DecompressCorruption keep _fmt as a class member. in test use with for opening files |
3055 |
self.orig_error = "" |
5927.2.6
by Jonathan Riddell
Make error message less specific (might not be a local disk issue) and pass through zlib error |
3056 |
BzrError.__init__(self) |
5927.2.2
by Jonathan Riddell
throw the error |
3057 |
|
3058 |
||
0.12.68
by Aaron Bentley
Update docs, move items to proper files. |
3059 |
class NoSuchShelfId(BzrError): |
3060 |
||
3061 |
_fmt = 'No changes are shelved with id "%(shelf_id)d".' |
|
3062 |
||
3063 |
def __init__(self, shelf_id): |
|
3064 |
BzrError.__init__(self, shelf_id=shelf_id) |
|
0.16.103
by Aaron Bentley
raise UserAbort instead of doing sys.exit |
3065 |
|
3066 |
||
3990.2.2
by Daniel Watkins
Added InvalidShelfId error and accompanying test. |
3067 |
class InvalidShelfId(BzrError): |
3068 |
||
3990.2.3
by Daniel Watkins
Made error message slightly more friendly. |
3069 |
_fmt = '"%(invalid_id)s" is not a valid shelf id, try a number instead.' |
3990.2.2
by Daniel Watkins
Added InvalidShelfId error and accompanying test. |
3070 |
|
3071 |
def __init__(self, invalid_id): |
|
3072 |
BzrError.__init__(self, invalid_id=invalid_id) |
|
3073 |
||
3074 |
||
4294.2.8
by Robert Collins
Reduce round trips pushing new branches substantially. |
3075 |
class JailBreak(BzrError): |
3076 |
||
3077 |
_fmt = "An attempt to access a url outside the server jail was made: '%(url)s'." |
|
3078 |
||
3079 |
def __init__(self, url): |
|
3080 |
BzrError.__init__(self, url=url) |
|
3081 |
||
3082 |
||
0.16.103
by Aaron Bentley
raise UserAbort instead of doing sys.exit |
3083 |
class UserAbort(BzrError): |
3084 |
||
3085 |
_fmt = 'The user aborted the operation.' |
|
3983.1.8
by Daniel Watkins
Added MustHaveWorkingTree error and accompanying test. |
3086 |
|
3087 |
||
3088 |
class MustHaveWorkingTree(BzrError): |
|
3089 |
||
3983.1.10
by Daniel Watkins
Made exception message slightly better. |
3090 |
_fmt = ("Branching '%(url)s'(%(format)s) must create a working tree.") |
3983.1.8
by Daniel Watkins
Added MustHaveWorkingTree error and accompanying test. |
3091 |
|
3092 |
def __init__(self, format, url): |
|
3093 |
BzrError.__init__(self, format=format, url=url) |
|
4002.1.1
by Andrew Bennetts
Implement suspend_write_group/resume_write_group. |
3094 |
|
3095 |
||
3586.1.1
by Ian Clatworthy
add view-related errors and tests |
3096 |
class NoSuchView(BzrError): |
3097 |
"""A view does not exist.
|
|
3098 |
"""
|
|
4032.1.2
by John Arbash Meinel
Track down a few more files that have trailing whitespace. |
3099 |
|
3586.1.1
by Ian Clatworthy
add view-related errors and tests |
3100 |
_fmt = u"No such view: %(view_name)s." |
3101 |
||
3102 |
def __init__(self, view_name): |
|
3103 |
self.view_name = view_name |
|
3104 |
||
3105 |
||
3106 |
class ViewsNotSupported(BzrError): |
|
3107 |
"""Views are not supported by a tree format.
|
|
3108 |
"""
|
|
4032.1.2
by John Arbash Meinel
Track down a few more files that have trailing whitespace. |
3109 |
|
3586.1.1
by Ian Clatworthy
add view-related errors and tests |
3110 |
_fmt = ("Views are not supported by %(tree)s;" |
3111 |
" use 'bzr upgrade' to change your tree to a later format.") |
|
3112 |
||
3113 |
def __init__(self, tree): |
|
3114 |
self.tree = tree |
|
3586.1.9
by Ian Clatworthy
first cut at view command |
3115 |
|
3116 |
||
3117 |
class FileOutsideView(BzrError): |
|
3118 |
||
3119 |
_fmt = ('Specified file "%(file_name)s" is outside the current view: ' |
|
3120 |
'%(view_str)s') |
|
3121 |
||
3122 |
def __init__(self, file_name, view_files): |
|
3123 |
self.file_name = file_name |
|
3124 |
self.view_str = ", ".join(view_files) |
|
3586.1.35
by Ian Clatworthy
merge bzr.dev r4029 |
3125 |
|
3126 |
||
4002.1.7
by Andrew Bennetts
Rename UnresumableWriteGroups to UnresumableWriteGroup. |
3127 |
class UnresumableWriteGroup(BzrError): |
4032.1.2
by John Arbash Meinel
Track down a few more files that have trailing whitespace. |
3128 |
|
4002.1.7
by Andrew Bennetts
Rename UnresumableWriteGroups to UnresumableWriteGroup. |
3129 |
_fmt = ("Repository %(repository)s cannot resume write group " |
4002.1.1
by Andrew Bennetts
Implement suspend_write_group/resume_write_group. |
3130 |
"%(write_groups)r: %(reason)s") |
3131 |
||
3132 |
internal_error = True |
|
3133 |
||
3134 |
def __init__(self, repository, write_groups, reason): |
|
3135 |
self.repository = repository |
|
3136 |
self.write_groups = write_groups |
|
3137 |
self.reason = reason |
|
3138 |
||
3139 |
||
3140 |
class UnsuspendableWriteGroup(BzrError): |
|
4032.1.2
by John Arbash Meinel
Track down a few more files that have trailing whitespace. |
3141 |
|
4002.1.1
by Andrew Bennetts
Implement suspend_write_group/resume_write_group. |
3142 |
_fmt = ("Repository %(repository)s cannot suspend a write group.") |
3143 |
||
3144 |
internal_error = True |
|
3145 |
||
3146 |
def __init__(self, repository): |
|
3147 |
self.repository = repository |
|
4347.2.1
by Jelmer Vernooij
Move dpush onto an InterBranch object. |
3148 |
|
3149 |
||
4347.2.3
by Jelmer Vernooij
Clarify name for LossyPushToSameVCS exception. |
3150 |
class LossyPushToSameVCS(BzrError): |
3151 |
||
3152 |
_fmt = ("Lossy push not possible between %(source_branch)r and " |
|
3153 |
"%(target_branch)r that are in the same VCS.") |
|
3154 |
||
3155 |
internal_error = True |
|
3156 |
||
3157 |
def __init__(self, source_branch, target_branch): |
|
3158 |
self.source_branch = source_branch |
|
3159 |
self.target_branch = target_branch |
|
4925.1.1
by Jelmer Vernooij
Print a proper error when attempting to push to a foreign VCS for which |
3160 |
|
3161 |
||
3162 |
class NoRoundtrippingSupport(BzrError): |
|
3163 |
||
3164 |
_fmt = ("Roundtripping is not supported between %(source_branch)r and " |
|
3165 |
"%(target_branch)r.") |
|
3166 |
||
3167 |
internal_error = True |
|
3168 |
||
3169 |
def __init__(self, source_branch, target_branch): |
|
3170 |
self.source_branch = source_branch |
|
3171 |
self.target_branch = target_branch |
|
4976.1.1
by Jelmer Vernooij
Add FileTimestampUnavailable exception. |
3172 |
|
3173 |
||
3174 |
class FileTimestampUnavailable(BzrError): |
|
3175 |
||
3176 |
_fmt = "The filestamp for %(path)s is not available." |
|
3177 |
||
3178 |
internal_error = True |
|
3179 |
||
3180 |
def __init__(self, path): |
|
3181 |
self.path = path |
|
5051.3.1
by Jelmer Vernooij
Add optional name argument to BzrDir.destroy_branch. |
3182 |
|
3183 |
||
3184 |
class NoColocatedBranchSupport(BzrError): |
|
3185 |
||
5051.3.5
by Jelmer Vernooij
Fix exception error string. |
3186 |
_fmt = ("%(bzrdir)r does not support co-located branches.") |
5051.3.1
by Jelmer Vernooij
Add optional name argument to BzrDir.destroy_branch. |
3187 |
|
3188 |
def __init__(self, bzrdir): |
|
3189 |
self.bzrdir = bzrdir |
|
3190 |
||
5050.7.2
by Parth Malwankar
recursive binding now shows a clear error |
3191 |
|
5187.2.6
by Parth Malwankar
lockdir no long mandates whoami but uses unicode version of getuser |
3192 |
class NoWhoami(BzrError): |
3193 |
||
3194 |
_fmt = ('Unable to determine your name.\n' |
|
3195 |
"Please, set your name with the 'whoami' command.\n" |
|
3196 |
'E.g. bzr whoami "Your Name <name@example.com>"') |
|
3197 |
||
5050.7.2
by Parth Malwankar
recursive binding now shows a clear error |
3198 |
|
5326.2.1
by Parth Malwankar
added InvalidPattern error. |
3199 |
class InvalidPattern(BzrError): |
3200 |
||
5339.1.1
by Parth Malwankar
fixes errors.InvalidPattern to work on Python2.5 |
3201 |
_fmt = ('Invalid pattern(s) found. %(msg)s') |
5326.2.1
by Parth Malwankar
added InvalidPattern error. |
3202 |
|
5339.1.1
by Parth Malwankar
fixes errors.InvalidPattern to work on Python2.5 |
3203 |
def __init__(self, msg): |
3204 |
self.msg = msg |
|
5187.2.6
by Parth Malwankar
lockdir no long mandates whoami but uses unicode version of getuser |
3205 |
|
5050.7.2
by Parth Malwankar
recursive binding now shows a clear error |
3206 |
|
3207 |
class RecursiveBind(BzrError): |
|
3208 |
||
5050.7.5
by Parth Malwankar
better error message for RecursiveBind |
3209 |
_fmt = ('Branch "%(branch_url)s" appears to be bound to itself. ' |
3210 |
'Please use `bzr unbind` to fix.') |
|
3211 |
||
3212 |
def __init__(self, branch_url): |
|
3213 |
self.branch_url = branch_url |
|
5050.7.2
by Parth Malwankar
recursive binding now shows a clear error |
3214 |
|
5676.1.4
by Jelmer Vernooij
merge bzr.dev. |
3215 |
|
3216 |
# FIXME: I would prefer to define the config related exception classes in
|
|
3217 |
# config.py but the lazy import mechanism proscribes this -- vila 20101222
|
|
3218 |
class OptionExpansionLoop(BzrError): |
|
3219 |
||
3220 |
_fmt = 'Loop involving %(refs)r while expanding "%(string)s".' |
|
3221 |
||
3222 |
def __init__(self, string, refs): |
|
3223 |
self.string = string |
|
3224 |
self.refs = '->'.join(refs) |
|
3225 |
||
3226 |
||
3227 |
class ExpandingUnknownOption(BzrError): |
|
3228 |
||
3229 |
_fmt = 'Option %(name)s is not defined while expanding "%(string)s".' |
|
3230 |
||
3231 |
def __init__(self, name, string): |
|
3232 |
self.name = name |
|
3233 |
self.string = string |
|
5837.1.1
by Jelmer Vernooij
Make Inter.get raise NoCompatibleInter. |
3234 |
|
3235 |
||
3236 |
class NoCompatibleInter(BzrError): |
|
3237 |
||
3238 |
_fmt = ('No compatible object available for operations from %(source)r ' |
|
3239 |
'to %(target)r.') |
|
3240 |
||
3241 |
def __init__(self, source, target): |
|
3242 |
self.source = source |
|
3243 |
self.target = target |
|
6060.7.4
by Jelmer Vernooij
Update NEWS |
3244 |
|
3245 |
||
3246 |
class HpssVfsRequestNotAllowed(BzrError): |
|
3247 |
||
3248 |
_fmt = ("VFS requests over the smart server are not allowed. Encountered: " |
|
3249 |
"%(method)s, %(arguments)s.") |
|
3250 |
||
3251 |
def __init__(self, method, arguments): |
|
3252 |
self.method = method |
|
3253 |
self.arguments = arguments |
|
6217.2.1
by Jelmer Vernooij
Allow tree implementations to not support kind changes. |
3254 |
|
3255 |
||
3256 |
class UnsupportedKindChange(BzrError): |
|
3257 |
||
6217.2.2
by Jelmer Vernooij
Tweak error message. |
3258 |
_fmt = ("Kind change from %(from_kind)s to %(to_kind)s for " |
3259 |
"%(path)s not supported by format %(format)r") |
|
6217.2.1
by Jelmer Vernooij
Allow tree implementations to not support kind changes. |
3260 |
|
6217.2.2
by Jelmer Vernooij
Tweak error message. |
3261 |
def __init__(self, path, from_kind, to_kind, format): |
6217.2.1
by Jelmer Vernooij
Allow tree implementations to not support kind changes. |
3262 |
self.path = path |
6217.2.2
by Jelmer Vernooij
Tweak error message. |
3263 |
self.from_kind = from_kind |
3264 |
self.to_kind = to_kind |
|
3265 |
self.format = format |
|
6289.2.1
by Jelmer Vernooij
Move the primary definition of the patches exceptions to bzrlib.errors. |
3266 |
|
3267 |
||
6213.1.21
by Jelmer Vernooij
Add feature support for repository. |
3268 |
class MissingFeature(BzrError): |
3269 |
||
3270 |
_fmt = ("Missing feature %(feature)s not provided by this " |
|
3271 |
"version of Bazaar or any plugin.") |
|
3272 |
||
3273 |
def __init__(self, feature): |
|
3274 |
self.feature = feature |
|
6213.1.22
by Jelmer Vernooij
Merge bzr.dev. |
3275 |
|
3276 |
||
6289.2.1
by Jelmer Vernooij
Move the primary definition of the patches exceptions to bzrlib.errors. |
3277 |
class PatchSyntax(BzrError): |
3278 |
"""Base class for patch syntax errors."""
|
|
3279 |
||
3280 |
||
3281 |
class BinaryFiles(BzrError): |
|
3282 |
||
3283 |
_fmt = 'Binary files section encountered.' |
|
3284 |
||
3285 |
def __init__(self, orig_name, mod_name): |
|
3286 |
self.orig_name = orig_name |
|
3287 |
self.mod_name = mod_name |
|
3288 |
||
3289 |
||
3290 |
class MalformedPatchHeader(PatchSyntax): |
|
3291 |
||
3292 |
_fmt = "Malformed patch header. %(desc)s\n%(line)r" |
|
3293 |
||
3294 |
def __init__(self, desc, line): |
|
3295 |
self.desc = desc |
|
3296 |
self.line = line |
|
3297 |
||
3298 |
||
3299 |
class MalformedHunkHeader(PatchSyntax): |
|
3300 |
||
3301 |
_fmt = "Malformed hunk header. %(desc)s\n%(line)r" |
|
3302 |
||
3303 |
def __init__(self, desc, line): |
|
3304 |
self.desc = desc |
|
3305 |
self.line = line |
|
3306 |
||
3307 |
||
3308 |
class MalformedLine(PatchSyntax): |
|
3309 |
||
3310 |
_fmt = "Malformed line. %(desc)s\n%(line)r" |
|
3311 |
||
3312 |
def __init__(self, desc, line): |
|
3313 |
self.desc = desc |
|
3314 |
self.line = line |
|
3315 |
||
3316 |
||
3317 |
class PatchConflict(BzrError): |
|
3318 |
||
3319 |
_fmt = ('Text contents mismatch at line %(line_no)d. Original has ' |
|
3320 |
'"%(orig_line)s", but patch says it should be "%(patch_line)s"') |
|
3321 |
||
3322 |
def __init__(self, line_no, orig_line, patch_line): |
|
3323 |
self.line_no = line_no |
|
3324 |
self.orig_line = orig_line.rstrip('\n') |
|
3325 |
self.patch_line = patch_line.rstrip('\n') |
|
6213.1.43
by Jelmer Vernooij
Cope with features already existing. |
3326 |
|
3327 |
||
3328 |
class FeatureAlreadyRegistered(BzrError): |
|
3329 |
||
3330 |
_fmt = 'The feature %(feature)s has already been registered.' |
|
3331 |
||
3332 |
def __init__(self, feature): |
|
3333 |
self.feature = feature |