Mercurial > hg
changeset 9528:314fc589b313
convert: make mapfile handle LF and CRLF shamap (issue1846)
author | Patrick Mezard <pmezard@gmail.com> |
---|---|
date | Mon, 05 Oct 2009 22:01:08 +0200 |
parents | b3c13e721593 |
children | e61e7b3e46d0 5287de171d74 |
files | hgext/convert/common.py tests/test-convert-hg-source tests/test-convert-hg-source.out |
diffstat | 3 files changed, 26 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/hgext/convert/common.py Sun Oct 04 23:06:14 2009 +0200 +++ b/hgext/convert/common.py Mon Oct 05 22:01:08 2009 +0200 @@ -365,7 +365,7 @@ return for i, line in enumerate(fp): try: - key, value = line[:-1].rsplit(' ', 1) + key, value = line.splitlines()[0].rsplit(' ', 1) except ValueError: raise util.Abort(_('syntax error in %s(%d): key/value pair expected') % (self.path, i+1))
--- a/tests/test-convert-hg-source Sun Oct 04 23:06:14 2009 +0200 +++ b/tests/test-convert-hg-source Mon Oct 05 22:01:08 2009 +0200 @@ -38,6 +38,25 @@ hg out ../orig cd .. +echo '% check shamap LF and CRLF handling' +cat > rewrite.py <<EOF +import sys +# Interlace LF and CRLF +lines = [(l.rstrip() + ((i % 2) and '\n' or '\r\n')) + for i, l in enumerate(file(sys.argv[1]))] +file(sys.argv[1], 'wb').write(''.join(lines)) +EOF +python rewrite.py new/.hg/shamap +cd orig +hg up -qC 1 +echo foo >> foo +hg ci -qm 'change foo again' +hg up -qC 2 +echo foo >> foo +hg ci -qm 'change foo again again' +cd .. +hg convert --datesort orig new 2>&1 | grep -v 'subversion python bindings could not be loaded' + echo % init broken repository hg init broken cd broken
--- a/tests/test-convert-hg-source.out Sun Oct 04 23:06:14 2009 +0200 +++ b/tests/test-convert-hg-source.out Mon Oct 05 22:01:08 2009 +0200 @@ -20,6 +20,12 @@ comparing with ../orig searching for changes no changes found +% check shamap LF and CRLF handling +scanning source... +sorting... +converting... +1 change foo again again +0 change foo again % init broken repository created new head % break it