Mercurial > hg
view tests/revnamesext.py @ 35928:b0d2885c5945
sshpeer: make "instance" a function
The API is that peer modules must provide an "instance" symbol
that is callable to return a peer.
Making "instance" a function instead of an alias to "sshpeer"
makes it easier to monkeypatch the "sshpeer" type. It will also
make it possible to turn instance() into a factory function of
sorts that returns different types based on connection properties.
Differential Revision: https://phab.mercurial-scm.org/D2024
author | Gregory Szorc <gregory.szorc@gmail.com> |
---|---|
date | Sun, 04 Feb 2018 12:47:37 -0800 |
parents | 46fa46608ca5 |
children | 086fc71fbb09 |
line wrap: on
line source
# Dummy extension to define a namespace containing revision names from __future__ import absolute_import from mercurial import ( namespaces, ) def reposetup(ui, repo): names = {'r%d' % rev: repo[rev].node() for rev in repo} namemap = lambda r, name: names.get(name) nodemap = lambda r, node: ['r%d' % repo[node].rev()] ns = namespaces.namespace('revnames', templatename='revname', logname='revname', listnames=lambda r: names.keys(), namemap=namemap, nodemap=nodemap) repo.names.addnamespace(ns)