Mon, 08 Oct 2018 19:11:41 +0200 rust: rustlazyancestors.__contains__
Georges Racinet <gracinet@anybox.fr> [Mon, 08 Oct 2018 19:11:41 +0200] rev 40300
rust: rustlazyancestors.__contains__ This changeset provides a Rust implementation of the iteration performed by lazyancestor.__contains__ It has the advantage over the Python iteration to use the 'seen' set encapsuled into the dedicated iterator (self._containsiter), rather than storing emitted items in another set (self._containsseen), and hence should reduce the memory footprint. Also, there's no need to convert intermediate emitted revisions back into Python integers. At this point, it would be tempting to implement the whole lazyancestor object in Rust, but that would lead to more C wrapping code (two objects) for little expected benefits.
Sun, 14 Oct 2018 01:39:22 -0400 help: fix a missing quote character in ui.tweakdefaults
Matt Harbison <matt_harbison@yahoo.com> [Sun, 14 Oct 2018 01:39:22 -0400] rev 40299
help: fix a missing quote character in ui.tweakdefaults
Thu, 27 Sep 2018 16:55:44 +0200 rust: hooking into Python code
Georges Racinet <gracinet@anybox.fr> [Thu, 27 Sep 2018 16:55:44 +0200] rev 40298
rust: hooking into Python code We introduce a new class called 'rustlazyancestors' in the ancestors module, which is used only if parsers.rustlazyancestors does exist. The implementation of __contains__ stays unchanged, but is now backed by the Rust iterator. It would probably be a good candidate for further development, though, as it is mostly looping, and duplicates the 'seen' set. The Rust code could be further optimized, however it already gives rise to performance improvements: median timing from hg perfancestors: - on pypy: before: 0.077566s after: 0.016676s -79% - on mozilla central: before: 0.190037s after: 0.082225s -58% - on a private repository (about one million revisions): before: 0.567085s after: 0.108816s -80% - on another private repository (about 400 000 revisions): before: 1.440918s after: 0.290116s -80% median timing for hg perfbranchmap base - on pypy: before: 1.383413s after: 0.507993s -63% - on mozilla central: before: 2.821940s after: 1.258902s -55% - on a private repository (about one million revisions): before: 77.065076s after: 16.158475s -80% - on another private repository (about 401 000 revisions): before: 7.835503s after: 3.545331s -54%
Sun, 14 Oct 2018 14:10:38 +0000 py3: fix test-propertycache.py
Mark Thomas <mbthomas@fb.com> [Sun, 14 Oct 2018 14:10:38 +0000] rev 40297
py3: fix test-propertycache.py Differential Revision: https://phab.mercurial-scm.org/D5101
Sun, 14 Oct 2018 14:02:32 +0000 py3: fix test-dirstate-race.t
Mark Thomas <mbthomas@fb.com> [Sun, 14 Oct 2018 14:02:32 +0000] rev 40296
py3: fix test-dirstate-race.t Differential Revision: https://phab.mercurial-scm.org/D5106
Fri, 12 Oct 2018 18:49:11 +0200 help: adding a proper declaration for shortlist/basic commands (API)
Rodrigo Damazio <rdamazio@google.com> [Fri, 12 Oct 2018 18:49:11 +0200] rev 40295
help: adding a proper declaration for shortlist/basic commands (API) We previously used the '^' prefix to indicate that a command should be shown on the short list (shown for just "hg"), but that's a horrible hack, so I'm removing it. Differential Revision: https://phab.mercurial-scm.org/D5069
Fri, 12 Oct 2018 18:06:32 +0200 help: assigning topic categories
Rodrigo Damazio <rdamazio@google.com> [Fri, 12 Oct 2018 18:06:32 +0200] rev 40294
help: assigning topic categories Differential Revision: https://phab.mercurial-scm.org/D5068
Sat, 13 Oct 2018 02:17:41 -0700 help: assigning categories to existing commands
rdamazio@google.com [Sat, 13 Oct 2018 02:17:41 -0700] rev 40293
help: assigning categories to existing commands I'm separating this into its own commit so people can bikeshed over the actual categorization (vs the support for categories). These categories are based on the help implementation we've been using internally at Google, and have had zero complaints. Differential Revision: https://phab.mercurial-scm.org/D5067
Fri, 12 Oct 2018 17:57:36 +0200 help: splitting the topics by category
Rodrigo Damazio <rdamazio@google.com> [Fri, 12 Oct 2018 17:57:36 +0200] rev 40292
help: splitting the topics by category Differential Revision: https://phab.mercurial-scm.org/D5066
Sat, 13 Oct 2018 05:03:50 -0700 help: adding support for command categories
rdamazio@google.com [Sat, 13 Oct 2018 05:03:50 -0700] rev 40291
help: adding support for command categories Differential Revision: https://phab.mercurial-scm.org/D5065
(0) -30000 -10000 -3000 -1000 -300 -100 -10 +10 +100 +300 +1000 +3000 +10000 tip