Thu, 09 Aug 2018 15:05:43 -0400 fastannotate: rip out specialized support for remotefilelog
Augie Fackler <augie@google.com> [Thu, 09 Aug 2018 15:05:43 -0400] rev 39213
fastannotate: rip out specialized support for remotefilelog remotefilelog can choose to collaborate with fastannotate for now if it needs to, and in the future when we make good on our longstanding desire to move remotefilelog-like features in-house we'll make sure things are well-supported via a reasonable interface. Differential Revision: https://phab.mercurial-scm.org/D4201
Thu, 09 Aug 2018 14:56:29 -0400 fastannotate: record some TODO items from indygreg's review
Augie Fackler <augie@google.com> [Thu, 09 Aug 2018 14:56:29 -0400] rev 39212
fastannotate: record some TODO items from indygreg's review Some of these I'll address more or less right away, but some will take a while for us to resolve. Differential Revision: https://phab.mercurial-scm.org/D4200
Wed, 01 Aug 2018 11:10:41 -0400 fastannotate: write out files from server in a predictable order
Augie Fackler <augie@google.com> [Wed, 01 Aug 2018 11:10:41 -0400] rev 39211
fastannotate: write out files from server in a predictable order This is mostly for test output stabilization, but it *might* be slightly better with a ton of annotate caches because we'll write to one directory at a time rather than bouncing around randomly. Differential Revision: https://phab.mercurial-scm.org/D3995
Mon, 30 Jul 2018 22:50:00 -0400 fastannotate: initial import from Facebook's hg-experimental
Augie Fackler <augie@google.com> [Mon, 30 Jul 2018 22:50:00 -0400] rev 39210
fastannotate: initial import from Facebook's hg-experimental I made as few changes as I could to get the tests to pass, but this was a bit involved due to some churn in the blame code since someone last gave fastannotate any TLC. There's still follow-up work here to rip out support for old versions of hg and to integrate the protocol with modern standards. Some performance numbers (all on my 2016 MacBook Pro with a 2.6Ghz i7): Mercurial mercurial/manifest.py traditional blame time: real 1.050 secs (user 0.990+0.000 sys 0.060+0.000) build cache time: real 5.900 secs (user 5.720+0.000 sys 0.110+0.000) fastannotate time: real 0.120 secs (user 0.100+0.000 sys 0.020+0.000) Mercurial mercurial/localrepo.py traditional blame time: real 3.330 secs (user 3.220+0.000 sys 0.070+0.000) build cache time: real 30.610 secs (user 30.190+0.000 sys 0.230+0.000) fastannotate time: real 0.180 secs (user 0.160+0.000 sys 0.020+0.000) mozilla-central dom/ipc/ContentParent.cpp traditional blame time: real 7.640 secs (user 7.210+0.000 sys 0.380+0.000) build cache time: real 98.650 secs (user 97.000+0.000 sys 0.950+0.000) fastannotate time: real 1.580 secs (user 1.340+0.000 sys 0.240+0.000) mozilla-central dom/base/nsDocument.cpp traditional blame time: real 17.110 secs (user 16.490+0.000 sys 0.500+0.000) build cache time: real 399.750 secs (user 394.520+0.000 sys 2.610+0.000) fastannotate time: real 1.780 secs (user 1.530+0.000 sys 0.240+0.000) So building the cache is expensive (but might be faster with xdiff enabled), but the blame results are *way* faster. Differential Revision: https://phab.mercurial-scm.org/D3994
Thu, 16 Aug 2018 05:50:49 +0200 util: improve handling of truncated compressed streams
Joerg Sonnenberger <joerg@bec.de> [Thu, 16 Aug 2018 05:50:49 +0200] rev 39209
util: improve handling of truncated compressed streams If the compressed stream is over as marked by the reader providing nothing new and the compression engine is not providing data, bail out. This can happen in practise when the server misbehaves and would result in an infinite loop otherwise. Differential Revision: https://phab.mercurial-scm.org/D4297
Fri, 10 Aug 2018 23:24:33 +0800 zsh_completion: update all options
Anton Shestakov <av6@dwimlabs.net> [Fri, 10 Aug 2018 23:24:33 +0800] rev 39208
zsh_completion: update all options It's just too hard to further split this patch. What it does: - adds missing flags - removes flags that are no longer there - updates flag descriptions and argument names - adds * where using the same option many times is okay - groups with () mutually exclusive flags that can't be used together - adds + and = to options that need arguments - removes + and = from options that don't take any arguments - fixes minor issues and a typo Differential Revision: https://phab.mercurial-scm.org/D4267
Fri, 10 Aug 2018 14:46:56 +0800 zsh_completion: run hg with HGPLAINEXCEPT=alias to list commands
Anton Shestakov <av6@dwimlabs.net> [Fri, 10 Aug 2018 14:46:56 +0800] rev 39207
zsh_completion: run hg with HGPLAINEXCEPT=alias to list commands This is what contrib/bash_completion does, looks like a sensible thing to do. Differential Revision: https://phab.mercurial-scm.org/D4266
Fri, 10 Aug 2018 14:41:41 +0800 zsh_completion: remove completion for obsolete graphlog extension
Anton Shestakov <av6@dwimlabs.net> [Fri, 10 Aug 2018 14:41:41 +0800] rev 39206
zsh_completion: remove completion for obsolete graphlog extension Differential Revision: https://phab.mercurial-scm.org/D4265
(0) -30000 -10000 -3000 -1000 -300 -100 -30 -10 -8 +8 +10 +30 +100 +300 +1000 +3000 +10000 tip