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

r11110:22f5ad0b default
r12319:381f1312 stable
Show More
test-subrepo-deep-nested-change
57 lines | 1.5 KiB | text/plain | TextLexer
/ tests / test-subrepo-deep-nested-change
#!/bin/sh
echo % Preparing the subrepository 'sub2'
hg init sub2
echo sub2 > sub2/sub2
hg add -R sub2
hg commit -R sub2 -m "sub2 import"
echo % Preparing the 'sub1' repo which depends on the subrepo 'sub2'
hg init sub1
echo sub1 > sub1/sub1
echo "sub2 = ../sub2" > sub1/.hgsub
hg clone sub2 sub1/sub2 | sed 's/ .*sub/ ...sub/g'
hg add -R sub1
hg commit -R sub1 -m "sub1 import"
echo % Preparing the 'main' repo which depends on the subrepo 'sub1'
hg init main
echo main > main/main
echo "sub1 = ../sub1" > main/.hgsub
hg clone sub1 main/sub1 | sed 's/ .*sub/ ...sub/g'
hg add -R main
hg commit -R main -m "main import"
echo % Cleaning both repositories, just as a clone -U
hg up -C -R sub2 null
hg up -C -R sub1 null
hg up -C -R main null
rm -rf main/sub1
rm -rf sub1/sub2
echo % Clone main
hg clone main cloned | sed 's/ .*sub/ ...sub/g'
echo % Checking cloned repo ids
printf "cloned " ; hg id -R cloned
printf "cloned/sub1 " ; hg id -R cloned/sub1
printf "cloned/sub1/sub2 " ; hg id -R cloned/sub1/sub2
echo % debugsub output for main and sub1
hg debugsub -R cloned
hg debugsub -R cloned/sub1
echo % Modifying deeply nested 'sub2'
echo modified > cloned/sub1/sub2/sub2
hg commit -m "deep nested modif should trigger a commit" -R cloned
echo % Checking modified node ids
printf "cloned " ; hg id -R cloned
printf "cloned/sub1 " ; hg id -R cloned/sub1
printf "cloned/sub1/sub2 " ; hg id -R cloned/sub1/sub2
echo % debugsub output for main and sub1
hg debugsub -R cloned
hg debugsub -R cloned/sub1
exit 0