##// END OF EJS Templates
archive: set date to 1980 for very old zip files...
archive: set date to 1980 for very old zip files The zip file format stores the date using "MS-DOS format" which apparently means that they use 1980 as their epoch. Python's zipfile module emits deprecation warnings of this form /usr/lib/python2.6/zipfile.py:1108: DeprecationWarning: struct integer overflow masking is deprecated self.fp.write(zinfo.FileHeader()) /usr/lib/python2.6/zipfile.py:1108: DeprecationWarning: 'H' format requires 0 <= number <= 65535 self.fp.write(zinfo.FileHeader()) /home/mg/src/mercurial-crew/mercurial/archival.py:169: DeprecationWarning: struct integer overflow masking is deprecated self.z.close() /home/mg/src/mercurial-crew/mercurial/archival.py:169: DeprecationWarning: 'H' format requires 0 <= number <= 65535 self.z.close() when it is given such old timestamps. This fixes this by silently clamping the date to 1980.

File last commit:

r11249:0bb67503 stable
r12319:381f1312 stable
Show More
test-eol-patch
103 lines | 1.8 KiB | text/plain | TextLexer
#!/bin/sh
cat > $HGRCPATH <<EOF
[diff]
git = 1
EOF
seteol () {
if [ $1 = "LF" ]; then
EOL='\n'
else
EOL='\r\n'
fi
}
makerepo () {
seteol $1
echo
echo "# ==== setup $1 repository ===="
echo '% hg init'
hg init repo
cd repo
cat > .hgeol <<EOF
[repository]
native = $1
[patterns]
unix.txt = LF
win.txt = CRLF
**.txt = native
EOF
printf "first\r\nsecond\r\nthird\r\n" > win.txt
printf "first\nsecond\nthird\n" > unix.txt
printf "first${EOL}second${EOL}third${EOL}" > native.txt
hg commit --addremove -m 'checkin'
cd ..
}
dotest () {
seteol $1
echo
echo "% hg clone repo repo-$1"
hg clone --noupdate repo repo-$1
cd repo-$1
cat > .hg/hgrc <<EOF
[extensions]
eol =
[eol]
native = $1
EOF
hg update
echo '% printrepr.py native.txt'
python $TESTDIR/printrepr.py < native.txt
echo '% printrepr.py unix.txt'
python $TESTDIR/printrepr.py < unix.txt
echo '% printrepr.py win.txt'
python $TESTDIR/printrepr.py < win.txt
printf "first${EOL}third${EOL}" > native.txt
printf "first\r\nthird\r\n" > win.txt
printf "first\nthird\n" > unix.txt
echo '% hg diff'
hg diff > p
python $TESTDIR/printrepr.py < p
echo '% hg revert'
hg revert --all
echo '% hg import'
hg import -m 'patch' p
echo '% printrepr.py native.txt'
python $TESTDIR/printrepr.py < native.txt
echo '% printrepr.py unix.txt'
python $TESTDIR/printrepr.py < unix.txt
echo '% printrepr.py win.txt'
python $TESTDIR/printrepr.py < win.txt
echo '% hg diff -c tip'
hg diff -c tip | python $TESTDIR/printrepr.py
cd ..
rm -r repo-$1
}
makerepo LF
dotest LF
dotest CRLF
rm -r repo
makerepo CRLF
dotest LF
dotest CRLF
rm -r repo