Mercurial > evolve
comparison CHANGELOG @ 5453:7f80558c9b8d stable
topic: treat argument to --topic as a literal topic name explicitly
We already do treat it as a string (i.e. not a special revset language symbol)
that needs to be escaped, because we use %s in repo.revs(), which escapes and
single-quotes the appropriate argument. But now we abort in case user supplies
topic name that doesn't exist.
Before this patch, when user ran something like `hg push --topic .`, this code
would use 'topic(".") - obsolete()' revset, which would get an empty set from
repo.revs() unless there was a topic named "." (unlikely, because this name is
reserved). This code would then add an empty set to the 'rev' argument of the
original hg push command. And `hg push` without -r will try and push
everything, and not just changesets on a specific topic.
author | Anton Shestakov <av6@dwimlabs.net> |
---|---|
date | Thu, 11 Jun 2020 18:50:29 +0800 |
parents | 31a72d43d20f |
children | e31e7618cad4 |
comparison
equal
deleted
inserted
replaced
5451:31a72d43d20f | 5453:7f80558c9b8d |
---|---|
11 * obslog: make obslog --no-origin -f work with multiple successor sets | 11 * obslog: make obslog --no-origin -f work with multiple successor sets |
12 | 12 |
13 topic (0.19.1) | 13 topic (0.19.1) |
14 | 14 |
15 * compatibility with Mercurial 5.5 | 15 * compatibility with Mercurial 5.5 |
16 | |
17 * topic: hg push --topic does-not-exist now doesn't try to push unrelated | |
18 changesets and aborts instead | |
16 | 19 |
17 10.0.0 -- 2020-05-09 | 20 10.0.0 -- 2020-05-09 |
18 -------------------- | 21 -------------------- |
19 | 22 |
20 * compat: clean up old compatibility code | 23 * compat: clean up old compatibility code |