##// END OF EJS Templates
Do not use osutil.c with python 2.4 and Windows (issue1364)...
Do not use osutil.c with python 2.4 and Windows (issue1364) Windows python 2.4 os.stat() reports times including DST offset, while osutil.c reports the correct value, which makes status() systematically compare files content. This bug is fixed in python 2.5. Using osutil.py instead of osutil.c is 4x times slower on large repositories but current code is completely unusable. Given few people are likely to use python 2.4 on Windows this solution was considered a good trade-off compared to more invasive solutions trying to address the offset issue.

File last commit:

r10119:bb5ea667 default
r10521:bde1bb25 stable
Show More
test-convert-darcs
75 lines | 1.6 KiB | text/plain | TextLexer
#!/bin/sh
"$TESTDIR/hghave" darcs || exit 80
echo "[extensions]" >> $HGRCPATH
echo "convert=" >> $HGRCPATH
echo 'graphlog =' >> $HGRCPATH
DARCS_EMAIL='test@example.org'; export DARCS_EMAIL
HOME=`pwd`/do_not_use_HOME_darcs; export HOME
# skip if we can't import elementtree
mkdir dummy
mkdir dummy/_darcs
if hg convert dummy 2>&1 | grep ElementTree > /dev/null; then
echo 'skipped: missing feature: elementtree module'
exit 80
fi
echo % initialize darcs repo
mkdir darcs-repo
cd darcs-repo
darcs init
echo a > a
darcs record -a -l -m p0
cd ..
echo % branch and update
darcs get darcs-repo darcs-clone >/dev/null
cd darcs-clone
echo c >> a
echo c > c
darcs record -a -l -m p1.1
cd ..
echo % update source
cd darcs-repo
echo b >> a
echo b > b
darcs record -a -l -m p1.2
echo % merge branch
darcs pull -a ../darcs-clone
sleep 1
echo e > a
echo f > f
mkdir dir
echo d > dir/d
echo d > dir/d2
darcs record -a -l -m p2
echo % test file and directory move
darcs mv f ff
# Test remove + move
darcs remove dir/d2
rm dir/d2
darcs mv dir dir2
darcs record -a -l -m p3
cd ..
glog()
{
hg glog --template '{rev} "{desc|firstline}" files: {files}\n' "$@"
}
hg convert darcs-repo darcs-repo-hg
# The converter does not currently handle patch conflicts very well.
# When they occur, it reverts *all* changes and moves forward,
# letting the conflict resolving patch fix collisions.
# Unfortunately, non-conflicting changes, like the addition of the
# "c" file in p1.1 patch are reverted too.
# Just to say that manifest not listing "c" here is a bug.
glog -R darcs-repo-hg
hg up -q -R darcs-repo-hg
hg -R darcs-repo-hg manifest --debug