# HG changeset patch # User Pulkit Goyal <7895pulkit@gmail.com> # Date 1598275759 -19800 # Node ID 766797f23f77843911b5e44c8585d7723b08345e # Parent f6c67bb4ca03630ec08160e2f9995daf024cb3fa debugmergestate: show extras for files which are not in mergestate With recent changes and future changes, we will like to store extras information about files which were merged automatically. Hence, we will have merge extras for files which are not in the mergestate. Differential Revision: https://phab.mercurial-scm.org/D8942 diff -r f6c67bb4ca03 -r 766797f23f77 mercurial/debugcommands.py --- a/mercurial/debugcommands.py Thu Sep 10 16:51:40 2020 +0530 +++ b/mercurial/debugcommands.py Mon Aug 24 18:59:19 2020 +0530 @@ -2016,6 +2016,7 @@ b'")}' b'{extras % " extra: {key} = {value}\n"}' b'"}' + b'{extras % "extra: {file} ({key} = {value})\n"}' ) ms = mergestatemod.mergestate.read(repo) @@ -2069,6 +2070,18 @@ fm_files.end() + fm_extras = fm.nested(b'extras') + for f, d in sorted(pycompat.iteritems(ms._stateextras)): + if f in ms: + # If file is in mergestate, we have already processed it's extras + continue + for k, v in pycompat.iteritems(d): + fm_extras.startitem() + fm_extras.data(file=f) + fm_extras.data(key=k) + fm_extras.data(value=v) + fm_extras.end() + fm.end() diff -r f6c67bb4ca03 -r 766797f23f77 tests/test-resolve.t --- a/tests/test-resolve.t Thu Sep 10 16:51:40 2020 +0530 +++ b/tests/test-resolve.t Mon Aug 24 18:59:19 2020 +0530 @@ -328,6 +328,7 @@ [ { "commits": [{"label": "working copy", "name": "local", "node": "57653b9f834a4493f7240b0681efcb9ae7cab745"}, {"label": "merge rev", "name": "other", "node": "dc77451844e37f03f5c559e3b8529b2b48d381d1"}], + "extras": [], "files": [{"ancestor_node": "2ed2a3912a0b24502043eae84ee4b279c18b90dd", "ancestor_path": "file1", "extras": [{"key": "ancestorlinknode", "value": "99726c03216e233810a2564cbc0adfe395007eac"}], "local_flags": "", "local_key": "60b27f004e454aca81b0480209cce5081ec52390", "local_path": "file1", "other_node": "6f4310b00b9a147241b071a60c28a650827fb03d", "other_path": "file1", "path": "file1", "state": "r"}, {"ancestor_node": "2ed2a3912a0b24502043eae84ee4b279c18b90dd", "ancestor_path": "file2", "extras": [{"key": "ancestorlinknode", "value": "99726c03216e233810a2564cbc0adfe395007eac"}], "local_flags": "", "local_key": "cb99b709a1978bd205ab9dfd4c5aaa1fc91c7523", "local_path": "file2", "other_node": "6f4310b00b9a147241b071a60c28a650827fb03d", "other_path": "file2", "path": "file2", "state": "u"}] } ]