D6381: exthelper: add some semi-useful trace logs
This revision was automatically updated to reflect the committed changes. Closed by commit rHG7d4ca1ad6537: exthelper: add some semi-useful trace logs (authored by durin42, committed by ). REPOSITORY rHG Mercurial CHANGES SINCE LAST UPDATE https://phab.mercurial-scm.org/D6381?vs=15125=15138 REVISION DETAIL https://phab.mercurial-scm.org/D6381 AFFECTED FILES mercurial/exthelper.py CHANGE DETAILS diff --git a/mercurial/exthelper.py b/mercurial/exthelper.py --- a/mercurial/exthelper.py +++ b/mercurial/exthelper.py @@ -15,9 +15,12 @@ commands, error, extensions, +pycompat, registrar, ) +from hgdemandimport import tracing + class exthelper(object): """Helper for modular extension setup @@ -135,7 +138,8 @@ for cont, funcname, wrapper in self._functionwrappers: extensions.wrapfunction(cont, funcname, wrapper) for c in self._uicallables: -c(ui) +with tracing.log(b'finaluisetup: %s', pycompat.sysbytes(repr(c))): +c(ui) def finaluipopulate(self, ui): """Method to be used as the extension uipopulate @@ -175,7 +179,8 @@ entry[1].append(opt) for c in self._extcallables: -c(ui) +with tracing.log(b'finalextsetup: %s', pycompat.sysbytes(repr(c))): +c(ui) def finalreposetup(self, ui, repo): """Method to be used as the extension reposetup @@ -187,7 +192,8 @@ - Changes to repo.__class__, repo.dirstate.__class__ """ for c in self._repocallables: -c(ui, repo) +with tracing.log(b'finalreposetup: %s', pycompat.sysbytes(repr(c))): +c(ui, repo) def uisetup(self, call): """Decorated function will be executed during uisetup To: durin42, #hg-reviewers, pulkit Cc: mercurial-devel ___ Mercurial-devel mailing list Mercurial-devel@mercurial-scm.org https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel
D6381: exthelper: add some semi-useful trace logs
durin42 created this revision. Herald added a subscriber: mercurial-devel. Herald added a reviewer: hg-reviewers. REVISION SUMMARY It'd be nice to make the trace functions a little better-named in the output, but I'm not sure how much better we can do without overhead. This at least lets you see if a single reposetup function is eating all the time or if it's spread over all of them. I needed this because Google's uber-extension has a long load time and I wasn't sure where the problem was. REPOSITORY rHG Mercurial REVISION DETAIL https://phab.mercurial-scm.org/D6381 AFFECTED FILES mercurial/exthelper.py CHANGE DETAILS diff --git a/mercurial/exthelper.py b/mercurial/exthelper.py --- a/mercurial/exthelper.py +++ b/mercurial/exthelper.py @@ -15,9 +15,12 @@ commands, error, extensions, +pycompat, registrar, ) +from hgdemandimport import tracing + class exthelper(object): """Helper for modular extension setup @@ -135,7 +138,8 @@ for cont, funcname, wrapper in self._functionwrappers: extensions.wrapfunction(cont, funcname, wrapper) for c in self._uicallables: -c(ui) +with tracing.log(b'finaluisetup: %s', pycompat.sysbytes(repr(c))): +c(ui) def finaluipopulate(self, ui): """Method to be used as the extension uipopulate @@ -175,7 +179,8 @@ entry[1].append(opt) for c in self._extcallables: -c(ui) +with tracing.log(b'finalextsetup: %s', pycompat.sysbytes(repr(c))): +c(ui) def finalreposetup(self, ui, repo): """Method to be used as the extension reposetup @@ -187,7 +192,8 @@ - Changes to repo.__class__, repo.dirstate.__class__ """ for c in self._repocallables: -c(ui, repo) +with tracing.log(b'finalreposetup: %s', pycompat.sysbytes(repr(c))): +c(ui, repo) def uisetup(self, call): """Decorated function will be executed during uisetup To: durin42, #hg-reviewers Cc: mercurial-devel ___ Mercurial-devel mailing list Mercurial-devel@mercurial-scm.org https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel