Open Colduction opened 1 month ago
CC @neild
I have no objection to adding the field to the enum. I don't think we really should be in the business of providing an enumeration of HTTP/2 settings ids, but given that we already have one there doesn't seem to be any harm in staying up to date.
In fact I didn't mean just adding it's ID, I meant it would be great to make it easier to configure and use this setting like other SETTING frame's settings for ease of use for custom/experimental usages.
Also thanks for your replies.
x/net/http2 currently doesn't support RFC 7540 stream prioritization by default.
We have http2.NewPriorityWriteScheduler, but this is known to be buggy (see https://go.dev/issue/58804), we have no evidence that it's useful (https://go.dev/issue/58804#issuecomment-1470330633), RFC 7540 prioritization is deprecated (https://www.rfc-editor.org/rfc/rfc9113.html#section-5.3), and we have a proposal to deprecate the x/net/http2 WriteScheduler interface entirely (https://go.dev/issue/67817).
So I think the only reasonable thing x/net/http2 could do with SETTINGS_NO_RFC7540_PRIORITIES is to unilaterally send it with a value of '1'.
Yes, that would be great to send this (SETTINGS_NO_RFC7540_PRIORITIES) SETTING frame's setting with a default value of '1
'.
I hope the Go community adds this feature for the next x/net/http2
update.
Thanks in advance!
I have no objection to sending SETTINGS_NO_RFC7530_PRIORITIES=1 when using the default WriteScheduler. (And always, if/when we drop WriteScheduler support someday.)
Change https://go.dev/cl/621175 mentions this issue: http2: support SETTINGS_NO_RFC7540_PRIORITIES
Proposal Details
According to RFC 9217: Section 2, P1, the
SETTINGS_NO_RFC7540_PRIORITIES
is now a known setting inSETTINGS
frame.It is also used in Firefox 132.0-b8 (Dev channel), if you could add it in net/http2 for devs who have experimental usages, that would be awesome.
Like listing it's ID beside other settings here:
Thanks to Go team!