Skip to content

chore(deps): update FastAPI and Redis with synchronized backend locks - #706

Closed
dependabot[bot] wants to merge 15 commits into
mainfrom
dependabot/pip/backend/fastapi-gte-0.141.1
Closed

chore(deps): update FastAPI and Redis with synchronized backend locks#706
dependabot[bot] wants to merge 15 commits into
mainfrom
dependabot/pip/backend/fastapi-gte-0.141.1

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Aug 2, 2026

Copy link
Copy Markdown
Contributor

What

Consolidates the overlapping backend dependency upgrades into one atomic, reviewable change:

  • FastAPI minimum: >=0.137.1>=0.141.1
  • Redis minimum: >=5.0.0>=8.1.0
  • Regenerates both hash-locked backend environments from the combined declaration.

Why

The original FastAPI and Redis Dependabot PRs both modify backend/pyproject.toml and the same two lockfiles. Merging them independently would create avoidable conflicts and could temporarily leave declarations and installed lockfile versions inconsistent. This PR is the canonical combined upgrade; PR #705 is superseded.

Required validation

The one-shot current-head repair workflow must:

  1. regenerate backend/requirements.lock and backend/requirements-dev.lock with hashes;
  2. prove both locks resolve FastAPI >=0.141.1 and Redis >=8.1.0;
  3. install with --require-hashes;
  4. pass mypy and the complete backend pytest suite;
  5. remove the one-shot workflow before the branch becomes review-ready.

The PR remains draft until those checks and the unresolved lockfile review finding are satisfied.

@dependabot dependabot Bot added dependencies Pull requests that update a dependency file python Pull requests that update python code labels Aug 2, 2026
@coderabbitai

coderabbitai Bot commented Aug 2, 2026

Copy link
Copy Markdown

Review Change Stack

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 95bf8aea-2e9b-4447-8288-1f01158c7d46

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
📝 Walkthrough

Walkthrough

Changes

FastAPI 의존성 업데이트

Layer / File(s) Summary
FastAPI 최소 버전 선언
backend/pyproject.toml
FastAPI 최소 요구 버전이 0.137.1에서 0.141.1로 변경되었습니다.

Estimated code review effort: 1 (Trivial) | ~2분

Suggested reviewers: seonghobae

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed 제목은 FastAPI 업데이트를 정확히 언급하지만 Redis와 백엔드 잠금 변경은 실제 변경 사항에 없습니다.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch dependabot/pip/backend/fastapi-gte-0.141.1

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@backend/pyproject.toml`:
- Line 14: Regenerate both backend/requirements.lock and
backend/requirements-dev.lock from the FastAPI declaration in pyproject.toml so
they resolve FastAPI to at least 0.141.1 and contain matching package hashes;
then run the required security scans.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 7ace3dcf-ce10-484b-89d3-02241b444e9e

📥 Commits

Reviewing files that changed from the base of the PR and between 5b7d8d6 and 8a8c55b.

📒 Files selected for processing (1)
  • backend/pyproject.toml

Comment thread backend/pyproject.toml
requires-python = ">=3.10,<3.15"
dependencies = [
"fastapi>=0.137.1",
"fastapi>=0.141.1",

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🗄️ Data Integrity & Integration | 🟠 Major | ⚡ Quick win

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
set -eu
printf '%s\n' '--- changed files ---'
git status --short
printf '%s\n' '--- pyproject.toml ---'
cat -n backend/pyproject.toml | sed -n '1,45p'
printf '%s\n' '--- FastAPI entries in lock files ---'
rg -n -C 3 '^fastapi([<=>!~]|$)|fastapi==' backend/requirements.lock backend/requirements-dev.lock || true
printf '%s\n' '--- lock file headers and relevant sections ---'
sed -n '1,35p' backend/requirements.lock
sed -n '450,485p' backend/requirements.lock
printf '%s\n' '--- diff summary and diff for relevant files ---'
git diff --stat
git diff -- backend/pyproject.toml backend/requirements.lock backend/requirements-dev.lock

Repository: ContextualWisdomLab/pg-erd-cloud

Length of output: 7738


🏁 Script executed:

#!/bin/bash
set -eu
printf '%s\n' '--- changed files ---'
git status --short
printf '%s\n' '--- pyproject.toml ---'
cat -n backend/pyproject.toml | sed -n '1,45p'
printf '%s\n' '--- FastAPI entries in lock files ---'
rg -n -C 3 '^fastapi([<=>!~]|$)|fastapi==' backend/requirements.lock backend/requirements-dev.lock || true
printf '%s\n' '--- lock file headers and relevant sections ---'
sed -n '1,35p' backend/requirements.lock
sed -n '450,485p' backend/requirements.lock
printf '%s\n' '--- diff summary and relevant diff ---'
git diff --stat
git diff -- backend/pyproject.toml backend/requirements.lock backend/requirements-dev.lock

Repository: ContextualWisdomLab/pg-erd-cloud

Length of output: 7728


🏁 Script executed:

#!/bin/bash
set -eu
printf '%s\n' '--- references to the lock files and install commands ---'
rg -n -C 3 'requirements(-dev)?\.lock|uv pip (sync|install|compile)|pip(-compile)? .*requirements' .github backend Makefile* justfile* 2>/dev/null || true
printf '%s\n' '--- all FastAPI declarations and pins ---'
rg -n -C 2 'fastapi|FastAPI' --glob '!backend/requirements*.lock' .
printf '%s\n' '--- pyproject remainder and lock generation metadata ---'
cat -n backend/pyproject.toml | sed -n '35,130p'
rg -n -C 2 '^# .*uv pip compile|^fastapi==' backend/requirements.lock backend/requirements-dev.lock

Repository: ContextualWisdomLab/pg-erd-cloud

Length of output: 28715


🏁 Script executed:

#!/bin/bash
set -eu
printf '%s\n' '--- references to lock files and install commands ---'
rg -n -C 3 'requirements(-dev)?\.lock|uv pip (sync|install|compile)|pip(-compile)? .*requirements' .github backend Makefile* justfile* 2>/dev/null || true
printf '%s\n' '--- all FastAPI declarations and pins ---'
rg -n -C 2 'fastapi|FastAPI' --glob '!backend/requirements*.lock' .
printf '%s\n' '--- pyproject remainder and lock metadata ---'
cat -n backend/pyproject.toml | sed -n '35,130p'
rg -n -C 2 '^# .*uv pip compile|^fastapi==' backend/requirements.lock backend/requirements-dev.lock

Repository: ContextualWisdomLab/pg-erd-cloud

Length of output: 28700


두 해시 잠금 파일을 FastAPI 선언과 동기화하세요.

backend/requirements.lockbackend/requirements-dev.lockfastapi==0.137.1을 고정합니다. 이는 backend/pyproject.toml의 최소 버전 0.141.1보다 낮습니다. Docker와 CI는 이 잠금 파일을 사용하므로 FastAPI 0.137.1을 설치합니다.

두 잠금 파일을 재생성하여 fastapi>=0.141.1을 만족하는 버전과 해시를 반영하세요. 갱신 후 필수 보안 스캔을 실행하세요.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@backend/pyproject.toml` at line 14, Regenerate both backend/requirements.lock
and backend/requirements-dev.lock from the FastAPI declaration in pyproject.toml
so they resolve FastAPI to at least 0.141.1 and contain matching package hashes;
then run the required security scans.

Source: Coding guidelines

Copy link
Copy Markdown
Collaborator

@dependabot rebase

Copy link
Copy Markdown
Collaborator

@jules Please make this dependency update operationally complete before merge:

  1. Backend production installs backend/requirements.lock and CI installs backend/requirements-dev.lock with --require-hashes; neither path installs from pyproject.toml. Both lockfiles currently pin fastapi==0.137.1, so this one-line PR would still test and ship the old version while declaring fastapi>=0.141.1.
  2. Regenerate both lockfiles from the updated backend/pyproject.toml with the exact uv pip compile commands documented in their headers, targeting Python 3.10 and preserving hashes. Verify both lockfiles resolve FastAPI 0.141.1 or a later compatible release and compatible Starlette/Pydantic dependencies.
  3. Install each regenerated lockfile using python -m pip install --require-hashes, then run backend mypy and the full pytest suite. Verify the production Docker build/install path also succeeds from requirements.lock.
  4. Keep changes scoped to the dependency declaration and the two generated lockfiles; do not hand-edit generated hashes.

Updates the requirements on [fastapi](https://github.com/fastapi/fastapi) to permit the latest version.
- [Release notes](https://github.com/fastapi/fastapi/releases)
- [Commits](fastapi/fastapi@0.137.1...0.141.1)

---
updated-dependencies:
- dependency-name: fastapi
  dependency-version: 0.141.1
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot
dependabot Bot force-pushed the dependabot/pip/backend/fastapi-gte-0.141.1 branch from 8a8c55b to b2f638a Compare August 3, 2026 01:48
@seonghobae
seonghobae self-requested a review as a code owner August 3, 2026 05:06
@seonghobae
seonghobae marked this pull request as draft August 3, 2026 05:07
@seonghobae seonghobae changed the title chore(deps): update fastapi requirement from >=0.137.1 to >=0.141.1 in /backend chore(deps): update FastAPI and Redis with synchronized backend locks Aug 3, 2026

Copy link
Copy Markdown
Collaborator

@jules Complete the consolidated FastAPI and Redis dependency upgrade on the current branch. Regenerate both hash-locked backend environments from backend/pyproject.toml, prove FastAPI resolves to at least 0.141.1 and Redis to at least 8.1.0, install with --require-hashes, run mypy and the complete pytest suite, remove the one-shot repair workflow, and push only verified lockfiles. Keep the PR draft until the unresolved lockfile review finding is genuinely addressed.

Copy link
Copy Markdown
Collaborator

Superseded by #725. The Dependabot-owned branch could not persist regenerated hash-locked environments because its workflow token is intentionally read-only. #725 reproduces the same atomic FastAPI/Redis upgrade on a maintainer-owned branch, has regenerated both lockfiles to FastAPI 0.141.1 and Redis 8.1.0, validated hash-only installation, mypy, and the complete backend test suite, and removes the one-shot repair machinery. Closing this duplicate without resolving its still-valid lockfile thread on the stale branch.

@seonghobae seonghobae closed this Aug 3, 2026
@dependabot @github

dependabot Bot commented on behalf of github Aug 3, 2026

Copy link
Copy Markdown
Contributor Author

OK, I won't notify you again about this release, but will get in touch when a new version is available. If you'd rather skip all updates until the next major or minor version, let me know by commenting @dependabot ignore this major version or @dependabot ignore this minor version. You can also ignore all major, minor, or patch releases for a dependency by adding an ignore condition with the desired update_types to your config file.

If you change your mind, just re-open this PR and I'll resolve any conflicts on it.

@dependabot
dependabot Bot deleted the dependabot/pip/backend/fastapi-gte-0.141.1 branch August 3, 2026 11:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file python Pull requests that update python code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant