help: fix a py3 error interpolating Set into b'%s'
I can't reproduce it, but a coworker hit this with `hg help -v` with 6.2.3:
...
File "mercurial\help.pyc", line 865, in helplist
TypeError: %b requires a bytes-like object, or an object that implements __bytes__, not 'set'
I can confirm that the original expression fails in `hg debugshell`, and the new
one works. The second instance was found by searching for "%s", but PyCharm
detects a lot of variables as Any type, so I have no idea if there are other
lurking problems.
--- a/mercurial/help.py Sat Nov 19 16:14:20 2022 +0100
+++ b/mercurial/help.py Sun Nov 20 15:55:27 2022 -0500
@@ -864,7 +864,7 @@
if missing_order:
ui.develwarn(
b'help categories missing from CATEGORY_ORDER: %s'
- % missing_order
+ % stringutil.forcebytestr(missing_order)
)
# List per category.
@@ -897,7 +897,7 @@
if missing_order:
ui.develwarn(
b'help categories missing from TOPIC_CATEGORY_ORDER: %s'
- % missing_order
+ % stringutil.forcebytestr(missing_order)
)
# Output topics per category.