Fix nonexistent iter_content() reference in stream() docstring - #1096
Open
cognis-digital wants to merge 1 commit into
Open
Fix nonexistent iter_content() reference in stream() docstring#1096cognis-digital wants to merge 1 commit into
iter_content() reference in stream() docstring#1096cognis-digital wants to merge 1 commit into
Conversation
The docstring for httpcore.stream() tells users to read a streamed body with "for chunk in response.iter_content()", but Response has no iter_content() method -- the streaming method is iter_stream(). Running the documented snippet raises AttributeError. Correct it to iter_stream() and add a regression test pinning the documented streaming method names, since doctests are not run in CI.
fallenmi
approved these changes
Aug 26, 2026
fallenmi
left a comment
There was a problem hiding this comment.
Reviewed with Codex.
I checked this on exact head 08901009255b95b7500f2a19f6695f9983e581ae. The exact base/current master (10a658221deb38a4c5b16db55ab554b0bf731707) directs users to Response.iter_content(), which is not implemented, while Response.iter_stream() is the actual synchronous streaming API. On the head, the docstring and public API now agree.
Validation:
- repeated base/head doc-to-API oracle 100x (base mismatch, head match)
pytest -q tests/test_models.py::test_response_streaming_api_names-> 1 passed- focused Ruff format/check and mypy -> clean
git diff --check-> clean- live matrix: 7/7 successful
No blocking issues found.
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 docstring for the public
httpcore.stream()function tells users how toread a streamed response body:
But
Responsehas noiter_content()method — the streaming iterator isiter_stream()(andaiter_stream()for async). Running the documentedfor chunk in response.iter_content()raisesAttributeError.The rest of the project already uses the correct name (
docs/quickstart.mddocuments
for chunk in response.iter_stream():, and the tests useresponse.iter_stream()). This one docstring drifted because doctests arenot run in CI.
This corrects the docstring to
iter_stream()and adds a small regressiontest pinning the documented streaming method names, so the documented API
can't silently drift to a nonexistent method again.
No library behaviour changes — docs-only correctness plus a guard test.