# HG changeset patch # User Pierre-Yves DAVID # Date 1654037659 -7200 # Node ID 69983adfed067f095cfcb420718fe10505648de6 # Parent a321304269cf5eaad6ae59cb910be70f705a2c02 debugindex: introduce a concept of "verbose-only" column We are about to add a bunch of new column and most of them are probably only relevant to --verbose. We add some more testing of the `--verbose` mode in a sidedata context. diff -r a321304269cf -r 69983adfed06 mercurial/revlogutils/debug.py --- a/mercurial/revlogutils/debug.py Wed Jun 01 00:59:44 2022 +0200 +++ b/mercurial/revlogutils/debug.py Wed Jun 01 00:54:19 2022 +0200 @@ -22,12 +22,13 @@ class _column_base: """constains the definition of a revlog column - name: the column header, - value_func: the function called to get a value, - size: the width of the column. + name: the column header, + value_func: the function called to get a value, + size: the width of the column, + verbose_only: only include the column in verbose mode. """ - def __init__(self, name, value_func, size=None): + def __init__(self, name, value_func, size=None, verbose=False): self.name = name self.value_func = value_func if size is not NODE_SIZE: @@ -35,6 +36,7 @@ size = 8 # arbitrary default size = max(len(name), size) self._size = size + self.verbose_only = verbose def get_size(self, node_size): if self._size is NODE_SIZE: @@ -43,7 +45,7 @@ return self._size -def debug_column(name, size=None): +def debug_column(name, size=None, verbose=False): """decorated function is registered as a column name: the name of the column, @@ -55,6 +57,7 @@ name=name, value_func=func, size=size, + verbose=verbose, ) INDEX_ENTRY_DEBUG_COLUMN.append(entry) return entry @@ -113,6 +116,8 @@ header_pieces = [] for column in INDEX_ENTRY_DEBUG_COLUMN: + if column.verbose_only and not ui.verbose: + continue size = column.get_size(idlen) name = column.name header_pieces.append(name.rjust(size)) @@ -126,6 +131,8 @@ entry = index[rev] first = True for column in INDEX_ENTRY_DEBUG_COLUMN: + if column.verbose_only and not ui.verbose: + continue if not first: fm.plain(b' ') first = False diff -r a321304269cf -r 69983adfed06 tests/test-sidedata.t --- a/tests/test-sidedata.t Wed Jun 01 00:59:44 2022 +0200 +++ b/tests/test-sidedata.t Wed Jun 01 00:54:19 2022 +0200 @@ -40,6 +40,18 @@ entry-0001 size 4 entry-0002 size 32 + $ hg debug-revlog-index --verbose -c + rev linkrev nodeid p1-nodeid p2-nodeid + 0 0 7049e48789d7 000000000000 000000000000 + 1 1 2707720c6597 7049e48789d7 000000000000 + 2 2 40f977031323 2707720c6597 000000000000 + + $ hg debug-revlog-index --verbose -m + rev linkrev nodeid p1-nodeid p2-nodeid + 0 0 b85d294330e3 000000000000 000000000000 + 1 1 1a0aec305c63 b85d294330e3 000000000000 + 2 2 104258a4f75f 1a0aec305c63 000000000000 + Check upgrade behavior ======================