[MERGE] Hopefully final update to status --short

Keir Mierle keir at cs.toronto.edu
Fri Dec 1 10:38:08 GMT 2006


Here is the latest iteration incoporating Aaron's suggestions [1].

Cheers,
Keir

[1] http://bundlebuggy.aaronbentley.com/request/%3C20061123191347.GS4741@cs.toronto.edu%3E
-------------- next part --------------
# Bazaar revision bundle v0.8
#
# message:
#   Make changes suggested by Aaron Bently
# committer: Keir Mierle <keir at cs.utoronto.ca>
# date: Fri 2006-12-01 05:31:21.456000090 -0500

=== modified file NEWS // last-changed:keir at cs.utoronto.ca-20061201102613-1k4ml
... kve9sducabw
--- NEWS
+++ NEWS
@@ -34,10 +34,18 @@
       location for general information, outside of a specific command.
       This includes updates for ``bzr help revisionspec`` the first topic
       included. (Goffredo Baroncelli, John Arbash Meinel, #42714)
-      
+
     * WSGI-compatible HTTP smart server.  See ``doc/http_smart_server.txt``.
       (Andrew Bennetts)
 
+    * Added ``bzr status --short`` to make status report svn style flags
+      for each file; for example 
+       $ bzr status --short
+       A foo
+       A bar
+       D baz
+       ? wooley
+      
     * Knit files will now cache full texts only when the size of the
       deltas is as large as the size of the fulltext. (Or after 200
       deltas, whichever comes first). This has the most benefit on large

=== modified file bzrlib/builtins.py // last-changed:keir at cs.utoronto.ca-200612
... 01102613-1k4mlkve9sducabw
--- bzrlib/builtins.py
+++ bzrlib/builtins.py
@@ -128,26 +128,29 @@
     This reports on versioned and unknown files, reporting them
     grouped by state.  Possible states are:
 
-    added
+    added / A
         Versioned in the working copy but not in the previous revision.
 
-    removed
+    removed / D
         Versioned in the previous revision but removed or deleted
         in the working copy.
 
-    renamed
+    renamed / R
         Path of this file changed from the previous revision;
         the text may also have changed.  This includes files whose
         parent directory was renamed.
 
-    modified
+    modified / M
         Text has changed since the previous revision.
 
-    unknown
+    unknown / ?
         Not versioned and not matching an ignore pattern.
 
     To see ignored files use 'bzr ignored'.  For details in the
     changes to file texts, use 'bzr diff'.
+    
+    --short gives a one character status flag for each item, similar
+    to the SVN's status command.
 
     If no arguments are specified, the status of the entire working
     directory is shown.  Otherwise, only the status of the specified
@@ -161,20 +164,21 @@
     # TODO: --no-recurse, --recurse options
     
     takes_args = ['file*']
-    takes_options = ['show-ids', 'revision']
+    takes_options = ['show-ids', 'revision', 'short']
     aliases = ['st', 'stat']
 
     encoding_type = 'replace'
     
     @display_command
-    def run(self, show_ids=False, file_list=None, revision=None):
+    def run(self, show_ids=False, file_list=None, revision=None, short=False):
         from bzrlib.status import show_tree_status
 
         tree, file_list = tree_files(file_list)
             
         show_tree_status(tree, show_ids=show_ids,
                          specific_files=file_list, revision=revision,
-                         to_file=self.outf)
+                         to_file=self.outf,
+                         short=short)
 
 
 class cmd_cat_revision(Command):

=== modified file bzrlib/delta.py // last-changed:keir at cs.utoronto.ca-200611231
... 85625-ndto53ylcb8zo1y6
--- bzrlib/delta.py
+++ bzrlib/delta.py
@@ -90,9 +90,9 @@
         return False
             
 
-    def show(self, to_file, show_ids=False, show_unchanged=False):
+    def show(self, to_file, show_ids=False, show_unchanged=False, short_status=False):
         """output this delta in status-like form to to_file."""
-        def show_list(files):
+        def show_list(files, short_status_letter=''):
             for item in files:
                 path, fid, kind = item[:3]
 
@@ -105,22 +105,31 @@
                     path += '*'
 
                 if show_ids:
-                    print >>to_file, '  %-30s %s' % (path, fid)
+                    print >>to_file, '%s  %-30s %s' % (short_status_letter, path, fid)
                 else:
-                    print >>to_file, ' ', path
+                    print >>to_file, '%s  %s' % (short_status_letter, path)
             
         if self.removed:
-            print >>to_file, 'removed:'
-            show_list(self.removed)
+            if not short_status:
+                print >>to_file, 'removed:'
+                show_list(self.removed)
+            else:
+                show_list(self.removed, 'D')
                 
         if self.added:
-            print >>to_file, 'added:'
-            show_list(self.added)
+            if not short_status:
+                print >>to_file, 'added:'
+                show_list(self.added)
+            else:
+                show_list(self.added, 'A')
 
         extra_modified = []
 
         if self.renamed:
-            print >>to_file, 'renamed:'
+            short_status_letter = 'R'
+            if not short_status:
+                print >>to_file, 'renamed:'
+                short_status_letter = ''
             for (oldpath, newpath, fid, kind,
                  text_modified, meta_modified) in self.renamed:
                 if text_modified or meta_modified:
@@ -129,18 +138,26 @@
                 if meta_modified:
                     newpath += '*'
                 if show_ids:
-                    print >>to_file, '  %s => %s %s' % (oldpath, newpath, fid)
+                    print >>to_file, '%s  %s => %s %s' % (short_status_letter,
+                                                          oldpath, newpath, fid)
                 else:
-                    print >>to_file, '  %s => %s' % (oldpath, newpath)
+                    print >>to_file, '%s  %s => %s' % (short_status_letter,
+                                                       oldpath, newpath)
                     
         if self.modified or extra_modified:
-            print >>to_file, 'modified:'
-            show_list(self.modified)
-            show_list(extra_modified)
+            short_status_letter = 'M'
+            if not short_status:
+                print >>to_file, 'modified:'
+                short_status_letter = ''
+            show_list(self.modified, short_status_letter)
+            show_list(extra_modified, short_status_letter)
             
         if show_unchanged and self.unchanged:
-            print >>to_file, 'unchanged:'
-            show_list(self.unchanged)
+            if not short_status:
+                print >>to_file, 'unchanged:'
+                show_list(self.unchanged)
+            else:
+                show_list(self.unchanged, 'S')
 
 
 @deprecated_function(zero_nine)

=== modified file bzrlib/status.py
--- bzrlib/status.py
+++ bzrlib/status.py
@@ -76,7 +76,8 @@
                      show_ids=False,
                      to_file=None,
                      show_pending=True,
-                     revision=None):
+                     revision=None,
+                     short=False):
     """Display summary of changes.
 
     By default this compares the working tree to a previous revision. 
@@ -101,6 +102,7 @@
         If not None it must be a RevisionSpec list.
         If one revision show compared it with working tree.
         If two revisions show status between first and second.
+    :param short: If True, gives short SVN-style status lines
     """
     if show_unchanged is not None:
         warn("show_status_trees with show_unchanged has been deprecated "
@@ -137,22 +139,30 @@
                               specific_files=specific_files)
         delta.show(to_file,
                    show_ids=show_ids,
-                   show_unchanged=show_unchanged)
-
-        list_paths('unknown', new.unknowns(), specific_files, to_file)
+                   show_unchanged=show_unchanged,
+                   short_status=short)
+        short_status_letter = '?'
+        if not short:
+            short_status_letter = ''
+        list_paths('unknown', new.unknowns(), specific_files, to_file,
+                   short_status_letter)
         conflict_title = False
         # show the new conflicts only for now. XXX: get them from the delta.
         for conflict in new.conflicts():
-            if conflict_title is False:
+            if not short and conflict_title is False:
                 print >> to_file, "conflicts:"
                 conflict_title = True
-            print >> to_file, "  %s" % conflict
+            if not short:
+                prefix = 'C'
+            else:
+                prefix = ' '
+            print >> to_file, prefix, " %s" % conflict
         if new_is_working_tree and show_pending:
-            show_pending_merges(new, to_file)
+            show_pending_merges(new, to_file, short)
     finally:
         wt.unlock()
 
-def show_pending_merges(new, to_file):
+def show_pending_merges(new, to_file, short=False):
     """Write out a display of pending merges in a working tree."""
     parents = new.get_parent_ids()
     if len(parents) < 2:
@@ -160,7 +170,8 @@
     pending = parents[1:]
     branch = new.branch
     last_revision = parents[0]
-    print >>to_file, 'pending merges:'
+    if not short:
+        print >>to_file, 'pending merges:'
     if last_revision is not None:
         try:
             ignore = set(branch.repository.get_ancestry(last_revision))
@@ -178,7 +189,11 @@
             from bzrlib.osutils import terminal_width
             width = terminal_width()
             m_revision = branch.repository.get_revision(merge)
-            print >> to_file, ' ', line_log(m_revision, width - 3)
+            if short:
+                prefix = 'P'
+            else: 
+                prefix = ' '
+            print >> to_file, prefix, line_log(m_revision, width - 4)
             inner_merges = branch.repository.get_ancestry(merge)
             assert inner_merges[0] is None
             inner_merges.pop(0)
@@ -187,17 +202,25 @@
                 if mmerge in ignore:
                     continue
                 mm_revision = branch.repository.get_revision(mmerge)
-                print >> to_file, '   ', line_log(mm_revision, width - 5)
+                if short:
+                    prefix = 'P. '
+                else:
+                    prefix = '   '
+                print >> to_file, prefix, line_log(mm_revision, width - 5)
                 ignore.add(mmerge)
         except errors.NoSuchRevision:
-            print >> to_file, ' ', merge
+            if short:
+                prefix = 'P'
+            else:
+                prefix = ' '
+            print >> to_file, prefix, merge
         
-def list_paths(header, paths, specific_files, to_file):
+def list_paths(header, paths, specific_files, to_file, short_status_letter=''):
     done_header = False
     for path in paths:
         if specific_files and not is_inside_any(specific_files, path):
             continue
-        if not done_header:
+        if not short_status_letter and not done_header:
             print >>to_file, '%s:' % header
             done_header = True
-        print >>to_file, ' ', path
+        print >>to_file, '%s  %s' % (short_status_letter, path)

=== modified file bzrlib/tests/blackbox/test_status.py // last-changed:keir at cs.
... utoronto.ca-20061123185625-ndto53ylcb8zo1y6
--- bzrlib/tests/blackbox/test_status.py
+++ bzrlib/tests/blackbox/test_status.py
@@ -41,20 +41,20 @@
 class BranchStatus(TestCaseWithTransport):
     
     def assertStatus(self, output_lines, working_tree,
-        revision=None):
+        revision=None, short=False):
         """Run status in working_tree and look for output.
         
         :param output_lines: The lines to look for.
         :param working_tree: The tree to run status in.
         """
-        output_string = self.status_string(working_tree, revision)
+        output_string = self.status_string(working_tree, revision, short)
         self.assertEqual(output_lines, output_string.splitlines(True))
     
-    def status_string(self, wt, revision=None):
+    def status_string(self, wt, revision=None, short=False):
         # use a real file rather than StringIO because it doesn't handle
         # Unicode very well.
         tof = codecs.getwriter('utf-8')(TemporaryFile())
-        show_tree_status(wt, to_file=tof, revision=revision)
+        show_tree_status(wt, to_file=tof, revision=revision, short=short)
         tof.seek(0)
         return tof.read().decode('utf-8')
 
@@ -75,6 +75,11 @@
                 '  hello.c\n',
             ],
             wt)
+        self.assertStatus([
+                '?  bye.c\n',
+                '?  hello.c\n',
+            ],
+            wt, short=True)
 
         # add a commit to allow showing pending merges.
         wt.commit('create a parent to allow testing merge output')
@@ -88,6 +93,12 @@
                 '  pending at pending-0-0\n',
             ],
             wt)
+        self.assertStatus([
+                '?  bye.c\n',
+                '?  hello.c\n',
+                'P  pending at pending-0-0\n',
+            ],
+            wt, short=True)
 
     def test_branch_status_revisions(self):
         """Tests branch status with revisions"""
@@ -154,16 +165,22 @@
         wt.add('test.c')
         wt.commit('testing')
         
+        self.assertStatus([
+                'unknown:\n',
+                '  bye.c\n',
+                '  dir2\n',
+                '  directory/hello.c\n'
+                ],
+                wt)
+
+        self.assertStatus([
+                '?  bye.c\n',
+                '?  dir2\n',
+                '?  directory/hello.c\n'
+                ],
+                wt, short=True)
+
         tof = StringIO()
-        show_tree_status(wt, to_file=tof)
-        tof.seek(0)
-        self.assertEquals(tof.readlines(),
-                          ['unknown:\n',
-                           '  bye.c\n',
-                           '  dir2\n',
-                           '  directory/hello.c\n'
-                           ])
-
         self.assertRaises(errors.PathsDoNotExist,
                           show_tree_status,
                           wt, specific_files=['bye.c','test.c','absent.c'], 
@@ -177,12 +194,22 @@
                            '  directory/hello.c\n'
                            ])
         tof = StringIO()
+        show_tree_status(wt, specific_files=['directory'], to_file=tof,
+                         short=True)
+        tof.seek(0)
+        self.assertEquals(tof.readlines(), ['?  directory/hello.c\n'])
+
+        tof = StringIO()
         show_tree_status(wt, specific_files=['dir2'], to_file=tof)
         tof.seek(0)
         self.assertEquals(tof.readlines(),
                           ['unknown:\n',
                            '  dir2\n'
                            ])
+        tof = StringIO()
+        show_tree_status(wt, specific_files=['dir2'], to_file=tof, short=True)
+        tof.seek(0)
+        self.assertEquals(tof.readlines(), ['?  dir2\n'])
 
     def test_status_nonexistent_file(self):
         # files that don't exist in either the basis tree or working tree
@@ -226,22 +253,36 @@
 
     def test_status(self):
         self.run_bzr("init")
+
         self.build_tree(['hello.txt'])
         result = self.run_bzr("status")[0]
         self.assert_("unknown:\n  hello.txt\n" in result, result)
+        result = self.run_bzr("status","--short")[0]
+        self.assert_("?  hello.txt\n" in result, result)
+
         self.run_bzr("add", "hello.txt")
         result = self.run_bzr("status")[0]
         self.assert_("added:\n  hello.txt\n" in result, result)
+        result = self.run_bzr("status","--short")[0]
+        self.assert_("A  hello.txt\n" in result, result)
+
         self.run_bzr("commit", "-m", "added")
         result = self.run_bzr("status", "-r", "0..1")[0]
         self.assert_("added:\n  hello.txt\n" in result, result)
+        result = self.run_bzr("status", "--short", "-r", "0..1")[0]
+        self.assert_("A  hello.txt\n" in result, result)
+
         self.build_tree(['world.txt'])
         result = self.run_bzr("status", "-r", "0")[0]
         self.assert_("added:\n  hello.txt\n" \
                      "unknown:\n  world.txt\n" in result, result)
-
         result2 = self.run_bzr("status", "-r", "0..")[0]
         self.assertEquals(result2, result)
+        result = self.run_bzr("status", "--short", "-r", "0")[0]
+        self.assert_("A  hello.txt\n" \
+                     "?  world.txt\n" in result, result)
+        result2 = self.run_bzr("status", "--short", "-r", "0..")[0]
+        self.assertEquals(result2, result)
 
 
 class TestStatusEncodings(TestCaseWithTransport):

=== modified directory  // last-changed:keir at cs.utoronto.ca-20061201103121-hm37
... 8qglop3v07w9
# revision id: keir at cs.utoronto.ca-20061201103121-hm378qglop3v07w9
# sha1: a507603ed1bf8e836150cd41526b2957d35ac1fc
# inventory sha1: 8995ec10e4fb364652a6fe461160da79eff41132
# parent ids:
#   keir at cs.utoronto.ca-20061201102613-1k4mlkve9sducabw
# base id: pqm at pqm.ubuntu.com-20061130181753-8f59214477f99124
# properties:
#   branch-nick: bzr.shortstatus

# message:
#   Merge from upstream
# committer: Keir Mierle <keir at cs.utoronto.ca>
# date: Fri 2006-12-01 05:26:13.869999886 -0500

=== modified file NEWS // encoding:base64
LS0tIE5FV1MKKysrIE5FV1MKQEAgLTM0LDEwICszNCwxOCBAQAogICAgICAgbG9jYXRpb24gZm9y
IGdlbmVyYWwgaW5mb3JtYXRpb24sIG91dHNpZGUgb2YgYSBzcGVjaWZpYyBjb21tYW5kLgogICAg
ICAgVGhpcyBpbmNsdWRlcyB1cGRhdGVzIGZvciBgYGJ6ciBoZWxwIHJldmlzaW9uc3BlY2BgIHRo
ZSBmaXJzdCB0b3BpYwogICAgICAgaW5jbHVkZWQuIChHb2ZmcmVkbyBCYXJvbmNlbGxpLCBKb2hu
IEFyYmFzaCBNZWluZWwsICM0MjcxNCkKLSAgICAgIAorCiAgICAgKiBXU0dJLWNvbXBhdGlibGUg
SFRUUCBzbWFydCBzZXJ2ZXIuICBTZWUgYGBkb2MvaHR0cF9zbWFydF9zZXJ2ZXIudHh0YGAuCiAg
ICAgICAoQW5kcmV3IEJlbm5ldHRzKQogCisgICAgKiBBZGRlZCBgYGJ6ciBzdGF0dXMgLS1zaG9y
dGBgIHRvIG1ha2Ugc3RhdHVzIHJlcG9ydCBzdm4gc3R5bGUgZmxhZ3MKKyAgICAgIGZvciBlYWNo
IGZpbGU7IGZvciBleGFtcGxlIAorICAgICAgICQgYnpyIHN0YXR1cyAtLXNob3J0CisgICAgICAg
QSBmb28KKyAgICAgICBBIGJhcgorICAgICAgIEQgYmF6CisgICAgICAgPyB3b29sZXkKKyAgICAg
IAogICAgICogS25pdCBmaWxlcyB3aWxsIG5vdyBjYWNoZSBmdWxsIHRleHRzIG9ubHkgd2hlbiB0
aGUgc2l6ZSBvZiB0aGUKICAgICAgIGRlbHRhcyBpcyBhcyBsYXJnZSBhcyB0aGUgc2l6ZSBvZiB0
aGUgZnVsbHRleHQuIChPciBhZnRlciAyMDAKICAgICAgIGRlbHRhcywgd2hpY2hldmVyIGNvbWVz
IGZpcnN0KS4gVGhpcyBoYXMgdGhlIG1vc3QgYmVuZWZpdCBvbiBsYXJnZQoK

=== modified file bzrlib/builtins.py // encoding:base64
LS0tIGJ6cmxpYi9idWlsdGlucy5weQorKysgYnpybGliL2J1aWx0aW5zLnB5CkBAIC0xMjgsMjYg
KzEyOCwyOSBAQAogICAgIFRoaXMgcmVwb3J0cyBvbiB2ZXJzaW9uZWQgYW5kIHVua25vd24gZmls
ZXMsIHJlcG9ydGluZyB0aGVtCiAgICAgZ3JvdXBlZCBieSBzdGF0ZS4gIFBvc3NpYmxlIHN0YXRl
cyBhcmU6CiAKLSAgICBhZGRlZAorICAgIGFkZGVkIC8gQQogICAgICAgICBWZXJzaW9uZWQgaW4g
dGhlIHdvcmtpbmcgY29weSBidXQgbm90IGluIHRoZSBwcmV2aW91cyByZXZpc2lvbi4KIAotICAg
IHJlbW92ZWQKKyAgICByZW1vdmVkIC8gRAogICAgICAgICBWZXJzaW9uZWQgaW4gdGhlIHByZXZp
b3VzIHJldmlzaW9uIGJ1dCByZW1vdmVkIG9yIGRlbGV0ZWQKICAgICAgICAgaW4gdGhlIHdvcmtp
bmcgY29weS4KIAotICAgIHJlbmFtZWQKKyAgICByZW5hbWVkIC8gUgogICAgICAgICBQYXRoIG9m
IHRoaXMgZmlsZSBjaGFuZ2VkIGZyb20gdGhlIHByZXZpb3VzIHJldmlzaW9uOwogICAgICAgICB0
aGUgdGV4dCBtYXkgYWxzbyBoYXZlIGNoYW5nZWQuICBUaGlzIGluY2x1ZGVzIGZpbGVzIHdob3Nl
CiAgICAgICAgIHBhcmVudCBkaXJlY3Rvcnkgd2FzIHJlbmFtZWQuCiAKLSAgICBtb2RpZmllZAor
ICAgIG1vZGlmaWVkIC8gTQogICAgICAgICBUZXh0IGhhcyBjaGFuZ2VkIHNpbmNlIHRoZSBwcmV2
aW91cyByZXZpc2lvbi4KIAotICAgIHVua25vd24KKyAgICB1bmtub3duIC8gPwogICAgICAgICBO
b3QgdmVyc2lvbmVkIGFuZCBub3QgbWF0Y2hpbmcgYW4gaWdub3JlIHBhdHRlcm4uCiAKICAgICBU
byBzZWUgaWdub3JlZCBmaWxlcyB1c2UgJ2J6ciBpZ25vcmVkJy4gIEZvciBkZXRhaWxzIGluIHRo
ZQogICAgIGNoYW5nZXMgdG8gZmlsZSB0ZXh0cywgdXNlICdienIgZGlmZicuCisgICAgCisgICAg
LS1zaG9ydCBnaXZlcyBhIG9uZSBjaGFyYWN0ZXIgc3RhdHVzIGZsYWcgZm9yIGVhY2ggaXRlbSwg
c2ltaWxhcgorICAgIHRvIHRoZSBTVk4ncyBzdGF0dXMgY29tbWFuZC4KIAogICAgIElmIG5vIGFy
Z3VtZW50cyBhcmUgc3BlY2lmaWVkLCB0aGUgc3RhdHVzIG9mIHRoZSBlbnRpcmUgd29ya2luZwog
ICAgIGRpcmVjdG9yeSBpcyBzaG93bi4gIE90aGVyd2lzZSwgb25seSB0aGUgc3RhdHVzIG9mIHRo
ZSBzcGVjaWZpZWQKQEAgLTE2MSwyMCArMTY0LDIxIEBACiAgICAgIyBUT0RPOiAtLW5vLXJlY3Vy
c2UsIC0tcmVjdXJzZSBvcHRpb25zCiAgICAgCiAgICAgdGFrZXNfYXJncyA9IFsnZmlsZSonXQot
ICAgIHRha2VzX29wdGlvbnMgPSBbJ3Nob3ctaWRzJywgJ3JldmlzaW9uJ10KKyAgICB0YWtlc19v
cHRpb25zID0gWydzaG93LWlkcycsICdyZXZpc2lvbicsICdzaG9ydCddCiAgICAgYWxpYXNlcyA9
IFsnc3QnLCAnc3RhdCddCiAKICAgICBlbmNvZGluZ190eXBlID0gJ3JlcGxhY2UnCiAgICAgCiAg
ICAgQGRpc3BsYXlfY29tbWFuZAotICAgIGRlZiBydW4oc2VsZiwgc2hvd19pZHM9RmFsc2UsIGZp
bGVfbGlzdD1Ob25lLCByZXZpc2lvbj1Ob25lKToKKyAgICBkZWYgcnVuKHNlbGYsIHNob3dfaWRz
PUZhbHNlLCBmaWxlX2xpc3Q9Tm9uZSwgcmV2aXNpb249Tm9uZSwgc2hvcnQ9RmFsc2UpOgogICAg
ICAgICBmcm9tIGJ6cmxpYi5zdGF0dXMgaW1wb3J0IHNob3dfdHJlZV9zdGF0dXMKIAogICAgICAg
ICB0cmVlLCBmaWxlX2xpc3QgPSB0cmVlX2ZpbGVzKGZpbGVfbGlzdCkKICAgICAgICAgICAgIAog
ICAgICAgICBzaG93X3RyZWVfc3RhdHVzKHRyZWUsIHNob3dfaWRzPXNob3dfaWRzLAogICAgICAg
ICAgICAgICAgICAgICAgICAgIHNwZWNpZmljX2ZpbGVzPWZpbGVfbGlzdCwgcmV2aXNpb249cmV2
aXNpb24sCi0gICAgICAgICAgICAgICAgICAgICAgICAgdG9fZmlsZT1zZWxmLm91dGYpCisgICAg
ICAgICAgICAgICAgICAgICAgICAgdG9fZmlsZT1zZWxmLm91dGYsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgc2hvcnQ9c2hvcnQpCiAKIAogY2xhc3MgY21kX2NhdF9yZXZpc2lvbihDb21tYW5k
KToKCg==

=== modified file bzrlib/delta.py // last-changed:keir at cs.utoronto.ca-200611231
... 85625-ndto53ylcb8zo1y6 // encoding:base64
LS0tIGJ6cmxpYi9kZWx0YS5weQorKysgYnpybGliL2RlbHRhLnB5CkBAIC05MCw5ICs5MCw5IEBA
CiAgICAgICAgIHJldHVybiBGYWxzZQogICAgICAgICAgICAgCiAKLSAgICBkZWYgc2hvdyhzZWxm
LCB0b19maWxlLCBzaG93X2lkcz1GYWxzZSwgc2hvd191bmNoYW5nZWQ9RmFsc2UpOgorICAgIGRl
ZiBzaG93KHNlbGYsIHRvX2ZpbGUsIHNob3dfaWRzPUZhbHNlLCBzaG93X3VuY2hhbmdlZD1GYWxz
ZSwgc2hvcnRfc3RhdHVzPUZhbHNlKToKICAgICAgICAgIiIib3V0cHV0IHRoaXMgZGVsdGEgaW4g
c3RhdHVzLWxpa2UgZm9ybSB0byB0b19maWxlLiIiIgotICAgICAgICBkZWYgc2hvd19saXN0KGZp
bGVzKToKKyAgICAgICAgZGVmIHNob3dfbGlzdChmaWxlcywgc2hvcnRfc3RhdHVzX2xldHRlcj0n
Jyk6CiAgICAgICAgICAgICBmb3IgaXRlbSBpbiBmaWxlczoKICAgICAgICAgICAgICAgICBwYXRo
LCBmaWQsIGtpbmQgPSBpdGVtWzozXQogCkBAIC0xMDUsMjIgKzEwNSwzMSBAQAogICAgICAgICAg
ICAgICAgICAgICBwYXRoICs9ICcqJwogCiAgICAgICAgICAgICAgICAgaWYgc2hvd19pZHM6Ci0g
ICAgICAgICAgICAgICAgICAgIHByaW50ID4+dG9fZmlsZSwgJyAgJS0zMHMgJXMnICUgKHBhdGgs
IGZpZCkKKyAgICAgICAgICAgICAgICAgICAgcHJpbnQgPj50b19maWxlLCAnJXMgICUtMzBzICVz
JyAlIChzaG9ydF9zdGF0dXNfbGV0dGVyLCBwYXRoLCBmaWQpCiAgICAgICAgICAgICAgICAgZWxz
ZToKLSAgICAgICAgICAgICAgICAgICAgcHJpbnQgPj50b19maWxlLCAnICcsIHBhdGgKKyAgICAg
ICAgICAgICAgICAgICAgcHJpbnQgPj50b19maWxlLCAnJXMgICVzJyAlIChzaG9ydF9zdGF0dXNf
bGV0dGVyLCBwYXRoKQogICAgICAgICAgICAgCiAgICAgICAgIGlmIHNlbGYucmVtb3ZlZDoKLSAg
ICAgICAgICAgIHByaW50ID4+dG9fZmlsZSwgJ3JlbW92ZWQ6JwotICAgICAgICAgICAgc2hvd19s
aXN0KHNlbGYucmVtb3ZlZCkKKyAgICAgICAgICAgIGlmIG5vdCBzaG9ydF9zdGF0dXM6CisgICAg
ICAgICAgICAgICAgcHJpbnQgPj50b19maWxlLCAncmVtb3ZlZDonCisgICAgICAgICAgICAgICAg
c2hvd19saXN0KHNlbGYucmVtb3ZlZCkKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAg
ICAgc2hvd19saXN0KHNlbGYucmVtb3ZlZCwgJ0QnKQogICAgICAgICAgICAgICAgIAogICAgICAg
ICBpZiBzZWxmLmFkZGVkOgotICAgICAgICAgICAgcHJpbnQgPj50b19maWxlLCAnYWRkZWQ6Jwot
ICAgICAgICAgICAgc2hvd19saXN0KHNlbGYuYWRkZWQpCisgICAgICAgICAgICBpZiBub3Qgc2hv
cnRfc3RhdHVzOgorICAgICAgICAgICAgICAgIHByaW50ID4+dG9fZmlsZSwgJ2FkZGVkOicKKyAg
ICAgICAgICAgICAgICBzaG93X2xpc3Qoc2VsZi5hZGRlZCkKKyAgICAgICAgICAgIGVsc2U6Cisg
ICAgICAgICAgICAgICAgc2hvd19saXN0KHNlbGYuYWRkZWQsICdBJykKIAogICAgICAgICBleHRy
YV9tb2RpZmllZCA9IFtdCiAKICAgICAgICAgaWYgc2VsZi5yZW5hbWVkOgotICAgICAgICAgICAg
cHJpbnQgPj50b19maWxlLCAncmVuYW1lZDonCisgICAgICAgICAgICBzaG9ydF9zdGF0dXNfbGV0
dGVyID0gJ1InCisgICAgICAgICAgICBpZiBub3Qgc2hvcnRfc3RhdHVzOgorICAgICAgICAgICAg
ICAgIHByaW50ID4+dG9fZmlsZSwgJ3JlbmFtZWQ6JworICAgICAgICAgICAgICAgIHNob3J0X3N0
YXR1c19sZXR0ZXIgPSAnJwogICAgICAgICAgICAgZm9yIChvbGRwYXRoLCBuZXdwYXRoLCBmaWQs
IGtpbmQsCiAgICAgICAgICAgICAgICAgIHRleHRfbW9kaWZpZWQsIG1ldGFfbW9kaWZpZWQpIGlu
IHNlbGYucmVuYW1lZDoKICAgICAgICAgICAgICAgICBpZiB0ZXh0X21vZGlmaWVkIG9yIG1ldGFf
bW9kaWZpZWQ6CkBAIC0xMjksMTggKzEzOCwyNiBAQAogICAgICAgICAgICAgICAgIGlmIG1ldGFf
bW9kaWZpZWQ6CiAgICAgICAgICAgICAgICAgICAgIG5ld3BhdGggKz0gJyonCiAgICAgICAgICAg
ICAgICAgaWYgc2hvd19pZHM6Ci0gICAgICAgICAgICAgICAgICAgIHByaW50ID4+dG9fZmlsZSwg
JyAgJXMgPT4gJXMgJXMnICUgKG9sZHBhdGgsIG5ld3BhdGgsIGZpZCkKKyAgICAgICAgICAgICAg
ICAgICAgcHJpbnQgPj50b19maWxlLCAnJXMgICVzID0+ICVzICVzJyAlIChzaG9ydF9zdGF0dXNf
bGV0dGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIG9sZHBhdGgsIG5ld3BhdGgsIGZpZCkKICAgICAgICAgICAgICAgICBlbHNlOgot
ICAgICAgICAgICAgICAgICAgICBwcmludCA+PnRvX2ZpbGUsICcgICVzID0+ICVzJyAlIChvbGRw
YXRoLCBuZXdwYXRoKQorICAgICAgICAgICAgICAgICAgICBwcmludCA+PnRvX2ZpbGUsICclcyAg
JXMgPT4gJXMnICUgKHNob3J0X3N0YXR1c19sZXR0ZXIsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb2xkcGF0aCwgbmV3cGF0aCkKICAgICAg
ICAgICAgICAgICAgICAgCiAgICAgICAgIGlmIHNlbGYubW9kaWZpZWQgb3IgZXh0cmFfbW9kaWZp
ZWQ6Ci0gICAgICAgICAgICBwcmludCA+PnRvX2ZpbGUsICdtb2RpZmllZDonCi0gICAgICAgICAg
ICBzaG93X2xpc3Qoc2VsZi5tb2RpZmllZCkKLSAgICAgICAgICAgIHNob3dfbGlzdChleHRyYV9t
b2RpZmllZCkKKyAgICAgICAgICAgIHNob3J0X3N0YXR1c19sZXR0ZXIgPSAnTScKKyAgICAgICAg
ICAgIGlmIG5vdCBzaG9ydF9zdGF0dXM6CisgICAgICAgICAgICAgICAgcHJpbnQgPj50b19maWxl
LCAnbW9kaWZpZWQ6JworICAgICAgICAgICAgICAgIHNob3J0X3N0YXR1c19sZXR0ZXIgPSAnJwor
ICAgICAgICAgICAgc2hvd19saXN0KHNlbGYubW9kaWZpZWQsIHNob3J0X3N0YXR1c19sZXR0ZXIp
CisgICAgICAgICAgICBzaG93X2xpc3QoZXh0cmFfbW9kaWZpZWQsIHNob3J0X3N0YXR1c19sZXR0
ZXIpCiAgICAgICAgICAgICAKICAgICAgICAgaWYgc2hvd191bmNoYW5nZWQgYW5kIHNlbGYudW5j
aGFuZ2VkOgotICAgICAgICAgICAgcHJpbnQgPj50b19maWxlLCAndW5jaGFuZ2VkOicKLSAgICAg
ICAgICAgIHNob3dfbGlzdChzZWxmLnVuY2hhbmdlZCkKKyAgICAgICAgICAgIGlmIG5vdCBzaG9y
dF9zdGF0dXM6CisgICAgICAgICAgICAgICAgcHJpbnQgPj50b19maWxlLCAndW5jaGFuZ2VkOicK
KyAgICAgICAgICAgICAgICBzaG93X2xpc3Qoc2VsZi51bmNoYW5nZWQpCisgICAgICAgICAgICBl
bHNlOgorICAgICAgICAgICAgICAgIHNob3dfbGlzdChzZWxmLnVuY2hhbmdlZCwgJ1MnKQogCiAK
IEBkZXByZWNhdGVkX2Z1bmN0aW9uKHplcm9fbmluZSkKCg==

=== modified file bzrlib/status.py // last-changed:keir at cs.utoronto.ca-20061123
... 185625-ndto53ylcb8zo1y6 // encoding:base64
LS0tIGJ6cmxpYi9zdGF0dXMucHkKKysrIGJ6cmxpYi9zdGF0dXMucHkKQEAgLTc2LDcgKzc2LDgg
QEAKICAgICAgICAgICAgICAgICAgICAgIHNob3dfaWRzPUZhbHNlLAogICAgICAgICAgICAgICAg
ICAgICAgdG9fZmlsZT1Ob25lLAogICAgICAgICAgICAgICAgICAgICAgc2hvd19wZW5kaW5nPVRy
dWUsCi0gICAgICAgICAgICAgICAgICAgICByZXZpc2lvbj1Ob25lKToKKyAgICAgICAgICAgICAg
ICAgICAgIHJldmlzaW9uPU5vbmUsCisgICAgICAgICAgICAgICAgICAgICBzaG9ydD1GYWxzZSk6
CiAgICAgIiIiRGlzcGxheSBzdW1tYXJ5IG9mIGNoYW5nZXMuCiAKICAgICBCeSBkZWZhdWx0IHRo
aXMgY29tcGFyZXMgdGhlIHdvcmtpbmcgdHJlZSB0byBhIHByZXZpb3VzIHJldmlzaW9uLiAKQEAg
LTEwMSw2ICsxMDIsNyBAQAogICAgICAgICBJZiBub3QgTm9uZSBpdCBtdXN0IGJlIGEgUmV2aXNp
b25TcGVjIGxpc3QuCiAgICAgICAgIElmIG9uZSByZXZpc2lvbiBzaG93IGNvbXBhcmVkIGl0IHdp
dGggd29ya2luZyB0cmVlLgogICAgICAgICBJZiB0d28gcmV2aXNpb25zIHNob3cgc3RhdHVzIGJl
dHdlZW4gZmlyc3QgYW5kIHNlY29uZC4KKyAgICA6cGFyYW0gc2hvcnQ6IElmIFRydWUsIGdpdmVz
IHNob3J0IFNWTi1zdHlsZSBzdGF0dXMgbGluZXMKICAgICAiIiIKICAgICBpZiBzaG93X3VuY2hh
bmdlZCBpcyBub3QgTm9uZToKICAgICAgICAgd2Fybigic2hvd19zdGF0dXNfdHJlZXMgd2l0aCBz
aG93X3VuY2hhbmdlZCBoYXMgYmVlbiBkZXByZWNhdGVkICIKQEAgLTEzNywyMiArMTM5LDI5IEBA
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcGVjaWZpY19maWxlcz1zcGVjaWZpY19m
aWxlcykKICAgICAgICAgZGVsdGEuc2hvdyh0b19maWxlLAogICAgICAgICAgICAgICAgICAgIHNo
b3dfaWRzPXNob3dfaWRzLAotICAgICAgICAgICAgICAgICAgIHNob3dfdW5jaGFuZ2VkPXNob3df
dW5jaGFuZ2VkKQotCi0gICAgICAgIGxpc3RfcGF0aHMoJ3Vua25vd24nLCBuZXcudW5rbm93bnMo
KSwgc3BlY2lmaWNfZmlsZXMsIHRvX2ZpbGUpCisgICAgICAgICAgICAgICAgICAgc2hvd191bmNo
YW5nZWQ9c2hvd191bmNoYW5nZWQsCisgICAgICAgICAgICAgICAgICAgc2hvcnRfc3RhdHVzPXNo
b3J0KQorICAgICAgICBzaG9ydF9zdGF0dXNfbGV0dGVyID0gJz8nCisgICAgICAgIGlmIG5vdCBz
aG9ydDoKKyAgICAgICAgICAgIHNob3J0X3N0YXR1c19sZXR0ZXIgPSAnJworICAgICAgICBsaXN0
X3BhdGhzKCd1bmtub3duJywgbmV3LnVua25vd25zKCksIHNwZWNpZmljX2ZpbGVzLCB0b19maWxl
LAorICAgICAgICAgICAgICAgICAgIHNob3J0X3N0YXR1c19sZXR0ZXIpCiAgICAgICAgIGNvbmZs
aWN0X3RpdGxlID0gRmFsc2UKICAgICAgICAgIyBzaG93IHRoZSBuZXcgY29uZmxpY3RzIG9ubHkg
Zm9yIG5vdy4gWFhYOiBnZXQgdGhlbSBmcm9tIHRoZSBkZWx0YS4KICAgICAgICAgZm9yIGNvbmZs
aWN0IGluIG5ldy5jb25mbGljdHMoKToKLSAgICAgICAgICAgIGlmIGNvbmZsaWN0X3RpdGxlIGlz
IEZhbHNlOgorICAgICAgICAgICAgaWYgbm90IHNob3J0IGFuZCBjb25mbGljdF90aXRsZSBpcyBG
YWxzZToKICAgICAgICAgICAgICAgICBwcmludCA+PiB0b19maWxlLCAiY29uZmxpY3RzOiIKICAg
ICAgICAgICAgICAgICBjb25mbGljdF90aXRsZSA9IFRydWUKLSAgICAgICAgICAgIHByaW50ID4+
IHRvX2ZpbGUsICIgICVzIiAlIGNvbmZsaWN0CisgICAgICAgICAgICBpZiBub3Qgc2hvcnQ6Cisg
ICAgICAgICAgICAgICAgcHJpbnQgPj4gdG9fZmlsZSwgIiAgJXMiICUgY29uZmxpY3QKKyAgICAg
ICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgcHJpbnQgPj4gdG9fZmlsZSwgIkMgICVzIiAl
IGNvbmZsaWN0CiAgICAgICAgIGlmIG5ld19pc193b3JraW5nX3RyZWUgYW5kIHNob3dfcGVuZGlu
ZzoKLSAgICAgICAgICAgIHNob3dfcGVuZGluZ19tZXJnZXMobmV3LCB0b19maWxlKQorICAgICAg
ICAgICAgc2hvd19wZW5kaW5nX21lcmdlcyhuZXcsIHRvX2ZpbGUsIHNob3J0KQogICAgIGZpbmFs
bHk6CiAgICAgICAgIHd0LnVubG9jaygpCiAKLWRlZiBzaG93X3BlbmRpbmdfbWVyZ2VzKG5ldywg
dG9fZmlsZSk6CitkZWYgc2hvd19wZW5kaW5nX21lcmdlcyhuZXcsIHRvX2ZpbGUsIHNob3J0PUZh
bHNlKToKICAgICAiIiJXcml0ZSBvdXQgYSBkaXNwbGF5IG9mIHBlbmRpbmcgbWVyZ2VzIGluIGEg
d29ya2luZyB0cmVlLiIiIgogICAgIHBhcmVudHMgPSBuZXcuZ2V0X3BhcmVudF9pZHMoKQogICAg
IGlmIGxlbihwYXJlbnRzKSA8IDI6CkBAIC0xNjAsNyArMTY5LDggQEAKICAgICBwZW5kaW5nID0g
cGFyZW50c1sxOl0KICAgICBicmFuY2ggPSBuZXcuYnJhbmNoCiAgICAgbGFzdF9yZXZpc2lvbiA9
IHBhcmVudHNbMF0KLSAgICBwcmludCA+PnRvX2ZpbGUsICdwZW5kaW5nIG1lcmdlczonCisgICAg
aWYgbm90IHNob3J0OgorICAgICAgICBwcmludCA+PnRvX2ZpbGUsICdwZW5kaW5nIG1lcmdlczon
CiAgICAgaWYgbGFzdF9yZXZpc2lvbiBpcyBub3QgTm9uZToKICAgICAgICAgdHJ5OgogICAgICAg
ICAgICAgaWdub3JlID0gc2V0KGJyYW5jaC5yZXBvc2l0b3J5LmdldF9hbmNlc3RyeShsYXN0X3Jl
dmlzaW9uKSkKQEAgLTE3OCw3ICsxODgsMTAgQEAKICAgICAgICAgICAgIGZyb20gYnpybGliLm9z
dXRpbHMgaW1wb3J0IHRlcm1pbmFsX3dpZHRoCiAgICAgICAgICAgICB3aWR0aCA9IHRlcm1pbmFs
X3dpZHRoKCkKICAgICAgICAgICAgIG1fcmV2aXNpb24gPSBicmFuY2gucmVwb3NpdG9yeS5nZXRf
cmV2aXNpb24obWVyZ2UpCi0gICAgICAgICAgICBwcmludCA+PiB0b19maWxlLCAnICcsIGxpbmVf
bG9nKG1fcmV2aXNpb24sIHdpZHRoIC0gMykKKyAgICAgICAgICAgIGlmIHNob3J0OgorICAgICAg
ICAgICAgICAgIHByaW50ID4+IHRvX2ZpbGUsICdQICcsIGxpbmVfbG9nKG1fcmV2aXNpb24sIHdp
ZHRoIC0gMykKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgcHJpbnQgPj4gdG9f
ZmlsZSwgJyAnLCBsaW5lX2xvZyhtX3JldmlzaW9uLCB3aWR0aCAtIDMpCiAgICAgICAgICAgICBp
bm5lcl9tZXJnZXMgPSBicmFuY2gucmVwb3NpdG9yeS5nZXRfYW5jZXN0cnkobWVyZ2UpCiAgICAg
ICAgICAgICBhc3NlcnQgaW5uZXJfbWVyZ2VzWzBdIGlzIE5vbmUKICAgICAgICAgICAgIGlubmVy
X21lcmdlcy5wb3AoMCkKQEAgLTE4NywxNyArMjAwLDIzIEBACiAgICAgICAgICAgICAgICAgaWYg
bW1lcmdlIGluIGlnbm9yZToKICAgICAgICAgICAgICAgICAgICAgY29udGludWUKICAgICAgICAg
ICAgICAgICBtbV9yZXZpc2lvbiA9IGJyYW5jaC5yZXBvc2l0b3J5LmdldF9yZXZpc2lvbihtbWVy
Z2UpCi0gICAgICAgICAgICAgICAgcHJpbnQgPj4gdG9fZmlsZSwgJyAgICcsIGxpbmVfbG9nKG1t
X3JldmlzaW9uLCB3aWR0aCAtIDUpCisgICAgICAgICAgICAgICAgaWYgc2hvcnQ6CisgICAgICAg
ICAgICAgICAgICAgIHByaW50ID4+IHRvX2ZpbGUsICdQLiAnLCBsaW5lX2xvZyhtbV9yZXZpc2lv
biwgd2lkdGggLSA1KQorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAg
IHByaW50ID4+IHRvX2ZpbGUsICcgICcsIGxpbmVfbG9nKG1tX3JldmlzaW9uLCB3aWR0aCAtIDUp
CiAgICAgICAgICAgICAgICAgaWdub3JlLmFkZChtbWVyZ2UpCiAgICAgICAgIGV4Y2VwdCBlcnJv
cnMuTm9TdWNoUmV2aXNpb246Ci0gICAgICAgICAgICBwcmludCA+PiB0b19maWxlLCAnICcsIG1l
cmdlCisgICAgICAgICAgICBpZiBzaG9ydDoKKyAgICAgICAgICAgICAgICBwcmludCA+PiB0b19m
aWxlLCAnUCAnLCBtZXJnZQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBwcmlu
dCA+PiB0b19maWxlLCAnICcsIG1lcmdlCiAgICAgICAgIAotZGVmIGxpc3RfcGF0aHMoaGVhZGVy
LCBwYXRocywgc3BlY2lmaWNfZmlsZXMsIHRvX2ZpbGUpOgorZGVmIGxpc3RfcGF0aHMoaGVhZGVy
LCBwYXRocywgc3BlY2lmaWNfZmlsZXMsIHRvX2ZpbGUsIHNob3J0X3N0YXR1c19sZXR0ZXI9Jycp
OgogICAgIGRvbmVfaGVhZGVyID0gRmFsc2UKICAgICBmb3IgcGF0aCBpbiBwYXRoczoKICAgICAg
ICAgaWYgc3BlY2lmaWNfZmlsZXMgYW5kIG5vdCBpc19pbnNpZGVfYW55KHNwZWNpZmljX2ZpbGVz
LCBwYXRoKToKICAgICAgICAgICAgIGNvbnRpbnVlCi0gICAgICAgIGlmIG5vdCBkb25lX2hlYWRl
cjoKKyAgICAgICAgaWYgbm90IHNob3J0X3N0YXR1c19sZXR0ZXIgYW5kIG5vdCBkb25lX2hlYWRl
cjoKICAgICAgICAgICAgIHByaW50ID4+dG9fZmlsZSwgJyVzOicgJSBoZWFkZXIKICAgICAgICAg
ICAgIGRvbmVfaGVhZGVyID0gVHJ1ZQotICAgICAgICBwcmludCA+PnRvX2ZpbGUsICcgJywgcGF0
aAorICAgICAgICBwcmludCA+PnRvX2ZpbGUsICclcyAgJXMnICUgKHNob3J0X3N0YXR1c19sZXR0
ZXIsIHBhdGgpCgo=

=== modified file bzrlib/tests/blackbox/test_status.py // last-changed:keir at cs.
... utoronto.ca-20061123185625-ndto53ylcb8zo1y6 // encoding:base64
LS0tIGJ6cmxpYi90ZXN0cy9ibGFja2JveC90ZXN0X3N0YXR1cy5weQorKysgYnpybGliL3Rlc3Rz
L2JsYWNrYm94L3Rlc3Rfc3RhdHVzLnB5CkBAIC00MSwyMCArNDEsMjAgQEAKIGNsYXNzIEJyYW5j
aFN0YXR1cyhUZXN0Q2FzZVdpdGhUcmFuc3BvcnQpOgogICAgIAogICAgIGRlZiBhc3NlcnRTdGF0
dXMoc2VsZiwgb3V0cHV0X2xpbmVzLCB3b3JraW5nX3RyZWUsCi0gICAgICAgIHJldmlzaW9uPU5v
bmUpOgorICAgICAgICByZXZpc2lvbj1Ob25lLCBzaG9ydD1GYWxzZSk6CiAgICAgICAgICIiIlJ1
biBzdGF0dXMgaW4gd29ya2luZ190cmVlIGFuZCBsb29rIGZvciBvdXRwdXQuCiAgICAgICAgIAog
ICAgICAgICA6cGFyYW0gb3V0cHV0X2xpbmVzOiBUaGUgbGluZXMgdG8gbG9vayBmb3IuCiAgICAg
ICAgIDpwYXJhbSB3b3JraW5nX3RyZWU6IFRoZSB0cmVlIHRvIHJ1biBzdGF0dXMgaW4uCiAgICAg
ICAgICIiIgotICAgICAgICBvdXRwdXRfc3RyaW5nID0gc2VsZi5zdGF0dXNfc3RyaW5nKHdvcmtp
bmdfdHJlZSwgcmV2aXNpb24pCisgICAgICAgIG91dHB1dF9zdHJpbmcgPSBzZWxmLnN0YXR1c19z
dHJpbmcod29ya2luZ190cmVlLCByZXZpc2lvbiwgc2hvcnQpCiAgICAgICAgIHNlbGYuYXNzZXJ0
RXF1YWwob3V0cHV0X2xpbmVzLCBvdXRwdXRfc3RyaW5nLnNwbGl0bGluZXMoVHJ1ZSkpCiAgICAg
Ci0gICAgZGVmIHN0YXR1c19zdHJpbmcoc2VsZiwgd3QsIHJldmlzaW9uPU5vbmUpOgorICAgIGRl
ZiBzdGF0dXNfc3RyaW5nKHNlbGYsIHd0LCByZXZpc2lvbj1Ob25lLCBzaG9ydD1GYWxzZSk6CiAg
ICAgICAgICMgdXNlIGEgcmVhbCBmaWxlIHJhdGhlciB0aGFuIFN0cmluZ0lPIGJlY2F1c2UgaXQg
ZG9lc24ndCBoYW5kbGUKICAgICAgICAgIyBVbmljb2RlIHZlcnkgd2VsbC4KICAgICAgICAgdG9m
ID0gY29kZWNzLmdldHdyaXRlcigndXRmLTgnKShUZW1wb3JhcnlGaWxlKCkpCi0gICAgICAgIHNo
b3dfdHJlZV9zdGF0dXMod3QsIHRvX2ZpbGU9dG9mLCByZXZpc2lvbj1yZXZpc2lvbikKKyAgICAg
ICAgc2hvd190cmVlX3N0YXR1cyh3dCwgdG9fZmlsZT10b2YsIHJldmlzaW9uPXJldmlzaW9uLCBz
aG9ydD1zaG9ydCkKICAgICAgICAgdG9mLnNlZWsoMCkKICAgICAgICAgcmV0dXJuIHRvZi5yZWFk
KCkuZGVjb2RlKCd1dGYtOCcpCiAKQEAgLTc1LDYgKzc1LDExIEBACiAgICAgICAgICAgICAgICAg
JyAgaGVsbG8uY1xuJywKICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICB3dCkKKyAgICAgICAg
c2VsZi5hc3NlcnRTdGF0dXMoWworICAgICAgICAgICAgICAgICc/ICBieWUuY1xuJywKKyAgICAg
ICAgICAgICAgICAnPyAgaGVsbG8uY1xuJywKKyAgICAgICAgICAgIF0sCisgICAgICAgICAgICB3
dCwgc2hvcnQ9VHJ1ZSkKIAogICAgICAgICAjIGFkZCBhIGNvbW1pdCB0byBhbGxvdyBzaG93aW5n
IHBlbmRpbmcgbWVyZ2VzLgogICAgICAgICB3dC5jb21taXQoJ2NyZWF0ZSBhIHBhcmVudCB0byBh
bGxvdyB0ZXN0aW5nIG1lcmdlIG91dHB1dCcpCkBAIC04OCw2ICs5MywxMiBAQAogICAgICAgICAg
ICAgICAgICcgIHBlbmRpbmdAcGVuZGluZy0wLTBcbicsCiAgICAgICAgICAgICBdLAogICAgICAg
ICAgICAgd3QpCisgICAgICAgIHNlbGYuYXNzZXJ0U3RhdHVzKFsKKyAgICAgICAgICAgICAgICAn
PyAgYnllLmNcbicsCisgICAgICAgICAgICAgICAgJz8gIGhlbGxvLmNcbicsCisgICAgICAgICAg
ICAgICAgJ1AgIHBlbmRpbmdAcGVuZGluZy0wLTBcbicsCisgICAgICAgICAgICBdLAorICAgICAg
ICAgICAgd3QsIHNob3J0PVRydWUpCiAKICAgICBkZWYgdGVzdF9icmFuY2hfc3RhdHVzX3Jldmlz
aW9ucyhzZWxmKToKICAgICAgICAgIiIiVGVzdHMgYnJhbmNoIHN0YXR1cyB3aXRoIHJldmlzaW9u
cyIiIgpAQCAtMTU0LDE2ICsxNjUsMjIgQEAKICAgICAgICAgd3QuYWRkKCd0ZXN0LmMnKQogICAg
ICAgICB3dC5jb21taXQoJ3Rlc3RpbmcnKQogICAgICAgICAKKyAgICAgICAgc2VsZi5hc3NlcnRT
dGF0dXMoWworICAgICAgICAgICAgICAgICd1bmtub3duOlxuJywKKyAgICAgICAgICAgICAgICAn
ICBieWUuY1xuJywKKyAgICAgICAgICAgICAgICAnICBkaXIyXG4nLAorICAgICAgICAgICAgICAg
ICcgIGRpcmVjdG9yeS9oZWxsby5jXG4nCisgICAgICAgICAgICAgICAgXSwKKyAgICAgICAgICAg
ICAgICB3dCkKKworICAgICAgICBzZWxmLmFzc2VydFN0YXR1cyhbCisgICAgICAgICAgICAgICAg
Jz8gIGJ5ZS5jXG4nLAorICAgICAgICAgICAgICAgICc/ICBkaXIyXG4nLAorICAgICAgICAgICAg
ICAgICc/ICBkaXJlY3RvcnkvaGVsbG8uY1xuJworICAgICAgICAgICAgICAgIF0sCisgICAgICAg
ICAgICAgICAgd3QsIHNob3J0PVRydWUpCisKICAgICAgICAgdG9mID0gU3RyaW5nSU8oKQotICAg
ICAgICBzaG93X3RyZWVfc3RhdHVzKHd0LCB0b19maWxlPXRvZikKLSAgICAgICAgdG9mLnNlZWso
MCkKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbHModG9mLnJlYWRsaW5lcygpLAotICAgICAgICAg
ICAgICAgICAgICAgICAgICBbJ3Vua25vd246XG4nLAotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgJyAgYnllLmNcbicsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAnICBkaXIyXG4nLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgZGlyZWN0b3J5L2hlbGxvLmNcbicKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgIF0pCi0KICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoZXJy
b3JzLlBhdGhzRG9Ob3RFeGlzdCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgc2hvd190cmVl
X3N0YXR1cywKICAgICAgICAgICAgICAgICAgICAgICAgICAgd3QsIHNwZWNpZmljX2ZpbGVzPVsn
YnllLmMnLCd0ZXN0LmMnLCdhYnNlbnQuYyddLCAKQEAgLTE3NywxMiArMTk0LDIyIEBACiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAnICBkaXJlY3RvcnkvaGVsbG8uY1xuJwogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgXSkKICAgICAgICAgdG9mID0gU3RyaW5nSU8oKQorICAgICAgICBz
aG93X3RyZWVfc3RhdHVzKHd0LCBzcGVjaWZpY19maWxlcz1bJ2RpcmVjdG9yeSddLCB0b19maWxl
PXRvZiwKKyAgICAgICAgICAgICAgICAgICAgICAgICBzaG9ydD1UcnVlKQorICAgICAgICB0b2Yu
c2VlaygwKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFscyh0b2YucmVhZGxpbmVzKCksIFsnPyAg
ZGlyZWN0b3J5L2hlbGxvLmNcbiddKQorCisgICAgICAgIHRvZiA9IFN0cmluZ0lPKCkKICAgICAg
ICAgc2hvd190cmVlX3N0YXR1cyh3dCwgc3BlY2lmaWNfZmlsZXM9WydkaXIyJ10sIHRvX2ZpbGU9
dG9mKQogICAgICAgICB0b2Yuc2VlaygwKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFscyh0b2Yu
cmVhZGxpbmVzKCksCiAgICAgICAgICAgICAgICAgICAgICAgICAgIFsndW5rbm93bjpcbicsCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAnICBkaXIyXG4nCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBdKQorICAgICAgICB0b2YgPSBTdHJpbmdJTygpCisgICAgICAgIHNob3dfdHJlZV9z
dGF0dXMod3QsIHNwZWNpZmljX2ZpbGVzPVsnZGlyMiddLCB0b19maWxlPXRvZiwgc2hvcnQ9VHJ1
ZSkKKyAgICAgICAgdG9mLnNlZWsoMCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbHModG9mLnJl
YWRsaW5lcygpLCBbJz8gIGRpcjJcbiddKQogCiAgICAgZGVmIHRlc3Rfc3RhdHVzX25vbmV4aXN0
ZW50X2ZpbGUoc2VsZik6CiAgICAgICAgICMgZmlsZXMgdGhhdCBkb24ndCBleGlzdCBpbiBlaXRo
ZXIgdGhlIGJhc2lzIHRyZWUgb3Igd29ya2luZyB0cmVlCkBAIC0yMjYsMjIgKzI1MywzNiBAQAog
CiAgICAgZGVmIHRlc3Rfc3RhdHVzKHNlbGYpOgogICAgICAgICBzZWxmLnJ1bl9ienIoImluaXQi
KQorCiAgICAgICAgIHNlbGYuYnVpbGRfdHJlZShbJ2hlbGxvLnR4dCddKQogICAgICAgICByZXN1
bHQgPSBzZWxmLnJ1bl9ienIoInN0YXR1cyIpWzBdCiAgICAgICAgIHNlbGYuYXNzZXJ0XygidW5r
bm93bjpcbiAgaGVsbG8udHh0XG4iIGluIHJlc3VsdCwgcmVzdWx0KQorICAgICAgICByZXN1bHQg
PSBzZWxmLnJ1bl9ienIoInN0YXR1cyIsIi0tc2hvcnQiKVswXQorICAgICAgICBzZWxmLmFzc2Vy
dF8oIj8gIGhlbGxvLnR4dFxuIiBpbiByZXN1bHQsIHJlc3VsdCkKKwogICAgICAgICBzZWxmLnJ1
bl9ienIoImFkZCIsICJoZWxsby50eHQiKQogICAgICAgICByZXN1bHQgPSBzZWxmLnJ1bl9ienIo
InN0YXR1cyIpWzBdCiAgICAgICAgIHNlbGYuYXNzZXJ0XygiYWRkZWQ6XG4gIGhlbGxvLnR4dFxu
IiBpbiByZXN1bHQsIHJlc3VsdCkKKyAgICAgICAgcmVzdWx0ID0gc2VsZi5ydW5fYnpyKCJzdGF0
dXMiLCItLXNob3J0IilbMF0KKyAgICAgICAgc2VsZi5hc3NlcnRfKCJBICBoZWxsby50eHRcbiIg
aW4gcmVzdWx0LCByZXN1bHQpCisKICAgICAgICAgc2VsZi5ydW5fYnpyKCJjb21taXQiLCAiLW0i
LCAiYWRkZWQiKQogICAgICAgICByZXN1bHQgPSBzZWxmLnJ1bl9ienIoInN0YXR1cyIsICItciIs
ICIwLi4xIilbMF0KICAgICAgICAgc2VsZi5hc3NlcnRfKCJhZGRlZDpcbiAgaGVsbG8udHh0XG4i
IGluIHJlc3VsdCwgcmVzdWx0KQorICAgICAgICByZXN1bHQgPSBzZWxmLnJ1bl9ienIoInN0YXR1
cyIsICItLXNob3J0IiwgIi1yIiwgIjAuLjEiKVswXQorICAgICAgICBzZWxmLmFzc2VydF8oIkEg
IGhlbGxvLnR4dFxuIiBpbiByZXN1bHQsIHJlc3VsdCkKKwogICAgICAgICBzZWxmLmJ1aWxkX3Ry
ZWUoWyd3b3JsZC50eHQnXSkKICAgICAgICAgcmVzdWx0ID0gc2VsZi5ydW5fYnpyKCJzdGF0dXMi
LCAiLXIiLCAiMCIpWzBdCiAgICAgICAgIHNlbGYuYXNzZXJ0XygiYWRkZWQ6XG4gIGhlbGxvLnR4
dFxuIiBcCiAgICAgICAgICAgICAgICAgICAgICAidW5rbm93bjpcbiAgd29ybGQudHh0XG4iIGlu
IHJlc3VsdCwgcmVzdWx0KQotCiAgICAgICAgIHJlc3VsdDIgPSBzZWxmLnJ1bl9ienIoInN0YXR1
cyIsICItciIsICIwLi4iKVswXQogICAgICAgICBzZWxmLmFzc2VydEVxdWFscyhyZXN1bHQyLCBy
ZXN1bHQpCisgICAgICAgIHJlc3VsdCA9IHNlbGYucnVuX2J6cigic3RhdHVzIiwgIi0tc2hvcnQi
LCAiLXIiLCAiMCIpWzBdCisgICAgICAgIHNlbGYuYXNzZXJ0XygiQSAgaGVsbG8udHh0XG4iIFwK
KyAgICAgICAgICAgICAgICAgICAgICI/ICB3b3JsZC50eHRcbiIgaW4gcmVzdWx0LCByZXN1bHQp
CisgICAgICAgIHJlc3VsdDIgPSBzZWxmLnJ1bl9ienIoInN0YXR1cyIsICItLXNob3J0IiwgIi1y
IiwgIjAuLiIpWzBdCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWxzKHJlc3VsdDIsIHJlc3VsdCkK
IAogCiBjbGFzcyBUZXN0U3RhdHVzRW5jb2RpbmdzKFRlc3RDYXNlV2l0aFRyYW5zcG9ydCk6Cgo=

=== modified directory  // last-changed:keir at cs.utoronto.ca-20061201102613-1k4m
... lkve9sducabw
# revision id: keir at cs.utoronto.ca-20061201102613-1k4mlkve9sducabw
# sha1: a22699dcf2a9d18f2eca4f2a25daed1d129bce84
# inventory sha1: 8ab078e6fd1b3f06cc47e23737c615df074be499
# parent ids:
#   keir at cs.utoronto.ca-20061123185625-ndto53ylcb8zo1y6
#   pqm at pqm.ubuntu.com-20061130181753-8f59214477f99124
# properties:
#   branch-nick: bzr.shortstatus

# message:
#   Fix spacing error and add tests for status --short command flag.
# committer: Keir Mierle <keir at cs.utoronto.ca>
# date: Thu 2006-11-23 13:56:25.005000114 -0500

=== modified file NEWS // encoding:base64
LS0tIE5FV1MKKysrIE5FV1MKQEAgLTE5LDEwICsxOSwxOCBAQAogICAgICAgbG9jYXRpb24gZm9y
IGdlbmVyYWwgaW5mb3JtYXRpb24sIG91dHNpZGUgb2YgYSBzcGVjaWZpYyBjb21tYW5kLgogICAg
ICAgVGhpcyBpbmNsdWRlcyB1cGRhdGVzIGZvciBgYGJ6ciBoZWxwIHJldmlzaW9uc3BlY2BgIHRo
ZSBmaXJzdCB0b3BpYwogICAgICAgaW5jbHVkZWQuIChHb2ZmcmVkbyBCYXJvbmNlbGxpLCBKb2hu
IEFyYmFzaCBNZWluZWwsICM0MjcxNCkKLSAgICAgIAorCiAgICAgKiBXU0dJLWNvbXBhdGlibGUg
SFRUUCBzbWFydCBzZXJ2ZXIuICBTZWUgYGBkb2MvaHR0cF9zbWFydF9zZXJ2ZXIudHh0YGAuCiAg
ICAgICAoQW5kcmV3IEJlbm5ldHRzKQogCisgICAgKiBBZGRlZCBgYGJ6ciBzdGF0dXMgLS1zaG9y
dGBgIHRvIG1ha2Ugc3RhdHVzIHJlcG9ydCBzdm4gc3R5bGUgZmxhZ3MKKyAgICAgIGZvciBlYWNo
IGZpbGU7IGZvciBleGFtcGxlIAorICAgICAgICQgYnpyIHN0YXR1cyAtLXNob3J0CisgICAgICAg
QSBmb28KKyAgICAgICBBIGJhcgorICAgICAgIEQgYmF6CisgICAgICAgPyB3b29sZXkKKyAgICAg
IAogICBJTlRFUk5BTFM6CiAKICAgICAqIE5ldyAtRCBvcHRpb24gZ2l2ZW4gYmVmb3JlIHRoZSBj
b21tYW5kIGxpbmUgdHVybnMgb24gZGVidWdnaW5nIG91dHB1dAoK

=== modified file bzrlib/delta.py // encoding:base64
LS0tIGJ6cmxpYi9kZWx0YS5weQorKysgYnpybGliL2RlbHRhLnB5CkBAIC0xMDUsOSArMTA1LDkg
QEAKICAgICAgICAgICAgICAgICAgICAgcGF0aCArPSAnKicKIAogICAgICAgICAgICAgICAgIGlm
IHNob3dfaWRzOgotICAgICAgICAgICAgICAgICAgICBwcmludCA+PnRvX2ZpbGUsICcgICUtMzBz
ICVzJyAlIChwYXRoLCBmaWQpCisgICAgICAgICAgICAgICAgICAgIHByaW50ID4+dG9fZmlsZSwg
JyVzICAlLTMwcyAlcycgJSAoc2hvcnRfc3RhdHVzX2xldHRlciwgcGF0aCwgZmlkKQogICAgICAg
ICAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICAgICAgICAgIHByaW50ID4+dG9fZmlsZSwgJyVz
ICVzJyAlIChzaG9ydF9zdGF0dXNfbGV0dGVyLCBwYXRoKQorICAgICAgICAgICAgICAgICAgICBw
cmludCA+PnRvX2ZpbGUsICclcyAgJXMnICUgKHNob3J0X3N0YXR1c19sZXR0ZXIsIHBhdGgpCiAg
ICAgICAgICAgICAKICAgICAgICAgaWYgc2VsZi5yZW1vdmVkOgogICAgICAgICAgICAgaWYgbm90
IHNob3J0X3N0YXR1czoKCg==

=== modified file bzrlib/status.py // encoding:base64
LS0tIGJ6cmxpYi9zdGF0dXMucHkKKysrIGJ6cmxpYi9zdGF0dXMucHkKQEAgLTE1NywxMSArMTU3
LDExIEBACiAgICAgICAgICAgICBlbHNlOgogICAgICAgICAgICAgICAgIHByaW50ID4+IHRvX2Zp
bGUsICJDICAlcyIgJSBjb25mbGljdAogICAgICAgICBpZiBuZXdfaXNfd29ya2luZ190cmVlIGFu
ZCBzaG93X3BlbmRpbmc6Ci0gICAgICAgICAgICBzaG93X3BlbmRpbmdfbWVyZ2VzKG5ldywgdG9f
ZmlsZSkKKyAgICAgICAgICAgIHNob3dfcGVuZGluZ19tZXJnZXMobmV3LCB0b19maWxlLCBzaG9y
dCkKICAgICBmaW5hbGx5OgogICAgICAgICB3dC51bmxvY2soKQogCi1kZWYgc2hvd19wZW5kaW5n
X21lcmdlcyhuZXcsIHRvX2ZpbGUpOgorZGVmIHNob3dfcGVuZGluZ19tZXJnZXMobmV3LCB0b19m
aWxlLCBzaG9ydD1GYWxzZSk6CiAgICAgIiIiV3JpdGUgb3V0IGEgZGlzcGxheSBvZiBwZW5kaW5n
IG1lcmdlcyBpbiBhIHdvcmtpbmcgdHJlZS4iIiIKICAgICBwYXJlbnRzID0gbmV3LmdldF9wYXJl
bnRfaWRzKCkKICAgICBpZiBsZW4ocGFyZW50cykgPCAyOgpAQCAtMTY5LDcgKzE2OSw4IEBACiAg
ICAgcGVuZGluZyA9IHBhcmVudHNbMTpdCiAgICAgYnJhbmNoID0gbmV3LmJyYW5jaAogICAgIGxh
c3RfcmV2aXNpb24gPSBwYXJlbnRzWzBdCi0gICAgcHJpbnQgPj50b19maWxlLCAncGVuZGluZyBt
ZXJnZXM6JworICAgIGlmIG5vdCBzaG9ydDoKKyAgICAgICAgcHJpbnQgPj50b19maWxlLCAncGVu
ZGluZyBtZXJnZXM6JwogICAgIGlmIGxhc3RfcmV2aXNpb24gaXMgbm90IE5vbmU6CiAgICAgICAg
IHRyeToKICAgICAgICAgICAgIGlnbm9yZSA9IHNldChicmFuY2gucmVwb3NpdG9yeS5nZXRfYW5j
ZXN0cnkobGFzdF9yZXZpc2lvbikpCkBAIC0xODcsNyArMTg4LDEwIEBACiAgICAgICAgICAgICBm
cm9tIGJ6cmxpYi5vc3V0aWxzIGltcG9ydCB0ZXJtaW5hbF93aWR0aAogICAgICAgICAgICAgd2lk
dGggPSB0ZXJtaW5hbF93aWR0aCgpCiAgICAgICAgICAgICBtX3JldmlzaW9uID0gYnJhbmNoLnJl
cG9zaXRvcnkuZ2V0X3JldmlzaW9uKG1lcmdlKQotICAgICAgICAgICAgcHJpbnQgPj4gdG9fZmls
ZSwgJyAnLCBsaW5lX2xvZyhtX3JldmlzaW9uLCB3aWR0aCAtIDMpCisgICAgICAgICAgICBpZiBz
aG9ydDoKKyAgICAgICAgICAgICAgICBwcmludCA+PiB0b19maWxlLCAnUCAnLCBsaW5lX2xvZyht
X3JldmlzaW9uLCB3aWR0aCAtIDMpCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAg
IHByaW50ID4+IHRvX2ZpbGUsICcgJywgbGluZV9sb2cobV9yZXZpc2lvbiwgd2lkdGggLSAzKQog
ICAgICAgICAgICAgaW5uZXJfbWVyZ2VzID0gYnJhbmNoLnJlcG9zaXRvcnkuZ2V0X2FuY2VzdHJ5
KG1lcmdlKQogICAgICAgICAgICAgYXNzZXJ0IGlubmVyX21lcmdlc1swXSBpcyBOb25lCiAgICAg
ICAgICAgICBpbm5lcl9tZXJnZXMucG9wKDApCkBAIC0xOTYsMTAgKzIwMCwxNiBAQAogICAgICAg
ICAgICAgICAgIGlmIG1tZXJnZSBpbiBpZ25vcmU6CiAgICAgICAgICAgICAgICAgICAgIGNvbnRp
bnVlCiAgICAgICAgICAgICAgICAgbW1fcmV2aXNpb24gPSBicmFuY2gucmVwb3NpdG9yeS5nZXRf
cmV2aXNpb24obW1lcmdlKQotICAgICAgICAgICAgICAgIHByaW50ID4+IHRvX2ZpbGUsICcgICAn
LCBsaW5lX2xvZyhtbV9yZXZpc2lvbiwgd2lkdGggLSA1KQorICAgICAgICAgICAgICAgIGlmIHNo
b3J0OgorICAgICAgICAgICAgICAgICAgICBwcmludCA+PiB0b19maWxlLCAnUC4gJywgbGluZV9s
b2cobW1fcmV2aXNpb24sIHdpZHRoIC0gNSkKKyAgICAgICAgICAgICAgICBlbHNlOgorICAgICAg
ICAgICAgICAgICAgICBwcmludCA+PiB0b19maWxlLCAnICAnLCBsaW5lX2xvZyhtbV9yZXZpc2lv
biwgd2lkdGggLSA1KQogICAgICAgICAgICAgICAgIGlnbm9yZS5hZGQobW1lcmdlKQogICAgICAg
ICBleGNlcHQgZXJyb3JzLk5vU3VjaFJldmlzaW9uOgotICAgICAgICAgICAgcHJpbnQgPj4gdG9f
ZmlsZSwgJyAnLCBtZXJnZQorICAgICAgICAgICAgaWYgc2hvcnQ6CisgICAgICAgICAgICAgICAg
cHJpbnQgPj4gdG9fZmlsZSwgJ1AgJywgbWVyZ2UKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAg
ICAgICAgICAgcHJpbnQgPj4gdG9fZmlsZSwgJyAnLCBtZXJnZQogICAgICAgICAKIGRlZiBsaXN0
X3BhdGhzKGhlYWRlciwgcGF0aHMsIHNwZWNpZmljX2ZpbGVzLCB0b19maWxlLCBzaG9ydF9zdGF0
dXNfbGV0dGVyPScnKToKICAgICBkb25lX2hlYWRlciA9IEZhbHNlCkBAIC0yMDksNCArMjE5LDQg
QEAKICAgICAgICAgaWYgbm90IHNob3J0X3N0YXR1c19sZXR0ZXIgYW5kIG5vdCBkb25lX2hlYWRl
cjoKICAgICAgICAgICAgIHByaW50ID4+dG9fZmlsZSwgJyVzOicgJSBoZWFkZXIKICAgICAgICAg
ICAgIGRvbmVfaGVhZGVyID0gVHJ1ZQotICAgICAgICBwcmludCA+PnRvX2ZpbGUsICclcyAlcycg
JSAoc2hvcnRfc3RhdHVzX2xldHRlciwgcGF0aCkKKyAgICAgICAgcHJpbnQgPj50b19maWxlLCAn
JXMgICVzJyAlIChzaG9ydF9zdGF0dXNfbGV0dGVyLCBwYXRoKQoK

=== modified file bzrlib/tests/blackbox/test_status.py // encoding:base64
LS0tIGJ6cmxpYi90ZXN0cy9ibGFja2JveC90ZXN0X3N0YXR1cy5weQorKysgYnpybGliL3Rlc3Rz
L2JsYWNrYm94L3Rlc3Rfc3RhdHVzLnB5CkBAIC00MSwyMCArNDEsMjAgQEAKIGNsYXNzIEJyYW5j
aFN0YXR1cyhUZXN0Q2FzZVdpdGhUcmFuc3BvcnQpOgogICAgIAogICAgIGRlZiBhc3NlcnRTdGF0
dXMoc2VsZiwgb3V0cHV0X2xpbmVzLCB3b3JraW5nX3RyZWUsCi0gICAgICAgIHJldmlzaW9uPU5v
bmUpOgorICAgICAgICByZXZpc2lvbj1Ob25lLCBzaG9ydD1GYWxzZSk6CiAgICAgICAgICIiIlJ1
biBzdGF0dXMgaW4gd29ya2luZ190cmVlIGFuZCBsb29rIGZvciBvdXRwdXQuCiAgICAgICAgIAog
ICAgICAgICA6cGFyYW0gb3V0cHV0X2xpbmVzOiBUaGUgbGluZXMgdG8gbG9vayBmb3IuCiAgICAg
ICAgIDpwYXJhbSB3b3JraW5nX3RyZWU6IFRoZSB0cmVlIHRvIHJ1biBzdGF0dXMgaW4uCiAgICAg
ICAgICIiIgotICAgICAgICBvdXRwdXRfc3RyaW5nID0gc2VsZi5zdGF0dXNfc3RyaW5nKHdvcmtp
bmdfdHJlZSwgcmV2aXNpb24pCisgICAgICAgIG91dHB1dF9zdHJpbmcgPSBzZWxmLnN0YXR1c19z
dHJpbmcod29ya2luZ190cmVlLCByZXZpc2lvbiwgc2hvcnQpCiAgICAgICAgIHNlbGYuYXNzZXJ0
RXF1YWwob3V0cHV0X2xpbmVzLCBvdXRwdXRfc3RyaW5nLnNwbGl0bGluZXMoVHJ1ZSkpCiAgICAg
Ci0gICAgZGVmIHN0YXR1c19zdHJpbmcoc2VsZiwgd3QsIHJldmlzaW9uPU5vbmUpOgorICAgIGRl
ZiBzdGF0dXNfc3RyaW5nKHNlbGYsIHd0LCByZXZpc2lvbj1Ob25lLCBzaG9ydD1GYWxzZSk6CiAg
ICAgICAgICMgdXNlIGEgcmVhbCBmaWxlIHJhdGhlciB0aGFuIFN0cmluZ0lPIGJlY2F1c2UgaXQg
ZG9lc24ndCBoYW5kbGUKICAgICAgICAgIyBVbmljb2RlIHZlcnkgd2VsbC4KICAgICAgICAgdG9m
ID0gY29kZWNzLmdldHdyaXRlcigndXRmLTgnKShUZW1wb3JhcnlGaWxlKCkpCi0gICAgICAgIHNo
b3dfdHJlZV9zdGF0dXMod3QsIHRvX2ZpbGU9dG9mLCByZXZpc2lvbj1yZXZpc2lvbikKKyAgICAg
ICAgc2hvd190cmVlX3N0YXR1cyh3dCwgdG9fZmlsZT10b2YsIHJldmlzaW9uPXJldmlzaW9uLCBz
aG9ydD1zaG9ydCkKICAgICAgICAgdG9mLnNlZWsoMCkKICAgICAgICAgcmV0dXJuIHRvZi5yZWFk
KCkuZGVjb2RlKCd1dGYtOCcpCiAKQEAgLTc1LDYgKzc1LDExIEBACiAgICAgICAgICAgICAgICAg
JyAgaGVsbG8uY1xuJywKICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICB3dCkKKyAgICAgICAg
c2VsZi5hc3NlcnRTdGF0dXMoWworICAgICAgICAgICAgICAgICc/ICBieWUuY1xuJywKKyAgICAg
ICAgICAgICAgICAnPyAgaGVsbG8uY1xuJywKKyAgICAgICAgICAgIF0sCisgICAgICAgICAgICB3
dCwgc2hvcnQ9VHJ1ZSkKIAogICAgICAgICAjIGFkZCBhIGNvbW1pdCB0byBhbGxvdyBzaG93aW5n
IHBlbmRpbmcgbWVyZ2VzLgogICAgICAgICB3dC5jb21taXQoJ2NyZWF0ZSBhIHBhcmVudCB0byBh
bGxvdyB0ZXN0aW5nIG1lcmdlIG91dHB1dCcpCkBAIC04OCw2ICs5MywxMiBAQAogICAgICAgICAg
ICAgICAgICcgIHBlbmRpbmdAcGVuZGluZy0wLTBcbicsCiAgICAgICAgICAgICBdLAogICAgICAg
ICAgICAgd3QpCisgICAgICAgIHNlbGYuYXNzZXJ0U3RhdHVzKFsKKyAgICAgICAgICAgICAgICAn
PyAgYnllLmNcbicsCisgICAgICAgICAgICAgICAgJz8gIGhlbGxvLmNcbicsCisgICAgICAgICAg
ICAgICAgJ1AgIHBlbmRpbmdAcGVuZGluZy0wLTBcbicsCisgICAgICAgICAgICBdLAorICAgICAg
ICAgICAgd3QsIHNob3J0PVRydWUpCiAKICAgICBkZWYgdGVzdF9icmFuY2hfc3RhdHVzX3Jldmlz
aW9ucyhzZWxmKToKICAgICAgICAgIiIiVGVzdHMgYnJhbmNoIHN0YXR1cyB3aXRoIHJldmlzaW9u
cyIiIgpAQCAtMTU0LDE2ICsxNjUsMjIgQEAKICAgICAgICAgd3QuYWRkKCd0ZXN0LmMnKQogICAg
ICAgICB3dC5jb21taXQoJ3Rlc3RpbmcnKQogICAgICAgICAKKyAgICAgICAgc2VsZi5hc3NlcnRT
dGF0dXMoWworICAgICAgICAgICAgICAgICd1bmtub3duOlxuJywKKyAgICAgICAgICAgICAgICAn
ICBieWUuY1xuJywKKyAgICAgICAgICAgICAgICAnICBkaXIyXG4nLAorICAgICAgICAgICAgICAg
ICcgIGRpcmVjdG9yeS9oZWxsby5jXG4nCisgICAgICAgICAgICAgICAgXSwKKyAgICAgICAgICAg
ICAgICB3dCkKKworICAgICAgICBzZWxmLmFzc2VydFN0YXR1cyhbCisgICAgICAgICAgICAgICAg
Jz8gIGJ5ZS5jXG4nLAorICAgICAgICAgICAgICAgICc/ICBkaXIyXG4nLAorICAgICAgICAgICAg
ICAgICc/ICBkaXJlY3RvcnkvaGVsbG8uY1xuJworICAgICAgICAgICAgICAgIF0sCisgICAgICAg
ICAgICAgICAgd3QsIHNob3J0PVRydWUpCisKICAgICAgICAgdG9mID0gU3RyaW5nSU8oKQotICAg
ICAgICBzaG93X3RyZWVfc3RhdHVzKHd0LCB0b19maWxlPXRvZikKLSAgICAgICAgdG9mLnNlZWso
MCkKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbHModG9mLnJlYWRsaW5lcygpLAotICAgICAgICAg
ICAgICAgICAgICAgICAgICBbJ3Vua25vd246XG4nLAotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgJyAgYnllLmNcbicsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAnICBkaXIyXG4nLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgZGlyZWN0b3J5L2hlbGxvLmNcbicKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgIF0pCi0KICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoZXJy
b3JzLlBhdGhzRG9Ob3RFeGlzdCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgc2hvd190cmVl
X3N0YXR1cywKICAgICAgICAgICAgICAgICAgICAgICAgICAgd3QsIHNwZWNpZmljX2ZpbGVzPVsn
YnllLmMnLCd0ZXN0LmMnLCdhYnNlbnQuYyddLCAKQEAgLTE3NywxMiArMTk0LDIyIEBACiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAnICBkaXJlY3RvcnkvaGVsbG8uY1xuJwogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgXSkKICAgICAgICAgdG9mID0gU3RyaW5nSU8oKQorICAgICAgICBz
aG93X3RyZWVfc3RhdHVzKHd0LCBzcGVjaWZpY19maWxlcz1bJ2RpcmVjdG9yeSddLCB0b19maWxl
PXRvZiwKKyAgICAgICAgICAgICAgICAgICAgICAgICBzaG9ydD1UcnVlKQorICAgICAgICB0b2Yu
c2VlaygwKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFscyh0b2YucmVhZGxpbmVzKCksIFsnPyAg
ZGlyZWN0b3J5L2hlbGxvLmNcbiddKQorCisgICAgICAgIHRvZiA9IFN0cmluZ0lPKCkKICAgICAg
ICAgc2hvd190cmVlX3N0YXR1cyh3dCwgc3BlY2lmaWNfZmlsZXM9WydkaXIyJ10sIHRvX2ZpbGU9
dG9mKQogICAgICAgICB0b2Yuc2VlaygwKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFscyh0b2Yu
cmVhZGxpbmVzKCksCiAgICAgICAgICAgICAgICAgICAgICAgICAgIFsndW5rbm93bjpcbicsCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAnICBkaXIyXG4nCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBdKQorICAgICAgICB0b2YgPSBTdHJpbmdJTygpCisgICAgICAgIHNob3dfdHJlZV9z
dGF0dXMod3QsIHNwZWNpZmljX2ZpbGVzPVsnZGlyMiddLCB0b19maWxlPXRvZiwgc2hvcnQ9VHJ1
ZSkKKyAgICAgICAgdG9mLnNlZWsoMCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbHModG9mLnJl
YWRsaW5lcygpLCBbJz8gIGRpcjJcbiddKQogCiAgICAgZGVmIHRlc3Rfc3RhdHVzX25vbmV4aXN0
ZW50X2ZpbGUoc2VsZik6CiAgICAgICAgICMgZmlsZXMgdGhhdCBkb24ndCBleGlzdCBpbiBlaXRo
ZXIgdGhlIGJhc2lzIHRyZWUgb3Igd29ya2luZyB0cmVlCkBAIC0yMjYsMjIgKzI1MywzNiBAQAog
CiAgICAgZGVmIHRlc3Rfc3RhdHVzKHNlbGYpOgogICAgICAgICBzZWxmLnJ1bl9ienIoImluaXQi
KQorCiAgICAgICAgIHNlbGYuYnVpbGRfdHJlZShbJ2hlbGxvLnR4dCddKQogICAgICAgICByZXN1
bHQgPSBzZWxmLnJ1bl9ienIoInN0YXR1cyIpWzBdCiAgICAgICAgIHNlbGYuYXNzZXJ0XygidW5r
bm93bjpcbiAgaGVsbG8udHh0XG4iIGluIHJlc3VsdCwgcmVzdWx0KQorICAgICAgICByZXN1bHQg
PSBzZWxmLnJ1bl9ienIoInN0YXR1cyIsIi0tc2hvcnQiKVswXQorICAgICAgICBzZWxmLmFzc2Vy
dF8oIj8gIGhlbGxvLnR4dFxuIiBpbiByZXN1bHQsIHJlc3VsdCkKKwogICAgICAgICBzZWxmLnJ1
bl9ienIoImFkZCIsICJoZWxsby50eHQiKQogICAgICAgICByZXN1bHQgPSBzZWxmLnJ1bl9ienIo
InN0YXR1cyIpWzBdCiAgICAgICAgIHNlbGYuYXNzZXJ0XygiYWRkZWQ6XG4gIGhlbGxvLnR4dFxu
IiBpbiByZXN1bHQsIHJlc3VsdCkKKyAgICAgICAgcmVzdWx0ID0gc2VsZi5ydW5fYnpyKCJzdGF0
dXMiLCItLXNob3J0IilbMF0KKyAgICAgICAgc2VsZi5hc3NlcnRfKCJBICBoZWxsby50eHRcbiIg
aW4gcmVzdWx0LCByZXN1bHQpCisKICAgICAgICAgc2VsZi5ydW5fYnpyKCJjb21taXQiLCAiLW0i
LCAiYWRkZWQiKQogICAgICAgICByZXN1bHQgPSBzZWxmLnJ1bl9ienIoInN0YXR1cyIsICItciIs
ICIwLi4xIilbMF0KICAgICAgICAgc2VsZi5hc3NlcnRfKCJhZGRlZDpcbiAgaGVsbG8udHh0XG4i
IGluIHJlc3VsdCwgcmVzdWx0KQorICAgICAgICByZXN1bHQgPSBzZWxmLnJ1bl9ienIoInN0YXR1
cyIsICItLXNob3J0IiwgIi1yIiwgIjAuLjEiKVswXQorICAgICAgICBzZWxmLmFzc2VydF8oIkEg
IGhlbGxvLnR4dFxuIiBpbiByZXN1bHQsIHJlc3VsdCkKKwogICAgICAgICBzZWxmLmJ1aWxkX3Ry
ZWUoWyd3b3JsZC50eHQnXSkKICAgICAgICAgcmVzdWx0ID0gc2VsZi5ydW5fYnpyKCJzdGF0dXMi
LCAiLXIiLCAiMCIpWzBdCiAgICAgICAgIHNlbGYuYXNzZXJ0XygiYWRkZWQ6XG4gIGhlbGxvLnR4
dFxuIiBcCiAgICAgICAgICAgICAgICAgICAgICAidW5rbm93bjpcbiAgd29ybGQudHh0XG4iIGlu
IHJlc3VsdCwgcmVzdWx0KQotCiAgICAgICAgIHJlc3VsdDIgPSBzZWxmLnJ1bl9ienIoInN0YXR1
cyIsICItciIsICIwLi4iKVswXQogICAgICAgICBzZWxmLmFzc2VydEVxdWFscyhyZXN1bHQyLCBy
ZXN1bHQpCisgICAgICAgIHJlc3VsdCA9IHNlbGYucnVuX2J6cigic3RhdHVzIiwgIi0tc2hvcnQi
LCAiLXIiLCAiMCIpWzBdCisgICAgICAgIHNlbGYuYXNzZXJ0XygiQSAgaGVsbG8udHh0XG4iIFwK
KyAgICAgICAgICAgICAgICAgICAgICI/ICB3b3JsZC50eHRcbiIgaW4gcmVzdWx0LCByZXN1bHQp
CisgICAgICAgIHJlc3VsdDIgPSBzZWxmLnJ1bl9ienIoInN0YXR1cyIsICItLXNob3J0IiwgIi1y
IiwgIjAuLiIpWzBdCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWxzKHJlc3VsdDIsIHJlc3VsdCkK
IAogCiBjbGFzcyBUZXN0U3RhdHVzRW5jb2RpbmdzKFRlc3RDYXNlV2l0aFRyYW5zcG9ydCk6Cgo=

=== modified directory  // last-changed:keir at cs.utoronto.ca-20061123185625-ndto
... 53ylcb8zo1y6
# revision id: keir at cs.utoronto.ca-20061123185625-ndto53ylcb8zo1y6
# sha1: 3d76579077cead9657b8790dab201a78e30805f8
# inventory sha1: e7b22fd304feef5ca5f8f74f94c0fd3b82cffe52
# parent ids:
#   keir at cs.utoronto.ca-20061122083620-jsqvusdnnxfmmvd3
# properties:
#   branch-nick: bzr.shortstatus

# message:
#   Add a --short flag to status to get svn-style status
# committer: Keir Mierle <keir at cs.utoronto.ca>
# date: Wed 2006-11-22 03:36:20.407000065 -0500

=== modified file bzrlib/builtins.py // encoding:base64
LS0tIGJ6cmxpYi9idWlsdGlucy5weQorKysgYnpybGliL2J1aWx0aW5zLnB5CkBAIC0xMjgsMjYg
KzEyOCwyOSBAQAogICAgIFRoaXMgcmVwb3J0cyBvbiB2ZXJzaW9uZWQgYW5kIHVua25vd24gZmls
ZXMsIHJlcG9ydGluZyB0aGVtCiAgICAgZ3JvdXBlZCBieSBzdGF0ZS4gIFBvc3NpYmxlIHN0YXRl
cyBhcmU6CiAKLSAgICBhZGRlZAorICAgIGFkZGVkIC8gQQogICAgICAgICBWZXJzaW9uZWQgaW4g
dGhlIHdvcmtpbmcgY29weSBidXQgbm90IGluIHRoZSBwcmV2aW91cyByZXZpc2lvbi4KIAotICAg
IHJlbW92ZWQKKyAgICByZW1vdmVkIC8gRAogICAgICAgICBWZXJzaW9uZWQgaW4gdGhlIHByZXZp
b3VzIHJldmlzaW9uIGJ1dCByZW1vdmVkIG9yIGRlbGV0ZWQKICAgICAgICAgaW4gdGhlIHdvcmtp
bmcgY29weS4KIAotICAgIHJlbmFtZWQKKyAgICByZW5hbWVkIC8gUgogICAgICAgICBQYXRoIG9m
IHRoaXMgZmlsZSBjaGFuZ2VkIGZyb20gdGhlIHByZXZpb3VzIHJldmlzaW9uOwogICAgICAgICB0
aGUgdGV4dCBtYXkgYWxzbyBoYXZlIGNoYW5nZWQuICBUaGlzIGluY2x1ZGVzIGZpbGVzIHdob3Nl
CiAgICAgICAgIHBhcmVudCBkaXJlY3Rvcnkgd2FzIHJlbmFtZWQuCiAKLSAgICBtb2RpZmllZAor
ICAgIG1vZGlmaWVkIC8gTQogICAgICAgICBUZXh0IGhhcyBjaGFuZ2VkIHNpbmNlIHRoZSBwcmV2
aW91cyByZXZpc2lvbi4KIAotICAgIHVua25vd24KKyAgICB1bmtub3duIC8gPwogICAgICAgICBO
b3QgdmVyc2lvbmVkIGFuZCBub3QgbWF0Y2hpbmcgYW4gaWdub3JlIHBhdHRlcm4uCiAKICAgICBU
byBzZWUgaWdub3JlZCBmaWxlcyB1c2UgJ2J6ciBpZ25vcmVkJy4gIEZvciBkZXRhaWxzIGluIHRo
ZQogICAgIGNoYW5nZXMgdG8gZmlsZSB0ZXh0cywgdXNlICdienIgZGlmZicuCisgICAgCisgICAg
LS1zaG9ydCBnaXZlcyBhIG9uZSBjaGFyYWN0ZXIgc3RhdHVzIGZsYWcgZm9yIGVhY2ggaXRlbSwg
c2ltaWxhcgorICAgIHRvIHRoZSBTVk4ncyBzdGF0dXMgY29tbWFuZC4KIAogICAgIElmIG5vIGFy
Z3VtZW50cyBhcmUgc3BlY2lmaWVkLCB0aGUgc3RhdHVzIG9mIHRoZSBlbnRpcmUgd29ya2luZwog
ICAgIGRpcmVjdG9yeSBpcyBzaG93bi4gIE90aGVyd2lzZSwgb25seSB0aGUgc3RhdHVzIG9mIHRo
ZSBzcGVjaWZpZWQKQEAgLTE2MSwyMCArMTY0LDIxIEBACiAgICAgIyBUT0RPOiAtLW5vLXJlY3Vy
c2UsIC0tcmVjdXJzZSBvcHRpb25zCiAgICAgCiAgICAgdGFrZXNfYXJncyA9IFsnZmlsZSonXQot
ICAgIHRha2VzX29wdGlvbnMgPSBbJ3Nob3ctaWRzJywgJ3JldmlzaW9uJ10KKyAgICB0YWtlc19v
cHRpb25zID0gWydzaG93LWlkcycsICdyZXZpc2lvbicsICdzaG9ydCddCiAgICAgYWxpYXNlcyA9
IFsnc3QnLCAnc3RhdCddCiAKICAgICBlbmNvZGluZ190eXBlID0gJ3JlcGxhY2UnCiAgICAgCiAg
ICAgQGRpc3BsYXlfY29tbWFuZAotICAgIGRlZiBydW4oc2VsZiwgc2hvd19pZHM9RmFsc2UsIGZp
bGVfbGlzdD1Ob25lLCByZXZpc2lvbj1Ob25lKToKKyAgICBkZWYgcnVuKHNlbGYsIHNob3dfaWRz
PUZhbHNlLCBmaWxlX2xpc3Q9Tm9uZSwgcmV2aXNpb249Tm9uZSwgc2hvcnQ9RmFsc2UpOgogICAg
ICAgICBmcm9tIGJ6cmxpYi5zdGF0dXMgaW1wb3J0IHNob3dfdHJlZV9zdGF0dXMKIAogICAgICAg
ICB0cmVlLCBmaWxlX2xpc3QgPSB0cmVlX2ZpbGVzKGZpbGVfbGlzdCkKICAgICAgICAgICAgIAog
ICAgICAgICBzaG93X3RyZWVfc3RhdHVzKHRyZWUsIHNob3dfaWRzPXNob3dfaWRzLAogICAgICAg
ICAgICAgICAgICAgICAgICAgIHNwZWNpZmljX2ZpbGVzPWZpbGVfbGlzdCwgcmV2aXNpb249cmV2
aXNpb24sCi0gICAgICAgICAgICAgICAgICAgICAgICAgdG9fZmlsZT1zZWxmLm91dGYpCisgICAg
ICAgICAgICAgICAgICAgICAgICAgdG9fZmlsZT1zZWxmLm91dGYsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgc2hvcnQ9c2hvcnQpCiAKIAogY2xhc3MgY21kX2NhdF9yZXZpc2lvbihDb21tYW5k
KToKCg==

=== modified file bzrlib/delta.py // encoding:base64
LS0tIGJ6cmxpYi9kZWx0YS5weQorKysgYnpybGliL2RlbHRhLnB5CkBAIC05MCw5ICs5MCw5IEBA
CiAgICAgICAgIHJldHVybiBGYWxzZQogICAgICAgICAgICAgCiAKLSAgICBkZWYgc2hvdyhzZWxm
LCB0b19maWxlLCBzaG93X2lkcz1GYWxzZSwgc2hvd191bmNoYW5nZWQ9RmFsc2UpOgorICAgIGRl
ZiBzaG93KHNlbGYsIHRvX2ZpbGUsIHNob3dfaWRzPUZhbHNlLCBzaG93X3VuY2hhbmdlZD1GYWxz
ZSwgc2hvcnRfc3RhdHVzPUZhbHNlKToKICAgICAgICAgIiIib3V0cHV0IHRoaXMgZGVsdGEgaW4g
c3RhdHVzLWxpa2UgZm9ybSB0byB0b19maWxlLiIiIgotICAgICAgICBkZWYgc2hvd19saXN0KGZp
bGVzKToKKyAgICAgICAgZGVmIHNob3dfbGlzdChmaWxlcywgc2hvcnRfc3RhdHVzX2xldHRlcj0n
Jyk6CiAgICAgICAgICAgICBmb3IgaXRlbSBpbiBmaWxlczoKICAgICAgICAgICAgICAgICBwYXRo
LCBmaWQsIGtpbmQgPSBpdGVtWzozXQogCkBAIC0xMDcsMjAgKzEwNywyOSBAQAogICAgICAgICAg
ICAgICAgIGlmIHNob3dfaWRzOgogICAgICAgICAgICAgICAgICAgICBwcmludCA+PnRvX2ZpbGUs
ICcgICUtMzBzICVzJyAlIChwYXRoLCBmaWQpCiAgICAgICAgICAgICAgICAgZWxzZToKLSAgICAg
ICAgICAgICAgICAgICAgcHJpbnQgPj50b19maWxlLCAnICcsIHBhdGgKKyAgICAgICAgICAgICAg
ICAgICAgcHJpbnQgPj50b19maWxlLCAnJXMgJXMnICUgKHNob3J0X3N0YXR1c19sZXR0ZXIsIHBh
dGgpCiAgICAgICAgICAgICAKICAgICAgICAgaWYgc2VsZi5yZW1vdmVkOgotICAgICAgICAgICAg
cHJpbnQgPj50b19maWxlLCAncmVtb3ZlZDonCi0gICAgICAgICAgICBzaG93X2xpc3Qoc2VsZi5y
ZW1vdmVkKQorICAgICAgICAgICAgaWYgbm90IHNob3J0X3N0YXR1czoKKyAgICAgICAgICAgICAg
ICBwcmludCA+PnRvX2ZpbGUsICdyZW1vdmVkOicKKyAgICAgICAgICAgICAgICBzaG93X2xpc3Qo
c2VsZi5yZW1vdmVkKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBzaG93X2xp
c3Qoc2VsZi5yZW1vdmVkLCAnRCcpCiAgICAgICAgICAgICAgICAgCiAgICAgICAgIGlmIHNlbGYu
YWRkZWQ6Ci0gICAgICAgICAgICBwcmludCA+PnRvX2ZpbGUsICdhZGRlZDonCi0gICAgICAgICAg
ICBzaG93X2xpc3Qoc2VsZi5hZGRlZCkKKyAgICAgICAgICAgIGlmIG5vdCBzaG9ydF9zdGF0dXM6
CisgICAgICAgICAgICAgICAgcHJpbnQgPj50b19maWxlLCAnYWRkZWQ6JworICAgICAgICAgICAg
ICAgIHNob3dfbGlzdChzZWxmLmFkZGVkKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAg
ICAgICBzaG93X2xpc3Qoc2VsZi5hZGRlZCwgJ0EnKQogCiAgICAgICAgIGV4dHJhX21vZGlmaWVk
ID0gW10KIAogICAgICAgICBpZiBzZWxmLnJlbmFtZWQ6Ci0gICAgICAgICAgICBwcmludCA+PnRv
X2ZpbGUsICdyZW5hbWVkOicKKyAgICAgICAgICAgIHNob3J0X3N0YXR1c19sZXR0ZXIgPSAnUicK
KyAgICAgICAgICAgIGlmIG5vdCBzaG9ydF9zdGF0dXM6CisgICAgICAgICAgICAgICAgcHJpbnQg
Pj50b19maWxlLCAncmVuYW1lZDonCisgICAgICAgICAgICAgICAgc2hvcnRfc3RhdHVzX2xldHRl
ciA9ICcnCiAgICAgICAgICAgICBmb3IgKG9sZHBhdGgsIG5ld3BhdGgsIGZpZCwga2luZCwKICAg
ICAgICAgICAgICAgICAgdGV4dF9tb2RpZmllZCwgbWV0YV9tb2RpZmllZCkgaW4gc2VsZi5yZW5h
bWVkOgogICAgICAgICAgICAgICAgIGlmIHRleHRfbW9kaWZpZWQgb3IgbWV0YV9tb2RpZmllZDoK
QEAgLTEyOSwxOCArMTM4LDI2IEBACiAgICAgICAgICAgICAgICAgaWYgbWV0YV9tb2RpZmllZDoK
ICAgICAgICAgICAgICAgICAgICAgbmV3cGF0aCArPSAnKicKICAgICAgICAgICAgICAgICBpZiBz
aG93X2lkczoKLSAgICAgICAgICAgICAgICAgICAgcHJpbnQgPj50b19maWxlLCAnICAlcyA9PiAl
cyAlcycgJSAob2xkcGF0aCwgbmV3cGF0aCwgZmlkKQorICAgICAgICAgICAgICAgICAgICBwcmlu
dCA+PnRvX2ZpbGUsICclcyAgJXMgPT4gJXMgJXMnICUgKHNob3J0X3N0YXR1c19sZXR0ZXIsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
b2xkcGF0aCwgbmV3cGF0aCwgZmlkKQogICAgICAgICAgICAgICAgIGVsc2U6Ci0gICAgICAgICAg
ICAgICAgICAgIHByaW50ID4+dG9fZmlsZSwgJyAgJXMgPT4gJXMnICUgKG9sZHBhdGgsIG5ld3Bh
dGgpCisgICAgICAgICAgICAgICAgICAgIHByaW50ID4+dG9fZmlsZSwgJyVzICAlcyA9PiAlcycg
JSAoc2hvcnRfc3RhdHVzX2xldHRlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBvbGRwYXRoLCBuZXdwYXRoKQogICAgICAgICAgICAgICAg
ICAgICAKICAgICAgICAgaWYgc2VsZi5tb2RpZmllZCBvciBleHRyYV9tb2RpZmllZDoKLSAgICAg
ICAgICAgIHByaW50ID4+dG9fZmlsZSwgJ21vZGlmaWVkOicKLSAgICAgICAgICAgIHNob3dfbGlz
dChzZWxmLm1vZGlmaWVkKQotICAgICAgICAgICAgc2hvd19saXN0KGV4dHJhX21vZGlmaWVkKQor
ICAgICAgICAgICAgc2hvcnRfc3RhdHVzX2xldHRlciA9ICdNJworICAgICAgICAgICAgaWYgbm90
IHNob3J0X3N0YXR1czoKKyAgICAgICAgICAgICAgICBwcmludCA+PnRvX2ZpbGUsICdtb2RpZmll
ZDonCisgICAgICAgICAgICAgICAgc2hvcnRfc3RhdHVzX2xldHRlciA9ICcnCisgICAgICAgICAg
ICBzaG93X2xpc3Qoc2VsZi5tb2RpZmllZCwgc2hvcnRfc3RhdHVzX2xldHRlcikKKyAgICAgICAg
ICAgIHNob3dfbGlzdChleHRyYV9tb2RpZmllZCwgc2hvcnRfc3RhdHVzX2xldHRlcikKICAgICAg
ICAgICAgIAogICAgICAgICBpZiBzaG93X3VuY2hhbmdlZCBhbmQgc2VsZi51bmNoYW5nZWQ6Ci0g
ICAgICAgICAgICBwcmludCA+PnRvX2ZpbGUsICd1bmNoYW5nZWQ6JwotICAgICAgICAgICAgc2hv
d19saXN0KHNlbGYudW5jaGFuZ2VkKQorICAgICAgICAgICAgaWYgbm90IHNob3J0X3N0YXR1czoK
KyAgICAgICAgICAgICAgICBwcmludCA+PnRvX2ZpbGUsICd1bmNoYW5nZWQ6JworICAgICAgICAg
ICAgICAgIHNob3dfbGlzdChzZWxmLnVuY2hhbmdlZCkKKyAgICAgICAgICAgIGVsc2U6CisgICAg
ICAgICAgICAgICAgc2hvd19saXN0KHNlbGYudW5jaGFuZ2VkLCAnUycpCiAKIAogQGRlcHJlY2F0
ZWRfZnVuY3Rpb24oemVyb19uaW5lKQoK

=== modified file bzrlib/status.py // encoding:base64
LS0tIGJ6cmxpYi9zdGF0dXMucHkKKysrIGJ6cmxpYi9zdGF0dXMucHkKQEAgLTc2LDcgKzc2LDgg
QEAKICAgICAgICAgICAgICAgICAgICAgIHNob3dfaWRzPUZhbHNlLAogICAgICAgICAgICAgICAg
ICAgICAgdG9fZmlsZT1Ob25lLAogICAgICAgICAgICAgICAgICAgICAgc2hvd19wZW5kaW5nPVRy
dWUsCi0gICAgICAgICAgICAgICAgICAgICByZXZpc2lvbj1Ob25lKToKKyAgICAgICAgICAgICAg
ICAgICAgIHJldmlzaW9uPU5vbmUsCisgICAgICAgICAgICAgICAgICAgICBzaG9ydD1GYWxzZSk6
CiAgICAgIiIiRGlzcGxheSBzdW1tYXJ5IG9mIGNoYW5nZXMuCiAKICAgICBCeSBkZWZhdWx0IHRo
aXMgY29tcGFyZXMgdGhlIHdvcmtpbmcgdHJlZSB0byBhIHByZXZpb3VzIHJldmlzaW9uLiAKQEAg
LTEwMSw2ICsxMDIsNyBAQAogICAgICAgICBJZiBub3QgTm9uZSBpdCBtdXN0IGJlIGEgUmV2aXNp
b25TcGVjIGxpc3QuCiAgICAgICAgIElmIG9uZSByZXZpc2lvbiBzaG93IGNvbXBhcmVkIGl0IHdp
dGggd29ya2luZyB0cmVlLgogICAgICAgICBJZiB0d28gcmV2aXNpb25zIHNob3cgc3RhdHVzIGJl
dHdlZW4gZmlyc3QgYW5kIHNlY29uZC4KKyAgICA6cGFyYW0gc2hvcnQ6IElmIFRydWUsIGdpdmVz
IHNob3J0IFNWTi1zdHlsZSBzdGF0dXMgbGluZXMKICAgICAiIiIKICAgICBpZiBzaG93X3VuY2hh
bmdlZCBpcyBub3QgTm9uZToKICAgICAgICAgd2Fybigic2hvd19zdGF0dXNfdHJlZXMgd2l0aCBz
aG93X3VuY2hhbmdlZCBoYXMgYmVlbiBkZXByZWNhdGVkICIKQEAgLTEzNywxNiArMTM5LDIzIEBA
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcGVjaWZpY19maWxlcz1zcGVjaWZpY19m
aWxlcykKICAgICAgICAgZGVsdGEuc2hvdyh0b19maWxlLAogICAgICAgICAgICAgICAgICAgIHNo
b3dfaWRzPXNob3dfaWRzLAotICAgICAgICAgICAgICAgICAgIHNob3dfdW5jaGFuZ2VkPXNob3df
dW5jaGFuZ2VkKQotCi0gICAgICAgIGxpc3RfcGF0aHMoJ3Vua25vd24nLCBuZXcudW5rbm93bnMo
KSwgc3BlY2lmaWNfZmlsZXMsIHRvX2ZpbGUpCisgICAgICAgICAgICAgICAgICAgc2hvd191bmNo
YW5nZWQ9c2hvd191bmNoYW5nZWQsCisgICAgICAgICAgICAgICAgICAgc2hvcnRfc3RhdHVzPXNo
b3J0KQorICAgICAgICBzaG9ydF9zdGF0dXNfbGV0dGVyID0gJz8nCisgICAgICAgIGlmIG5vdCBz
aG9ydDoKKyAgICAgICAgICAgIHNob3J0X3N0YXR1c19sZXR0ZXIgPSAnJworICAgICAgICBsaXN0
X3BhdGhzKCd1bmtub3duJywgbmV3LnVua25vd25zKCksIHNwZWNpZmljX2ZpbGVzLCB0b19maWxl
LAorICAgICAgICAgICAgICAgICAgIHNob3J0X3N0YXR1c19sZXR0ZXIpCiAgICAgICAgIGNvbmZs
aWN0X3RpdGxlID0gRmFsc2UKICAgICAgICAgIyBzaG93IHRoZSBuZXcgY29uZmxpY3RzIG9ubHkg
Zm9yIG5vdy4gWFhYOiBnZXQgdGhlbSBmcm9tIHRoZSBkZWx0YS4KICAgICAgICAgZm9yIGNvbmZs
aWN0IGluIG5ldy5jb25mbGljdHMoKToKLSAgICAgICAgICAgIGlmIGNvbmZsaWN0X3RpdGxlIGlz
IEZhbHNlOgorICAgICAgICAgICAgaWYgbm90IHNob3J0IGFuZCBjb25mbGljdF90aXRsZSBpcyBG
YWxzZToKICAgICAgICAgICAgICAgICBwcmludCA+PiB0b19maWxlLCAiY29uZmxpY3RzOiIKICAg
ICAgICAgICAgICAgICBjb25mbGljdF90aXRsZSA9IFRydWUKLSAgICAgICAgICAgIHByaW50ID4+
IHRvX2ZpbGUsICIgICVzIiAlIGNvbmZsaWN0CisgICAgICAgICAgICBpZiBub3Qgc2hvcnQ6Cisg
ICAgICAgICAgICAgICAgcHJpbnQgPj4gdG9fZmlsZSwgIiAgJXMiICUgY29uZmxpY3QKKyAgICAg
ICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgcHJpbnQgPj4gdG9fZmlsZSwgIkMgICVzIiAl
IGNvbmZsaWN0CiAgICAgICAgIGlmIG5ld19pc193b3JraW5nX3RyZWUgYW5kIHNob3dfcGVuZGlu
ZzoKICAgICAgICAgICAgIHNob3dfcGVuZGluZ19tZXJnZXMobmV3LCB0b19maWxlKQogICAgIGZp
bmFsbHk6CkBAIC0xOTIsMTIgKzIwMSwxMiBAQAogICAgICAgICBleGNlcHQgZXJyb3JzLk5vU3Vj
aFJldmlzaW9uOgogICAgICAgICAgICAgcHJpbnQgPj4gdG9fZmlsZSwgJyAnLCBtZXJnZQogICAg
ICAgICAKLWRlZiBsaXN0X3BhdGhzKGhlYWRlciwgcGF0aHMsIHNwZWNpZmljX2ZpbGVzLCB0b19m
aWxlKToKK2RlZiBsaXN0X3BhdGhzKGhlYWRlciwgcGF0aHMsIHNwZWNpZmljX2ZpbGVzLCB0b19m
aWxlLCBzaG9ydF9zdGF0dXNfbGV0dGVyPScnKToKICAgICBkb25lX2hlYWRlciA9IEZhbHNlCiAg
ICAgZm9yIHBhdGggaW4gcGF0aHM6CiAgICAgICAgIGlmIHNwZWNpZmljX2ZpbGVzIGFuZCBub3Qg
aXNfaW5zaWRlX2FueShzcGVjaWZpY19maWxlcywgcGF0aCk6CiAgICAgICAgICAgICBjb250aW51
ZQotICAgICAgICBpZiBub3QgZG9uZV9oZWFkZXI6CisgICAgICAgIGlmIG5vdCBzaG9ydF9zdGF0
dXNfbGV0dGVyIGFuZCBub3QgZG9uZV9oZWFkZXI6CiAgICAgICAgICAgICBwcmludCA+PnRvX2Zp
bGUsICclczonICUgaGVhZGVyCiAgICAgICAgICAgICBkb25lX2hlYWRlciA9IFRydWUKLSAgICAg
ICAgcHJpbnQgPj50b19maWxlLCAnICcsIHBhdGgKKyAgICAgICAgcHJpbnQgPj50b19maWxlLCAn
JXMgJXMnICUgKHNob3J0X3N0YXR1c19sZXR0ZXIsIHBhdGgpCgo=

=== modified directory  // last-changed:keir at cs.utoronto.ca-20061122083620-jsqv
... usdnnxfmmvd3
# revision id: keir at cs.utoronto.ca-20061122083620-jsqvusdnnxfmmvd3
# sha1: d93f0ef207317215ab88b0ed56cec59f3c2952b7
# inventory sha1: e9ad112b70c92e3219c64903f377301381c3ff4e
# parent ids:
#   pqm at pqm.ubuntu.com-20061121123418-3d0b2fb05cbe6b43
# properties:
#   branch-nick: bzr.shortstatus



More information about the bazaar mailing list