On Tue, Feb 14, 2017 at 7:02 PM, Gregory Szorc <gregory.sz...@gmail.com> wrote:
> > I support having dedicated code for annotating well-defined and important > Mercurial operations in tracing/profiling logs. I have a hunch that the > kinds of things we need to annotate shouldn't be called with a high enough > frequency for probe overhead to matter. > Right. > But if it does, the use of context managers can be beneficial, as those > are evaluated at module load time and the context manager can be made to > no-op and return the original function unless tracing is enabled. That's > *almost* 0 cost. > That's exactly what the implementation does :-) > Something else to consider is the interaction between tracing and progress > bars. I posit that most places we use progress bars are places we'd want to > use the proposed tracing.duration() context manager. I reckon we could > integrate tracing into the progress APIs and kill 2 birds with 1 stone. > That's again almost exactly what the implementation does, but it uses the Chrome trace feature of tracking a numeric quantity instead. It's like you read my mind ... or the patches!
_______________________________________________ Mercurial-devel mailing list Mercurial-devel@mercurial-scm.org https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel