##// END OF EJS Templates
convert: use a priority queue for sorting commits, to make sorting faster...
convert: use a priority queue for sorting commits, to make sorting faster To achieve this, we turn commit sorters into classes so they can encapsulate state. This reduces the sorting time from ~30s to ~10s on a 500k-commit prefix of a repo I tried to convert. (and probably reduces the time to sort the whole repo from many tens of minutes to minutes, but I didn't try that again) The date caching gets removed because priority queue already caches the key.
Arseniy Alekseyev -
r51076:02fe65f7 default
Show More
Name Size Modified Last Commit Author
/ contrib
automation
benchmarks
chg
docker
examples
fuzz
hgsh
merge-lists
packaging
perf-utils
plan9
python-zstandard
vagrant
vim
win32
Makefile.python Loading ...
all-revsets.txt Loading ...
asv.conf.json Loading ...
base-revsets.txt Loading ...
bash_completion Loading ...
bdiff-torture.py Loading ...
byteify-strings.py Loading ...
casesmash.py Loading ...
catapipe.py Loading ...
check-code.py Loading ...
check-commit Loading ...
check-config.py Loading ...
check-py3-compat.py Loading ...
check-pytype.sh Loading ...
clang-format-ignorelist Loading ...
debugcmdserver.py Loading ...
debugshell.py Loading ...
dumprevlog Loading ...
editmerge Loading ...
editmergeps.bat Loading ...
editmergeps.ps1 Loading ...
genosxversion.py Loading ...
heptapod-ci.yml Loading ...
hg-ssh Loading ...
hg-test-mode.el Loading ...
hgclient.py Loading ...
hgk Loading ...
hgperf Loading ...
hgweb.fcgi Loading ...
hgweb.wsgi Loading ...
import-checker.py Loading ...
install-windows-dependencies.ps1 Loading ...
logo-droplets.svg Loading ...
memory.py Loading ...
mercurial.el Loading ...
mq.el Loading ...
perf.py Loading ...
phab-clean.py Loading ...
phab-refresh-stack.sh Loading ...
pull_logger.py Loading ...
pylintrc Loading ...
python-hook-examples.py Loading ...
python3-ratchet.py Loading ...
python3-whitelist Loading ...
relnotes Loading ...
revsetbenchmarks.py Loading ...
setup-pytype.sh Loading ...
showstack.py Loading ...
simplemerge Loading ...
synthrepo.py Loading ...
tcsh_completion Loading ...
tcsh_completion_build.sh Loading ...
testparseutil.py Loading ...
undumprevlog Loading ...
xml.rnc Loading ...
zsh_completion Loading ...