ircv3.github.io icon indicating copy to clipboard operation
ircv3.github.io copied to clipboard

Clarify what it means for clients to support `batch`

Open DanielOaks opened this issue 8 years ago • 4 comments

It's pretty explicit when servers support batches. Q: Do they send batches. A: Y/N.

However, when it comes to clients... it's much less explicit. Some example questions we could apply:

  • Do they request the batch capability by default?
  • Internally, can they track which messages are part of which batches?
  • Can they post-process messages after they receive the 'batch end' message, collapsing them to display more nicely?
  • Do they correctly collapse one or more of the standard batch types, and handle them explicitly?

I dunno, it's hard to say when a client really supports 'batches'. What I think makes the most sense is for the actual batch column on the standard support page to be green when the client requests / can request batch (and handle messages in batches without dropping them or similar), and to create a similar batch-types support page similar to the SASL mechs support page, detailing exactly which batches are supported.

The above is what I'll be going by for the future, and I'll make that batch types support page sometime soon.

DanielOaks avatar Nov 09 '17 20:11 DanielOaks

To clarify: are you talking about the spec, or about support tables? Spec is vague by design, to allow clients make use of batches as they see fit. Regarding the support tables, I agree, it would be useful to know how exactly each client handles batches.

DarthGandalf avatar Nov 09 '17 20:11 DarthGandalf

Echoing @DarthGandalf, clients may want to handle batches in their own way.

However, as long as a client can request + handle batch commands then they they do support batch. If a client has no need to send batch requests then the support pages showing this may come across as penalising in comparison to others for no good reason.

prawnsalad avatar Nov 09 '17 20:11 prawnsalad

IMO supporting batch shouldn't involve supporting any particular batch type. It should just be requesting and supporting the infrastructure for receiving and handling batches.

We can have a separate support table for specific batch types.

sadiepowell avatar Nov 09 '17 20:11 sadiepowell

Coolcool, in that case we're all pretty much on the same page, can just keep doing this in the future. I'll leave this issue open 'til #45 is resolved and add a note somewhere so we know this going forward.

edit: @DarthGandalf just the support tables yeah

DanielOaks avatar Nov 09 '17 21:11 DanielOaks