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/commandserver.py Thu Feb 02 17:20:46 2023 +0100
+++ b/mercurial/commandserver.py Thu Feb 02 17:20:54 2023 +0100
@@ -332,7 +332,7 @@
# any kind of interaction must use server channels, but chg may
# replace channels by fully functional tty files. so nontty is
# enforced only if cin is a channel.
- if not util.safehasattr(self.cin, b'fileno'):
+ if not util.safehasattr(self.cin, 'fileno'):
ui.setconfig(b'ui', b'nontty', b'true', b'commandserver')
req = dispatch.request(