How IRC adds features without replacing the protocol
IRCv3 extends existing IRC through capability negotiation: clients request the features they support, allowing older software to keep working. Message tags carry extra data, while SASL supports authentication during connection setup. The specifications are released individually when stable, rather than as one version bundle. Features such as standardized history requests remain marked work in progress, so support must be checked per extension.
IRCv3 Working Group
Why it matters
The specifications are a useful case study in evolving a deployed protocol incrementally.
More context
This is evergreen protocol reading. Start with capability negotiation and message tags, then inspect which extensions your client and server implement before designing around them.
Keep in mind
A specification’s existence does not imply universal deployment; draft and stable extensions have different guarantees.
Original read