46
46
indicating that the revision was found/not found.
49
from bzrlib import errors
53
50
from bzrlib.branch import Branch
54
51
from bzrlib.bzrdir import BzrDir
55
52
from bzrlib.revision import NULL_REVISION
56
53
from bzrlib.symbol_versioning import deprecated_function, deprecated_in
57
54
from bzrlib.trace import note
58
56
from bzrlib.workingtree import WorkingTree
60
58
class Check(object):
90
88
if callback_refs is None:
92
90
self.repository.lock_read()
93
self.progress = ui.ui_factory.nested_progress_bar()
91
self.progress = bzrlib.ui.ui_factory.nested_progress_bar()
95
93
self.progress.update('check', 0, 4)
96
94
if self.check_repo:
172
170
# - we can fill out existence flags at this point
173
171
# - we can read the revision inventory sha at this point
174
172
# - we can check properties and serialisers etc.
175
if not self.repository._format.revision_graph_can_have_wrong_parents:
173
if not self.repository.revision_graph_can_have_wrong_parents():
176
174
# The check against the index isn't needed.
177
175
self.revs_with_bad_parents_in_index = None
178
176
for thing in revision_iterator:
330
328
self.text_key_references[key] = True
331
@deprecated_function(deprecated_in((1,6,0)))
332
def check(branch, verbose):
333
"""Run consistency checks on a branch.
335
Results are reported through logging.
337
Deprecated in 1.6. Please use check_dwim instead.
339
:raise BzrCheckError: if there's a consistency error.
341
check_branch(branch, verbose)
344
@deprecated_function(deprecated_in((1,16,0)))
345
def check_branch(branch, verbose):
346
"""Run consistency checks on a branch.
348
Results are reported through logging.
350
:raise BzrCheckError: if there's a consistency error.
355
for ref in branch._get_check_refs():
356
needed_refs.setdefault(ref, []).append(branch)
357
result = branch.repository.check([branch.last_revision()], needed_refs)
358
branch_result = result.other_results[0]
361
branch_result.report_results(verbose)
333
364
def scan_branch(branch, needed_refs, to_unlock):
334
365
"""Scan a branch for refs.