Rev 3673: (Jelmer) Avoid printing traceback when unknown revid is passed to bzr in file:///home/pqm/archives/thelove/bzr/%2Btrunk/
Canonical.com Patch Queue Manager
pqm at pqm.ubuntu.com
Tue Sep 2 01:21:38 BST 2008
At file:///home/pqm/archives/thelove/bzr/%2Btrunk/
------------------------------------------------------------
revno: 3673
revision-id: pqm at pqm.ubuntu.com-20080902002130-5056i7diicwe1uwl
parent: pqm at pqm.ubuntu.com-20080901234631-p34773b45k4j4l92
parent: jelmer at samba.org-20080901234918-jvhvzl5yxuu03dmh
committer: Canonical.com Patch Queue Manager <pqm at pqm.ubuntu.com>
branch nick: +trunk
timestamp: Tue 2008-09-02 01:21:30 +0100
message:
(Jelmer) Avoid printing traceback when unknown revid is passed to bzr
cat-revision.
modified:
NEWS NEWS-20050323055033-4e00b5db738777ff
bzrlib/builtins.py builtins.py-20050830033751-fc01482b9ca23183
bzrlib/tests/blackbox/test_cat_revision.py test_cat_revision.py-20070410204634-fq8mnld5l5aza9e2-1
------------------------------------------------------------
revno: 3668.4.2
revision-id: jelmer at samba.org-20080901234918-jvhvzl5yxuu03dmh
parent: jelmer at samba.org-20080830170854-ztumaeiftyc3vm4c
parent: pqm at pqm.ubuntu.com-20080901234631-p34773b45k4j4l92
committer: Jelmer Vernooij <jelmer at samba.org>
branch nick: cat-revision-nosuch
timestamp: Tue 2008-09-02 01:49:18 +0200
message:
Merge bzr.dev.
modified:
NEWS NEWS-20050323055033-4e00b5db738777ff
bzrlib/builtins.py builtins.py-20050830033751-fc01482b9ca23183
bzrlib/commands.py bzr.py-20050309040720-d10f4714595cf8c3
bzrlib/diff.py diff.py-20050309040759-26944fbbf2ebbf36
bzrlib/mail_client.py mail_client.py-20070809192806-vuxt3t19srtpjpdn-1
bzrlib/option.py option.py-20051014052914-661fb36e76e7362f
bzrlib/remote.py remote.py-20060720103555-yeeg2x51vn0rbtdp-1
bzrlib/smart/repository.py repository.py-20061128022038-vr5wy5bubyb8xttk-1
bzrlib/tests/__init__.py selftest.py-20050531073622-8d0e3c8845c97a64
bzrlib/tests/blackbox/test_outside_wt.py test_outside_wt.py-20060116200058-98edd33e7db8bdde
bzrlib/tests/blackbox/test_selftest.py test_selftest.py-20060123024542-01c5f1bbcb596d78
bzrlib/tests/blackbox/test_status.py teststatus.py-20050712014354-508855eb9f29f7dc
bzrlib/tests/branch_implementations/test_permissions.py test_permissions.py-20060210110243-245c01403bf0fde6
bzrlib/tests/test_bundle.py test.py-20050630184834-092aa401ab9f039c
bzrlib/tests/test_options.py testoptions.py-20051014093702-96457cfc86319a8f
bzrlib/tests/test_permissions.py test_permissions.py-20051215004520-ccf475789c80e80c
bzrlib/tests/test_selftest.py test_selftest.py-20051202044319-c110a115d8c0456a
bzrlib/tests/test_setup.py test_setup.py-20051208073730-4a59a6368c4efa04
bzrlib/tests/test_whitebox.py whitebox.py-20050530064534-a063aafb4a0a3a04
bzrlib/transform.py transform.py-20060105172343-dd99e54394d91687
------------------------------------------------------------
revno: 3668.4.1
revision-id: jelmer at samba.org-20080830170854-ztumaeiftyc3vm4c
parent: pqm at pqm.ubuntu.com-20080830091000-3oibqwlrxvdpgo5l
committer: Jelmer Vernooij <jelmer at samba.org>
branch nick: cat-revision-nosuch
timestamp: Sat 2008-08-30 19:08:54 +0200
message:
Show proper error rather than traceback when an unknown revision id is specified to bzr cat-revision.
modified:
NEWS NEWS-20050323055033-4e00b5db738777ff
bzrlib/builtins.py builtins.py-20050830033751-fc01482b9ca23183
bzrlib/tests/blackbox/test_cat_revision.py test_cat_revision.py-20070410204634-fq8mnld5l5aza9e2-1
=== modified file 'NEWS'
--- a/NEWS 2008-09-01 09:01:24 +0000
+++ b/NEWS 2008-09-01 23:49:18 +0000
@@ -64,6 +64,9 @@
* Set valid default _param_name for Option so that ListOption can embed
'-' in names. (Vincent Ladeuil, #263249)
+ * Show proper error rather than traceback when an unknown revision
+ id is specified to ``bzr cat-revision``. (Jelmer Vernooij, #175569)
+
* ``WorkingTree4`` trees will now correctly report missing-and-new
paths in the output of ``iter_changes``. (Robert Collins)
=== modified file 'bzrlib/builtins.py'
--- a/bzrlib/builtins.py 2008-08-31 10:46:54 +0000
+++ b/bzrlib/builtins.py 2008-09-01 23:49:18 +0000
@@ -226,7 +226,12 @@
# TODO: jam 20060112 should cat-revision always output utf-8?
if revision_id is not None:
revision_id = osutils.safe_revision_id(revision_id, warn=False)
- self.outf.write(b.repository.get_revision_xml(revision_id).decode('utf-8'))
+ try:
+ self.outf.write(b.repository.get_revision_xml(revision_id).decode('utf-8'))
+ except errors.NoSuchRevision:
+ msg = "The repository %s contains no revision %s." % (b.repository.base,
+ revision_id)
+ raise errors.BzrCommandError(msg)
elif revision is not None:
for rev in revision:
if rev is None:
=== modified file 'bzrlib/tests/blackbox/test_cat_revision.py'
--- a/bzrlib/tests/blackbox/test_cat_revision.py 2007-06-26 20:32:49 +0000
+++ b/bzrlib/tests/blackbox/test_cat_revision.py 2008-08-30 17:08:54 +0000
@@ -53,3 +53,10 @@
self.check_output(revs[1], 'cat-revision -r revid:a at r-0-1')
self.check_output(revs[2], 'cat-revision -r revid:a at r-0-2')
self.check_output(revs[3], 'cat-revision -r revid:a at r-0-3')
+
+ def test_cat_no_such_revid(self):
+ tree = self.make_branch_and_tree('.')
+ err = self.run_bzr('cat-revision abcd', retcode=3)[1]
+ self.assertContainsRe(err, 'The repository .* contains no revision abcd.')
+
+
More information about the bazaar-commits
mailing list