Mercurial > public > mercurial-scm > hg-stable
comparison mercurial/debugcommands.py @ 50595:1ea84989c389
safehasattr: pass attribute name as string instead of bytes
This is a step toward replacing `util.safehasattr` usage with plain `hasattr`.
The builtin function behave poorly in Python2 but this was fixed in Python3.
These change are done one by one as they tend to have a small odd to trigger
puzzling breackage.
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Thu, 02 Feb 2023 17:23:03 +0100 |
parents | 8020be6a9d28 |
children | 88362b8bc476 |
comparison
equal
deleted
inserted
replaced
50594:8020be6a9d28 | 50595:1ea84989c389 |
---|---|
1941 @command(b'debugindexstats', []) | 1941 @command(b'debugindexstats', []) |
1942 def debugindexstats(ui, repo): | 1942 def debugindexstats(ui, repo): |
1943 """show stats related to the changelog index""" | 1943 """show stats related to the changelog index""" |
1944 repo.changelog.shortest(repo.nullid, 1) | 1944 repo.changelog.shortest(repo.nullid, 1) |
1945 index = repo.changelog.index | 1945 index = repo.changelog.index |
1946 if not util.safehasattr(index, b'stats'): | 1946 if not util.safehasattr(index, 'stats'): |
1947 raise error.Abort(_(b'debugindexstats only works with native code')) | 1947 raise error.Abort(_(b'debugindexstats only works with native code')) |
1948 for k, v in sorted(index.stats().items()): | 1948 for k, v in sorted(index.stats().items()): |
1949 ui.write(b'%s: %d\n' % (k, v)) | 1949 ui.write(b'%s: %d\n' % (k, v)) |
1950 | 1950 |
1951 | 1951 |