~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/errors.py

  • Committer: Martin Pool
  • Date: 2006-02-22 04:29:54 UTC
  • mfrom: (1566 +trunk)
  • mto: This revision was merged to the branch mainline in revision 1569.
  • Revision ID: mbp@sourcefrog.net-20060222042954-60333f08dd56a646
[merge] from bzr.dev before integration
Fix undefined ordering in sign_my_revisions breaking tests

Show diffs side-by-side

added added

removed removed

Lines of Context:
105
105
 
106
106
class BzrCheckError(BzrNewError):
107
107
    """Internal check failed: %(message)s"""
 
108
 
108
109
    def __init__(self, message):
109
110
        BzrNewError.__init__(self)
110
111
        self.message = message
140
141
        self.base = base
141
142
 
142
143
 
 
144
class NotLocalUrl(BzrNewError):
 
145
    """%s(url) is not a local path."""
 
146
    
 
147
    def __init__(self, url):
 
148
        BzrNewError.__init__(self)
 
149
        self.url = url
 
150
 
 
151
 
143
152
class BzrCommandError(BzrError):
144
153
    # Error from malformed user command
145
154
    # This is being misused as a generic exception
207
216
        self.path = path
208
217
 
209
218
 
 
219
class NoRepositoryPresent(BzrNewError):
 
220
    """Not repository present: %(path)r"""
 
221
    def __init__(self, bzrdir):
 
222
        BzrNewError.__init__(self)
 
223
        self.path = bzrdir.transport.clone('..').base
 
224
 
 
225
 
210
226
class FileInWrongBranch(BzrNewError):
211
227
    """File %(path)s in not in branch %(branch_base)s."""
 
228
 
212
229
    def __init__(self, branch, path):
213
230
        BzrNewError.__init__(self)
214
231
        self.branch = branch
228
245
        return 'unknown branch format: %s' % self.args[0]
229
246
 
230
247
 
 
248
class IncompatibleFormat(BzrNewError):
 
249
    """Format %(format)s is not compatible with .bzr version %(bzrdir)s."""
 
250
 
 
251
    def __init__(self, format, bzrdir_format):
 
252
        BzrNewError.__init__(self)
 
253
        self.format = format
 
254
        self.bzrdir = bzrdir_format
 
255
 
 
256
 
231
257
class NotVersionedError(BzrNewError):
232
258
    """%(path)s is not versioned"""
233
259
    def __init__(self, path):
334
360
    """Upgrade URL cannot work with readonly URL's."""
335
361
 
336
362
 
 
363
class UpToDateFormat(BzrNewError):
 
364
    """The branch format %(format)s is already at the most recent format."""
 
365
 
 
366
    def __init__(self, format):
 
367
        BzrNewError.__init__(self)
 
368
        self.format = format
 
369
 
 
370
 
337
371
class StrictCommitFailed(Exception):
338
372
    """Commit refused because there are unknowns in the tree."""
339
373
 
340
 
 
341
374
class NoSuchRevision(BzrError):
342
375
    def __init__(self, branch, revision):
343
376
        self.branch = branch
367
400
            " specified."
368
401
        BzrCommandError.__init__(self, msg)
369
402
 
 
403
 
370
404
class NoCommonAncestor(BzrError):
371
405
    def __init__(self, revision_a, revision_b):
372
406
        msg = "Revisions have no common ancestor: %s %s." \
373
407
            % (revision_a, revision_b) 
374
408
        BzrError.__init__(self, msg)
375
409
 
 
410
 
376
411
class NoCommonRoot(BzrError):
377
412
    def __init__(self, revision_a, revision_b):
378
413
        msg = "Revisions are not derived from the same root: %s %s." \
379
414
            % (revision_a, revision_b) 
380
415
        BzrError.__init__(self, msg)
381
416
 
 
417
 
382
418
class NotAncestor(BzrError):
383
419
    def __init__(self, rev_id, not_ancestor_id):
384
420
        msg = "Revision %s is not an ancestor of %s" % (not_ancestor_id, 
402
438
        BzrError.__init__(self, msg)
403
439
        self.bases = bases
404
440
 
 
441
 
405
442
class NoCommits(BzrError):
406
443
    def __init__(self, branch):
407
444
        msg = "Branch %s has no commits." % branch
408
445
        BzrError.__init__(self, msg)
409
446
 
 
447
 
410
448
class UnlistableStore(BzrError):
411
449
    def __init__(self, store):
412
450
        BzrError.__init__(self, "Store %s is not listable" % store)
413
451
 
 
452
 
414
453
class UnlistableBranch(BzrError):
415
454
    def __init__(self, br):
416
455
        BzrError.__init__(self, "Stores for branch %s are not listable" % br)
464
503
        self.weave_b = weave_b
465
504
 
466
505
 
 
506
class WeaveTextDiffers(WeaveError):
 
507
    """Weaves differ on text content. Revision: {%(revision_id)s}, %(weave_a)s, %(weave_b)s"""
 
508
 
 
509
    def __init__(self, revision_id, weave_a, weave_b):
 
510
        WeaveError.__init__(self)
 
511
        self.revision_id = revision_id
 
512
        self.weave_a = weave_a
 
513
        self.weave_b = weave_b
 
514
 
 
515
 
467
516
class NoSuchExportFormat(BzrNewError):
468
517
    """Export format %(format)r not supported"""
469
518
    def __init__(self, format):
482
531
        self.msg = msg
483
532
        self.orig_error = orig_error
484
533
 
 
534
 
485
535
# A set of semi-meaningful errors which can be thrown
486
536
class TransportNotPossible(TransportError):
487
537
    """This is for transports where a specific function is explicitly not
503
553
    """The connection has been closed."""
504
554
    pass
505
555
 
 
556
 
506
557
class ConflictsInTree(BzrError):
507
558
    def __init__(self):
508
559
        BzrError.__init__(self, "Working tree has conflicts.")
509
560
 
 
561
 
510
562
class ParseConfigError(BzrError):
511
563
    def __init__(self, errors, filename):
512
564
        if filename is None:
515
567
            (filename, ('\n'.join(e.message for e in errors)))
516
568
        BzrError.__init__(self, message)
517
569
 
 
570
 
518
571
class SigningFailed(BzrError):
519
572
    def __init__(self, command_line):
520
573
        BzrError.__init__(self, "Failed to gpg sign data with command '%s'"
521
574
                               % command_line)
522
575
 
 
576
 
523
577
class WorkingTreeNotRevision(BzrError):
524
578
    def __init__(self, tree):
525
579
        BzrError.__init__(self, "The working tree for %s has changed since"
526
580
                          " last commit, but weave merge requires that it be"
527
581
                          " unchanged." % tree.basedir)
528
582
 
 
583
 
529
584
class CantReprocessAndShowBase(BzrNewError):
530
585
    """Can't reprocess and show base.
531
586
Reprocessing obscures relationship of conflicting lines to base."""
532
587
 
 
588
 
533
589
class GraphCycleError(BzrNewError):
534
590
    """Cycle in graph %(graph)r"""
535
591
    def __init__(self, graph):
562
618
        self.text_revision = text_revision
563
619
        self.file_id = file_id
564
620
 
 
621
class DuplicateKey(BzrNewError):
 
622
    """Key %(key)s is already present in map"""
 
623
 
 
624
class MalformedTransform(BzrNewError):
 
625
    """Tree transform is malformed %(conflicts)r"""
 
626
 
565
627
 
566
628
class BzrBadParameter(BzrNewError):
567
629
    """A bad parameter : %(param)s is not usable.
578
640
    """Parameter %(param)s is neither unicode nor utf8."""
579
641
 
580
642
 
 
643
class ReusingTransform(BzrNewError):
 
644
    """Attempt to reuse a transform that has already been applied."""
 
645
 
 
646
 
 
647
class CantMoveRoot(BzrNewError):
 
648
    """Moving the root directory is not supported at this time"""
 
649
 
 
650
 
581
651
class BzrBadParameterNotString(BzrBadParameter):
582
652
    """Parameter %(param)s is not a string or unicode string."""
583
653
 
584
654
 
 
655
class BzrBadParameterMissing(BzrBadParameter):
 
656
    """Parameter $(param)s is required but not present."""
 
657
 
 
658
 
585
659
class DependencyNotPresent(BzrNewError):
586
660
    """Unable to import library: %(library)s, %(error)s"""
587
661
 
602
676
    def __init__(self, format):
603
677
        BzrNewError.__init__(self)
604
678
        self.format = format
 
679
 
 
680
 
 
681
class NoDiff3(BzrNewError):
 
682
    """Diff3 is not installed on this machine."""
 
683
 
 
684
 
 
685
class ExistingLimbo(BzrNewError):
 
686
    """This tree contains left-over files from a failed operation.
 
687
    Please examine %(limbo_dir)s to see if it contains any files you wish to
 
688
    keep, and delete it when you are done.
 
689
    """
 
690
    def __init__(self, limbo_dir):
 
691
       BzrNewError.__init__(self)
 
692
       self.limbo_dir = limbo_dir
 
693
 
 
694
 
 
695
class ImmortalLimbo(BzrNewError):
 
696
    """Unable to delete transform temporary directory $(limbo_dir)s.
 
697
    Please examine %(limbo_dir)s to see if it contains any files you wish to
 
698
    keep, and delete it when you are done.
 
699
    """
 
700
    def __init__(self, limbo_dir):
 
701
       BzrNewError.__init__(self)
 
702
       self.limbo_dir = limbo_dir
 
703
 
 
704
 
 
705
class OutOfDateTree(BzrNewError):
 
706
    """Working tree is out of date, please run 'bzr update'."""
 
707
 
 
708
    def __init__(self, tree):
 
709
        BzrNewError.__init__(self)
 
710
        self.tree = tree