Libera-Chat / sable

GNU Affero General Public License v3.0
77 stars 8 forks source link

`MODE #channel` does not send 329 RPL_CHANNELCREATED #130

Closed slingamn closed 1 month ago

slingamn commented 1 month ago

In response to a successful MODE #channel (i.e. list channel modes), Sable sends 324 RPL_CHANNELMODEIS but not 329 RPL_CHANNELCREATED (also referred to as RPL_CREATIONTIME):

https://modern.ircdocs.horse/#rplcreationtime-329

This numeric is not in either of the RFCs. It seems to have been introduced by Bahamut and become a de facto standard, as per https://www.alien.net.au/irc/irc2numerics.html

progval commented 1 month ago

spec says "Servers MAY also return the RPL_CREATIONTIME (329) numeric following RPL_CHANNELMODEIS."

If Sable is the only server not to do it, then could you amend the spec to SHOULD, and add an irctest for that?

DasBrain commented 1 month ago

Channel created makes only sense for networks that store the channel timestamp somewhere.
So... All IRC networks except IRCnet (they did reject the TS approach) and maybe a few others.

slingamn commented 1 month ago

Right, irc2 doesn't send it either.

slingamn commented 1 month ago

MAY actually seems correct here, because is this numeric even useful to clients?

TheDaemoness commented 1 month ago

Kinda, yes. At least one client (glirc) processes it to show it to users as part of information about a channel.

DasBrain commented 1 month ago

Both hexchat and weechat display it to users as well:

Here the response when the user enters /mode in a channel:

Hexchat:

* Channel #libera modes: +CPTntf #libera-overflow
* Channel #libera created on Fri Apr 23 23:05:33 2021

Weechat:

17:55 -- Mode #libera [+CPTntf #libera-overflow]
17:55 -- Channel created on Fri, 23 Apr 2021 23:05:33
slingamn commented 1 month ago

Makes sense, I opened a PR here: https://github.com/ircdocs/modern-irc/pull/238

I agree with Val's implicit recommendation that Sable specifically doesn't need to send it.