Mercurial > hg
view tests/test-revlog-mmapindex.t @ 52274:6aa4ee2bb128 stable
contrib: add a script to build all of the wheels on macOS
This is mostly a translation of `contrib/packaging/build-windows-wheels.bat`,
except the default pythons to build can be inferred from `setup.py` and/or
`pyproject.toml`, and all use the same configuration. All we need to do is
force the building of translation files, tell it to skip pypy wheels, and tell
it to build universal2 wheels instead of for the current architecture.
author | Matt Harbison <matt_harbison@yahoo.com> |
---|---|
date | Fri, 15 Nov 2024 21:52:31 -0500 |
parents | c10fa6388dbf |
children |
line wrap: on
line source
create verbosemmap.py $ cat << EOF > verbosemmap.py > # extension to make util.mmapread verbose > > > from mercurial import ( > extensions, > pycompat, > util, > ) > > def extsetup(ui): > def mmapread(orig, fp, *args): > ui.write(b"mmapping %s\n" % pycompat.bytestr(fp.name)) > ui.flush() > return orig(fp, *args) > > extensions.wrapfunction(util, 'mmapread', mmapread) > EOF setting up base repo $ hg init a $ cd a $ touch a $ hg add a $ hg commit -qm base $ for i in `$TESTDIR/seq.py 1 100` ; do > echo $i > a > hg commit -qm $i > done set up verbosemmap extension $ cat << EOF >> $HGRCPATH > [extensions] > verbosemmap=$TESTTMP/verbosemmap.py > EOF mmap index which is now more than 4k long $ hg log -l 5 -T '{rev}\n' \ > --config storage.revlog.mmap.index=yes \ > --config storage.revlog.mmap.index:size-threshold=4k mmapping $TESTTMP/a/.hg/store/00changelog.i (no-pure !) mmapping $TESTTMP/a/.hg/store/00changelog-????????.nd (glob) (rust !) 100 99 98 97 96 do not mmap index which is still less than 32k $ hg log -l 5 -T '{rev}\n' \ > --config storage.revlog.mmap.index=yes \ > --config storage.revlog.mmap.index:size-threshold=32k mmapping $TESTTMP/a/.hg/store/00changelog-????????.nd (glob) (rust !) 100 99 98 97 96 $ cd ..