Description: Print proper error when running `brz cat-revision` on Git repositories.
Origin: commit, revision id: jelmer@jelmer.uk-20190217040856-jbupholujh0v7buw
Author: Jelmer Vernooĳ <jelmer@jelmer.uk>
Bug: https://launchpad.net/bugs/1816241
Last-Update: 2019-02-17
Applied-Upstream: no
X-Bzr-Revision-Id: jelmer@jelmer.uk-20190217040856-jbupholujh0v7buw

=== modified file 'breezy/builtins.py'
--- old/breezy/builtins.py	2019-02-09 03:23:20 +0000
+++ new/breezy/builtins.py	2019-02-17 04:08:56 +0000
@@ -454,11 +454,11 @@
 
         b = controldir.ControlDir.open_containing_tree_or_branch(directory)[1]
 
-        revisions = b.repository.revisions
+        revisions = getattr(b.repository, "revisions", None)
         if revisions is None:
             raise errors.BzrCommandError(
                 gettext('Repository %r does not support '
-                        'access to raw revision texts'))
+                        'access to raw revision texts') % b.repository)
 
         with b.repository.lock_read():
             # TODO: jam 20060112 should cat-revision always output utf-8?

=== modified file 'breezy/git/tests/test_blackbox.py'
--- old/breezy/git/tests/test_blackbox.py	2019-02-14 04:20:37 +0000
+++ new/breezy/git/tests/test_blackbox.py	2019-02-17 04:08:56 +0000
@@ -78,6 +78,15 @@
         self.assertEqual(output, '')
         self.assertFileEqual("foo\n", ".gitignore")
 
+    def test_cat_revision(self):
+        self.simple_commit()
+        output, error = self.run_bzr(['cat-revision', '-r-1'], retcode=3)
+        self.assertContainsRe(
+            error,
+            'brz: ERROR: Repository .* does not support access to raw '
+            'revision texts')
+        self.assertEqual(output, '')
+
     def test_branch(self):
         os.mkdir("gitbranch")
         GitRepo.init(os.path.join(self.test_dir, "gitbranch"))

