Rev 3467: (Martin Albisetti) Better message when a repository is locked. in file:///home/pqm/archives/thelove/bzr/%2Btrunk/
Canonical.com Patch Queue Manager
pqm at pqm.ubuntu.com
Tue Jun 3 03:43:05 BST 2008
At file:///home/pqm/archives/thelove/bzr/%2Btrunk/
------------------------------------------------------------
revno: 3467
revision-id:pqm at pqm.ubuntu.com-20080603024259-ml79gk3n5uywnxe0
parent: pqm at pqm.ubuntu.com-20080602225022-z6zutdo9hvu0fycm
parent: andrew.bennetts at canonical.com-20080603021334-z8pv02xea1xpmq2r
committer: Canonical.com Patch Queue Manager <pqm at pqm.ubuntu.com>
branch nick: +trunk
timestamp: Tue 2008-06-03 03:42:59 +0100
message:
(Martin Albisetti) Better message when a repository is locked.
modified:
NEWS NEWS-20050323055033-4e00b5db738777ff
bzrlib/lockdir.py lockdir.py-20060220222025-98258adf27fbdda3
bzrlib/tests/test_lockdir.py test_lockdir.py-20060220222025-33d4221569a3d600
------------------------------------------------------------
revno: 3441.4.4
revision-id:andrew.bennetts at canonical.com-20080603021334-z8pv02xea1xpmq2r
parent: andrew.bennetts at canonical.com-20080603020925-g947drfzo9ij1y6p
committer: Andrew Bennetts <andrew.bennetts at canonical.com>
branch nick: bzr.break_lock
timestamp: Tue 2008-06-03 12:13:34 +1000
message:
Add NEWS entry.
modified:
NEWS NEWS-20050323055033-4e00b5db738777ff
------------------------------------------------------------
revno: 3441.4.3
revision-id:andrew.bennetts at canonical.com-20080603020925-g947drfzo9ij1y6p
parent: argentina at gmail.com-20080521021343-zpjiqmc8h162ztcf
parent: pqm at pqm.ubuntu.com-20080602225022-z6zutdo9hvu0fycm
committer: Andrew Bennetts <andrew.bennetts at canonical.com>
branch nick: bzr.break_lock
timestamp: Tue 2008-06-03 12:09:25 +1000
message:
Merge from bzr.dev.
added:
bzrlib/tests/file_utils.py file_utils.py-20080506145406-a1h3ydg2lsh2iriy-1
modified:
NEWS NEWS-20050323055033-4e00b5db738777ff
bzrlib/branch.py branch.py-20050309040759-e4baf4e0d046576e
bzrlib/builtins.py builtins.py-20050830033751-fc01482b9ca23183
bzrlib/bzrdir.py bzrdir.py-20060131065624-156dfea39c4387cb
bzrlib/commands.py bzr.py-20050309040720-d10f4714595cf8c3
bzrlib/config.py config.py-20051011043216-070c74f4e9e338e8
bzrlib/errors.py errors.py-20050309040759-20512168c4e14fbd
bzrlib/graph.py graph_walker.py-20070525030359-y852guab65d4wtn0-1
bzrlib/lockable_files.py control_files.py-20051111201905-bb88546e799d669f
bzrlib/log.py log.py-20050505065812-c40ce11702fe5fb1
bzrlib/merge.py merge.py-20050513021216-953b65a438527106
bzrlib/osutils.py osutils.py-20050309040759-eeaff12fbf77ac86
bzrlib/remote.py remote.py-20060720103555-yeeg2x51vn0rbtdp-1
bzrlib/repofmt/knitrepo.py knitrepo.py-20070206081537-pyy4a00xdas0j4pf-1
bzrlib/repofmt/pack_repo.py pack_repo.py-20070813041115-gjv5ma7ktfqwsjgn-1
bzrlib/repofmt/weaverepo.py presplitout.py-20070125045333-wfav3tsh73oxu3zk-1
bzrlib/repository.py rev_storage.py-20051111201905-119e9401e46257e3
bzrlib/revisionspec.py revisionspec.py-20050907152633-17567659fd5c0ddb
bzrlib/smart/branch.py branch.py-20061124031907-mzh3pla28r83r97f-1
bzrlib/smart/client.py client.py-20061116014825-2k6ada6xgulslami-1
bzrlib/smart/medium.py medium.py-20061103051856-rgu2huy59fkz902q-1
bzrlib/smart/message.py message.py-20080222013625-ncqmh3nrxjkxab87-1
bzrlib/smart/protocol.py protocol.py-20061108035435-ot0lstk2590yqhzr-1
bzrlib/smart/repository.py repository.py-20061128022038-vr5wy5bubyb8xttk-1
bzrlib/symbol_versioning.py symbol_versioning.py-20060105104851-9ecf8af605d15a80
bzrlib/tests/blackbox/test_branch.py test_branch.py-20060524161337-noms9gmcwqqrfi8y-1
bzrlib/tests/blackbox/test_ls.py test_ls.py-20060712232047-0jraqpecwngee12y-1
bzrlib/tests/branch_implementations/test_branch.py testbranch.py-20050711070244-121d632bc37d7253
bzrlib/tests/branch_implementations/test_permissions.py test_permissions.py-20060210110243-245c01403bf0fde6
bzrlib/tests/branch_implementations/test_push.py test_push.py-20070130153159-fhfap8uoifevg30j-1
bzrlib/tests/branch_implementations/test_update.py test_update.py-20060305010612-e68efbcbb1baa69f
bzrlib/tests/repository_implementations/test_has_same_location.py test_has_same_locati-20070807074648-2i2ah82fbe83iys7-1
bzrlib/tests/test_branch.py test_branch.py-20060116013032-97819aa07b8ab3b5
bzrlib/tests/test_config.py testconfig.py-20051011041908-742d0c15d8d8c8eb
bzrlib/tests/test_errors.py test_errors.py-20060210110251-41aba2deddf936a8
bzrlib/tests/test_graph.py test_graph_walker.py-20070525030405-enq4r60hhi9xrujc-1
bzrlib/tests/test_http_response.py test_http_response.py-20060628233143-950b2a482a32505d
bzrlib/tests/test_lockable_files.py test_lockable_files.py-20051225183927-365c7fd99591caf1
bzrlib/tests/test_merge.py testmerge.py-20050905070950-c1b5aa49ff911024
bzrlib/tests/test_merge_core.py test_merge_core.py-20050824132511-eb99b23a0eec641b
bzrlib/tests/test_osutils.py test_osutils.py-20051201224856-e48ee24c12182989
bzrlib/tests/test_osutils_encodings.py test_osutils_encodin-20061226013130-kkp732tpt3lm91vv-1
bzrlib/tests/test_permissions.py test_permissions.py-20051215004520-ccf475789c80e80c
bzrlib/tests/test_remote.py test_remote.py-20060720103555-yeeg2x51vn0rbtdp-2
bzrlib/tests/test_repository.py test_repository.py-20060131075918-65c555b881612f4d
bzrlib/tests/test_revisionspec.py testrevisionnamespaces.py-20050711050225-8b4af89e6b1efe84
bzrlib/tests/test_selftest.py test_selftest.py-20051202044319-c110a115d8c0456a
bzrlib/tests/test_smart.py test_smart.py-20061122024551-ol0l0o0oofsu9b3t-2
bzrlib/tests/test_smart_transport.py test_ssh_transport.py-20060608202016-c25gvf1ob7ypbus6-2
bzrlib/tests/test_switch.py test_switch.py-20071116011000-v5lnw7d2wkng9eux-2
bzrlib/tests/test_symbol_versioning.py test_symbol_versioning.py-20060105104851-51d7722c2018d42b
bzrlib/tests/test_transform.py test_transaction.py-20060105172520-b3ffb3946550e6c4
bzrlib/tests/test_workingtree.py testworkingtree.py-20051004024258-b88d0fe8f101d468
bzrlib/tests/workingtree_implementations/test_basis_inventory.py test_basis_inventory.py-20051218151655-3650468941091309
bzrlib/tests/workingtree_implementations/test_workingtree.py test_workingtree.py-20060203003124-817757d3e31444fb
bzrlib/transform.py transform.py-20060105172343-dd99e54394d91687
bzrlib/transport/fakenfs.py fakenfs.py-20060402223312-0e29c7275aa384dd
bzrlib/transport/http/response.py _response.py-20060613154423-a2ci7hd4iw5c7fnt-1
bzrlib/uncommit.py uncommit.py-20050626215513-5ec509fa425b305c
bzrlib/workingtree.py workingtree.py-20050511021032-29b6ec0a681e02e3
bzrlib/workingtree_4.py workingtree_4.py-20070208044105-5fgpc5j3ljlh5q6c-1
doc/developers/HACKING.txt HACKING-20050805200004-2a5dc975d870f78c
doc/developers/index.txt index.txt-20070508041241-qznziunkg0nffhiw-1
doc/developers/releasing.txt releasing.txt-20080502015919-fnrcav8fwy8ccibu-1
doc/developers/tortoise-strategy.txt tortoisestrategy.txt-20080403024510-2ahdqrvnwqrb5p5t-1
doc/en/user-guide/branching_a_project.txt branching_a_project.-20071122141511-0knao2lklsdsvb1q-2
doc/en/user-guide/partner_intro.txt partner_workflow.txt-20071122141511-0knao2lklsdsvb1q-4
doc/en/user-guide/releasing_a_project.txt releasing_a_project.-20071121073725-0corxykv5irjal00-5
doc/en/user-guide/svn_plugin.txt svn_plugin.txt-20080509065016-cjc90f46407vi9a0-2
doc/en/user-guide/undoing_mistakes.txt undoing_mistakes.txt-20071121092300-8fyacngt1w98e5mp-1
------------------------------------------------------------
revno: 3441.4.2
revision-id:argentina at gmail.com-20080521021343-zpjiqmc8h162ztcf
parent: argentina at gmail.com-20080521013852-yv6uocjzxkorol98
committer: Martin Albisetti <argentina at gmail.com>
branch nick: bzr.break_lock
timestamp: Tue 2008-05-20 23:13:43 -0300
message:
Fixed failing tests
modified:
bzrlib/tests/test_lockdir.py test_lockdir.py-20060220222025-33d4221569a3d600
------------------------------------------------------------
revno: 3441.4.1
revision-id:argentina at gmail.com-20080521013852-yv6uocjzxkorol98
parent: pqm at pqm.ubuntu.com-20080520210027-wetfxldz1ggc5u2a
committer: Martin Albisetti <argentina at gmail.com>
branch nick: bzr.break_lock
timestamp: Tue 2008-05-20 22:38:52 -0300
message:
Change locked error to help the user resolve the situation
modified:
bzrlib/lockdir.py lockdir.py-20060220222025-98258adf27fbdda3
=== modified file 'NEWS'
--- a/NEWS 2008-06-02 22:50:22 +0000
+++ b/NEWS 2008-06-03 02:13:34 +0000
@@ -100,6 +100,9 @@
them.
(Vincent Ladeuil, #229076)
+ * The "Unable to obtain lock" error message now also suggests using
+ ``bzr break-lock`` to fix it. (Martin Albisetti, #139202)
+
* Treat an encoding of '' as ascii; this can happen when bzr is run
under vim on Mac OS X.
(Neil Martinsen-Burrell)
=== modified file 'bzrlib/lockdir.py'
--- a/bzrlib/lockdir.py 2008-04-24 07:22:53 +0000
+++ b/bzrlib/lockdir.py 2008-05-21 01:38:52 +0000
@@ -506,15 +506,20 @@
if deadline_str is None:
deadline_str = time.strftime('%H:%M:%S',
time.localtime(deadline))
+ lock_url = self.transport.abspath(self.path)
self._report_function('%s %s\n'
'%s\n' # held by
'%s\n' # locked ... ago
- 'Will continue to try until %s\n',
+ 'Will continue to try until %s, unless '
+ 'you press Ctrl-C\n'
+ 'If you\'re sure that it\'s not being '
+ 'modified, use bzr break-lock %s',
start,
formatted_info[0],
formatted_info[1],
formatted_info[2],
- deadline_str)
+ deadline_str,
+ lock_url)
if (max_attempts is not None) and (attempt_count >= max_attempts):
self._trace("exceeded %d attempts")
=== modified file 'bzrlib/tests/test_lockdir.py'
--- a/bzrlib/tests/test_lockdir.py 2007-12-17 15:17:28 +0000
+++ b/bzrlib/tests/test_lockdir.py 2008-05-21 02:13:43 +0000
@@ -190,9 +190,13 @@
lf1.unlock()
lock_base = lf2.transport.abspath(lf2.path)
self.assertEqual(1, len(self._logged_reports))
+ lock_url = lf2.transport.abspath(lf2.path)
self.assertEqual('%s %s\n'
'%s\n%s\n'
- 'Will continue to try until %s\n',
+ 'Will continue to try until %s, unless '
+ 'you press Ctrl-C\n'
+ 'If you\'re sure that it\'s not being '
+ 'modified, use bzr break-lock %s',
self._logged_reports[0][0])
args = self._logged_reports[0][1]
self.assertEqual('Unable to obtain', args[0])
@@ -406,10 +410,13 @@
# There should be 2 reports, because the lock changed
lock_base = lf2.transport.abspath(lf2.path)
self.assertEqual(2, len(self._logged_reports))
-
+ lock_url = lf2.transport.abspath(lf2.path)
self.assertEqual('%s %s\n'
'%s\n%s\n'
- 'Will continue to try until %s\n',
+ 'Will continue to try until %s, unless '
+ 'you press Ctrl-C\n'
+ 'If you\'re sure that it\'s not being '
+ 'modified, use bzr break-lock %s',
self._logged_reports[0][0])
args = self._logged_reports[0][1]
self.assertEqual('Unable to obtain', args[0])
@@ -421,7 +428,10 @@
self.assertEqual('%s %s\n'
'%s\n%s\n'
- 'Will continue to try until %s\n',
+ 'Will continue to try until %s, unless '
+ 'you press Ctrl-C\n'
+ 'If you\'re sure that it\'s not being '
+ 'modified, use bzr break-lock %s',
self._logged_reports[1][0])
args = self._logged_reports[1][1]
self.assertEqual('Lock owner changed for', args[0])
More information about the bazaar-commits
mailing list