Lock methods on ``Tree``, ``Branch`` and ``Repository`` are now expected to return an object which can be used to unlock them. This reduces duplicate code when using cleanups. The previous 'tokens's returned by ``Branch.lock_write`` and ``Repository.lock_write`` are now attributes on the result of the lock_write. ``repository.RepositoryWriteLockResult`` and ``branch.BranchWriteLockResult`` document this. (Robert Collins)
``log._get_info_for_log_files`` now takes an add_cleanup callable. (Robert Collins)
for the selected scopes, for each element in the wt:
18
18
19
19
1. get hash tree data for that scope.
20
1. get 'new enough' hash data for the siblings of the scope: it can be out of date as long as it's not older than the last move or rename out of that siblings scope.
20
1. get 'new enough' hash data for the siblings of the scope: it can be out of date as long as its not older than the last move or rename out of that siblings scope.
21
21
1. Use the hash tree data to tune the work done in finding matching paths/ids which are different in the two trees.
22
22
23
23
For each thing that needs to change - group by target directory?