# HG changeset patch # User Pierre-Yves David # Date 2023-02-02 16:38:14 # Node ID 9e69d9d6f4cf773e5ecfcfd5c1ef6b0c6c4db4fc # Parent ecaf00089461460dda5fc3134dd924b450cf37a5 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. diff --git a/mercurial/utils/urlutil.py b/mercurial/utils/urlutil.py --- a/mercurial/utils/urlutil.py +++ b/mercurial/utils/urlutil.py @@ -233,7 +233,7 @@ class url: self.path = path # leave the query string escaped - for a in (b'user', b'passwd', b'host', b'port', b'path', b'fragment'): + for a in ('user', 'passwd', 'host', 'port', 'path', 'fragment'): v = getattr(self, a) if v is not None: setattr(self, a, urlreq.unquote(v))