contrib/examples/fix.hgrc
author Raphaël Gomès <rgomes@octobus.net>
Thu, 30 Jan 2020 14:57:02 +0100
changeset 44293 83b2b829c94e
parent 44147 5e84a96d865b
child 45620 426294d06ddc
permissions -rw-r--r--
rust-dirstatemap: cache non normal and other parent set Performance of `hg update` was significantly worse since the introduction of the Rust `dirstatemap`. This regression was noticed by Valentin Gatien-Baron when working on a large repository, as it goes unnoticed for smaller repositories like Mercurial itself. This fix introduces the same getter/setter mechanism at `hg-core` level as for `set/get_dirs`. While this technique is, as previously discussed, quite suboptimal, it fixes an important enough problem. Refactoring `hg-core` to use the typestate pattern could be a good approach to improving code quality in a future patch. Differential Revision: https://phab.mercurial-scm.org/D8048

[fix]
clang-format:command = clang-format --style file
clang-format:pattern = set:(**.c or **.cc or **.h) and not "include:contrib/clang-format-ignorelist"

rustfmt:command = rustfmt +nightly
rustfmt:pattern = set:**.rs

black:command = black --config=black.toml -
black:pattern = set:**.py - mercurial/thirdparty/**

# Mercurial doesn't have any Go code, but if we did this is how we
# would configure `hg fix` for Go:
go:command = gofmt
go:pattern = set:**.go