Upgrade toolchain and move to Python 3.14 - #19
Merged
Conversation
Refresh the lockfile across the board (FastAPI 0.140.7, Starlette 1.3, OpenTelemetry 1.44/0.65b0, structlog 26, wrapt 2), update the ruff pre-commit hook from v0.8.6 to v0.16.0 with the ruff-check id and apply its fixes, and move to Python 3.14 across .python-version, requires-python, ruff target-version, and the Docker base image. Pin the Dockerfile uv stage, bump CI to checkout@v7 and setup-uv@v9.0.0, and add weekly grouped Dependabot updates. No FastAPI hold is needed: rate limiting here is an in-house http middleware calling limits directly, not slowapi's SlowAPIMiddleware default_limits path that FastAPI >=0.137 breaks, and the full suite passes on the new stack. The dev compose Postgres stays on 16 pending a coordinated production upgrade.
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.
Applies the api-template refresh.
ruff-checkid) + autofixesuv lock --upgrade: FastAPI 0.140.7, Starlette 1.3.1, OTel 1.44/0.65b0, structlog 26, wrapt 2v9.0.0; Dockerfile uv stage pinned; weekly grouped Dependabot addedWhy no
fastapi<0.136hold (unlike vagrant-story-api #86): rate limiting is an in-house http middleware callinglimitsdirectly — slowapi'sSlowAPIMiddleware/default_limitspath that FastAPI ≥0.137 breaks isn't used — and the suite passes on the fully-upgraded stack.Deliberately not bumped: dev compose Postgres 16 (coordinate with production separately). Deploy note: Docker base 3.14 ships on next deploy.