[RFH/MERGE 3/3] Towards XML log output: An implementation of XmlLogFormatter
James Westby
jw+debian at jameswestby.net
Sat Nov 4 17:57:29 GMT 2006
Hi,
Attached is an implementation of XmlLogFormatter. It should be easy to
change the format if wanted. The current output can be seen in the
testcase.
It passes the tests that I have written but it is not complete yet, and
that is why I ask for help. Running it on bzr.dev it fails with
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position
12: ordinal not in range(128)
Apparently trying to output one of dato's commits. I thought something
like this might happen, but I was expecting it to be Erik that triggered
it.
In the test case I do use some non-ascii characters, but I must have
picked badly, as the test case passes.
I have spent a bit of time trying to unicode() some bits, and change the
encoding that I pass to elementtree's output method, but none of these
seem to make any difference.
If someone has any clues that might help me fix that I would be
grateful.
Thanks,
James
--
James Westby -- GPG Key ID: B577FE13 -- http://jameswestby.net/
seccure key - (3+)k7|M*edCX/.A:n*N!>|&7U.L#9E)Tu)T0>AM - secp256r1/nistp256
-------------- next part --------------
# Bazaar revision bundle v0.8
#
# message:
# Do the elementtree import dance
# committer: James Westby <jw+debian at jameswestby.net>
# date: Sat 2006-11-04 17:56:28.762000084 +0000
=== modified file NEWS // last-changed:jw+debian at jameswestby.net-20061104171010
... -d7f0ab96374b5d42
--- NEWS
+++ NEWS
@@ -7,6 +7,10 @@
``bzr export bzr.tar.gz http://bazaar-vcs.org/bzr/bzr.dev``
(Daniel Silverstone)
+ * Added XML output from bzr log. It includes merged revisions, but the
+ parser can ignore this if it wants by ignoring all <merged> nodes and
+ their children. (James Westby)
+
INTERNALS:
* New -D option given before the command line turns on debugging output
=== modified file bzrlib/builtins.py // last-changed:jw+debian at jameswestby.net-
... 20061104170659-4ea9765a7b2a04c4
--- bzrlib/builtins.py
+++ bzrlib/builtins.py
@@ -1347,7 +1347,7 @@
Option('message',
help='show revisions whose message matches this regexp',
type=str),
- 'short',
+ 'short', 'xml',
]
encoding_type = 'replace'
@@ -1361,7 +1361,8 @@
message=None,
long=False,
short=False,
- line=False):
+ line=False,
+ xml=False):
from bzrlib.log import log_formatter
assert message is None or isinstance(message, basestring), \
"invalid message argument %r" % message
@@ -1432,7 +1433,7 @@
if (log_format is None):
default = b.get_config().log_format()
log_format = get_log_format(long=long, short=short, line=line,
- default=default)
+ xml=xml, default=default)
lf = log_formatter(log_format,
show_ids=show_ids,
to_file=self.outf,
@@ -1447,7 +1448,8 @@
search=message)
-def get_log_format(long=False, short=False, line=False, default='long'):
+def get_log_format(long=False, short=False, line=False, xml=False,
+ default='long'):
log_format = default
if long:
log_format = 'long'
@@ -1455,6 +1457,8 @@
log_format = 'short'
if line:
log_format = 'line'
+ if xml:
+ log_format = 'xml'
return log_format
=== modified file bzrlib/log.py
--- bzrlib/log.py
+++ bzrlib/log.py
@@ -56,6 +56,7 @@
from bzrlib import symbol_versioning
import bzrlib.errors as errors
+from bzrlib.osutils import format_date
from bzrlib.symbol_versioning import (deprecated_method,
deprecated_function,
zero_eleven,
@@ -63,6 +64,22 @@
from bzrlib.trace import mutter
from bzrlib.tsort import merge_sort
+try:
+ try:
+ # it's in this package in python2.5
+ from xml.etree.cElementTree import (ElementTree, SubElement, Element)
+ import xml.etree as elementtree
+ except ImportError:
+ from cElementTree import (ElementTree, SubElement, Element)
+ import elementtree
+ ParseError = SyntaxError
+except ImportError:
+ mutter('WARNING: using slower ElementTree; consider installing cElementTree'
+ " and make sure it's on your PYTHONPATH")
+ # this copy is shipped with bzr
+ from util.elementtree.ElementTree import (ElementTree, SubElement,
+ Element)
+ import util.elementtree as elementtree
def find_touching_revisions(branch, file_id):
"""Yield a description of revisions which affect the file_id.
@@ -238,7 +255,9 @@
self.search = search
branch.lock_read()
try:
+ self._start_log()
self._show_log()
+ self._end_log()
finally:
branch.unlock()
@@ -359,6 +378,13 @@
revno += 1
return rh
+ def _start_log(self):
+ pass
+
+ def _end_log(self):
+ pass
+
+
class LongLogFormatter(LogFormatter):
def show(self, revno, rev, delta):
return self._show_helper(revno=revno, rev=rev, delta=delta)
@@ -474,6 +500,54 @@
out.append(rev.get_summary())
return self.truncate(" ".join(out).rstrip('\n'), max_chars)
+class XmlLogFormatter(LogFormatter):
+ """A LogFormatter that outputs in xml format"""
+ def _start_log(self):
+ self.doc = Element('log')
+ self.doc.tail = '\n'
+ self.doc.text = '\n'
+ self.last_merge_depth = 0
+ self.current_root = self.doc
+
+ def _end_log(self):
+ ElementTree(self.doc).write(self.to_file, 'utf-8')
+
+ def show(self, revno, rev, delta):
+ entry = self._rev_to_xml(revno, rev)
+ self.doc.append(entry)
+ self.current_root = entry
+ self.last_merge_depth = 0
+
+ def show_merge_revno(self, rev, merge_depth, revno):
+ if merge_depth > self.last_merge_depth:
+ merge_node = SubElement(self.current_root, 'merged')
+ merge_node.text = '\n'
+ merge_node.tail = '\n'
+ self.current_root = merge_node
+ entry = self._rev_to_xml(revno, rev)
+ self.current_root.append(entry)
+ self.last_merge_depth = merge_depth
+
+ def _rev_to_xml(self, revno, rev):
+ date_str = format_date(rev.timestamp,
+ rev.timezone or 0,
+ self.show_timezone)
+ logentry = Element('logentry')
+ logentry.attrib['revid'] = rev.revision_id
+ logentry.attrib['revno'] = revno
+ logentry.text = '\n'
+ logentry.tail = '\n'
+ author = SubElement(logentry, 'author')
+ author.text = rev.committer
+ author.tail = '\n'
+ date = SubElement(logentry, 'date')
+ date.text = date_str
+ date.tail = '\n'
+ msg = SubElement(logentry, 'msg')
+ msg.text = rev.message;
+ msg.tail = '\n'
+ return logentry
+
def line_log(rev, max_chars):
lf = LineLogFormatter(None)
@@ -483,6 +557,7 @@
'long': LongLogFormatter,
'short': ShortLogFormatter,
'line': LineLogFormatter,
+ 'xml': XmlLogFormatter,
}
def register_formatter(name, formatter):
=== modified file bzrlib/option.py // last-changed:jw+debian at jameswestby.net-20
... 061104170659-4ea9765a7b2a04c4
--- bzrlib/option.py
+++ bzrlib/option.py
@@ -252,6 +252,7 @@
_global_option('long', help='Use detailed log format. Same as --log-format long')
_global_option('short', help='Use moderately short log format. Same as --log-format short')
_global_option('line', help='Use log format with one line per revision. Same as --log-format line')
+_global_option('xml', help='Use log format that outputs in XML. Same as --log-format xml')
_global_option('root', type=str)
_global_option('no-backup')
_global_option('merge-type', type=_parse_merge_type,
=== modified file bzrlib/tests/blackbox/test_logformats.py // last-changed:jw+d
... ebian at jameswestby.net-20061104104136-8b2ccce8351dd287
--- bzrlib/tests/blackbox/test_logformats.py
+++ bzrlib/tests/blackbox/test_logformats.py
@@ -110,6 +110,15 @@
os.chdir('..')
+ def test_xml_log_available(self):
+ self.bzr('init')
+ open('a', 'wb').write('foo\n')
+ self.bzr('add', 'a')
+
+ self.bzr('commit', '-m', '1')
+
+ self.assertStartsWith(self.bzr('log', '--log-format', 'xml', retcode=0),
+ '<log')
def setup_config(self):
if os.path.isfile(config_filename()):
=== modified file bzrlib/tests/test_log.py // last-changed:jw+debian at jameswestb
... y.net-20061104165545-56e1370678974c2a
--- bzrlib/tests/test_log.py
+++ bzrlib/tests/test_log.py
@@ -25,7 +25,8 @@
LogFormatter,
LongLogFormatter,
ShortLogFormatter,
- LineLogFormatter)
+ LineLogFormatter,
+ XmlLogFormatter)
from bzrlib.branch import Branch
from bzrlib.errors import InvalidRevisionNumber
from bzrlib.symbol_versioning import zero_thirteen
@@ -288,6 +289,115 @@
log_contents = logfile.read()
self.assertEqualDiff(log_contents, '1: Line-Log-Formatte... 2005-11-23 add a\n')
+ def test_start_end_log(self):
+ """Test that start_log, show and end_log are ordered correctly"""
+
+ class StartEndLogFormatter(LogFormatter):
+
+ def __init__(self, to_file, show_ids=False,
+ show_timezone='original'):
+ LogFormatter.__init__(self, to_file, show_ids, show_timezone)
+ self.show_called = False
+ self.start_called = False
+ self.end_called = False
+ self.end_before_start = False
+ self.end_before_show = False
+ self.show_before_start = False
+
+ def show(self, revno, rev, delta):
+ self.end_before_show = self.end_called
+ self.show_called = True
+
+ def _end_log(self):
+ self.end_called = True
+
+ def _start_log(self):
+ self.end_before_show = self.end_called
+ self.show_before_start = self.show_called
+ self.start_called = True
+
+ wt = self.make_branch_and_tree('.')
+ b = wt.branch
+ self.build_tree(['a'])
+ wt.add('a')
+ b.nick = 'test-line-log'
+ wt.commit(message='add a')
+ logfile = file('out.tmp', 'w+')
+ formatter = StartEndLogFormatter(to_file=logfile)
+ formatter.show_log(b)
+ self.assertTrue(formatter.start_called)
+ self.assertTrue(formatter.show_called)
+ self.assertTrue(formatter.end_called)
+ self.assertFalse(formatter.end_before_start)
+ self.assertFalse(formatter.end_before_show)
+ self.assertFalse(formatter.show_before_start)
+
+ def test_xml_log(self):
+ """Test the output of the XmlLogFormatter"""
+ wt = self.make_branch_and_tree('.')
+ b = wt.branch
+ self.build_tree(['a'])
+ wt.add('a')
+ b.nick = 'test-xml-log'
+ wt.commit(message='simple log message',
+ timestamp=1132586655.459960938,
+ timezone=-6*3600,
+ committer='Xml-Log-Formatter Tester <test at xml.log>',
+ rev_id='1')
+ tree2 = wt.bzrdir.sprout('tree2').open_workingtree()
+ tree3 = wt.bzrdir.sprout('tree3').open_workingtree()
+ tree3.commit(message='tree3 commit',
+ timestamp=1132586655.459960938,
+ timezone=-6*3600,
+ committer='Xml-Log-Formatter Tester <test at xml.log>',
+ rev_id='3a')
+ tree2.merge_from_branch(tree3.branch)
+ tree2.commit(message='multiline\ncommit\nmessage',
+ timestamp=1132586842.411175966,
+ timezone=-6*3600,
+ committer='Xml-Log-Formatter Tester <test at xml.log>',
+ rev_id='2a')
+ wt.merge_from_branch(tree2.branch)
+ wt.commit(message='message with <"> characters t? ?scap? and non-ascii',
+ timestamp=1132587176.835228920,
+ timezone=-6*3600,
+ committer='Xml-Log-Formatter Tester <test at xml.log>',
+ rev_id='2b')
+ logfile = file('out.tmp', 'w+')
+ formatter = XmlLogFormatter(to_file=logfile)
+ formatter.show_log(wt.branch)
+ logfile.flush()
+ logfile.seek(0)
+ log_contents = logfile.read()
+ self.assertEqualDiff(log_contents, '''\
+<log>
+<logentry revid="2b" revno="2">
+<author>Xml-Log-Formatter Tester <test at xml.log></author>
+<date>Mon 2005-11-21 09:32:56 -0600</date>
+<msg>message with <"> characters t? ?scap? and non-ascii</msg>
+<merged>
+<logentry revid="2a" revno="1.1.1">
+<author>Xml-Log-Formatter Tester <test at xml.log></author>
+<date>Mon 2005-11-21 09:27:22 -0600</date>
+<msg>multiline
+commit
+message</msg>
+</logentry>
+<logentry revid="3a" revno="1.2.1">
+<author>Xml-Log-Formatter Tester <test at xml.log></author>
+<date>Mon 2005-11-21 09:24:15 -0600</date>
+<msg>tree3 commit</msg>
+</logentry>
+</merged>
+</logentry>
+<logentry revid="1" revno="1">
+<author>Xml-Log-Formatter Tester <test at xml.log></author>
+<date>Mon 2005-11-21 09:24:15 -0600</date>
+<msg>simple log message</msg>
+</logentry>
+</log>
+''')
+
def test_cur_revno_deprecated(self):
wt = self.make_branch_and_tree('.')
b = wt.branch
=== modified directory // last-changed:jw+debian at jameswestby.net-2006110417562
... 8-bd4cb7a398839c2a
# revision id: jw+debian at jameswestby.net-20061104175628-bd4cb7a398839c2a
# sha1: b0814b17de6ee58bf0f2a314a5bb9be00fdf79f9
# inventory sha1: f3d58e85d39c4a9ddf355032cb6c619a1d03ed7d
# parent ids:
# jw+debian at jameswestby.net-20061104172218-182c11d1e95fc0a7
# base id: jw+debian at jameswestby.net-20061104001437-c8e675ff315f35c5
# properties:
# branch-nick: bzr.dev.xmllog
# message:
# Add the --xml option to log, and add a NEWS entry.
#
# committer: James Westby <jw+debian at jameswestby.net>
# date: Sat 2006-11-04 17:22:18.585000038 +0000
=== modified directory // last-changed:jw+debian at jameswestby.net-2006110417221
... 8-182c11d1e95fc0a7
# revision id: jw+debian at jameswestby.net-20061104172218-182c11d1e95fc0a7
# sha1: 739d382c7802d9615a2d290650d2961811407988
# inventory sha1: c75782bcbdb53df320dd6062df4775e4c2820523
# parent ids:
# jw+debian at jameswestby.net-20061104165545-56e1370678974c2a
# jw+debian at jameswestby.net-20061104171010-d7f0ab96374b5d42
# properties:
# branch-nick: bzr.dev.xmllog
# message:
# Add NEWS entry
# committer: James Westby <jw+debian at jameswestby.net>
# date: Sat 2006-11-04 17:10:10.167000055 +0000
=== modified file NEWS // encoding:base64
LS0tIE5FV1MKKysrIE5FV1MKQEAgLTcsNiArNywxMCBAQAogICAgICAgYGBienIgZXhwb3J0IGJ6
ci50YXIuZ3ogaHR0cDovL2JhemFhci12Y3Mub3JnL2J6ci9ienIuZGV2YGAKICAgICAgIChEYW5p
ZWwgU2lsdmVyc3RvbmUpCiAKKyAgICAqIEFkZGVkIFhNTCBvdXRwdXQgZnJvbSBienIgbG9nLiBJ
dCBpbmNsdWRlcyBtZXJnZWQgcmV2aXNpb25zLCBidXQgdGhlCisgICAgICBwYXJzZXIgY2FuIGln
bm9yZSB0aGlzIGlmIGl0IHdhbnRzIGJ5IGlnbm9yaW5nIGFsbCA8bWVyZ2VkPiBub2RlcyBhbmQK
KyAgICAgIHRoZWlyIGNoaWxkcmVuLiAoSmFtZXMgV2VzdGJ5KQorCiAgIElOVEVSTkFMUzoKIAog
ICAgICogTmV3IC1EIG9wdGlvbiBnaXZlbiBiZWZvcmUgdGhlIGNvbW1hbmQgbGluZSB0dXJucyBv
biBkZWJ1Z2dpbmcgb3V0cHV0Cgo=
=== modified directory // last-changed:jw+debian at jameswestby.net-2006110417101
... 0-d7f0ab96374b5d42
# revision id: jw+debian at jameswestby.net-20061104171010-d7f0ab96374b5d42
# sha1: 13cef58f8d71baab4c5bce0e55531be943a12193
# inventory sha1: c06f129bcabdac7549b87cb688b801e08ee873f6
# parent ids:
# jw+debian at jameswestby.net-20061104170659-4ea9765a7b2a04c4
# properties:
# branch-nick: bzr.dev.hookupxml
# message:
# Add the --xml switch to bzr log
# committer: James Westby <jw+debian at jameswestby.net>
# date: Sat 2006-11-04 17:06:59.780999899 +0000
=== modified file bzrlib/builtins.py // encoding:base64
LS0tIGJ6cmxpYi9idWlsdGlucy5weQorKysgYnpybGliL2J1aWx0aW5zLnB5CkBAIC0xMzQ3LDcg
KzEzNDcsNyBAQAogICAgICAgICAgICAgICAgICAgICAgT3B0aW9uKCdtZXNzYWdlJywKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBoZWxwPSdzaG93IHJldmlzaW9ucyB3aG9zZSBtZXNzYWdl
IG1hdGNoZXMgdGhpcyByZWdleHAnLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9
c3RyKSwKLSAgICAgICAgICAgICAgICAgICAgICdzaG9ydCcsCisgICAgICAgICAgICAgICAgICAg
ICAnc2hvcnQnLCAneG1sJywKICAgICAgICAgICAgICAgICAgICAgIF0KICAgICBlbmNvZGluZ190
eXBlID0gJ3JlcGxhY2UnCiAKQEAgLTEzNjEsNyArMTM2MSw4IEBACiAgICAgICAgICAgICBtZXNz
YWdlPU5vbmUsCiAgICAgICAgICAgICBsb25nPUZhbHNlLAogICAgICAgICAgICAgc2hvcnQ9RmFs
c2UsCi0gICAgICAgICAgICBsaW5lPUZhbHNlKToKKyAgICAgICAgICAgIGxpbmU9RmFsc2UsCisg
ICAgICAgICAgICB4bWw9RmFsc2UpOgogICAgICAgICBmcm9tIGJ6cmxpYi5sb2cgaW1wb3J0IGxv
Z19mb3JtYXR0ZXIKICAgICAgICAgYXNzZXJ0IG1lc3NhZ2UgaXMgTm9uZSBvciBpc2luc3RhbmNl
KG1lc3NhZ2UsIGJhc2VzdHJpbmcpLCBcCiAgICAgICAgICAgICAiaW52YWxpZCBtZXNzYWdlIGFy
Z3VtZW50ICVyIiAlIG1lc3NhZ2UKQEAgLTE0MzIsNyArMTQzMyw3IEBACiAgICAgICAgIGlmIChs
b2dfZm9ybWF0IGlzIE5vbmUpOgogICAgICAgICAgICAgZGVmYXVsdCA9IGIuZ2V0X2NvbmZpZygp
LmxvZ19mb3JtYXQoKQogICAgICAgICAgICAgbG9nX2Zvcm1hdCA9IGdldF9sb2dfZm9ybWF0KGxv
bmc9bG9uZywgc2hvcnQ9c2hvcnQsIGxpbmU9bGluZSwgCi0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgZGVmYXVsdD1kZWZhdWx0KQorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHhtbD14bWwsIGRlZmF1bHQ9ZGVmYXVsdCkKICAgICAgICAgbGYg
PSBsb2dfZm9ybWF0dGVyKGxvZ19mb3JtYXQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBz
aG93X2lkcz1zaG93X2lkcywKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvX2ZpbGU9c2Vs
Zi5vdXRmLApAQCAtMTQ0Nyw3ICsxNDQ4LDggQEAKICAgICAgICAgICAgICAgICAgICAgc2VhcmNo
PW1lc3NhZ2UpCiAKIAotZGVmIGdldF9sb2dfZm9ybWF0KGxvbmc9RmFsc2UsIHNob3J0PUZhbHNl
LCBsaW5lPUZhbHNlLCBkZWZhdWx0PSdsb25nJyk6CitkZWYgZ2V0X2xvZ19mb3JtYXQobG9uZz1G
YWxzZSwgc2hvcnQ9RmFsc2UsIGxpbmU9RmFsc2UsIHhtbD1GYWxzZSwKKyAgICAgICAgICAgICAg
ICAgICBkZWZhdWx0PSdsb25nJyk6CiAgICAgbG9nX2Zvcm1hdCA9IGRlZmF1bHQKICAgICBpZiBs
b25nOgogICAgICAgICBsb2dfZm9ybWF0ID0gJ2xvbmcnCkBAIC0xNDU1LDYgKzE0NTcsOCBAQAog
ICAgICAgICBsb2dfZm9ybWF0ID0gJ3Nob3J0JwogICAgIGlmIGxpbmU6CiAgICAgICAgIGxvZ19m
b3JtYXQgPSAnbGluZScKKyAgICBpZiB4bWw6CisgICAgICAgIGxvZ19mb3JtYXQgPSAneG1sJwog
ICAgIHJldHVybiBsb2dfZm9ybWF0CiAKIAoK
=== modified file bzrlib/option.py // encoding:base64
LS0tIGJ6cmxpYi9vcHRpb24ucHkKKysrIGJ6cmxpYi9vcHRpb24ucHkKQEAgLTI1Miw2ICsyNTIs
NyBAQAogX2dsb2JhbF9vcHRpb24oJ2xvbmcnLCBoZWxwPSdVc2UgZGV0YWlsZWQgbG9nIGZvcm1h
dC4gU2FtZSBhcyAtLWxvZy1mb3JtYXQgbG9uZycpCiBfZ2xvYmFsX29wdGlvbignc2hvcnQnLCBo
ZWxwPSdVc2UgbW9kZXJhdGVseSBzaG9ydCBsb2cgZm9ybWF0LiBTYW1lIGFzIC0tbG9nLWZvcm1h
dCBzaG9ydCcpCiBfZ2xvYmFsX29wdGlvbignbGluZScsIGhlbHA9J1VzZSBsb2cgZm9ybWF0IHdp
dGggb25lIGxpbmUgcGVyIHJldmlzaW9uLiBTYW1lIGFzIC0tbG9nLWZvcm1hdCBsaW5lJykKK19n
bG9iYWxfb3B0aW9uKCd4bWwnLCBoZWxwPSdVc2UgbG9nIGZvcm1hdCB0aGF0IG91dHB1dHMgaW4g
WE1MLiBTYW1lIGFzIC0tbG9nLWZvcm1hdCB4bWwnKQogX2dsb2JhbF9vcHRpb24oJ3Jvb3QnLCB0
eXBlPXN0cikKIF9nbG9iYWxfb3B0aW9uKCduby1iYWNrdXAnKQogX2dsb2JhbF9vcHRpb24oJ21l
cmdlLXR5cGUnLCB0eXBlPV9wYXJzZV9tZXJnZV90eXBlLCAKCg==
=== modified directory // last-changed:jw+debian at jameswestby.net-2006110417065
... 9-4ea9765a7b2a04c4
# revision id: jw+debian at jameswestby.net-20061104170659-4ea9765a7b2a04c4
# sha1: 4585ec14ca2dd12bbdaa798d130e1cf3b6e1f059
# inventory sha1: b127b05a7f5cec0d7889021a67c5e75785ef17be
# parent ids:
# jw+debian at jameswestby.net-20061104165545-56e1370678974c2a
# properties:
# branch-nick: bzr.dev.hookupxml
# message:
# Add an extra merge to the test to make it more thorough.
#
# committer: James Westby <jw+debian at jameswestby.net>
# date: Sat 2006-11-04 16:55:45.424000025 +0000
=== modified file bzrlib/tests/test_log.py // encoding:base64
LS0tIGJ6cmxpYi90ZXN0cy90ZXN0X2xvZy5weQorKysgYnpybGliL3Rlc3RzL3Rlc3RfbG9nLnB5
CkBAIC0zNDUsNiArMzQ1LDEzIEBACiAgICAgICAgICAgICAgICAgICBjb21taXR0ZXI9J1htbC1M
b2ctRm9ybWF0dGVyIFRlc3RlciA8dGVzdEB4bWwubG9nPicsCiAgICAgICAgICAgICAgICAgICBy
ZXZfaWQ9JzEnKQogICAgICAgICB0cmVlMiA9IHd0LmJ6cmRpci5zcHJvdXQoJ3RyZWUyJykub3Bl
bl93b3JraW5ndHJlZSgpCisgICAgICAgIHRyZWUzID0gd3QuYnpyZGlyLnNwcm91dCgndHJlZTMn
KS5vcGVuX3dvcmtpbmd0cmVlKCkKKyAgICAgICAgdHJlZTMuY29tbWl0KG1lc3NhZ2U9J3RyZWUz
IGNvbW1pdCcsCisgICAgICAgICAgICAgICAgICB0aW1lc3RhbXA9MTEzMjU4NjY1NS40NTk5NjA5
MzgsCisgICAgICAgICAgICAgICAgICB0aW1lem9uZT0tNiozNjAwLAorICAgICAgICAgICAgICAg
ICAgY29tbWl0dGVyPSdYbWwtTG9nLUZvcm1hdHRlciBUZXN0ZXIgPHRlc3RAeG1sLmxvZz4nLAor
ICAgICAgICAgICAgICAgICAgcmV2X2lkPSczYScpCisgICAgICAgIHRyZWUyLm1lcmdlX2Zyb21f
YnJhbmNoKHRyZWUzLmJyYW5jaCkKICAgICAgICAgdHJlZTIuY29tbWl0KG1lc3NhZ2U9J211bHRp
bGluZVxuY29tbWl0XG5tZXNzYWdlJywKICAgICAgICAgICAgICAgICAgICAgIHRpbWVzdGFtcD0x
MTMyNTg2ODQyLjQxMTE3NTk2NiwKICAgICAgICAgICAgICAgICAgICAgIHRpbWV6b25lPS02KjM2
MDAsCkBAIC0zNzYsNiArMzgzLDExIEBACiBjb21taXQKIG1lc3NhZ2U8L21zZz4KIDwvbG9nZW50
cnk+Cis8bG9nZW50cnkgcmV2aWQ9IjNhIiByZXZubz0iMS4yLjEiPgorPGF1dGhvcj5YbWwtTG9n
LUZvcm1hdHRlciBUZXN0ZXIgJmx0O3Rlc3RAeG1sLmxvZyZndDs8L2F1dGhvcj4KKzxkYXRlPk1v
biAyMDA1LTExLTIxIDA5OjI0OjE1IC0wNjAwPC9kYXRlPgorPG1zZz50cmVlMyBjb21taXQ8L21z
Zz4KKzwvbG9nZW50cnk+CiA8L21lcmdlZD4KIDwvbG9nZW50cnk+CiA8bG9nZW50cnkgcmV2aWQ9
IjEiIHJldm5vPSIxIj4KCg==
=== modified directory // last-changed:jw+debian at jameswestby.net-2006110416554
... 5-56e1370678974c2a
# revision id: jw+debian at jameswestby.net-20061104165545-56e1370678974c2a
# sha1: acef6d054fd2782ae854ac6a1dad12d951f8632d
# inventory sha1: d6e1820cd233c0503cdbdd2ef443098ad47c8c0e
# parent ids:
# jw+debian at jameswestby.net-20061104162620-1e88e6ced373ee28
# properties:
# branch-nick: bzr.dev.xmllog
# message:
# Include merged revs as children of the merging revision. Works for the simple
# case.
#
# committer: James Westby <jw+debian at jameswestby.net>
# date: Sat 2006-11-04 16:26:20.122999907 +0000
=== modified file bzrlib/log.py // encoding:base64
LS0tIGJ6cmxpYi9sb2cucHkKKysrIGJ6cmxpYi9sb2cucHkKQEAgLTQ5NSwyNCArNDk1LDMyIEBA
CiAgICAgICAgIHNlbGYuZG9jLnRhaWwgPSAnXG4nCiAgICAgICAgIHNlbGYuZG9jLnRleHQgPSAn
XG4nCiAgICAgICAgIHNlbGYubGFzdF9tZXJnZV9kZXB0aCA9IDAKKyAgICAgICAgc2VsZi5jdXJy
ZW50X3Jvb3QgPSBzZWxmLmRvYwogCiAgICAgZGVmIF9lbmRfbG9nKHNlbGYpOgogICAgICAgICBF
bGVtZW50VHJlZShzZWxmLmRvYykud3JpdGUoc2VsZi50b19maWxlLCAndXRmLTgnKQogCiAgICAg
ZGVmIHNob3coc2VsZiwgcmV2bm8sIHJldiwgZGVsdGEpOgotICAgICAgICBzZWxmLl9zaG93X2hl
bHBlcihyZXZubywgcmV2KQorICAgICAgICBlbnRyeSA9IHNlbGYuX3Jldl90b194bWwocmV2bm8s
IHJldikKKyAgICAgICAgc2VsZi5kb2MuYXBwZW5kKGVudHJ5KQorICAgICAgICBzZWxmLmN1cnJl
bnRfcm9vdCA9IGVudHJ5CiAgICAgICAgIHNlbGYubGFzdF9tZXJnZV9kZXB0aCA9IDAKIAogICAg
IGRlZiBzaG93X21lcmdlX3Jldm5vKHNlbGYsIHJldiwgbWVyZ2VfZGVwdGgsIHJldm5vKToKLSAg
ICAgICAgc2VsZi5fc2hvd19oZWxwZXIocmV2bm8sIHJldikKKyAgICAgICAgaWYgbWVyZ2VfZGVw
dGggPiBzZWxmLmxhc3RfbWVyZ2VfZGVwdGg6CisgICAgICAgICAgICBtZXJnZV9ub2RlID0gU3Vi
RWxlbWVudChzZWxmLmN1cnJlbnRfcm9vdCwgJ21lcmdlZCcpCisgICAgICAgICAgICBtZXJnZV9u
b2RlLnRleHQgPSAnXG4nCisgICAgICAgICAgICBtZXJnZV9ub2RlLnRhaWwgPSAnXG4nCisgICAg
ICAgICAgICBzZWxmLmN1cnJlbnRfcm9vdCA9IG1lcmdlX25vZGUKKyAgICAgICAgZW50cnkgPSBz
ZWxmLl9yZXZfdG9feG1sKHJldm5vLCByZXYpCisgICAgICAgIHNlbGYuY3VycmVudF9yb290LmFw
cGVuZChlbnRyeSkKICAgICAgICAgc2VsZi5sYXN0X21lcmdlX2RlcHRoID0gbWVyZ2VfZGVwdGgK
ICAgICAgICAgCi0gICAgZGVmIF9zaG93X2hlbHBlcihzZWxmLCByZXZubywgcmV2KToKLSAgICAg
ICAgZG9jID0gc2VsZi5kb2MKKyAgICBkZWYgX3Jldl90b194bWwoc2VsZiwgcmV2bm8sIHJldik6
CiAgICAgICAgIGRhdGVfc3RyID0gZm9ybWF0X2RhdGUocmV2LnRpbWVzdGFtcCwKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICByZXYudGltZXpvbmUgb3IgMCwKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBzZWxmLnNob3dfdGltZXpvbmUpCi0gICAgICAgIGxvZ2VudHJ5ID0g
U3ViRWxlbWVudChkb2MsICdsb2dlbnRyeScpCisgICAgICAgIGxvZ2VudHJ5ID0gRWxlbWVudCgn
bG9nZW50cnknKQogICAgICAgICBsb2dlbnRyeS5hdHRyaWJbJ3JldmlkJ10gPSByZXYucmV2aXNp
b25faWQKICAgICAgICAgbG9nZW50cnkuYXR0cmliWydyZXZubyddID0gcmV2bm8KICAgICAgICAg
bG9nZW50cnkudGV4dCA9ICdcbicKQEAgLTUyNiw2ICs1MzQsNyBAQAogICAgICAgICBtc2cgPSBT
dWJFbGVtZW50KGxvZ2VudHJ5LCAnbXNnJykKICAgICAgICAgbXNnLnRleHQgPSByZXYubWVzc2Fn
ZTsKICAgICAgICAgbXNnLnRhaWwgPSAnXG4nCisgICAgICAgIHJldHVybiBsb2dlbnRyeQogICAg
ICAgICAKIAogZGVmIGxpbmVfbG9nKHJldiwgbWF4X2NoYXJzKToKCg==
=== modified file bzrlib/tests/test_log.py // encoding:base64
LS0tIGJ6cmxpYi90ZXN0cy90ZXN0X2xvZy5weQorKysgYnpybGliL3Rlc3RzL3Rlc3RfbG9nLnB5
CkBAIC0zNjgsNyArMzY4LDcgQEAKIDxhdXRob3I+WG1sLUxvZy1Gb3JtYXR0ZXIgVGVzdGVyICZs
dDt0ZXN0QHhtbC5sb2cmZ3Q7PC9hdXRob3I+CiA8ZGF0ZT5Nb24gMjAwNS0xMS0yMSAwOTozMjo1
NiAtMDYwMDwvZGF0ZT4KIDxtc2c+bWVzc2FnZSB3aXRoICZsdDsiJmd0OyBjaGFyYWN0ZXJzIHTD
tiDDqXNjYXDDqCBhbmQgbm9uLWFzY2lpPC9tc2c+Ci08L2xvZ2VudHJ5PgorPG1lcmdlZD4KIDxs
b2dlbnRyeSByZXZpZD0iMmEiIHJldm5vPSIxLjEuMSI+CiA8YXV0aG9yPlhtbC1Mb2ctRm9ybWF0
dGVyIFRlc3RlciAmbHQ7dGVzdEB4bWwubG9nJmd0OzwvYXV0aG9yPgogPGRhdGU+TW9uIDIwMDUt
MTEtMjEgMDk6Mjc6MjIgLTA2MDA8L2RhdGU+CkBAIC0zNzYsNiArMzc2LDggQEAKIGNvbW1pdAog
bWVzc2FnZTwvbXNnPgogPC9sb2dlbnRyeT4KKzwvbWVyZ2VkPgorPC9sb2dlbnRyeT4KIDxsb2dl
bnRyeSByZXZpZD0iMSIgcmV2bm89IjEiPgogPGF1dGhvcj5YbWwtTG9nLUZvcm1hdHRlciBUZXN0
ZXIgJmx0O3Rlc3RAeG1sLmxvZyZndDs8L2F1dGhvcj4KIDxkYXRlPk1vbiAyMDA1LTExLTIxIDA5
OjI0OjE1IC0wNjAwPC9kYXRlPgoK
=== modified directory // last-changed:jw+debian at jameswestby.net-2006110416262
... 0-1e88e6ced373ee28
# revision id: jw+debian at jameswestby.net-20061104162620-1e88e6ced373ee28
# sha1: 49c54e8497dede93a5d73801f832284aa7c7a58a
# inventory sha1: 9e34800106b3e33d366740d6a0f844b7c57c8049
# parent ids:
# jw+debian at jameswestby.net-20061104104136-8b2ccce8351dd287
# properties:
# branch-nick: bzr.dev.xmllog
# message:
# Hook the xml log formatter up and test that it is accessible. Add tests
# that _start/_end_log work as expected.
#
# committer: James Westby <jw+debian at jameswestby.net>
# date: Sat 2006-11-04 10:41:36.515000105 +0000
=== modified file bzrlib/log.py // encoding:base64
LS0tIGJ6cmxpYi9sb2cucHkKKysrIGJ6cmxpYi9sb2cucHkKQEAgLTM3Miw2ICszNzIsNyBAQAog
ICAgIGRlZiBfZW5kX2xvZyhzZWxmKToKICAgICAgICAgcGFzcwogCisKIGNsYXNzIExvbmdMb2dG
b3JtYXR0ZXIoTG9nRm9ybWF0dGVyKToKICAgICBkZWYgc2hvdyhzZWxmLCByZXZubywgcmV2LCBk
ZWx0YSk6CiAgICAgICAgIHJldHVybiBzZWxmLl9zaG93X2hlbHBlcihyZXZubz1yZXZubywgcmV2
PXJldiwgZGVsdGE9ZGVsdGEpCkBAIC00OTMsMTUgKzQ5NCwxOCBAQAogICAgICAgICBzZWxmLmRv
YyA9IEVsZW1lbnQoJ2xvZycpCiAgICAgICAgIHNlbGYuZG9jLnRhaWwgPSAnXG4nCiAgICAgICAg
IHNlbGYuZG9jLnRleHQgPSAnXG4nCisgICAgICAgIHNlbGYubGFzdF9tZXJnZV9kZXB0aCA9IDAK
IAogICAgIGRlZiBfZW5kX2xvZyhzZWxmKToKICAgICAgICAgRWxlbWVudFRyZWUoc2VsZi5kb2Mp
LndyaXRlKHNlbGYudG9fZmlsZSwgJ3V0Zi04JykKIAogICAgIGRlZiBzaG93KHNlbGYsIHJldm5v
LCByZXYsIGRlbHRhKToKICAgICAgICAgc2VsZi5fc2hvd19oZWxwZXIocmV2bm8sIHJldikKKyAg
ICAgICAgc2VsZi5sYXN0X21lcmdlX2RlcHRoID0gMAogCiAgICAgZGVmIHNob3dfbWVyZ2VfcmV2
bm8oc2VsZiwgcmV2LCBtZXJnZV9kZXB0aCwgcmV2bm8pOgogICAgICAgICBzZWxmLl9zaG93X2hl
bHBlcihyZXZubywgcmV2KQorICAgICAgICBzZWxmLmxhc3RfbWVyZ2VfZGVwdGggPSBtZXJnZV9k
ZXB0aAogICAgICAgICAKICAgICBkZWYgX3Nob3dfaGVscGVyKHNlbGYsIHJldm5vLCByZXYpOgog
ICAgICAgICBkb2MgPSBzZWxmLmRvYwpAQCAtNTMyLDYgKzUzNiw3IEBACiAgICAgICAgICAgICAg
ICdsb25nJzogTG9uZ0xvZ0Zvcm1hdHRlciwKICAgICAgICAgICAgICAgJ3Nob3J0JzogU2hvcnRM
b2dGb3JtYXR0ZXIsCiAgICAgICAgICAgICAgICdsaW5lJzogTGluZUxvZ0Zvcm1hdHRlciwKKyAg
ICAgICAgICAgICAgJ3htbCc6IFhtbExvZ0Zvcm1hdHRlciwKICAgICAgICAgICAgICAgfQogCiBk
ZWYgcmVnaXN0ZXJfZm9ybWF0dGVyKG5hbWUsIGZvcm1hdHRlcik6Cgo=
=== modified file bzrlib/tests/blackbox/test_logformats.py // encoding:base64
LS0tIGJ6cmxpYi90ZXN0cy9ibGFja2JveC90ZXN0X2xvZ2Zvcm1hdHMucHkKKysrIGJ6cmxpYi90
ZXN0cy9ibGFja2JveC90ZXN0X2xvZ2Zvcm1hdHMucHkKQEAgLTExMCw2ICsxMTAsMTUgQEAKICAg
ICAgICAgCiAgICAgICAgIG9zLmNoZGlyKCcuLicpCiAKKyAgICBkZWYgdGVzdF94bWxfbG9nX2F2
YWlsYWJsZShzZWxmKToKKyAgICAgICAgc2VsZi5ienIoJ2luaXQnKQorICAgICAgICBvcGVuKCdh
JywgJ3diJykud3JpdGUoJ2Zvb1xuJykKKyAgICAgICAgc2VsZi5ienIoJ2FkZCcsICdhJykKKwor
ICAgICAgICBzZWxmLmJ6cignY29tbWl0JywgJy1tJywgJzEnKQorICAgICAgICAKKyAgICAgICAg
c2VsZi5hc3NlcnRTdGFydHNXaXRoKHNlbGYuYnpyKCdsb2cnLCAnLS1sb2ctZm9ybWF0JywgJ3ht
bCcsIHJldGNvZGU9MCksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnPGxvZycpCiAK
ICAgICBkZWYgc2V0dXBfY29uZmlnKHNlbGYpOgogICAgICAgICBpZiBvcy5wYXRoLmlzZmlsZShj
b25maWdfZmlsZW5hbWUoKSk6Cgo=
=== modified file bzrlib/tests/test_log.py // encoding:base64
LS0tIGJ6cmxpYi90ZXN0cy90ZXN0X2xvZy5weQorKysgYnpybGliL3Rlc3RzL3Rlc3RfbG9nLnB5
CkBAIC0yODksNiArMjg5LDQ5IEBACiAgICAgICAgIGxvZ19jb250ZW50cyA9IGxvZ2ZpbGUucmVh
ZCgpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWxEaWZmKGxvZ19jb250ZW50cywgJzE6IExpbmUt
TG9nLUZvcm1hdHRlLi4uIDIwMDUtMTEtMjMgYWRkIGFcbicpCiAKKyAgICBkZWYgdGVzdF9zdGFy
dF9lbmRfbG9nKHNlbGYpOgorICAgICAgICAiIiJUZXN0IHRoYXQgc3RhcnRfbG9nLCBzaG93IGFu
ZCBlbmRfbG9nIGFyZSBvcmRlcmVkIGNvcnJlY3RseSIiIgorCisgICAgICAgIGNsYXNzIFN0YXJ0
RW5kTG9nRm9ybWF0dGVyKExvZ0Zvcm1hdHRlcik6CisKKyAgICAgICAgICAgIGRlZiBfX2luaXRf
XyhzZWxmLCB0b19maWxlLCBzaG93X2lkcz1GYWxzZSwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICBzaG93X3RpbWV6b25lPSdvcmlnaW5hbCcpOgorICAgICAgICAgICAgICAgIExvZ0Zvcm1hdHRl
ci5fX2luaXRfXyhzZWxmLCB0b19maWxlLCBzaG93X2lkcywgc2hvd190aW1lem9uZSkKKyAgICAg
ICAgICAgICAgICBzZWxmLnNob3dfY2FsbGVkID0gRmFsc2UKKyAgICAgICAgICAgICAgICBzZWxm
LnN0YXJ0X2NhbGxlZCA9IEZhbHNlCisgICAgICAgICAgICAgICAgc2VsZi5lbmRfY2FsbGVkID0g
RmFsc2UKKyAgICAgICAgICAgICAgICBzZWxmLmVuZF9iZWZvcmVfc3RhcnQgPSBGYWxzZQorICAg
ICAgICAgICAgICAgIHNlbGYuZW5kX2JlZm9yZV9zaG93ID0gRmFsc2UKKyAgICAgICAgICAgICAg
ICBzZWxmLnNob3dfYmVmb3JlX3N0YXJ0ID0gRmFsc2UKKworICAgICAgICAgICAgZGVmIHNob3co
c2VsZiwgcmV2bm8sIHJldiwgZGVsdGEpOgorICAgICAgICAgICAgICAgIHNlbGYuZW5kX2JlZm9y
ZV9zaG93ID0gc2VsZi5lbmRfY2FsbGVkCisgICAgICAgICAgICAgICAgc2VsZi5zaG93X2NhbGxl
ZCA9IFRydWUKKyAgICAgICAgICAgIAorICAgICAgICAgICAgZGVmIF9lbmRfbG9nKHNlbGYpOgor
ICAgICAgICAgICAgICAgIHNlbGYuZW5kX2NhbGxlZCA9IFRydWUKKworICAgICAgICAgICAgZGVm
IF9zdGFydF9sb2coc2VsZik6CisgICAgICAgICAgICAgICAgc2VsZi5lbmRfYmVmb3JlX3Nob3cg
PSBzZWxmLmVuZF9jYWxsZWQKKyAgICAgICAgICAgICAgICBzZWxmLnNob3dfYmVmb3JlX3N0YXJ0
ID0gc2VsZi5zaG93X2NhbGxlZAorICAgICAgICAgICAgICAgIHNlbGYuc3RhcnRfY2FsbGVkID0g
VHJ1ZQorCisgICAgICAgIHd0ID0gc2VsZi5tYWtlX2JyYW5jaF9hbmRfdHJlZSgnLicpCisgICAg
ICAgIGIgPSB3dC5icmFuY2gKKyAgICAgICAgc2VsZi5idWlsZF90cmVlKFsnYSddKQorICAgICAg
ICB3dC5hZGQoJ2EnKQorICAgICAgICBiLm5pY2sgPSAndGVzdC1saW5lLWxvZycKKyAgICAgICAg
d3QuY29tbWl0KG1lc3NhZ2U9J2FkZCBhJykKKyAgICAgICAgbG9nZmlsZSA9IGZpbGUoJ291dC50
bXAnLCAndysnKQorICAgICAgICBmb3JtYXR0ZXIgPSBTdGFydEVuZExvZ0Zvcm1hdHRlcih0b19m
aWxlPWxvZ2ZpbGUpCisgICAgICAgIGZvcm1hdHRlci5zaG93X2xvZyhiKQorICAgICAgICBzZWxm
LmFzc2VydFRydWUoZm9ybWF0dGVyLnN0YXJ0X2NhbGxlZCkKKyAgICAgICAgc2VsZi5hc3NlcnRU
cnVlKGZvcm1hdHRlci5zaG93X2NhbGxlZCkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGZvcm1h
dHRlci5lbmRfY2FsbGVkKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGZvcm1hdHRlci5lbmRf
YmVmb3JlX3N0YXJ0KQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGZvcm1hdHRlci5lbmRfYmVm
b3JlX3Nob3cpCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoZm9ybWF0dGVyLnNob3dfYmVmb3Jl
X3N0YXJ0KQorCiAgICAgZGVmIHRlc3RfeG1sX2xvZyhzZWxmKToKICAgICAgICAgIiIiVGVzdCB0
aGUgb3V0cHV0IG9mIHRoZSBYbWxMb2dGb3JtYXR0ZXIiIiIKICAgICAgICAgd3QgPSBzZWxmLm1h
a2VfYnJhbmNoX2FuZF90cmVlKCcuJykKCg==
=== modified directory // last-changed:jw+debian at jameswestby.net-2006110410413
... 6-8b2ccce8351dd287
# revision id: jw+debian at jameswestby.net-20061104104136-8b2ccce8351dd287
# sha1: 037e686adb07f3bfc792b61f77074502803c02f9
# inventory sha1: a7d1b5d5d23637265d5f7040f64b87523eb153ac
# parent ids:
# jw+debian at jameswestby.net-20061104010429-a2ad82b3d13b12d3
# properties:
# branch-nick: bzr.dev.xmllog
# message:
# Beef up the tests and include merged revs the same as any other
# committer: James Westby <jw+debian at jameswestby.net>
# date: Sat 2006-11-04 01:04:29.529999971 +0000
=== modified file bzrlib/log.py // encoding:base64
LS0tIGJ6cmxpYi9sb2cucHkKKysrIGJ6cmxpYi9sb2cucHkKQEAgLTQ5OCwyNCArNDk4LDMxIEBA
CiAgICAgICAgIEVsZW1lbnRUcmVlKHNlbGYuZG9jKS53cml0ZShzZWxmLnRvX2ZpbGUsICd1dGYt
OCcpCiAKICAgICBkZWYgc2hvdyhzZWxmLCByZXZubywgcmV2LCBkZWx0YSk6Ci0gICAgICBkb2Mg
PSBzZWxmLmRvYwotICAgICAgZGF0ZV9zdHIgPSBmb3JtYXRfZGF0ZShyZXYudGltZXN0YW1wLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXYudGltZXpvbmUgb3IgMCwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgc2VsZi5zaG93X3RpbWV6b25lKQotICAgICAgbG9nZW50cnkg
PSBTdWJFbGVtZW50KGRvYywgJ2xvZ2VudHJ5JykKLSAgICAgIGxvZ2VudHJ5LmF0dHJpYlsncmV2
aWQnXSA9IHJldi5yZXZpc2lvbl9pZAotICAgICAgbG9nZW50cnkuYXR0cmliWydyZXZubyddID0g
cmV2bm8KLSAgICAgIGxvZ2VudHJ5LnRleHQgPSAnXG4nCi0gICAgICBsb2dlbnRyeS50YWlsID0g
J1xuJwotICAgICAgYXV0aG9yID0gU3ViRWxlbWVudChsb2dlbnRyeSwgJ2F1dGhvcicpCi0gICAg
ICBhdXRob3IudGV4dCA9IHJldi5jb21taXR0ZXIKLSAgICAgIGF1dGhvci50YWlsID0gJ1xuJwot
ICAgICAgZGF0ZSA9IFN1YkVsZW1lbnQobG9nZW50cnksICdkYXRlJykKLSAgICAgIGRhdGUudGV4
dCA9IGRhdGVfc3RyCi0gICAgICBkYXRlLnRhaWwgPSAnXG4nCi0gICAgICBtc2cgPSBTdWJFbGVt
ZW50KGxvZ2VudHJ5LCAnbXNnJykKLSAgICAgIG1zZy50ZXh0ID0gcmV2Lm1lc3NhZ2U7Ci0gICAg
ICBtc2cudGFpbCA9ICdcbicKKyAgICAgICAgc2VsZi5fc2hvd19oZWxwZXIocmV2bm8sIHJldikK
KworICAgIGRlZiBzaG93X21lcmdlX3Jldm5vKHNlbGYsIHJldiwgbWVyZ2VfZGVwdGgsIHJldm5v
KToKKyAgICAgICAgc2VsZi5fc2hvd19oZWxwZXIocmV2bm8sIHJldikKKyAgICAgICAgCisgICAg
ZGVmIF9zaG93X2hlbHBlcihzZWxmLCByZXZubywgcmV2KToKKyAgICAgICAgZG9jID0gc2VsZi5k
b2MKKyAgICAgICAgZGF0ZV9zdHIgPSBmb3JtYXRfZGF0ZShyZXYudGltZXN0YW1wLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHJldi50aW1lem9uZSBvciAwLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHNlbGYuc2hvd190aW1lem9uZSkKKyAgICAgICAgbG9nZW50cnkg
PSBTdWJFbGVtZW50KGRvYywgJ2xvZ2VudHJ5JykKKyAgICAgICAgbG9nZW50cnkuYXR0cmliWydy
ZXZpZCddID0gcmV2LnJldmlzaW9uX2lkCisgICAgICAgIGxvZ2VudHJ5LmF0dHJpYlsncmV2bm8n
XSA9IHJldm5vCisgICAgICAgIGxvZ2VudHJ5LnRleHQgPSAnXG4nCisgICAgICAgIGxvZ2VudHJ5
LnRhaWwgPSAnXG4nCisgICAgICAgIGF1dGhvciA9IFN1YkVsZW1lbnQobG9nZW50cnksICdhdXRo
b3InKQorICAgICAgICBhdXRob3IudGV4dCA9IHJldi5jb21taXR0ZXIKKyAgICAgICAgYXV0aG9y
LnRhaWwgPSAnXG4nCisgICAgICAgIGRhdGUgPSBTdWJFbGVtZW50KGxvZ2VudHJ5LCAnZGF0ZScp
CisgICAgICAgIGRhdGUudGV4dCA9IGRhdGVfc3RyCisgICAgICAgIGRhdGUudGFpbCA9ICdcbicK
KyAgICAgICAgbXNnID0gU3ViRWxlbWVudChsb2dlbnRyeSwgJ21zZycpCisgICAgICAgIG1zZy50
ZXh0ID0gcmV2Lm1lc3NhZ2U7CisgICAgICAgIG1zZy50YWlsID0gJ1xuJworICAgICAgICAKIAog
ZGVmIGxpbmVfbG9nKHJldiwgbWF4X2NoYXJzKToKICAgICBsZiA9IExpbmVMb2dGb3JtYXR0ZXIo
Tm9uZSkKCg==
=== modified file bzrlib/tests/test_log.py // encoding:base64
LS0tIGJ6cmxpYi90ZXN0cy90ZXN0X2xvZy5weQorKysgYnpybGliL3Rlc3RzL3Rlc3RfbG9nLnB5
CkBAIC0zMDIsMTcgKzMwMiwxNyBAQAogICAgICAgICAgICAgICAgICAgY29tbWl0dGVyPSdYbWwt
TG9nLUZvcm1hdHRlciBUZXN0ZXIgPHRlc3RAeG1sLmxvZz4nLAogICAgICAgICAgICAgICAgICAg
cmV2X2lkPScxJykKICAgICAgICAgdHJlZTIgPSB3dC5ienJkaXIuc3Byb3V0KCd0cmVlMicpLm9w
ZW5fd29ya2luZ3RyZWUoKQotICAgICAgICB0cmVlMi5jb21taXQobWVzc2FnZT0nbXVsaWxpbmVc
bmNvbW1pdFxubWVzc2FnZScsCisgICAgICAgIHRyZWUyLmNvbW1pdChtZXNzYWdlPSdtdWx0aWxp
bmVcbmNvbW1pdFxubWVzc2FnZScsCiAgICAgICAgICAgICAgICAgICAgICB0aW1lc3RhbXA9MTEz
MjU4Njg0Mi40MTExNzU5NjYsCiAgICAgICAgICAgICAgICAgICAgICB0aW1lem9uZT0tNiozNjAw
LAogICAgICAgICAgICAgICAgICAgICAgY29tbWl0dGVyPSdYbWwtTG9nLUZvcm1hdHRlciBUZXN0
ZXIgPHRlc3RAeG1sLmxvZz4nLAogICAgICAgICAgICAgICAgICAgICAgcmV2X2lkPScyYScpCiAg
ICAgICAgIHd0Lm1lcmdlX2Zyb21fYnJhbmNoKHRyZWUyLmJyYW5jaCkKLSMgICAgICAgIHd0LmNv
bW1pdChtZXNzYWdlPSdtZXNzYWdlIHdpdGggPCI+IGNoYXJhY3RlcnMgdG8gZXNjYXBlJwotIyAg
ICAgICAgICAgICAgICAgIHRpbWVzdGFtcD0xMTMyNTg3MTc2LjgzNTIyODkyMCwKLSMgICAgICAg
ICAgICAgICAgICB0aW1lem9uZT0tNiozNjAwLAotIyAgICAgICAgICAgICAgICAgIGNvbW1pdHRl
cj0nWG1sLUxvZy1Gb3JtYXR0ZXIgVGVzdGVyIDx0ZXN0QHhtbC5sb2c+JywKLSMgICAgICAgICAg
ICAgICAgICByZXZfaWQ9JzJiJykKKyAgICAgICAgd3QuY29tbWl0KG1lc3NhZ2U9J21lc3NhZ2Ug
d2l0aCA8Ij4gY2hhcmFjdGVycyB0w7Ygw6lzY2Fww6ggYW5kIG5vbi1hc2NpaScsCisgICAgICAg
ICAgICAgICAgICB0aW1lc3RhbXA9MTEzMjU4NzE3Ni44MzUyMjg5MjAsCisgICAgICAgICAgICAg
ICAgICB0aW1lem9uZT0tNiozNjAwLAorICAgICAgICAgICAgICAgICAgY29tbWl0dGVyPSdYbWwt
TG9nLUZvcm1hdHRlciBUZXN0ZXIgPHRlc3RAeG1sLmxvZz4nLAorICAgICAgICAgICAgICAgICAg
cmV2X2lkPScyYicpCiAgICAgICAgIGxvZ2ZpbGUgPSBmaWxlKCdvdXQudG1wJywgJ3crJykKICAg
ICAgICAgZm9ybWF0dGVyID0gWG1sTG9nRm9ybWF0dGVyKHRvX2ZpbGU9bG9nZmlsZSkKICAgICAg
ICAgZm9ybWF0dGVyLnNob3dfbG9nKHd0LmJyYW5jaCkKQEAgLTMyMSw2ICszMjEsMTggQEAKICAg
ICAgICAgbG9nX2NvbnRlbnRzID0gbG9nZmlsZS5yZWFkKCkKICAgICAgICAgc2VsZi5hc3NlcnRF
cXVhbERpZmYobG9nX2NvbnRlbnRzLCAnJydcCiA8bG9nPgorPGxvZ2VudHJ5IHJldmlkPSIyYiIg
cmV2bm89IjIiPgorPGF1dGhvcj5YbWwtTG9nLUZvcm1hdHRlciBUZXN0ZXIgJmx0O3Rlc3RAeG1s
LmxvZyZndDs8L2F1dGhvcj4KKzxkYXRlPk1vbiAyMDA1LTExLTIxIDA5OjMyOjU2IC0wNjAwPC9k
YXRlPgorPG1zZz5tZXNzYWdlIHdpdGggJmx0OyImZ3Q7IGNoYXJhY3RlcnMgdMO2IMOpc2NhcMOo
IGFuZCBub24tYXNjaWk8L21zZz4KKzwvbG9nZW50cnk+Cis8bG9nZW50cnkgcmV2aWQ9IjJhIiBy
ZXZubz0iMS4xLjEiPgorPGF1dGhvcj5YbWwtTG9nLUZvcm1hdHRlciBUZXN0ZXIgJmx0O3Rlc3RA
eG1sLmxvZyZndDs8L2F1dGhvcj4KKzxkYXRlPk1vbiAyMDA1LTExLTIxIDA5OjI3OjIyIC0wNjAw
PC9kYXRlPgorPG1zZz5tdWx0aWxpbmUKK2NvbW1pdAorbWVzc2FnZTwvbXNnPgorPC9sb2dlbnRy
eT4KIDxsb2dlbnRyeSByZXZpZD0iMSIgcmV2bm89IjEiPgogPGF1dGhvcj5YbWwtTG9nLUZvcm1h
dHRlciBUZXN0ZXIgJmx0O3Rlc3RAeG1sLmxvZyZndDs8L2F1dGhvcj4KIDxkYXRlPk1vbiAyMDA1
LTExLTIxIDA5OjI0OjE1IC0wNjAwPC9kYXRlPgoK
=== modified directory // last-changed:jw+debian at jameswestby.net-2006110401042
... 9-a2ad82b3d13b12d3
# revision id: jw+debian at jameswestby.net-20061104010429-a2ad82b3d13b12d3
# sha1: c60351b1c9a5aa95cc78db3880c2f00917bd0258
# inventory sha1: d8c1a004aa60851d20edcbccb453ea6bd92a7b79
# parent ids:
# jw+debian at jameswestby.net-20061104004923-3a945e7712fa27e3
# properties:
# branch-nick: bzr.dev.xmllog
# message:
# Include revno in output
# committer: James Westby <jw+debian at jameswestby.net>
# date: Sat 2006-11-04 00:49:23.638000011 +0000
=== modified file bzrlib/log.py // encoding:base64
LS0tIGJ6cmxpYi9sb2cucHkKKysrIGJ6cmxpYi9sb2cucHkKQEAgLTUwNCw2ICs1MDQsNyBAQAog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLnNob3dfdGltZXpvbmUpCiAgICAgICBs
b2dlbnRyeSA9IFN1YkVsZW1lbnQoZG9jLCAnbG9nZW50cnknKQogICAgICAgbG9nZW50cnkuYXR0
cmliWydyZXZpZCddID0gcmV2LnJldmlzaW9uX2lkCisgICAgICBsb2dlbnRyeS5hdHRyaWJbJ3Jl
dm5vJ10gPSByZXZubwogICAgICAgbG9nZW50cnkudGV4dCA9ICdcbicKICAgICAgIGxvZ2VudHJ5
LnRhaWwgPSAnXG4nCiAgICAgICBhdXRob3IgPSBTdWJFbGVtZW50KGxvZ2VudHJ5LCAnYXV0aG9y
JykKCg==
=== modified file bzrlib/tests/test_log.py // encoding:base64
LS0tIGJ6cmxpYi90ZXN0cy90ZXN0X2xvZy5weQorKysgYnpybGliL3Rlc3RzL3Rlc3RfbG9nLnB5
CkBAIC0zMDEsMTMgKzMwMSwxMyBAQAogICAgICAgICAgICAgICAgICAgdGltZXpvbmU9LTYqMzYw
MCwKICAgICAgICAgICAgICAgICAgIGNvbW1pdHRlcj0nWG1sLUxvZy1Gb3JtYXR0ZXIgVGVzdGVy
IDx0ZXN0QHhtbC5sb2c+JywKICAgICAgICAgICAgICAgICAgIHJldl9pZD0nMScpCi0jICAgICAg
ICB0cmVlMiA9IHd0LmJ6cmRpci5zcHJvdXQoJ3RyZWUyJykub3Blbl93b3JraW5ndHJlZSgpCi0j
ICAgICAgICB0cmVlMi5jb21taXQobWVzc2FnZT0nbXVsaWxpbmVcbmNvbW1pdFxubWVzc2FnZScs
Ci0jICAgICAgICAgICAgICAgICAgICAgdGltZXN0YW1wPTExMzI1ODY4NDIuNDExMTc1OTY2LAot
IyAgICAgICAgICAgICAgICAgICAgIHRpbWV6b25lPS02KjM2MDAsCi0jICAgICAgICAgICAgICAg
ICAgICAgY29tbWl0dGVyPSdYbWwtTG9nLUZvcm1hdHRlciBUZXN0ZXIgPHRlc3RAeG1sLmxvZz4n
LAotIyAgICAgICAgICAgICAgICAgICAgIHJldl9pZD0nMmEnKQotIyAgICAgICAgd3QubWVyZ2Vf
ZnJvbV9icmFuY2godHJlZTIuYnJhbmNoKQorICAgICAgICB0cmVlMiA9IHd0LmJ6cmRpci5zcHJv
dXQoJ3RyZWUyJykub3Blbl93b3JraW5ndHJlZSgpCisgICAgICAgIHRyZWUyLmNvbW1pdChtZXNz
YWdlPSdtdWxpbGluZVxuY29tbWl0XG5tZXNzYWdlJywKKyAgICAgICAgICAgICAgICAgICAgIHRp
bWVzdGFtcD0xMTMyNTg2ODQyLjQxMTE3NTk2NiwKKyAgICAgICAgICAgICAgICAgICAgIHRpbWV6
b25lPS02KjM2MDAsCisgICAgICAgICAgICAgICAgICAgICBjb21taXR0ZXI9J1htbC1Mb2ctRm9y
bWF0dGVyIFRlc3RlciA8dGVzdEB4bWwubG9nPicsCisgICAgICAgICAgICAgICAgICAgICByZXZf
aWQ9JzJhJykKKyAgICAgICAgd3QubWVyZ2VfZnJvbV9icmFuY2godHJlZTIuYnJhbmNoKQogIyAg
ICAgICAgd3QuY29tbWl0KG1lc3NhZ2U9J21lc3NhZ2Ugd2l0aCA8Ij4gY2hhcmFjdGVycyB0byBl
c2NhcGUnCiAjICAgICAgICAgICAgICAgICAgdGltZXN0YW1wPTExMzI1ODcxNzYuODM1MjI4OTIw
LAogIyAgICAgICAgICAgICAgICAgIHRpbWV6b25lPS02KjM2MDAsCkBAIC0zMjEsNyArMzIxLDcg
QEAKICAgICAgICAgbG9nX2NvbnRlbnRzID0gbG9nZmlsZS5yZWFkKCkKICAgICAgICAgc2VsZi5h
c3NlcnRFcXVhbERpZmYobG9nX2NvbnRlbnRzLCAnJydcCiA8bG9nPgotPGxvZ2VudHJ5IHJldmlk
PSIxIj4KKzxsb2dlbnRyeSByZXZpZD0iMSIgcmV2bm89IjEiPgogPGF1dGhvcj5YbWwtTG9nLUZv
cm1hdHRlciBUZXN0ZXIgJmx0O3Rlc3RAeG1sLmxvZyZndDs8L2F1dGhvcj4KIDxkYXRlPk1vbiAy
MDA1LTExLTIxIDA5OjI0OjE1IC0wNjAwPC9kYXRlPgogPG1zZz5zaW1wbGUgbG9nIG1lc3NhZ2U8
L21zZz4KCg==
=== modified directory // last-changed:jw+debian at jameswestby.net-2006110400492
... 3-3a945e7712fa27e3
# revision id: jw+debian at jameswestby.net-20061104004923-3a945e7712fa27e3
# sha1: 7a009bfe52bbabc4e01d92fefdbae3db784c1d90
# inventory sha1: 75847bc2a068a47d87fb8b54d65397f7d63cbd6c
# parent ids:
# jw+debian at jameswestby.net-20061104004010-c3034ef00edd37d1
# properties:
# branch-nick: bzr.dev.xmllog
# message:
# Write a simple xml output to pass the simple test
# committer: James Westby <jw+debian at jameswestby.net>
# date: Sat 2006-11-04 00:40:10.066999912 +0000
=== modified file bzrlib/log.py // encoding:base64
LS0tIGJ6cmxpYi9sb2cucHkKKysrIGJ6cmxpYi9sb2cucHkKQEAgLTU2LDYgKzU2LDcgQEAKIAog
ZnJvbSBienJsaWIgaW1wb3J0IHN5bWJvbF92ZXJzaW9uaW5nCiBpbXBvcnQgYnpybGliLmVycm9y
cyBhcyBlcnJvcnMKK2Zyb20gYnpybGliLm9zdXRpbHMgaW1wb3J0IGZvcm1hdF9kYXRlCiBmcm9t
IGJ6cmxpYi5zeW1ib2xfdmVyc2lvbmluZyBpbXBvcnQgKGRlcHJlY2F0ZWRfbWV0aG9kLAogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXByZWNhdGVkX2Z1bmN0aW9uLAog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB6ZXJvX2VsZXZlbiwKQEAgLTYz
LDYgKzY0LDEwIEBACiBmcm9tIGJ6cmxpYi50cmFjZSBpbXBvcnQgbXV0dGVyCiBmcm9tIGJ6cmxp
Yi50c29ydCBpbXBvcnQgbWVyZ2Vfc29ydAogCitmcm9tIGVsZW1lbnR0cmVlLkVsZW1lbnRUcmVl
IGltcG9ydCAoRWxlbWVudCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBT
dWJFbGVtZW50LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVsZW1lbnRU
cmVlKQorCiAKIGRlZiBmaW5kX3RvdWNoaW5nX3JldmlzaW9ucyhicmFuY2gsIGZpbGVfaWQpOgog
ICAgICIiIllpZWxkIGEgZGVzY3JpcHRpb24gb2YgcmV2aXNpb25zIHdoaWNoIGFmZmVjdCB0aGUg
ZmlsZV9pZC4KQEAgLTIzOCw3ICsyNDMsOSBAQAogICAgICAgICBzZWxmLnNlYXJjaCA9IHNlYXJj
aAogICAgICAgICBicmFuY2gubG9ja19yZWFkKCkKICAgICAgICAgdHJ5OgorICAgICAgICAgICAg
c2VsZi5fc3RhcnRfbG9nKCkKICAgICAgICAgICAgIHNlbGYuX3Nob3dfbG9nKCkKKyAgICAgICAg
ICAgIHNlbGYuX2VuZF9sb2coKQogICAgICAgICBmaW5hbGx5OgogICAgICAgICAgICAgYnJhbmNo
LnVubG9jaygpCiAKQEAgLTM1OSw2ICszNjYsMTIgQEAKICAgICAgICAgICAgIHJldm5vICs9IDEK
ICAgICAgICAgcmV0dXJuIHJoCiAKKyAgICBkZWYgX3N0YXJ0X2xvZyhzZWxmKToKKyAgICAgICAg
cGFzcworCisgICAgZGVmIF9lbmRfbG9nKHNlbGYpOgorICAgICAgICBwYXNzCisKIGNsYXNzIExv
bmdMb2dGb3JtYXR0ZXIoTG9nRm9ybWF0dGVyKToKICAgICBkZWYgc2hvdyhzZWxmLCByZXZubywg
cmV2LCBkZWx0YSk6CiAgICAgICAgIHJldHVybiBzZWxmLl9zaG93X2hlbHBlcihyZXZubz1yZXZu
bywgcmV2PXJldiwgZGVsdGE9ZGVsdGEpCkBAIC00NzQsNiArNDg3LDM0IEBACiAgICAgICAgIG91
dC5hcHBlbmQocmV2LmdldF9zdW1tYXJ5KCkpCiAgICAgICAgIHJldHVybiBzZWxmLnRydW5jYXRl
KCIgIi5qb2luKG91dCkucnN0cmlwKCdcbicpLCBtYXhfY2hhcnMpCiAKK2NsYXNzIFhtbExvZ0Zv
cm1hdHRlcihMb2dGb3JtYXR0ZXIpOgorICAgICIiIkEgTG9nRm9ybWF0dGVyIHRoYXQgb3V0cHV0
cyBpbiB4bWwgZm9ybWF0IiIiCisgICAgZGVmIF9zdGFydF9sb2coc2VsZik6CisgICAgICAgIHNl
bGYuZG9jID0gRWxlbWVudCgnbG9nJykKKyAgICAgICAgc2VsZi5kb2MudGFpbCA9ICdcbicKKyAg
ICAgICAgc2VsZi5kb2MudGV4dCA9ICdcbicKKworICAgIGRlZiBfZW5kX2xvZyhzZWxmKToKKyAg
ICAgICAgRWxlbWVudFRyZWUoc2VsZi5kb2MpLndyaXRlKHNlbGYudG9fZmlsZSwgJ3V0Zi04JykK
KworICAgIGRlZiBzaG93KHNlbGYsIHJldm5vLCByZXYsIGRlbHRhKToKKyAgICAgIGRvYyA9IHNl
bGYuZG9jCisgICAgICBkYXRlX3N0ciA9IGZvcm1hdF9kYXRlKHJldi50aW1lc3RhbXAsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHJldi50aW1lem9uZSBvciAwLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBzZWxmLnNob3dfdGltZXpvbmUpCisgICAgICBsb2dlbnRyeSA9IFN1
YkVsZW1lbnQoZG9jLCAnbG9nZW50cnknKQorICAgICAgbG9nZW50cnkuYXR0cmliWydyZXZpZCdd
ID0gcmV2LnJldmlzaW9uX2lkCisgICAgICBsb2dlbnRyeS50ZXh0ID0gJ1xuJworICAgICAgbG9n
ZW50cnkudGFpbCA9ICdcbicKKyAgICAgIGF1dGhvciA9IFN1YkVsZW1lbnQobG9nZW50cnksICdh
dXRob3InKQorICAgICAgYXV0aG9yLnRleHQgPSByZXYuY29tbWl0dGVyCisgICAgICBhdXRob3Iu
dGFpbCA9ICdcbicKKyAgICAgIGRhdGUgPSBTdWJFbGVtZW50KGxvZ2VudHJ5LCAnZGF0ZScpCisg
ICAgICBkYXRlLnRleHQgPSBkYXRlX3N0cgorICAgICAgZGF0ZS50YWlsID0gJ1xuJworICAgICAg
bXNnID0gU3ViRWxlbWVudChsb2dlbnRyeSwgJ21zZycpCisgICAgICBtc2cudGV4dCA9IHJldi5t
ZXNzYWdlOworICAgICAgbXNnLnRhaWwgPSAnXG4nCiAKIGRlZiBsaW5lX2xvZyhyZXYsIG1heF9j
aGFycyk6CiAgICAgbGYgPSBMaW5lTG9nRm9ybWF0dGVyKE5vbmUpCgo=
=== modified file bzrlib/tests/test_log.py // encoding:base64
LS0tIGJ6cmxpYi90ZXN0cy90ZXN0X2xvZy5weQorKysgYnpybGliL3Rlc3RzL3Rlc3RfbG9nLnB5
CkBAIC0yNSw3ICsyNSw4IEBACiAgICAgICAgICAgICAgICAgICAgICAgICBMb2dGb3JtYXR0ZXIs
IAogICAgICAgICAgICAgICAgICAgICAgICAgTG9uZ0xvZ0Zvcm1hdHRlciwgCiAgICAgICAgICAg
ICAgICAgICAgICAgICBTaG9ydExvZ0Zvcm1hdHRlciwgCi0gICAgICAgICAgICAgICAgICAgICAg
ICBMaW5lTG9nRm9ybWF0dGVyKQorICAgICAgICAgICAgICAgICAgICAgICAgTGluZUxvZ0Zvcm1h
dHRlciwKKyAgICAgICAgICAgICAgICAgICAgICAgIFhtbExvZ0Zvcm1hdHRlcikKIGZyb20gYnpy
bGliLmJyYW5jaCBpbXBvcnQgQnJhbmNoCiBmcm9tIGJ6cmxpYi5lcnJvcnMgaW1wb3J0IEludmFs
aWRSZXZpc2lvbk51bWJlcgogZnJvbSBienJsaWIuc3ltYm9sX3ZlcnNpb25pbmcgaW1wb3J0IHpl
cm9fdGhpcnRlZW4KQEAgLTMxOSw5ICszMjAsOCBAQAogICAgICAgICBsb2dmaWxlLnNlZWsoMCkK
ICAgICAgICAgbG9nX2NvbnRlbnRzID0gbG9nZmlsZS5yZWFkKCkKICAgICAgICAgc2VsZi5hc3Nl
cnRFcXVhbERpZmYobG9nX2NvbnRlbnRzLCAnJydcCi08P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29k
aW5nPSJ1dGYtOCI/PgogPGxvZz4KLTxsb2dlbnRyeSByZXZpZD0iMmIiPgorPGxvZ2VudHJ5IHJl
dmlkPSIxIj4KIDxhdXRob3I+WG1sLUxvZy1Gb3JtYXR0ZXIgVGVzdGVyICZsdDt0ZXN0QHhtbC5s
b2cmZ3Q7PC9hdXRob3I+CiA8ZGF0ZT5Nb24gMjAwNS0xMS0yMSAwOToyNDoxNSAtMDYwMDwvZGF0
ZT4KIDxtc2c+c2ltcGxlIGxvZyBtZXNzYWdlPC9tc2c+Cgo=
=== modified directory // last-changed:jw+debian at jameswestby.net-2006110400401
... 0-c3034ef00edd37d1
# revision id: jw+debian at jameswestby.net-20061104004010-c3034ef00edd37d1
# sha1: 21cf78a492ad76b370ef079458a6f6a687f9a4bd
# inventory sha1: a86cfee1c89ba08cc21b4dfc4017417d1b4523a7
# parent ids:
# jw+debian at jameswestby.net-20061104001637-9d7c5d19df613845
# properties:
# branch-nick: bzr.dev.xmllog
# message:
# Add a simple test for the xml log output
# committer: James Westby <jw+debian at jameswestby.net>
# date: Sat 2006-11-04 00:16:37.030999899 +0000
=== modified file bzrlib/tests/test_log.py // encoding:base64
LS0tIGJ6cmxpYi90ZXN0cy90ZXN0X2xvZy5weQorKysgYnpybGliL3Rlc3RzL3Rlc3RfbG9nLnB5
CkBAIC0yODgsNiArMjg4LDQ3IEBACiAgICAgICAgIGxvZ19jb250ZW50cyA9IGxvZ2ZpbGUucmVh
ZCgpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWxEaWZmKGxvZ19jb250ZW50cywgJzE6IExpbmUt
TG9nLUZvcm1hdHRlLi4uIDIwMDUtMTEtMjMgYWRkIGFcbicpCiAKKyAgICBkZWYgdGVzdF94bWxf
bG9nKHNlbGYpOgorICAgICAgICAiIiJUZXN0IHRoZSBvdXRwdXQgb2YgdGhlIFhtbExvZ0Zvcm1h
dHRlciIiIgorICAgICAgICB3dCA9IHNlbGYubWFrZV9icmFuY2hfYW5kX3RyZWUoJy4nKQorICAg
ICAgICBiID0gd3QuYnJhbmNoCisgICAgICAgIHNlbGYuYnVpbGRfdHJlZShbJ2EnXSkKKyAgICAg
ICAgd3QuYWRkKCdhJykKKyAgICAgICAgYi5uaWNrID0gJ3Rlc3QteG1sLWxvZycKKyAgICAgICAg
d3QuY29tbWl0KG1lc3NhZ2U9J3NpbXBsZSBsb2cgbWVzc2FnZScsCisgICAgICAgICAgICAgICAg
ICB0aW1lc3RhbXA9MTEzMjU4NjY1NS40NTk5NjA5MzgsCisgICAgICAgICAgICAgICAgICB0aW1l
em9uZT0tNiozNjAwLAorICAgICAgICAgICAgICAgICAgY29tbWl0dGVyPSdYbWwtTG9nLUZvcm1h
dHRlciBUZXN0ZXIgPHRlc3RAeG1sLmxvZz4nLAorICAgICAgICAgICAgICAgICAgcmV2X2lkPScx
JykKKyMgICAgICAgIHRyZWUyID0gd3QuYnpyZGlyLnNwcm91dCgndHJlZTInKS5vcGVuX3dvcmtp
bmd0cmVlKCkKKyMgICAgICAgIHRyZWUyLmNvbW1pdChtZXNzYWdlPSdtdWxpbGluZVxuY29tbWl0
XG5tZXNzYWdlJywKKyMgICAgICAgICAgICAgICAgICAgICB0aW1lc3RhbXA9MTEzMjU4Njg0Mi40
MTExNzU5NjYsCisjICAgICAgICAgICAgICAgICAgICAgdGltZXpvbmU9LTYqMzYwMCwKKyMgICAg
ICAgICAgICAgICAgICAgICBjb21taXR0ZXI9J1htbC1Mb2ctRm9ybWF0dGVyIFRlc3RlciA8dGVz
dEB4bWwubG9nPicsCisjICAgICAgICAgICAgICAgICAgICAgcmV2X2lkPScyYScpCisjICAgICAg
ICB3dC5tZXJnZV9mcm9tX2JyYW5jaCh0cmVlMi5icmFuY2gpCisjICAgICAgICB3dC5jb21taXQo
bWVzc2FnZT0nbWVzc2FnZSB3aXRoIDwiPiBjaGFyYWN0ZXJzIHRvIGVzY2FwZScKKyMgICAgICAg
ICAgICAgICAgICB0aW1lc3RhbXA9MTEzMjU4NzE3Ni44MzUyMjg5MjAsCisjICAgICAgICAgICAg
ICAgICAgdGltZXpvbmU9LTYqMzYwMCwKKyMgICAgICAgICAgICAgICAgICBjb21taXR0ZXI9J1ht
bC1Mb2ctRm9ybWF0dGVyIFRlc3RlciA8dGVzdEB4bWwubG9nPicsCisjICAgICAgICAgICAgICAg
ICAgcmV2X2lkPScyYicpCisgICAgICAgIGxvZ2ZpbGUgPSBmaWxlKCdvdXQudG1wJywgJ3crJykK
KyAgICAgICAgZm9ybWF0dGVyID0gWG1sTG9nRm9ybWF0dGVyKHRvX2ZpbGU9bG9nZmlsZSkKKyAg
ICAgICAgZm9ybWF0dGVyLnNob3dfbG9nKHd0LmJyYW5jaCkKKyAgICAgICAgbG9nZmlsZS5mbHVz
aCgpCisgICAgICAgIGxvZ2ZpbGUuc2VlaygwKQorICAgICAgICBsb2dfY29udGVudHMgPSBsb2dm
aWxlLnJlYWQoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsRGlmZihsb2dfY29udGVudHMsICcn
J1wKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9InV0Zi04Ij8+Cis8bG9nPgorPGxvZ2Vu
dHJ5IHJldmlkPSIyYiI+Cis8YXV0aG9yPlhtbC1Mb2ctRm9ybWF0dGVyIFRlc3RlciAmbHQ7dGVz
dEB4bWwubG9nJmd0OzwvYXV0aG9yPgorPGRhdGU+TW9uIDIwMDUtMTEtMjEgMDk6MjQ6MTUgLTA2
MDA8L2RhdGU+Cis8bXNnPnNpbXBsZSBsb2cgbWVzc2FnZTwvbXNnPgorPC9sb2dlbnRyeT4KKzwv
bG9nPgorJycnKQorCiAgICAgZGVmIHRlc3RfY3VyX3Jldm5vX2RlcHJlY2F0ZWQoc2VsZik6CiAg
ICAgICAgIHd0ID0gc2VsZi5tYWtlX2JyYW5jaF9hbmRfdHJlZSgnLicpCiAgICAgICAgIGIgPSB3
dC5icmFuY2gKCg==
=== modified directory // last-changed:jw+debian at jameswestby.net-2006110400163
... 7-9d7c5d19df613845
# revision id: jw+debian at jameswestby.net-20061104001637-9d7c5d19df613845
# sha1: 9f47c71522d3cda9dafc741983966eefcb96bcfc
# inventory sha1: 246d06b7f8d0fcd3a22ca4142df2e05538a16914
# parent ids:
# jw+debian at jameswestby.net-20061104001437-c8e675ff315f35c5
# properties:
# branch-nick: bzr.dev.xmllog
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
Url : https://lists.ubuntu.com/archives/bazaar/attachments/20061104/6e52e843/attachment.pgp
More information about the bazaar
mailing list