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.
--- a/mercurial/revlog.py Thu Feb 02 17:34:17 2023 +0100
+++ b/mercurial/revlog.py Thu Feb 02 17:34:25 2023 +0100
@@ -1782,7 +1782,7 @@
"""tells whether rev is a snapshot"""
if not self._sparserevlog:
return self.deltaparent(rev) == nullrev
- elif util.safehasattr(self.index, b'issnapshot'):
+ elif util.safehasattr(self.index, 'issnapshot'):
# directly assign the method to cache the testing and access
self.issnapshot = self.index.issnapshot
return self.issnapshot(rev)