Update fastapi to 0.139.1 - #597
Conversation
📝 WalkthroughWalkthroughFastAPI is updated in ChangesFastAPI dependency update
Estimated code review effort: 1 (Trivial) | ~2 minutes 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 2
🤖 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 `@src/requirements.txt`:
- Line 1: Update src/requirements.txt by pinning gitpython to an explicit safe
release and replacing the outdated uvicorn==0.4.6 pin with a safe release. Keep
both dependencies version-pinned and preserve the existing requirements format.
- Line 1: Update the FastAPI dependency pin in requirements.txt from the
unavailable 0.139.1 release to the available 0.139.0 release, unless this
project intentionally uses a private package index.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
| @@ -1,3 +1,3 @@ | |||
| fastapi==0.6.4 | |||
| fastapi==0.139.1 | |||
There was a problem hiding this comment.
🔒 Security & Privacy | 🟠 Major | ⚡ Quick win
🧩 Analysis chain
🏁 Script executed:
git ls-files | rg '(^|/)(requirements\.txt|poetry\.lock|Pipfile\.lock|uv\.lock|lock\.txt|constraints\.txt|pyproject\.toml|package-lock\.json|pnpm-lock\.yaml|yarn\.lock)$'Repository: salimfadhley/dockerized_python_playground
Length of output: 200
🏁 Script executed:
sed -n '1,40p' src/requirements.txt && printf '\n---\n' && rg -n 'GitPython|Uvicorn|uvicorn|gitpython' -S .Repository: salimfadhley/dockerized_python_playground
Length of output: 301
Pin the dependency versions
src/requirements.txt leaves gitpython unpinned and still pins uvicorn==0.4.6; bump both to safe releases before merging.
🧰 Tools
🪛 OSV Scanner (2.4.0)
[CRITICAL] 1-1: gitpython 3.1.9: undefined
(PYSEC-2022-42992)
[CRITICAL] 1-1: gitpython 3.1.9: undefined
(PYSEC-2023-137)
[CRITICAL] 1-1: gitpython 3.1.9: undefined
(PYSEC-2023-161)
[CRITICAL] 1-1: gitpython 3.1.9: undefined
(PYSEC-2023-165)
[CRITICAL] 1-1: gitpython 3.1.9: undefined
(PYSEC-2024-4)
[CRITICAL] 1-1: gitpython 3.1.9: undefined
(PYSEC-2026-2161)
[CRITICAL] 1-1: gitpython 3.1.9: undefined
(PYSEC-2026-2162)
[CRITICAL] 1-1: gitpython 3.1.9: undefined
(PYSEC-2026-2163)
[CRITICAL] 1-1: gitpython 3.1.9: Untrusted search path under some conditions on Windows allows arbitrary code execution
[CRITICAL] 1-1: gitpython 3.1.9: GitPython reference APIs has a path traversal vulnerability that allows arbitrary file write and delete outside the repository
[CRITICAL] 1-1: gitpython 3.1.9: GitPython blind local file inclusion
[CRITICAL] 1-1: gitpython 3.1.9: GitPython vulnerable to Remote Code Execution due to improper user input validation
[CRITICAL] 1-1: gitpython 3.1.9: GitPython: Newline injection in config_writer() section parameter bypasses CVE-2026-42215 patch, enabling RCE via core.hooksPath
[CRITICAL] 1-1: gitpython 3.1.9: GitPython vulnerable to remote code execution due to insufficient sanitization of input arguments
[CRITICAL] 1-1: gitpython 3.1.9: GitPython: Newline injection in config_writer().set_value() enables RCE via core.hooksPath
[CRITICAL] 1-1: gitpython 3.1.9: GitPython untrusted search path on Windows systems leading to arbitrary code execution
[CRITICAL] 1-1: gitpython 3.1.9: GitPython: Unsafe option check validates multi_options before shlex.split transformation
[HIGH] 1-1: uvicorn 0.4.6: undefined
(PYSEC-2020-150)
[HIGH] 1-1: uvicorn 0.4.6: undefined
(PYSEC-2020-151)
[HIGH] 1-1: uvicorn 0.4.6: Log injection in uvicorn
[HIGH] 1-1: uvicorn 0.4.6: HTTP response splitting in uvicorn
🤖 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 `@src/requirements.txt` at line 1, Update src/requirements.txt by pinning
gitpython to an explicit safe release and replacing the outdated uvicorn==0.4.6
pin with a safe release. Keep both dependencies version-pinned and preserve the
existing requirements format.
Source: Linters/SAST tools
🎯 Functional Correctness | 🔴 Critical | ⚡ Quick win
🧩 Analysis chain
🌐 Web query:
FastAPI 0.139.1 PyPI release
💡 Result:
As of July 16, 2026, there is no FastAPI version 0.139.1. The latest version available on PyPI is 0.139.0, which was released on July 1, 2026 [1][2][3].
Citations:
- 1: https://pypi.org/project/fastapi/
- 2: https://github.com/fastapi/fastapi/releases/tag/0.139.0
- 3: https://github.com/fastapi/fastapi/releases
🏁 Script executed:
#!/bin/bash
set -euo pipefail
printf '\n### src/requirements.txt\n'
nl -ba src/requirements.txt | sed -n '1,120p'
printf '\n### references to GitPython / Uvicorn / FastAPI pins\n'
rg -n --hidden --no-ignore-vcs -S '^(gitpython|GitPython|uvicorn|FastAPI|fastapi)==|gitpython|uvicorn' src . || trueRepository: salimfadhley/dockerized_python_playground
Length of output: 245
🏁 Script executed:
#!/bin/bash
set -euo pipefail
printf '\n### src/requirements.txt\n'
cat -n src/requirements.txt | sed -n '1,120p'
printf '\n### references to GitPython / Uvicorn / FastAPI pins\n'
rg -n --hidden --no-ignore-vcs -S '^(gitpython|GitPython|uvicorn|FastAPI|fastapi)==|gitpython|uvicorn' src . || trueRepository: salimfadhley/dockerized_python_playground
Length of output: 550
Pin an available FastAPI release. fastapi==0.139.1 doesn’t exist on PyPI, so standard installs will fail; use 0.139.0 unless you rely on a private index.
🧰 Tools
🪛 OSV Scanner (2.4.0)
[CRITICAL] 1-1: gitpython 3.1.9: undefined
(PYSEC-2022-42992)
[CRITICAL] 1-1: gitpython 3.1.9: undefined
(PYSEC-2023-137)
[CRITICAL] 1-1: gitpython 3.1.9: undefined
(PYSEC-2023-161)
[CRITICAL] 1-1: gitpython 3.1.9: undefined
(PYSEC-2023-165)
[CRITICAL] 1-1: gitpython 3.1.9: undefined
(PYSEC-2024-4)
[CRITICAL] 1-1: gitpython 3.1.9: undefined
(PYSEC-2026-2161)
[CRITICAL] 1-1: gitpython 3.1.9: undefined
(PYSEC-2026-2162)
[CRITICAL] 1-1: gitpython 3.1.9: undefined
(PYSEC-2026-2163)
[CRITICAL] 1-1: gitpython 3.1.9: Untrusted search path under some conditions on Windows allows arbitrary code execution
[CRITICAL] 1-1: gitpython 3.1.9: GitPython reference APIs has a path traversal vulnerability that allows arbitrary file write and delete outside the repository
[CRITICAL] 1-1: gitpython 3.1.9: GitPython blind local file inclusion
[CRITICAL] 1-1: gitpython 3.1.9: GitPython vulnerable to Remote Code Execution due to improper user input validation
[CRITICAL] 1-1: gitpython 3.1.9: GitPython: Newline injection in config_writer() section parameter bypasses CVE-2026-42215 patch, enabling RCE via core.hooksPath
[CRITICAL] 1-1: gitpython 3.1.9: GitPython vulnerable to remote code execution due to insufficient sanitization of input arguments
[CRITICAL] 1-1: gitpython 3.1.9: GitPython: Newline injection in config_writer().set_value() enables RCE via core.hooksPath
[CRITICAL] 1-1: gitpython 3.1.9: GitPython untrusted search path on Windows systems leading to arbitrary code execution
[CRITICAL] 1-1: gitpython 3.1.9: GitPython: Unsafe option check validates multi_options before shlex.split transformation
[HIGH] 1-1: uvicorn 0.4.6: undefined
(PYSEC-2020-150)
[HIGH] 1-1: uvicorn 0.4.6: undefined
(PYSEC-2020-151)
[HIGH] 1-1: uvicorn 0.4.6: Log injection in uvicorn
[HIGH] 1-1: uvicorn 0.4.6: HTTP response splitting in uvicorn
🤖 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 `@src/requirements.txt` at line 1, Update the FastAPI dependency pin in
requirements.txt from the unavailable 0.139.1 release to the available 0.139.0
release, unless this project intentionally uses a private package index.
Source: MCP tools
|
Closing this in favor of #598 |
This PR updates fastapi from 0.6.4 to 0.139.1.
Changelog
0.139.1
0.139.0
0.138.1
0.138.0
0.137.2
0.137.1
0.137.0
0.136.3
0.136.2
0.136.1
0.136.0
0.135.4
0.135.3
0.135.2
0.135.1
0.135.0
0.134.0
0.133.1
0.133.0
0.132.1
0.132.0
0.131.0
0.130.0
0.129.2
0.129.1
0.129.0
0.128.8
0.128.7