Mercurial > hg
view tests/test-586 @ 12252:4481f8a93c7a stable
convert/darcs: handle non-ASCII metadata in darcs changelog (issue2354)
Given a commit author or message with non-ASCII characters in a darcs
repo, convert would raise a UnicodeEncodeError when adding changesets
to the hg changelog.
This happened because etree returns back unicode objects for any text
it can't encode into ASCII. convert was passing these objects to
changelog.add(), which would then attempt encoding.fromlocal() on
them.
This patch ensures converter_source.recode() is called on each piece
of commit data returned by etree.
(Also note that darcs is currently encoding agnostic and will print
out whatever is in a patch's metadata byte-for-byte, even in the XML
changelog.)
author | Brodie Rao <brodie@bitheap.org> |
---|---|
date | Fri, 10 Sep 2010 09:30:50 -0500 |
parents | f1af59451c0c |
children |
line wrap: on
line source
#!/bin/sh # a test for issue586 hg init a cd a echo a > a hg ci -Ama hg init ../b cd ../b echo b > b hg ci -Amb hg pull -f ../a hg merge hg rm -f a hg ci -Amc hg st -A cd .. # a test for issue 1433, related to issue586 echo % create test repos hg init repoa touch repoa/a hg -R repoa ci -Am adda hg init repob touch repob/b hg -R repob ci -Am addb hg init repoc cd repoc hg pull ../repoa hg update mkdir tst hg mv * tst hg ci -m "import a in tst" hg pull -f ../repob echo % merge both repos hg merge mkdir src echo % move b content hg mv b src hg ci -m "import b in src" hg manifest