b.r.InterCHKRevisionTree(tree.InterTree) : class documentation

Part of bzrlib.revisiontree View In Hierarchy

Fast path optimiser for RevisionTrees with CHK inventories.
Static Method is_compatible Undocumented
Method iter_changes Generate an iterator of changes between trees.

Inherited from InterTree:

Method compare Return the changes from source to target.
Method file_content_matches Check if two files are the same in the source and target trees.
Method _changes_from_entries Generate a iter_changes tuple between source_entry and target_entry.
Method _get_entry Get an inventory entry from a tree, with missing entries as None.
Method _handle_precise_ids Fill out a partial iter_changes to be consistent.

Inherited from InterObject (via InterTree):

Method __init__ Construct a default InterObject instance. Please use 'get'.
Class Method get Retrieve a Inter worker object for these objects.
Method lock_read Take out a logical read lock.
Method lock_write Take out a logical write lock.
Class Method register_optimiser Register an InterObject optimiser.
Method unlock Release the locks on source and target.
Class Method unregister_optimiser Unregister an InterObject optimiser.
Method _double_lock Take out two locks, rolling back the first if the second throws.
@staticmethod
def is_compatible(source, target):
Undocumented
def iter_changes(self, include_unchanged=False, specific_files=None, pb=None, extra_trees=, require_versioned=True, want_unversioned=False):
Generate an iterator of changes between trees.

A tuple is returned:
(file_id, (path_in_source, path_in_target),
 changed_content, versioned, parent, name, kind,
 executable)

Changed_content is True if the file's content has changed.  This
includes changes to its kind, and to a symlink's target.

versioned, parent, name, kind, executable are tuples of (from, to).
If a file is missing in a tree, its kind is None.

Iteration is done in parent-to-child order, relative to the target
tree.

There is no guarantee that all paths are in sorted order: the
requirement to expand the search due to renames may result in children
that should be found early being found late in the search, after
lexically later results have been returned.
:param require_versioned: Raise errors.PathsNotVersionedError if a
    path in the specific_files list is not versioned in one of
    source, target or extra_trees.
:param specific_files: An optional list of file paths to restrict the
    comparison to. When mapping filenames to ids, all matches in all
    trees (including optional extra_trees) are used, and all children
    of matched directories are included. The parents in the target tree
    of the specific files up to and including the root of the tree are
    always evaluated for changes too.
:param want_unversioned: Should unversioned files be returned in the
    output. An unversioned file is defined as one with (False, False)
    for the versioned pair.
API Documentation for Bazaar, generated by pydoctor at 2022-06-16 00:25:16.