~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/check.py

  • Committer: Martin Pool
  • Date: 2005-05-10 08:15:58 UTC
  • Revision ID: mbp@sourcefrog.net-20050510081558-9a38e2c46ba4ebc4
- Patch from Fredrik Lundh to check Python version and 
  try to find a better one if it's too old.

  Patched to try to prevent infinite loops in wierd configurations,
  and to log to stderr.

Show diffs side-by-side

added added

removed removed

Lines of Context:
21
21
# consistency checks
22
22
 
23
23
import sys
 
24
from sets import Set
24
25
 
25
26
from trace import mutter
26
27
from errors import bailout
44
45
 
45
46
    p('history of %r' % branch.base)
46
47
    last_ptr = None
47
 
    checked_revs = {}
 
48
    checked_revs = Set()
48
49
    
49
50
    history = branch.revision_history()
50
51
    revno = 0
64
65
        last_ptr = rid
65
66
        if rid in checked_revs:
66
67
            bailout('repeated revision {%s}' % rid)
67
 
        checked_revs[rid] = True
 
68
        checked_revs.add(rid)
68
69
 
69
70
        ## TODO: Check all the required fields are present on the revision.
70
71
 
71
72
        inv = branch.get_inventory(rev.inventory_id)
72
 
        seen_ids = {}
73
 
        seen_names = {}
 
73
        seen_ids = Set()
 
74
        seen_names = Set()
74
75
 
75
76
        p('revision %d/%d file ids' % (revno, revcount))
76
77
        for file_id in inv:
77
78
            if file_id in seen_ids:
78
79
                bailout('duplicated file_id {%s} in inventory for revision {%s}'
79
80
                        % (file_id, rid))
80
 
            seen_ids[file_id] = True
 
81
            seen_ids.add(file_id)
81
82
 
82
83
        i = 0
83
84
        len_inv = len(inv)
117
118
        for path, ie in inv.iter_entries():
118
119
            if path in seen_names:
119
120
                bailout('duplicated path %r in inventory for revision {%s}' % (path, revid))
120
 
            seen_names[path] = True
 
121
            seen_names.add(path)
121
122
 
122
123
 
123
124
    p('done')