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

r8759:f584d63c default
r10521:bde1bb25 stable
Show More
test-win32text
144 lines | 2.5 KiB | text/plain | TextLexer
Jesse Glick
Issue 882: add standard hook to reject text files with CRLF....
r5675 #!/bin/sh
Bryan O'Sullivan
win32text: be more careful about rejecting violating changesets...
r8147 hg init t
cd t
Thomas Arendsen Hein
Removed trailing spaces from everything except test output
r6210 cat > unix2dos.py <<EOF
Patrick Mezard
test-win32text: avoid unix2dos, printf extensions
r5680 import sys
for path in sys.argv[1:]:
data = file(path, 'rb').read()
data = data.replace('\n', '\r\n')
file(path, 'wb').write(data)
EOF
Jesse Glick
Provide better context for custom Python encode/decode filters....
r5967 cat > print.py <<EOF
import sys
print(sys.stdin.read().replace('\n', '<LF>').replace('\r', '<CR>').replace('\0', '<NUL>'))
EOF
Jesse Glick
Issue 882: add standard hook to reject text files with CRLF....
r5675 echo '[hooks]' >> .hg/hgrc
echo 'pretxncommit.crlf = python:hgext.win32text.forbidcrlf' >> .hg/hgrc
echo 'pretxnchangegroup.crlf = python:hgext.win32text.forbidcrlf' >> .hg/hgrc
cat .hg/hgrc
echo
echo hello > f
hg add f
Bryan O'Sullivan
win32text: be more careful about rejecting violating changesets...
r8147 echo commit should succeed
Martin Geisler
tests: removed redundant "-d '0 0'" from test scripts...
r8167 hg ci -m 1
Jesse Glick
Issue 882: add standard hook to reject text files with CRLF....
r5675 echo
Bryan O'Sullivan
win32text: be more careful about rejecting violating changesets...
r8147 hg clone . ../zoz
cp .hg/hgrc ../zoz/.hg
Patrick Mezard
test-win32text: avoid unix2dos, printf extensions
r5680 python unix2dos.py f
Bryan O'Sullivan
win32text: be more careful about rejecting violating changesets...
r8147 echo commit should fail
Martin Geisler
tests: removed redundant "-d '0 0'" from test scripts...
r8167 hg ci -m 2.1
Bryan O'Sullivan
win32text: be more careful about rejecting violating changesets...
r8147 echo
mv .hg/hgrc .hg/hgrc.bak
echo commits should succeed
Martin Geisler
tests: removed redundant "-d '0 0'" from test scripts...
r8167 hg ci -m 2
Bryan O'Sullivan
win32text: be more careful about rejecting violating changesets...
r8147 hg cp f g
Martin Geisler
tests: removed redundant "-d '0 0'" from test scripts...
r8167 hg ci -m 2.2
Jesse Glick
Issue 882: add standard hook to reject text files with CRLF....
r5675 echo
Bryan O'Sullivan
win32text: be more careful about rejecting violating changesets...
r8147 echo push should fail
hg push ../zoz
echo
mv .hg/hgrc.bak .hg/hgrc
echo hello > f
hg rm g
echo commit should succeed
Martin Geisler
tests: removed redundant "-d '0 0'" from test scripts...
r8167 hg ci -m 2.3
Bryan O'Sullivan
win32text: be more careful about rejecting violating changesets...
r8147 echo
echo push should succeed
hg push ../zoz
echo
echo and now for something completely different
Jesse Glick
Issue 882: add standard hook to reject text files with CRLF....
r5675 mkdir d
echo hello > d/f2
Patrick Mezard
test-win32text: avoid unix2dos, printf extensions
r5680 python unix2dos.py d/f2
Jesse Glick
Issue 882: add standard hook to reject text files with CRLF....
r5675 hg add d/f2
Martin Geisler
tests: removed redundant "-d '0 0'" from test scripts...
r8167 hg ci -m 3
Jesse Glick
Issue 882: add standard hook to reject text files with CRLF....
r5675 hg revert -a
rm d/f2
echo
hg rem f
Martin Geisler
tests: removed redundant "-d '0 0'" from test scripts...
r8167 hg ci -m 4
Jesse Glick
Issue 882: add standard hook to reject text files with CRLF....
r5675 echo
Patrick Mezard
test-win32text: avoid unix2dos, printf extensions
r5680 python -c 'file("bin", "wb").write("hello\x00\x0D\x0A")'
Jesse Glick
Issue 882: add standard hook to reject text files with CRLF....
r5675 hg add bin
Martin Geisler
tests: removed redundant "-d '0 0'" from test scripts...
r8167 hg ci -m 5
Jesse Glick
Issue 882: add standard hook to reject text files with CRLF....
r5675 hg log -v
echo
hg clone . dupe
echo
for x in a b c d; do echo content > dupe/$x; done
hg -R dupe add
Patrick Mezard
test-win32text: avoid unix2dos, printf extensions
r5680 python unix2dos.py dupe/b dupe/c dupe/d
Martin Geisler
tests: removed redundant "-d '0 0'" from test scripts...
r8167 hg -R dupe ci -m a dupe/a
hg -R dupe ci -m b/c dupe/[bc]
hg -R dupe ci -m d dupe/d
Jesse Glick
Issue 882: add standard hook to reject text files with CRLF....
r5675 hg -R dupe log -v
echo
hg pull dupe
echo
hg log -v
echo
Jesse Glick
Provide better context for custom Python encode/decode filters....
r5967 rm .hg/hgrc
(echo some; echo text) > f3
python -c 'file("f4.bat", "wb").write("rem empty\x0D\x0A")'
hg add f3 f4.bat
Martin Geisler
tests: removed redundant "-d '0 0'" from test scripts...
r8167 hg ci -m 6
Jesse Glick
Provide better context for custom Python encode/decode filters....
r5967
python print.py < bin
python print.py < f3
python print.py < f4.bat
echo
echo '[extensions]' >> .hg/hgrc
echo 'win32text = ' >> .hg/hgrc
echo '[decode]' >> .hg/hgrc
echo '** = cleverdecode:' >> .hg/hgrc
echo '[encode]' >> .hg/hgrc
echo '** = cleverencode:' >> .hg/hgrc
cat .hg/hgrc
echo
rm f3 f4.bat bin
Matt Mackall
merge: allow merging going backwards...
r8742 hg co -C 2>&1 | python -c 'import sys, os; sys.stdout.write(sys.stdin.read().replace(os.getcwd(), "...."))'
Jesse Glick
Provide better context for custom Python encode/decode filters....
r5967 python print.py < bin
python print.py < f3
python print.py < f4.bat
echo
python -c 'file("f5.sh", "wb").write("# empty\x0D\x0A")'
hg add f5.sh
Martin Geisler
tests: removed redundant "-d '0 0'" from test scripts...
r8167 hg ci -m 7
Jesse Glick
Provide better context for custom Python encode/decode filters....
r5967 python print.py < f5.sh
hg cat f5.sh | python print.py
Alexis S. L. Carvalho
revert: update state of files in the "checkout" list...
r6299
echo '% just linefeed' > linefeed
hg ci -qAm 8 linefeed
python print.py < linefeed
hg cat linefeed | python print.py
hg st -q
hg revert -a linefeed
python print.py < linefeed
hg st -q
echo modified >> linefeed
hg st -q
hg revert -a
hg st -q
python print.py < linefeed