~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/check.py

  • Committer: Martin Pool
  • Date: 2005-05-19 09:59:49 UTC
  • Revision ID: mbp@sourcefrog.net-20050519095949-2aaed7613265e594
- More cleanups for set type

- Clean up Inventory cmp method

- Remove the Inventory.id_set and Tree.id_set methods: don't built
  sets when just using the dictionaries will do.

Show diffs side-by-side

added added

removed removed

Lines of Context:
27
27
import osutils
28
28
 
29
29
def check(branch, progress=True):
30
 
    from bzrlib import set
31
 
 
32
30
    out = sys.stdout
33
31
 
34
32
    # TODO: factor out
46
44
 
47
45
    p('history of %r' % branch.base)
48
46
    last_ptr = None
49
 
    checked_revs = set()
 
47
    checked_revs = {}
50
48
    
51
49
    history = branch.revision_history()
52
50
    revno = 0
66
64
        last_ptr = rid
67
65
        if rid in checked_revs:
68
66
            bailout('repeated revision {%s}' % rid)
69
 
        checked_revs.add(rid)
 
67
        checked_revs[rid] = True
70
68
 
71
69
        ## TODO: Check all the required fields are present on the revision.
72
70
 
73
71
        inv = branch.get_inventory(rev.inventory_id)
74
 
        seen_ids = set()
75
 
        seen_names = set()
 
72
        seen_ids = {}
 
73
        seen_names = {}
76
74
 
77
75
        p('revision %d/%d file ids' % (revno, revcount))
78
76
        for file_id in inv:
79
77
            if file_id in seen_ids:
80
78
                bailout('duplicated file_id {%s} in inventory for revision {%s}'
81
79
                        % (file_id, rid))
82
 
            seen_ids.add(file_id)
 
80
            seen_ids[file_id] = True
83
81
 
84
82
        i = 0
85
83
        len_inv = len(inv)
119
117
        for path, ie in inv.iter_entries():
120
118
            if path in seen_names:
121
119
                bailout('duplicated path %r in inventory for revision {%s}' % (path, revid))
122
 
            seen_names.add(path)
 
120
            seen_names[path] = True
123
121
 
124
122
 
125
123
    p('done')