Repository navigation
Conversation
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.
The sending flow-control guide describes waking blocked streams after
WindowUpdated, but a peer can also resize stream windows throughSETTINGS_INITIAL_WINDOW_SIZE. That path emitsRemoteSettingsChangedwithout aWindowUpdatedevent, so an application following only the documented wake-up path can remain blocked after its window grows.Document checking changed settings and rechecking each blocked stream's available window. Cover decreases (including negative windows), the unchanged connection limit, and new streams. Also narrow the
WindowUpdatedAPI description, which currently claims the event fires whenever a window changes.Related to #1193. This documents the current event API; it does not change the proposed event behavior.
Validation: a two-peer public-API exchange checks exhaustion, SETTINGS/ACK-based unblocking, negative windows, connection limits, new streams, and normal closure. All 1,662 tests pass on Python 3.14/Linux arm64 (two pytest deprecation warnings), and the Sphinx HTML build passes with warnings treated as errors. No runtime logic changes.
AI assistance was used for the documentation and validation.