/brz/remove-bazaar

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar

« back to all changes in this revision

Viewing changes to doc/developers/update.txt

  • Committer: Vincent Ladeuil
  • Date: 2009-10-06 14:40:37 UTC
  • mto: (4728.1.2 integration)
  • mto: This revision was merged to the branch mainline in revision 4731.
  • Revision ID: v.ladeuil+lp@free.fr-20091006144037-o76rgosv9hj3td0y
Simplify mutable_tree.has_changes() and update call sites.

* bzrlib/workingtree.py:
(WorkingTree.merge_from_branch): Add a force parameter. Replace
the check_basis() call by the corresponding code, taken the new
'force' parameter into account.

* bzrlib/tests/test_status.py:
(TestStatus.make_multiple_pending_tree): Add force=True on
supplementary merges.

* bzrlib/tests/test_reconfigure.py:
(TestReconfigure): Add a test for pending merges.

* bzrlib/tests/test_msgeditor.py:
(MsgEditorTest.make_multiple_pending_tree): Add force=True on
supplementary merges.

* bzrlib/tests/blackbox/test_uncommit.py:
(TestUncommit.test_uncommit_octopus_merge): Add force=True on
supplementary merges.

* bzrlib/send.py:
(send): Use the simplified has_changes(). Fix typo in comment too.

* bzrlib/reconfigure.py:
(Reconfigure._check): Use the simplified has_changes().

* bzrlib/mutabletree.py:
(MutableTree.has_changes): Make the tree parameter optional but
retain it for tests. Add a pending merges check.

* bzrlib/merge.py:
(Merger.ensure_revision_trees, Merger.file_revisions,
Merger.check_basis, Merger.compare_basis): Deprecate.

* bzrlib/bundle/apply_bundle.py:
(merge_bundle): Replace the check_basis() call by the
corresponding code.

* bzrlib/builtins.py:
(cmd_remove_tree.run, cmd_push.run, cmd_merge.run): Use the
simplified has_changes().
(cmd_merge.run): Replace the check_basis call() by the corresponding
code (minus the alredy done has_changes() check).

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
"bzr update" performance analysis
2
2
=================================
3
3
 
4
 
There are 5 different slightly different situations in which bzr update
 
4
There are 5 different slightly different situations in which bzr update 
5
5
can be used:
6
6
 
7
7
* local only (no-op)
27
27
 
28
28
potential issue w/ serialized is having 50k files in limbo/
29
29
 
30
 
the limbo/ directory could be avoided in some cases, for example when
 
30
the limbo/ directory could be avoided in some cases, for example when 
31
31
adding new files in new directories.
32
32
 
33
33
modifying in place: reduces fragmentation of fs, not atomic
36
36
 
37
37
"local mod" is diff between disk and last commit, not merge base
38
38
 
39
 
Detecting name conflicts should be O(siblings). Alternatively, conflicts
40
 
with existing files can be detected using stat() and conflicts with new files
41
 
can be detected by examining the pending transform. This changes
 
39
Detecting name conflicts should be O(siblings). Alternatively, conflicts 
 
40
with existing files can be detected using stat() and conflicts with new files 
 
41
can be detected by examining the pending transform. This changes 
42
42
complexity to O(changes).
43
43
 
44
44
out of date heavyweight checkout, out of date w/master