changelog: add way to call the reachableroots C implementation
This patch is part of a series of patches to speed up the computation of
revset.reachableroots by introducing a C implementation. The main motivation is
to speed up smartlog on big repositories. At the end of the series, on our big
repositories the computation of reachableroots is 10-50x faster and smartlog on
is 2x-5x faster.
This patch allows us to call the new C implementation of reachableroots from
python by creating an entry point in the changelog class.
#require execbit
$ hg init repo
$ cd repo
$ echo foo > foo
$ chmod 644 foo
$ hg ci -qAm '644'
$ chmod 755 foo
$ hg ci -qAm '755'
reverting to rev 0
$ hg revert -a -r 0
reverting foo
$ hg st
M foo
$ hg diff --git
diff --git a/foo b/foo
old mode 100755
new mode 100644
$ cd ..