Martin von Zweigbergk <martinvonz@google.com> [Fri, 15 Nov 2019 16:04:35 -0800] rev 4964
tests: remove extra whitespace before patch in obslog output
The indent() template function was fixed in
https://phab.mercurial-scm.org/D7432 so now we have less trailing
whitespace in obslog output.
CORE-TEST-OUTPUT-UPDATE: fa246ada356b
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 18 Nov 2019 13:04:56 +0100] rev 4963
branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 18 Nov 2019 13:01:38 +0100] rev 4962
changelog: add a couple of missing entry about the next feature release
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 18 Nov 2019 12:58:02 +0100] rev 4961
changelog: fix entry in the wrong location
That change was made on default, not stable.
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 18 Nov 2019 12:55:44 +0100] rev 4960
changelog: add a wheelbarrow of missing entries
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 18 Nov 2019 11:46:59 +0100] rev 4959
heptapod-ci: simpler CI
We have a mercurial clone available in the docker image now. This will same some
time to avoid a full Mercurial clone for each run.
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 17 Nov 2019 01:23:48 +0100] rev 4958
heptapod-ci: run the test with color
This make the result easier to read.
Anton Shestakov <av6@dwimlabs.net> [Wed, 13 Nov 2019 13:47:55 +0700] rev 4957
compat: compatibility for cl.nodemap.get vs cl.index.get_rev
Anton Shestakov <av6@dwimlabs.net> [Wed, 13 Nov 2019 13:43:46 +0700] rev 4956
compat: compatibility for pathuril.dirs vs util.dirs
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 16 Nov 2019 01:45:40 +0100] rev 4955
obslog: phase divergence fix for 5c41bb482867
I forgot to pull the latest version before publishing the topic :-(
Martin von Zweigbergk <martinvonz@google.com> [Sat, 16 Nov 2019 01:44:31 +0100] rev 4954
obslog: phase divergence fix for b135591bec1a
I forgot to pull the latest version before publishing the topic :-(
Martin von Zweigbergk <martinvonz@google.com> [Fri, 15 Nov 2019 10:25:46 -0800] rev 4953
obslog: make {descdiff} not be indented and leave that to the template
Same idea as the previous patch and same explanation for changes to
the test case.
Martin von Zweigbergk <martinvonz@google.com> [Fri, 15 Nov 2019 09:53:42 -0800] rev 4952
obslog: make {patch} not be indented and leave that to the template
This removes some unwanted indentation from the tests. In the first
case, it's because indent() doesn't indent a blank line. In the second
case, it's because we used templating with {patch} and had not
requested indentation (but we still got it before this patch).
Note that tests will only pass with a very recent Mercurial (one with
https://phab.mercurial-scm.org/D7432 applied).
Martin von Zweigbergk <martinvonz@google.com> [Thu, 07 Nov 2019 13:40:53 -0800] rev 4951
obslog: make {succnodes} be full hex nodes
It should be up to the user to shorten the nodeid as much or as little
as they like.
Martin von Zweigbergk <martinvonz@google.com> [Fri, 08 Nov 2019 07:19:18 -0800] rev 4950
obslog: remove now-unused code for plain styling
We now always use a non-plain formatter for the non-local-filtering
code paths, so we can remove the code for plain styling.
I couldn't figure out how to replace the fm.formatlist() by something
less about formatting, so I've only removed the irrelevant arguments
from those calls.
Martin von Zweigbergk <martinvonz@google.com> [Thu, 07 Nov 2019 23:17:34 -0800] rev 4949
obslog: redefine default output as a template, unless -f was given
This was easier than I expected to do without affecting any test
output at all.
`hg obslog -f` is pretty broken with templating. For example, it
inserts a single "date" field, but it provides two values for it if
the dates are different. That results in a traceback when running
e.g. `hg obslog -f -Tfoo` with non-local obsmarkers with different
dates. We need to figure out what we want to put in the template for
the filtered case. I've just left it out for now.
Martin von Zweigbergk <martinvonz@google.com> [Thu, 07 Nov 2019 23:15:29 -0800] rev 4948
obslog: add newline after all markers in non-graphlog to match graphlog
I'd also be fine with doing the reverse if that's preferred, but I
really want them to be the same so they can use the same template.
Martin von Zweigbergk <martinvonz@google.com> [Thu, 07 Nov 2019 22:24:50 -0800] rev 4947
obslog: make reason for unavailable patch part of template
We need the reason to be in the template in order to be able to
templatize the whole output.
Martin von Zweigbergk <martinvonz@google.com> [Thu, 07 Nov 2019 16:34:01 -0800] rev 4946
obslog: make content and description patches available to templater
The code was repeatedly calling fm.write() with the same field
("patch" and "descdiff"). I think that led to the value constantly
getting replaced, so when it was used in a template (as {patch} or
{descdiff}), it would only get the last value, which was always an
empty string.
This patch fixes it by writing the full patch to a temporary buffer
and then assigning the whole patch to the formatter field.
Martin von Zweigbergk <martinvonz@google.com> [Thu, 07 Nov 2019 17:22:44 -0800] rev 4945
obslog: rename {desc-diff} to {descdiff} since the former is invalid
Martin von Zweigbergk <martinvonz@google.com> [Thu, 07 Nov 2019 17:22:16 -0800] rev 4944
tests: demonstrate broken {patch} and {desc-diff} template keywords
Anton Shestakov <av6@dwimlabs.net> [Fri, 15 Nov 2019 11:48:17 +0700] rev 4943
topic: drop compat.successorssets(), it's not used
The only place in topics that uses successorssets function is in evolvebits.py,
and it's using that function from obsutil directly.
Anton Shestakov <av6@dwimlabs.net> [Fri, 15 Nov 2019 11:37:34 +0700] rev 4942
topic: drop compat.getmarkers() and use obsutil.getmarkers() directly
The function in question was moved from obsolete to obsutil in a14e2e7f7d1f (hg
4.3).
See also 6aff4bb3970d for hgext3rd/evolve.
Martin von Zweigbergk <martinvonz@google.com> [Fri, 15 Nov 2019 08:14:06 -0800] rev 4941
cmdrewrite: avoid accessing scmutil.status fields by index
Support for indexed access is going away in Mercurial. Accessing the
fields by name is clearer anyway.
Martin von Zweigbergk <martinvonz@google.com> [Thu, 07 Nov 2019 23:10:26 -0800] rev 4940
obslog: avoid using a formatter after calling end() on it
I don't know if makes a difference, but it feels wrong to use it after
calling end(). We can simply use the parent formatter in this case.
Martin von Zweigbergk <martinvonz@google.com> [Thu, 07 Nov 2019 15:00:57 -0800] rev 4939
obslog: use plural name "effects" for list of all effects
Same reasoning as the previous patch, but here the singular was used
for the list instead.
This patch also renames the variable that represents the list of
effects to plural "effects" to reduce confusion.
Martin von Zweigbergk <martinvonz@google.com> [Thu, 07 Nov 2019 13:21:20 -0800] rev 4938
obslog: use singular name "succnode" for each element of {succnodes}
The name that we pass for formatlist() is the name of each
element. After this patch, you'll write '{succnodes % "{succnode}"}'
instead of the confusing '{succnodes % "{succnodes}"}' (where the two
"succnodes" refer to different things.
Users can write templates that are compatible across this change by
using e.g. '{succnodes % "{if(succnode, succnode, succnodes)}"}'.
Anton Shestakov <av6@dwimlabs.net> [Mon, 11 Nov 2019 03:40:20 +0700] rev 4937
docs: add SVG figures for sharing.rst
Generated by graphviz loosely based on .dot files produced by dotgraph
extension.
Anton Shestakov <av6@dwimlabs.net> [Mon, 11 Nov 2019 03:22:09 +0700] rev 4936
docs: add some up-to-date output from push/pull commands
Hopefully it's going to be helpful for users to better understand how evolve
works.
Anton Shestakov <av6@dwimlabs.net> [Mon, 11 Nov 2019 02:42:37 +0700] rev 4935
docs: add two more amend commits to simulate temporary amend commits
sharing.rst made reference to temporary amend commits and used them to
demonstrate that hidden commits are not exchanged. Nowadays, evolve doesn't
create such commits, but it still makes sense to show how they are handled
during the exchange process. So let's add two more amend commits, one for each
repo. This way the guide doesn't have to be updated too much, but doesn't lose
this important detail of working with evolve.
Unfortunately, this means that tons of hashes change, but it's better than to
have figure 4 demonstrate absolutely nothing.
Temporary amend commits were removed from test-sharing.t in 06844693bb21,
but sharing.rst continued using them for demonstration purposes. It might've
been better to replace at least some of the temporary amend commits by extra
amends back then, but oh well.