handle multiple withitems checkpointing each other#371
Merged
jakkdl merged 3 commits intopython-trio:mainfrom Apr 21, 2025
Merged
handle multiple withitems checkpointing each other#371jakkdl merged 3 commits intopython-trio:mainfrom
jakkdl merged 3 commits intopython-trio:mainfrom
Conversation
… redundant timeouts with multiple withitems (although not when they also checkpoint each other)
Zac-HD
approved these changes
Apr 20, 2025
Member
Zac-HD
left a comment
There was a problem hiding this comment.
one concern, otherwise looks good!
Comment on lines
218
to
228
| with ( | ||
| - trio.fail_after(5), # error: 8, "trio", "fail_after" | ||
| - open("") as _, | ||
| - trio.move_on_after(5), # error: 8, "trio", "move_on_after" | ||
| - ): | ||
| - ... | ||
| - | ||
| - with ( | ||
| - trio.move_on_after(10), # error: 8, "trio", "move_on_after" | ||
| open("") as f, | ||
| ): |
Member
There was a problem hiding this comment.
Seems like a bug here, that it removes the non-cancel-scope context manager too in this case?
Member
Author
There was a problem hiding this comment.
ah no, that's the diff being dumb - an open is "added" on line 207 (in the diff file). I'll add some comments to help the diff distinguish the withs
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.
Also now handles autofixing async100 when there's multiple withitems, though it doesn't re-evaluate the With after autofixing so if a removed withitem was the only thing checkpointing another withitem, it doesn't clean up both.
fixes #367
also I have no clue how I totally hallucinated that
asyncio.timeouts.timeouthas ever been a thing??