Clarify that netjoin batches can contain non-JOINs#578
Open
skizzerz wants to merge 2 commits intoircv3:masterfrom
Open
Clarify that netjoin batches can contain non-JOINs#578skizzerz wants to merge 2 commits intoircv3:masterfrom
skizzerz wants to merge 2 commits intoircv3:masterfrom
Conversation
When bursting a netjoin, AWAY may be sent to away-notify clients and MODE may be set on introduced nicks to give them e.g. channel operator status. Right now the language of the spec doesn't indicate one way or another whether these additional commands are valid inside of a netjoin batch. If they have to be excluded, then we run into issues where a client may process those unbatched AWAYs and MODEs before processing the netjoin batch and be very confused about receiving information for a user that they don't know about or isn't on the channel. Instead, clarify that these are explicitly allowed within netjoin batches. For now I just narrowly scoped to AWAY and MODE since those are directly relevant to the users joining the channel. Other things like TOPIC aren't order-dependent on a user being in the channel or not yet from a client's point of view.
Contributor
|
might as well put them in the previous paragraph IMO. As you pointed out, they are integral to keeping state consistent (and also hiding the spurious away/modes from the user). |
Move the MAY to the same paragraph and make it more generic, calling out AWAY and MODE as examples rather than an exclusive list of additional messages allowed (and adding a ref to away-notify for AWAY since it would normally otherwise not be sent out)
Member
|
LGTM, separate the errata to its own line though. |
Member
|
It's looking like we might deprecate this spec in favour of a message tag based on discussion in #579 so holding off on this until that decision has been made. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
When bursting a netjoin, AWAY may be sent to away-notify clients and MODE may be set on introduced nicks to give them e.g. channel operator status. Right now the language of the spec doesn't indicate one way or another whether these additional commands are valid inside of a netjoin batch. If they have to be excluded, then we run into issues where a client may process those unbatched AWAYs and MODEs before processing the netjoin batch and be very confused about receiving information for a user that they don't know about or isn't on the channel.
Instead, clarify that these are explicitly allowed within these batches. I narrowly scoped to messages relevant for client state tracking in the spec (with AWAY and MODE being called out as examples). Other things like TOPIC aren't order-dependent on a user being in the channel or not yet from a client's point of view and need not be included.