Cap anyio below the release that requires typing_extensions 4.16 - #95
Merged
Merged
Conversation
bthomee
approved these changes
Sep 8, 2026
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.
checkshas been failing onmainsince 2026-09-02, independently of any change in this repo:anyio 4.15.0 was released on 2026-09-02 — the same day as the last green run — and requires
typing_extensions>=4.16.0.uv.lockis gitignored, so CI resolves fresh on every run and picked it up. Thetyping_extensionsactually imported comes from the devshell's Nix python at 4.15.0, which predates the lowercasesentinelalias, and it takes precedence over the venv copy.Adding
typing_extensionsas a direct dependency would not help — anyio already declarestyping_extensions>=4.16.0itself, and the venv copy is being shadowed regardless. Capping anyio is the reliable fix. Nothing in this repo imports anyio directly; it is only pulled in through FastAPI, and the cap has to be declared here because FastAPI's own constraint (anyio>=3.4.0,<5) is satisfied by the broken release.This does not affect the workload image:
Dockerfile.workloadbuilds on the uv base image rather than the devshell, so there is no Nix copy to shadow the venv.build workload imagepassed on ripple/rippled-antithesis run 33933172074 on Sep 5, three days after anyio 4.15.0 shipped.Unblocks #94.
🤖 Generated with Claude Code