Mercurial > evolve
view contrib/hammerclient.py @ 5507:95478db35f88 stable
topic: fix the `topic(...)` revset to not select commits without a topic
The problem seems to be that the now removed __contains__ check would select any
revision indicated by a non-string argument. This led to `topic(head())`
returning a bunch of non-topic heads, though not as many as simply `head()`.
I'm likely misunderstanding something, because there appears to be a similar
__contains__ check for `branch()` in core. But maybe that's just harder to see
the issue, because branch names doesn't disappear like topics.
author | Matt Harbison <matt_harbison@yahoo.com> |
---|---|
date | Tue, 01 Sep 2020 23:35:43 -0400 |
parents | f97379faefa3 |
children |
line wrap: on
line source
#!/usr/bin/env python import os import sys import subprocess if len(sys.argv) < 2: execname = os.path.basename(sys.argv[0]) sys.stderr.write("usage: %s CLIENT_ID\n" % execname) client_id = sys.argv[1] subprocess.check_call(['hg', 'branch', "--force", "hammer-branch-%s" % client_id]) while True: subprocess.check_call([ 'hg', 'commit', "--config", "ui.allowemptycommit=yes", "--message", "hammer-%s" % client_id, ]) nodeid = subprocess.check_output([ 'hg', 'log', '--rev', '.', '--template', '{node}' ]) subprocess.check_call([ 'hg', 'debugobsolete', ''.join(reversed(nodeid)), nodeid ]) subprocess.check_call(['hg', 'pull']) subprocess.check_call(['hg', 'push', '--force'])