Tracking issue for IRC feature coverage against the clients people compare moho to -
HexChat, WeeChat, Halloy, mIRC.
This list is now clear. 24 IRCv3 capabilities are negotiated
(nobilis/src/backend/irc/connect.rs), including SASL, chathistory, draft/multiline, draft/message-redaction, draft/read-marker, draft/channel-rename, echo-message, labeled-response, account-tag, bot-mode, setname, extended-monitor and standard-replies. Earlier passes closed#48, #51, #65, #66, #73, #78, #82, #88 through #93, and #127 through #161.
The September 2026 review found four more, and all four are now settled:
#176 - a capability that arrives after connect is never taken up - done
#177 - a plaintext connection is never upgraded, because STS is not read - done
#179 - nobody has an avatar, because metadata is never asked for - done
#178 - a bouncer's networks all arrive as one server - won't implement, the
premise did not hold up (the user/network convention already works here, and the
extension is soju-only) - see that issue for the detail.
One thing #176 turned up that is worth having written down somewhere: sasl is not in WANTED_CAPS at all, because the handshake requests it before registration and drives
the exchange with a blocking read on the stream. So a CAP NEW sasl - services coming
back up - is deliberately not taken up: recording the capability without running the
exchange would make irc_has_cap(.., "sasl") true for a connection that is not signed
in. Re-authenticating an already-registered connection wants a state machine in the
router, and would be its own issue if anybody wants it.
Related, not IRC-specific: #196 (ibb.co as a second image host) matters here in
particular, because IRC has no upload of its own and a picture is shared by posting a
link to one.
Tracking issue for IRC feature coverage against the clients people compare moho to -
HexChat, WeeChat, Halloy, mIRC.
**This list is now clear.** 24 IRCv3 capabilities are negotiated
(`nobilis/src/backend/irc/connect.rs`), including SASL, `chathistory`,
`draft/multiline`, `draft/message-redaction`, `draft/read-marker`,
`draft/channel-rename`, `echo-message`, `labeled-response`, `account-tag`, `bot-mode`,
`setname`, `extended-monitor` and `standard-replies`. Earlier passes closed #48, #51,
#65, #66, #73, #78, #82, #88 through #93, and #127 through #161.
The September 2026 review found four more, and all four are now settled:
- #176 - a capability that arrives after connect is never taken up - **done**
- #177 - a plaintext connection is never upgraded, because STS is not read - **done**
- #179 - nobody has an avatar, because metadata is never asked for - **done**
- #178 - a bouncer's networks all arrive as one server - **won't implement**, the
premise did not hold up (the `user/network` convention already works here, and the
extension is soju-only) - see that issue for the detail.
One thing #176 turned up that is worth having written down somewhere: `sasl` is not in
`WANTED_CAPS` at all, because the handshake requests it before registration and drives
the exchange with a blocking read on the stream. So a `CAP NEW sasl` - services coming
back up - is deliberately not taken up: recording the capability without running the
exchange would make `irc_has_cap(.., "sasl")` true for a connection that is not signed
in. Re-authenticating an already-registered connection wants a state machine in the
router, and would be its own issue if anybody wants it.
Related, not IRC-specific: #196 (ibb.co as a second image host) matters here in
particular, because IRC has no upload of its own and a picture is shared by posting a
link to one.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Tracking issue for IRC feature coverage against the clients people compare moho to -
HexChat, WeeChat, Halloy, mIRC.
This list is now clear. 24 IRCv3 capabilities are negotiated
(
nobilis/src/backend/irc/connect.rs), including SASL,chathistory,draft/multiline,draft/message-redaction,draft/read-marker,draft/channel-rename,echo-message,labeled-response,account-tag,bot-mode,setname,extended-monitorandstandard-replies. Earlier passes closed #48, #51,#65, #66, #73, #78, #82, #88 through #93, and #127 through #161.
The September 2026 review found four more, and all four are now settled:
premise did not hold up (the
user/networkconvention already works here, and theextension is soju-only) - see that issue for the detail.
One thing #176 turned up that is worth having written down somewhere:
saslis not inWANTED_CAPSat all, because the handshake requests it before registration and drivesthe exchange with a blocking read on the stream. So a
CAP NEW sasl- services comingback up - is deliberately not taken up: recording the capability without running the
exchange would make
irc_has_cap(.., "sasl")true for a connection that is not signedin. Re-authenticating an already-registered connection wants a state machine in the
router, and would be its own issue if anybody wants it.
Related, not IRC-specific: #196 (ibb.co as a second image host) matters here in
particular, because IRC has no upload of its own and a picture is shared by posting a
link to one.