Rev 4391: (igc) make tags faster when on the mainline in file:///home/pqm/archives/thelove/bzr/%2Btrunk/
Canonical.com Patch Queue Manager
pqm at pqm.ubuntu.com
Fri May 29 11:34:37 BST 2009
At file:///home/pqm/archives/thelove/bzr/%2Btrunk/
------------------------------------------------------------
revno: 4391
revision-id: pqm at pqm.ubuntu.com-20090529103434-04tivhvlg6aohfkj
parent: pqm at pqm.ubuntu.com-20090528185655-uip7we14796b5c8j
parent: ian.clatworthy at canonical.com-20090529094200-oaklidnkjl4qgyh5
committer: Canonical.com Patch Queue Manager <pqm at pqm.ubuntu.com>
branch nick: +trunk
timestamp: Fri 2009-05-29 11:34:34 +0100
message:
(igc) make tags faster when on the mainline
modified:
NEWS NEWS-20050323055033-4e00b5db738777ff
bzrlib/builtins.py builtins.py-20050830033751-fc01482b9ca23183
------------------------------------------------------------
revno: 4390.2.1
revision-id: ian.clatworthy at canonical.com-20090529094200-oaklidnkjl4qgyh5
parent: pqm at pqm.ubuntu.com-20090528185655-uip7we14796b5c8j
parent: ian.clatworthy at canonical.com-20090529032625-znolk6xrgnzlcm6m
committer: Ian Clatworthy <ian.clatworthy at canonical.com>
branch nick: integration
timestamp: Fri 2009-05-29 19:42:00 +1000
message:
(igc) make tags faster when on the mainline
modified:
NEWS NEWS-20050323055033-4e00b5db738777ff
bzrlib/builtins.py builtins.py-20050830033751-fc01482b9ca23183
------------------------------------------------------------
revno: 4390.1.1
revision-id: ian.clatworthy at canonical.com-20090529032625-znolk6xrgnzlcm6m
parent: pqm at pqm.ubuntu.com-20090528185655-uip7we14796b5c8j
committer: Ian Clatworthy <ian.clatworthy at canonical.com>
branch nick: faster-tags
timestamp: Fri 2009-05-29 13:26:25 +1000
message:
avoid full revno map generation in tags command
modified:
NEWS NEWS-20050323055033-4e00b5db738777ff
bzrlib/builtins.py builtins.py-20050830033751-fc01482b9ca23183
=== modified file 'NEWS'
--- a/NEWS 2009-05-28 18:56:55 +0000
+++ b/NEWS 2009-05-29 09:42:00 +0000
@@ -18,12 +18,17 @@
Improvements
************
-* ``bzr branch`` in a shared repository is now faster for
- development6-rich-root format. (Ian Clatworthy)
-
-* ``bzr branch --notree`` is now faster. (Ian Clatworthy)
-
-* ``bzr diff`` is now faster on large trees. (Ian Clatworthy)
+* Numerous operations are now faster for huge projects, i.e. those
+ with a large number of files and/or a large number of revisions,
+ particularly when the latest development format is used. These
+ operations (and improvements on OpenOffice.org) include:
+
+ * branch in a shared repository (2X faster)
+ * branch --no-tree (100X faster)
+ * diff (2X faster)
+ * tags (70X faster)
+
+ (Ian Clatworthy)
Bug Fixes
*********
=== modified file 'bzrlib/builtins.py'
--- a/bzrlib/builtins.py 2009-05-28 18:06:43 +0000
+++ b/bzrlib/builtins.py 2009-05-29 03:26:25 +0000
@@ -5053,9 +5053,16 @@
tags.sort(key=lambda x: timestamps[x[1]])
if not show_ids:
# [ (tag, revid), ... ] -> [ (tag, dotted_revno), ... ]
- revno_map = branch.get_revision_id_to_revno_map()
- tags = [ (tag, '.'.join(map(str, revno_map.get(revid, ('?',)))))
- for tag, revid in tags ]
+ for index, (tag, revid) in enumerate(tags):
+ try:
+ revno = branch.revision_id_to_dotted_revno(revid)
+ if isinstance(revno, tuple):
+ revno = '.'.join(map(str, revno))
+ except errors.NoSuchRevision:
+ # Bad tag data/merges can lead to tagged revisions
+ # which are not in this branch. Fail gracefully ...
+ revno = '?'
+ tags[index] = (tag, revno)
for tag, revspec in tags:
self.outf.write('%-20s %s\n' % (tag, revspec))
More information about the bazaar-commits
mailing list