Mercurial > hg
changeset 41046:f5ec93f69171
exthelper: drop fileset/revset/template support for now
Yuya raised concerns about duplicating registrar functionality. There are a
couple of ideas to work around this, which would allow bringing them back, and
then backporting to evolve. For now, I just want to get the subsequent changes
landed before the bulk b'' rewrite makes rebasing too hard.
author | Matt Harbison <matt_harbison@yahoo.com> |
---|---|
date | Sat, 22 Dec 2018 22:44:24 -0500 |
parents | c1476d095d57 |
children | 555215e2b051 |
files | mercurial/exthelper.py |
diffstat | 1 files changed, 0 insertions(+), 81 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/exthelper.py Sat Dec 22 22:26:36 2018 -0500 +++ b/mercurial/exthelper.py Sat Dec 22 22:44:24 2018 -0500 @@ -14,10 +14,7 @@ from . import ( commands, extensions, - fileset as filesetmod, registrar, - revset as revsetmod, - templatekw as templatekwmod, ) class exthelper(object): @@ -34,9 +31,6 @@ self._uicallables = [] self._extcallables = [] self._repocallables = [] - self._revsetsymbols = [] - self._filesetsymbols = [] - self._templatekws = [] self._commandwrappers = [] self._extcommandwrappers = [] self._functionwrappers = [] @@ -60,9 +54,6 @@ self._uipopulatecallables.extend(other._uipopulatecallables) self._extcallables.extend(other._extcallables) self._repocallables.extend(other._repocallables) - self._revsetsymbols.extend(other._revsetsymbols) - self._filesetsymbols.extend(other._filesetsymbols) - self._templatekws.extend(other._templatekws) self._commandwrappers.extend(other._commandwrappers) self._extcommandwrappers.extend(other._extcommandwrappers) self._functionwrappers.extend(other._functionwrappers) @@ -125,29 +116,9 @@ - Changes depending on the status of other extensions. (if extensions.find('mq')) - Add a global option to all commands - - Register revset functions """ knownexts = {} - revsetpredicate = registrar.revsetpredicate() - for name, symbol in self._revsetsymbols: - revsetpredicate(name)(symbol) - revsetmod.loadpredicate(ui, 'evolve', revsetpredicate) - - filesetpredicate = registrar.filesetpredicate() - for name, symbol in self._filesetsymbols: - filesetpredicate(name)(symbol) - # TODO: Figure out the calling extension name - filesetmod.loadpredicate(ui, 'exthelper', filesetpredicate) - - templatekeyword = registrar.templatekeyword() - for name, kw, requires in self._templatekws: - if requires is not None: - templatekeyword(name, requires=requires)(kw) - else: - templatekeyword(name)(kw) - templatekwmod.loadkeyword(ui, 'evolve', templatekeyword) - for ext, command, wrapper, opts in self._extcommandwrappers: if ext not in knownexts: try: @@ -225,58 +196,6 @@ self._repocallables.append(call) return call - def revset(self, symbolname): - """Decorated function is a revset symbol - - The name of the symbol must be given as the decorator argument. - The symbol is added during `extsetup`. - - example:: - - @eh.revset('hidden') - def revsetbabar(repo, subset, x): - args = revset.getargs(x, 0, 0, 'babar accept no argument') - return [r for r in subset if 'babar' in repo[r].description()] - """ - def dec(symbol): - self._revsetsymbols.append((symbolname, symbol)) - return symbol - return dec - - def fileset(self, symbolname): - """Decorated function is a fileset symbol - - The name of the symbol must be given as the decorator argument. - The symbol is added during `extsetup`. - - example:: - - @eh.fileset('lfs()') - def filesetbabar(mctx, x): - return mctx.predicate(...) - """ - def dec(symbol): - self._filesetsymbols.append((symbolname, symbol)) - return symbol - return dec - - def templatekw(self, keywordname, requires=None): - """Decorated function is a template keyword - - The name of the keyword must be given as the decorator argument. - The symbol is added during `extsetup`. - - example:: - - @eh.templatekw('babar') - def kwbabar(ctx): - return 'babar' - """ - def dec(keyword): - self._templatekws.append((keywordname, keyword, requires)) - return keyword - return dec - def wrapcommand(self, command, extension=None, opts=None): """Decorated function is a command wrapper