Mercurial > hg
view tests/revnamesext.py @ 34639:a568a46751b6
selectors2: do not use platform.system()
`platform.system()` may have a side effect spawning a shell executing
`uname -p`, which may print a warning when the current directory is removed:
shell-init: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
This patch changes selectors2 to test the `sys.platform` string, which is a
much safer way to detect Jython.
Jython's `sys.platform` looks like this:
Jython 2.7.1 (default:0df7adb1b397, Jun 30 2017, 19:02:43)
[OpenJDK 64-Bit Server VM (Oracle Corporation)] on java1.8.0_144
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> sys.platform
'java1.8.0_144 ( ==linux2 for targets )'
Differential Revision: https://phab.mercurial-scm.org/D1018
author | Jun Wu <quark@fb.com> |
---|---|
date | Wed, 11 Oct 2017 17:27:21 -0700 |
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)