fix(deps): pin click>=8.3.3 to clear PYSEC-2026-2132 (CI run #30306866673) - #134
Draft
Sbussiso wants to merge 1 commit into
Draft
fix(deps): pin click>=8.3.3 to clear PYSEC-2026-2132 (CI run #30306866673)#134Sbussiso wants to merge 1 commit into
Sbussiso wants to merge 1 commit into
Conversation
…ict) CI run #30306866673 (Test & Deploy) failed on the `Backend tests` → `Dependency scan (pip-audit)` step: Found 1 known vulnerability in 1 package Name Version ID Fix Versions click 8.3.1 PYSEC-2026-2132 8.3.3 `click` is a transitive dependency — pulled in by `uvicorn`, which depends on `click` with no version specifier, so uv resolved it to 8.3.1, the version flagged by: - PYSEC-2026-2132 / CVE-2026-7246 / GHSA-47fr-3ffg-hgmw - Command injection in click.edit(), fixed in 8.3.3 No app code calls click.edit() (CLI helper used by uvicorn's launcher), so the vulnerable path isn't reachable in this service — but pip-audit --strict is a deploy gate and correctly fails the scan. Fix: add `click>=8.3.3` to [tool.uv].constraint-dependencies in backend/pyproject.toml so the resolver floors the transitive click at a non-vulnerable version. uv re-locked click 8.3.1 -> 8.4.2. No top-level dependency change. Constraint is removable once uvicorn pins click>=8.3.3 itself (currently unbounded) or the advisory is withdrawn. Verified locally: $ cd backend && uv sync --extra dev && uv run pip-audit --strict Updated click v8.3.1 -> v8.4.2 No known vulnerabilities found This is the same click pin that draft PRs #116-#121 attempted on 2026-07-20 against dead ci-fix/* branches that never landed; click is still 8.3.1 on master, so the strict scan keeps failing. This PR targets master directly. --- Auto-triaged by Hermes coder from CI failure webhook (run #30306866673).
Sbussiso
referenced
this pull request
Jul 27, 2026
Bumps [fastapi](https://github.com/fastapi/fastapi) from 0.139.2 to 0.140.7. - [Release notes](https://github.com/fastapi/fastapi/releases) - [Commits](fastapi/fastapi@0.139.2...0.140.7) --- updated-dependencies: - dependency-name: fastapi dependency-version: 0.140.7 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com>
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.
CI failure being fixed
Failed run: #30306866673 — Test & Deploy
Branch:
dependabot/uv/backend/fastapi-0.140.7(merged to master as PR #131 / commita66b071, branch since deleted) · Commit:f89011fFailing job/step:
Backend tests→Dependency scan (pip-audit)Root cause
pip-audit --strictfailed with:clickis a transitive dependency — pulled in byuvicorn, which declaresclickwith no version specifier. uv therefore resolved it to8.3.1, the version flagged by:click.edit(), fixed in 8.3.3No app code calls
click.edit()(it's a CLI helper used by uvicorn's launcher), so the vulnerable path isn't reachable in this service — butpip-audit --strictis a deploy gate and correctly fails the scan.Fix
Add
click>=8.3.3to[tool.uv].constraint-dependenciesinbackend/pyproject.tomlso the resolver floors the transitiveclickat a non-vulnerable version. uv re-lockedclick 8.3.1 → 8.4.2. No top-level dependency change. Constraint is removable once uvicorn pinsclick>=8.3.3itself (currently unbounded) or the advisory is withdrawn.Verification
Files changed
backend/pyproject.toml— addclick>=8.3.3constraint (+13 lines, matching the style of the existing transitive-constraint block)backend/uv.lock— click bumped 8.3.1 → 8.4.2 + constraint registered in[manifest].constraintsWhy a fresh PR (the #116–#121 history)
Draft PRs #116–#121 (2026-07-20) all attempted this same click pin, but each targeted a dead
ci-fix/*branch that never landed, so click is still 8.3.1 on master and the strict scan keeps failing on every run. This PR targetsmasterdirectly so the fix actually lands.Auto-triaged by Hermes coder from CI failure webhook (run #30306866673).