Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Clarify that the WHOX reply RPL_WHOSPCRPL may contain multiple prefixes even without the multi-prefix capability #546

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

JustAnotherArchivist
Copy link

For historical context: ircu first introduced WHOX in version 2.10.01 and appears to have originally only returned the highest prefix like regular WHO (verified in version 2.10.08.01). UndernetIRC/ircu2@7ec4144 introduced returning all prefixes and was first released in version 2.10.11. Charybdis adopted this behaviour from the first version that implemented WHOX support (3.1, commits charybdis-ircd/charybdis@48957a4 and charybdis-ircd/charybdis@02eca3f). I haven't inspected other ircds. Since both behaviours exist in released ircds, the wording is intentionally vague.

@SadieCat
Copy link
Contributor

Perhaps it should say that clients SHOULD handle this but servers SHOULD NOT emit it?

@@ -77,6 +77,9 @@ MUST be used:
- Any syntactically correct placeholder can be used for `[oplevel]` when the
server doesn't support op levels, for instance `n/a`.

Servers MAY return multiple or all applicable prefixes in the `[flags]` (`f`)
field, regardless of whether [`multi-prefix`](multi-prefix.html) is enabled.
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this should link to multi-prefix.md and the site generator will rewrite it

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hmm, this would be the only .md link in the repository. I based this link on what I found in other documents, which all use .html, e.g. in extensions/echo-message.md or extensions/extended-monitor.md.

@JustAnotherArchivist
Copy link
Author

@SadieCat I'm not sure about that. Both the ircd that invented WHOX (ircu) and at least one modern ircd (Solanum) do emit them – and have been doing so for over 23 years in the case of ircu. I'm sure a significant number of clients (including older or obscure ones without multi-prefix support) expect servers to send it, too, given that it was originally introduced specifically so clients could know the state of a channel's users accurately; this was the only way to get all prefixes at the time. Further, the WHOX document is one of the few that, to my understanding, is more of a documentation of existing technology than an IRCv3 specification. See also the PR that added it: #482

@vanosg
Copy link
Contributor

vanosg commented Jun 11, 2024

I agree that this is a gap in documentation that would be beneficial to document- I don't think we at Eggdrop are fully handling multiple flags being sent because of our perhaps outdated assumptions and a lack of explicit definition telling us otherwise. I defer to others to agree how WHOX should perform, but my personal opinion is that "WHOX flags are sent the same way WHO flags are sent" makes sense, which allows the negotiation of multi-prefix to dictate whether those WHO flags are sent in full or in part.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants