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

File last commit:

r50533:5844cd8e default
r51076:02fe65f7 default
Show More
Cargo.toml
19 lines | 404 B | text/plain | TOMLLexer
[package]
name = "hg-cpython"
version = "0.1.0"
authors = ["Georges Racinet <gracinet@anybox.fr>"]
edition = "2021"
[lib]
name='rusthg'
crate-type = ["cdylib"]
[dependencies]
cpython = { version = "0.7.1", features = ["extension-module"] }
crossbeam-channel = "0.5.6"
hg-core = { path = "../hg-core"}
libc = "0.2.137"
log = "0.4.17"
env_logger = "0.9.3"
stable_deref_trait = "1.2.0"
vcsgraph = "0.2.0"