##// 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:

r9287:53fdf18f default
r10521:bde1bb25 stable
Show More
test-mq-qimport
110 lines | 2.0 KiB | text/plain | TextLexer
Patrick Mezard
mq: qimport must read patches in binary mode
r6027 #!/bin/sh
cat > writelines.py <<EOF
import sys
path = sys.argv[1]
args = sys.argv[2:]
assert (len(args) % 2) == 0
f = file(path, 'wb')
for i in xrange(len(args)/2):
count, s = args[2*i:2*i+2]
count = int(count)
s = s.decode('string_escape')
f.write(s*count)
f.close()
EOF
echo "[extensions]" >> $HGRCPATH
echo "mq=" >> $HGRCPATH
echo "[diff]" >> $HGRCPATH
echo "git=1" >> $HGRCPATH
hg init repo
cd repo
Martin Geisler
qimport: report filename in case of IOError...
r6940
echo % qimport non-existing-file
Benoit Boissinot
Catch both IOError and OSError, fix regression introduced by 8046f0a070a6
r7421 hg qimport non-existing-file
Martin Geisler
qimport: report filename in case of IOError...
r6940
David Soria Parra
mq: Parse commit message after we find start of changeset patch...
r9287 echo % import email
hg qimport --push -n email - <<EOF
From: Username in email <test@example.net>
Subject: [PATCH] Message in email
Date: Fri, 02 Jan 1970 00:00:00 +0000
Text before patch.
# HG changeset patch
# User Username in patch <test@example.net>
# Date 0 0
# Node ID 1a706973a7d84cb549823634a821d9bdf21c6220
# Parent 0000000000000000000000000000000000000000
First line of commit message.
More text in commit message.
diff --git a/x b/x
new file mode 100644
--- /dev/null
+++ b/x
@@ -0,0 +1,1 @@
+new file
Text after patch.
EOF
echo % hg tip -v
hg tip -v
hg qpop
hg qdelete email
Brendan Cully
mq: let qimport read patches from URLs
r7158 echo % import URL
echo foo >> foo
hg add foo
hg diff > $HGTMP/url.diff
hg revert --no-backup foo
rm foo
Patrick Mezard
test-mq-qimport: fix URL generation under windows
r7266 # Under unix: file:///foobar/blah
# Under windows: file:///c:/foobar/blah
Benoit Boissinot
'\' should be escaped twice, for the shell, and for tr
r7273 patchurl=`echo $HGTMP/url.diff | tr '\\\\' /`
Patrick Mezard
test-mq-qimport: fix URL generation under windows
r7266 expr $patchurl : "\/" > /dev/null
if [ $? -ne 0 ]; then
patchurl='/'$patchurl
fi
hg qimport file://$patchurl
Brendan Cully
mq: let qimport read patches from URLs
r7158 hg qun
Brendan Cully
mq: make qimport -f work properly. Closes issue1255....
r7160 echo % import patch that already exists
echo foo2 >> foo
hg add foo
hg diff > ../url.diff
hg revert --no-backup foo
rm foo
hg qimport ../url.diff
hg qpush
cat foo
hg qpop
echo % qimport -f
hg qimport -f ../url.diff
hg qpush
cat foo
hg qpop
Martin Geisler
qimport: report filename in case of IOError...
r6940 echo % build diff with CRLF
Patrick Mezard
mq: qimport must read patches in binary mode
r6027 python ../writelines.py b 5 'a\n' 5 'a\r\n'
hg ci -Am addb
python ../writelines.py b 2 'a\n' 10 'b\n' 2 'a\r\n'
hg diff > b.diff
hg up -C
echo % qimport CRLF diff
hg qimport b.diff
hg qpush
Dirkjan Ochtman
mq: add -P/--push option to qimport
r8362 echo % try to import --push
echo another >> b
hg diff > another.diff
hg up -C
hg qimport --push another.diff
hg qfin -a
hg qimport -rtip -P