color: don't split colors across lines (which confuses less -R)
Currently, less -R doesn't support colors spanning multiple lines; only
the first line will be colorized.
Instead of allowing colors to span multiple lines, the color extension
now applies colors to each line it receives, even when ui.write() is
given multiple lines in one call.
#!/bin/sh
cat >> $HGRCPATH <<EOF
[extensions]
convert=
[convert]
hg.saverev=False
EOF
hg init orig
cd orig
echo foo > foo
echo bar > bar
hg ci -qAm 'add foo and bar'
hg rm foo
hg ci -m 'remove foo'
mkdir foo
echo file > foo/file
hg ci -qAm 'add foo/file'
hg tag some-tag
hg log
cd ..
hg convert orig new 2>&1 | grep -v 'subversion python bindings could not be loaded'
cd new
hg out ../orig
echo '% dirstate should be empty:'
hg debugstate
hg parents -q
hg up -C
hg copy bar baz
echo '% put something in the dirstate:'
hg debugstate > debugstate
grep baz debugstate
echo '% add a new revision in the original repo'
cd ../orig
echo baz > baz
hg ci -qAm 'add baz'
cd ..
hg convert orig new 2>&1 | grep -v 'subversion python bindings could not be loaded'
cd new
hg out ../orig
echo '% dirstate should be the same (no output below):'
hg debugstate > new-debugstate
diff debugstate new-debugstate
echo '% no copies'
hg up -C
hg debugrename baz
cd ..
echo '% test tag rewriting'
cat > filemap <<EOF
exclude foo
EOF
hg convert --filemap filemap orig new-filemap 2>&1 | grep -v 'subversion python bindings could not be loaded'
cd new-filemap
hg tags
cd ..