{"action":"closed","issue":{"url":"https://api.github.com/repos/quicwg/base-drafts/issues/425","repository_url":"https://api.github.com/repos/quicwg/base-drafts","labels_url":"https://api.github.com/repos/quicwg/base-drafts/issues/425/labels{/name}","comments_url":"https://api.github.com/repos/quicwg/base-drafts/issues/425/comments","events_url":"https://api.github.com/repos/quicwg/base-drafts/issues/425/events","html_url":"https://github.com/quicwg/base-drafts/issues/425","id":218087556,"number":425,"title":"Do not require clients to reset initial streams","user":{"login":"igorlord","id":25256216,"avatar_url":"https://avatars3.githubusercontent.com/u/25256216?v=3","gravatar_id":"","url":"https://api.github.com/users/igorlord","html_url":"https://github.com/igorlord","followers_url":"https://api.github.com/users/igorlord/followers","following_url":"https://api.github.com/users/igorlord/following{/other_user}","gists_url":"https://api.github.com/users/igorlord/gists{/gist_id}","starred_url":"https://api.github.com/users/igorlord/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/igorlord/subscriptions","organizations_url":"https://api.github.com/users/igorlord/orgs","repos_url":"https://api.github.com/users/igorlord/repos","events_url":"https://api.github.com/users/igorlord/events{/privacy}","received_events_url":"https://api.github.com/users/igorlord/received_events","type":"User","site_admin":false},"labels":[{"id":481871361,"url":"https://api.github.com/repos/quicwg/base-drafts/labels/design","name":"design","color":"1d76db","default":false},{"id":481871399,"url":"https://api.github.com/repos/quicwg/base-drafts/labels/transport","name":"transport","color":"fbca04","default":false}],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2017-03-30T05:47:51Z","updated_at":"2017-05-03T01:55:55Z","closed_at":"2017-05-03T01:55:55Z","body":"The draft currently requires clients to reset initial streams beyond the value declared by the server.\r\n> Similarly, a client might exceed the initial stream limit declared by the server.  A client MUST reset any streams that exceed this limit.\r\n\r\nThis can be problematic for applications where stream IDs are meaningful, since the client will never be able to reopen a previously-reset stream ID. It is also wasteful of bandwidth, in case the server is willing to accept the extra data.\r\n\r\nAlso, the paragraph in its entirety is either unclear or self-contradictory:\r\n>A client MUST reset any streams that exceed this limit. A server SHOULD reset any streams it cannot handle [...]\r\n\r\nIf the client MUST reset extra streams, whether server can or cannot handle the extra streams becomes irrelevant -- they are being reset!\r\n\r\nInstead, we should require that the client stops sending any additional STREAM frames for the extra streams (even retransmissions) until the server indicates that it is ready for those streams via LIMIT_UPDATE (#419).  The server should be free to reset what it cannot handle (but for an application with meaningful stream IDs this would render the connection useless)."}}
{"actor":{"display_login":"martinthomson"}}