Closed ghost closed 9 years ago
There is a bit of stuff already included from IRCv3 (particularly, capabilities negotiation and multi-prefix), but you're correct. Other extensions would be useful, and I can include them. I'll work on it.
I added a function to request capabilities, and a type-safe API for doing so. I've included all of IRCv3.1 except for SASL (which will be more involved). I'll try to work on IRCv3.2 soon.
Fantastic, I look forward to being able to utilize this module for IRCv3.2 testing purposes. :+1:
As of now, most of the IRCv3.1 and IRCv3.2 extensions are in place. sasl
, tls
, batch
, and metadata
are the only official remaining ones.
I've added help wanted because I'm not entirely sure when I'll have the time to figure out sasl
and tls
, but I'll take PRs for batch
and metadata
, too.
I probably wouldn't bother with tls
, since it really hasn't worked out in practice due to secure implementation being a monumental pain in the rear for clients. sasl
is fairly simple, though; it uses the same authentication mechanisms non-IRC SASL does, which means the PLAIN
and EXTERNAL
mechanisms. (EXTERNAL
just instructs the authentication agent to use some external information, such as a cert fingerprint on SSL connections.)
That's good to know. I'm working on metadata
right now. So, hopefully, this'll all be more-or-less done soon.
Everything except sasl
(ignoring tls
) has been implemented. So, I'm going to close this issue and open a new one specifically about sasl
.
Actually, I'll just keep this open until I implement sasl
. It appears to be a lot simpler than I remembered thinking it was.
As of ba58934ee97f000cf3aa78fb55ca186db9b02ce6, I think we support everything except tls
.
Any thoughts on adding sts
support?
@lol768 I just gave it a look, and it seems doable. Please open another issue for it.
Howdy. Do you have plans to implement IRCv3 support? If not, I strongly urge you to, as IRCv3 provides a number of useful extensions to IRC (particularly
account-notify
,extended-join
, andaccount-msg
, for bot authors) that improve the experience for users and developers alike.RFCs 2810 through 2813 have a lot of content that have nothing to do with real-world IRC, as they're basically what IRCnet thought IRC should be at the time they were published. Nobody else bit, unfortunately, and even IRCnet today has generally moved on. The IRCv3 working group is working on a 'core protocol' based on 3.1 with 3.2's core specifications (IIRC), to be published by the IETF using the same mechanism XMPP did, but I wouldn't wait for that to materialize.