Rev 5652: Merge 2.3 into trunk including fixes for bug #715058 and bug #713258 in http://bazaar.launchpad.net/~vila/bzr/integration/
Vincent Ladeuil
v.ladeuil+lp at free.fr
Tue Feb 8 13:56:50 UTC 2011
At http://bazaar.launchpad.net/~vila/bzr/integration/
------------------------------------------------------------
revno: 5652 [merge]
revision-id: v.ladeuil+lp at free.fr-20110208135649-5w2ifp3o040h83f3
parent: pqm at pqm.ubuntu.com-20110207183342-sid8o7k8d1c5ph7c
parent: pqm at pqm.ubuntu.com-20110208125051-fpbdtofhgv7pwzgc
committer: Vincent Ladeuil <v.ladeuil+lp at free.fr>
branch nick: trunk
timestamp: Tue 2011-02-08 14:56:49 +0100
message:
Merge 2.3 into trunk including fixes for bug #715058 and bug #713258
modified:
bzrlib/commands.py bzr.py-20050309040720-d10f4714595cf8c3
bzrlib/conflicts.py conflicts.py-20051001061850-78ef952ba63d2b42
bzrlib/tests/blackbox/test_debug.py test_debug.py-20061026142942-q76cgg41785b3mdk-1
bzrlib/tests/test_conflicts.py test_conflicts.py-20051006031059-e2dad9bbeaa5891f
doc/en/release-notes/bzr-2.2.txt bzr2.2.txt-20101008081016-21wd86gpfhllpue3-39
doc/en/release-notes/bzr-2.3.txt NEWS-20050323055033-4e00b5db738777ff
doc/en/whats-new/whats-new-in-2.2.txt whatsnewin2.2.txt-20100304041442-cj7jdn23zakcw08l-1
doc/en/whats-new/whats-new-in-2.3.txt whatsnewin2.3.txt-20100818072501-x2h25r7jbnknvy30-1
-------------- next part --------------
=== modified file 'bzrlib/commands.py'
--- a/bzrlib/commands.py 2010-10-29 17:07:42 +0000
+++ b/bzrlib/commands.py 2011-02-04 22:25:59 +0000
@@ -1,4 +1,4 @@
-# Copyright (C) 2005-2010 Canonical Ltd
+# Copyright (C) 2005-2011 Canonical Ltd
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -691,7 +691,10 @@
return self.run(**all_cmd_args)
finally:
# reset it, so that other commands run in the same process won't
- # inherit state
+ # inherit state. Before we reset it, log any activity, so that it
+ # gets properly tracked.
+ ui.ui_factory.log_transport_activity(
+ display=('bytes' in debug.debug_flags))
trace.set_verbosity_level(0)
def _setup_run(self):
@@ -1202,8 +1205,6 @@
argv = _specified_or_unicode_argv(argv)
_register_builtin_commands()
ret = run_bzr_catch_errors(argv)
- bzrlib.ui.ui_factory.log_transport_activity(
- display=('bytes' in debug.debug_flags))
trace.mutter("return code %d", ret)
return ret
=== modified file 'bzrlib/conflicts.py'
--- a/bzrlib/conflicts.py 2011-01-16 01:12:01 +0000
+++ b/bzrlib/conflicts.py 2011-02-08 13:56:49 +0000
@@ -644,8 +644,9 @@
winner_tid = tt.trans_id_tree_path(winner_path)
winner_parent_tid = tt.get_tree_parent(winner_tid)
# Switch the paths to preserve the content
- tt.adjust_path(self.path, winner_parent_tid, winner_tid)
- tt.adjust_path(winner_path, item_parent_tid, item_tid)
+ tt.adjust_path(osutils.basename(self.path),
+ winner_parent_tid, winner_tid)
+ tt.adjust_path(osutils.basename(winner_path), item_parent_tid, item_tid)
# Associate the file_id to the right content
tt.unversion_file(item_tid)
tt.version_file(self.file_id, winner_tid)
@@ -755,18 +756,15 @@
pass
def action_take_other(self, tree):
- # FIXME: We shouldn't have to manipulate so many paths here (and there
- # is probably a bug or two...)
- base_path = osutils.basename(self.path)
- conflict_base_path = osutils.basename(self.conflict_path)
tt = transform.TreeTransform(tree)
try:
p_tid = tt.trans_id_file_id(self.file_id)
parent_tid = tt.get_tree_parent(p_tid)
cp_tid = tt.trans_id_file_id(self.conflict_file_id)
cparent_tid = tt.get_tree_parent(cp_tid)
- tt.adjust_path(base_path, cparent_tid, cp_tid)
- tt.adjust_path(conflict_base_path, parent_tid, p_tid)
+ tt.adjust_path(osutils.basename(self.path), cparent_tid, cp_tid)
+ tt.adjust_path(osutils.basename(self.conflict_path),
+ parent_tid, p_tid)
tt.apply()
finally:
tt.finalize()
=== modified file 'bzrlib/tests/blackbox/test_debug.py'
--- a/bzrlib/tests/blackbox/test_debug.py 2010-02-17 17:11:16 +0000
+++ b/bzrlib/tests/blackbox/test_debug.py 2011-02-04 22:25:59 +0000
@@ -1,4 +1,4 @@
-# Copyright (C) 2006, 2007, 2009, 2010 Canonical Ltd
+# Copyright (C) 2006, 2007, 2009, 2010, 2011 Canonical Ltd
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -21,10 +21,10 @@
import sys
import time
-from bzrlib.tests import TestCaseInTempDir
-
-
-class TestDebugOption(TestCaseInTempDir):
+from bzrlib import debug, tests
+
+
+class TestDebugOption(tests.TestCaseInTempDir):
def test_dash_derror(self):
"""With -Derror, tracebacks are shown even for user errors"""
@@ -39,3 +39,22 @@
# With -Dlock, locking and unlocking is recorded into the log
self.run_bzr("-Dlock init foo")
self.assertContainsRe(self.get_log(), "lock_write")
+
+
+class TestDebugBytes(tests.TestCaseWithTransport):
+
+ def test_bytes_reports_activity(self):
+ tree = self.make_branch_and_tree('tree')
+ self.build_tree(['tree/one'])
+ tree.add('one')
+ rev_id = tree.commit('first')
+ remote_trans = self.make_smart_server('.')
+ # I would like to avoid run_bzr_subprocess here, but we need it to be
+ # connected to a real TextUIFactory. The NullProgressView always
+ # ignores transport activity.
+ env = {'BZR_PROGRESS_BAR': 'text'}
+ out, err = self.run_bzr_subprocess('branch -Dbytes %s/tree target'
+ % (remote_trans.base,),
+ env_changes=env)
+ self.assertContainsRe(err, 'Branched 1 revision')
+ self.assertContainsRe(err, 'Transferred:.*kB')
=== modified file 'bzrlib/tests/test_conflicts.py'
--- a/bzrlib/tests/test_conflicts.py 2011-01-15 17:31:18 +0000
+++ b/bzrlib/tests/test_conflicts.py 2011-02-08 10:17:38 +0000
@@ -22,6 +22,7 @@
conflicts,
errors,
option,
+ osutils,
tests,
)
from bzrlib.tests import (
@@ -376,17 +377,26 @@
scenarios = mirror_scenarios(
[
- # File modified/deleted
+ # File modified on both sides
(dict(_base_actions='create_file',
_path='file', _file_id='file-id'),
('filed_modified_A',
dict(actions='modify_file_A', check='file_has_content_A')),
('file_modified_B',
dict(actions='modify_file_B', check='file_has_content_B')),),
+ # File modified on both sides in dir
+ (dict(_base_actions='create_file_in_dir',
+ _path='dir/file', _file_id='file-id'),
+ ('filed_modified_A_in_dir',
+ dict(actions='modify_file_A',
+ check='file_in_dir_has_content_A')),
+ ('file_modified_B',
+ dict(actions='modify_file_B',
+ check='file_in_dir_has_content_B')),),
])
- def do_create_file(self):
- return [('add', ('file', 'file-id', 'file', 'trunk content\n'))]
+ def do_create_file(self, path='file'):
+ return [('add', (path, 'file-id', 'file', 'trunk content\n'))]
def do_modify_file_A(self):
return [('modify', ('file-id', 'trunk content\nfeature A\n'))]
@@ -394,11 +404,23 @@
def do_modify_file_B(self):
return [('modify', ('file-id', 'trunk content\nfeature B\n'))]
- def check_file_has_content_A(self):
- self.assertFileEqual('trunk content\nfeature A\n', 'branch/file')
-
- def check_file_has_content_B(self):
- self.assertFileEqual('trunk content\nfeature B\n', 'branch/file')
+ def check_file_has_content_A(self, path='file'):
+ self.assertFileEqual('trunk content\nfeature A\n',
+ osutils.pathjoin('branch', path))
+
+ def check_file_has_content_B(self, path='file'):
+ self.assertFileEqual('trunk content\nfeature B\n',
+ osutils.pathjoin('branch', path))
+
+ def do_create_file_in_dir(self):
+ return [('add', ('dir', 'dir-id', 'directory', '')),
+ ] + self.do_create_file('dir/file')
+
+ def check_file_in_dir_has_content_A(self):
+ self.check_file_has_content_A('dir/file')
+
+ def check_file_in_dir_has_content_B(self):
+ self.check_file_has_content_B('dir/file')
def _get_resolve_path_arg(self, wt, action):
return self._path
=== modified file 'doc/en/release-notes/bzr-2.2.txt'
--- a/doc/en/release-notes/bzr-2.2.txt 2011-02-02 14:33:27 +0000
+++ b/doc/en/release-notes/bzr-2.2.txt 2011-02-04 14:10:48 +0000
@@ -8,13 +8,11 @@
bzr 2.2.4
#########
-:2.2.4: NOT RELEASED YET
-
-Compatibility Breaks
-********************
-
-New Features
-************
+:2.2.4: 2011-02-04
+
+This is a bugfix release. Only one bug has been fixed, a regression from 2.2.3
+involving only certain operations with launchpad. Upgrading is recommended for
+all users on earlier 2.2 releases.
Bug Fixes
*********
@@ -25,21 +23,6 @@
the default instance was switched from edge to production in bzr 2.2.3.
(Max Bowsher, #707075)
-Improvements
-************
-
-Documentation
-*************
-
-API Changes
-***********
-
-Internals
-*********
-
-Testing
-*******
-
bzr 2.2.3
#########
=== modified file 'doc/en/release-notes/bzr-2.3.txt'
--- a/doc/en/release-notes/bzr-2.3.txt 2011-02-07 03:24:37 +0000
+++ b/doc/en/release-notes/bzr-2.3.txt 2011-02-08 13:56:49 +0000
@@ -5,10 +5,10 @@
.. toctree::
:maxdepth: 1
-bzr 2.3.0
+bzr 2.3.1
#########
-:2.3.0: NOT RELEASED YET
+:2.3.1: NOT RELEASED YET
External Compatibility Breaks
*****************************
@@ -32,6 +32,13 @@
.. Fixes for situations where bzr would previously crash or give incorrect
or undesirable results.
+* Correctly resolve text conflicts for files in subdirs.
+ (Vincent Ladeuil, #715058)
+
+* Restore proper logging of bytes transferred. We accidentally reset the
+ counter when commands finished before we logged the total transferred.
+ (John Arbash Meinel, #713258)
+
Documentation
*************
@@ -57,6 +64,28 @@
spurious test failures and changes to the way things should be tested.
+bzr 2.3.0
+#########
+
+:2.3.0: 2011-02-03
+
+This release marks the start of another long-term-stable series. From here, we
+will only make bugfix releases on the 2.3 series (2.3.1, etc, and support it
+until August 2012), while 2.4 will become our new development series. The 2.1
+and 2.2 series will also continue to get bugfixes. (Currently 2.0 is planned
+to be EOLed circa September 2011 and will receive only critical bugfixes.)
+
+This is a bugfix and polish release over the 2.2 series, with a large number
+of bugs fixed (>130), and some performance improvements. Some features have
+been enhanced including commits on stacked branches, upgrades of related
+branches, shortcut URL schemes for ubuntu and debian on launchpad and better
+conflict resolution.
+
+Only bugfixes from other stables series have been included since 2.3b5 so all
+known fixed bugs are included here.
+
+Users are encouraged to upgrade from the other stable series.
+
bzr 2.3b5
#########
=== modified file 'doc/en/whats-new/whats-new-in-2.2.txt'
--- a/doc/en/whats-new/whats-new-in-2.2.txt 2011-01-20 18:42:20 +0000
+++ b/doc/en/whats-new/whats-new-in-2.2.txt 2011-02-04 14:10:48 +0000
@@ -35,6 +35,9 @@
Bazaar 2.2.3 focused on fixes related to interactions with the launchpad
server and python-2.7 compatibility.
+Bazaar 2.2.4 fixed a regression for some interactions with the launchpad
+server.
+
See the :doc:`../release-notes/index` for details.
Bazaar 2.2 is fully compatible both locally and on the network with 2.0
=== modified file 'doc/en/whats-new/whats-new-in-2.3.txt'
--- a/doc/en/whats-new/whats-new-in-2.3.txt 2011-01-20 23:41:26 +0000
+++ b/doc/en/whats-new/whats-new-in-2.3.txt 2011-02-08 13:56:49 +0000
@@ -2,20 +2,24 @@
What's New in Bazaar 2.3?
*************************
-Bazaar 2.3 is still under development, and will be released in February
-2011. This document accumulates a high level summary of what's changed.
+Bazaar 2.3 has been released on the 3rd of February 2011 and marks the start
+of another long-term-stable series. From here, we will only make bugfix
+releases on the 2.3 series (2.3.1, etc), while 2.4 will become our new
+development series. The 2.1 and 2.2 series will also continue to get
+bugfixes. (Currently 2.0 is planned to be EOLed circa September 2011.)
+
+This document accumulates a high level summary of what's changed.
See the
:doc:`../release-notes/index` for a full list.
-Users are encouraged to upgrade from the other stable series. This
-document outlines the improvements in Bazaar 2.3 vs Bazaar 2.2. As well as
-summarizing improvements made to the core product, it highlights
-enhancements within the broader Bazaar world of potential interest to
-those upgrading.
+Users are encouraged to upgrade from the other stable series. This document
+outlines the improvements in Bazaar 2.3 vs Bazaar 2.2. As well as summarizing
+improvements made to the core product, it highlights enhancements within the
+broader Bazaar world of potential interest to those upgrading.
-Bazaar 2.3.0 is fully compatible both locally and on the network with 2.0
-2.1, and 2.2, and can read and write repositories generated by all
-previous versions.
+Bazaar 2.3.0 is fully compatible both locally and on the network with 2.0 2.1,
+and 2.2, and can read and write repositories generated by all previous
+versions.
Changed Behaviour
*****************
@@ -171,17 +175,6 @@
working tree or branch as well as the ability to set or remove an
option. Scripts can also use it to get only the value for a given option.
-Expected releases for the 2.3 series
-************************************
-
-The 2.3 series has entered the beta phase and 2.3.0 should be released soon
-enough to be included into Natty Narwhal.
-
-As a rough estimate, consider that 2.3.0 will be released in February
-2011 and be supported until August 2012. Additional releases will be
-made if critical bugs are encountered
-
-
Further information
*******************
More information about the bazaar-commits
mailing list