Skip to content

chore(deps): bump gitpython and postcss to advisory-clear versions - #34634

Merged
yuneng-berri merged 1 commit into
litellm_internal_stagingfrom
litellm_/osv-scanner-issues-d16cf2
Jul 25, 2026
Merged

chore(deps): bump gitpython and postcss to advisory-clear versions#34634
yuneng-berri merged 1 commit into
litellm_internal_stagingfrom
litellm_/osv-scanner-issues-d16cf2

Conversation

@yuneng-berri

Copy link
Copy Markdown
Collaborator

TLDR

Problem this solves:

  • osv-scan fails on every PR right now
  • 7 findings across gitpython, postcss, brace-expansion

How it solves it:

  • gitpython 3.1.52 -> 3.1.54 clears 4 findings
  • postcss 8.5.13 -> 8.5.22 clears 1 finding
  • 2 findings deferred; their fixes are under 3 days old

Relevant issues

Linear ticket

Pre-Submission checklist

Please complete all items before asking a LiteLLM maintainer to review your PR

  • I have added meaningful tests
  • My PR passes all CI/CD checks (e.g., lint, format, unit tests)
  • My PR's scope is as isolated as possible; it only solves 1 specific problem
  • I have received a Greptile Confidence Score of at least 4/5 before requesting a maintainer review (Greptile reviews automatically once the PR is opened; only comment @greptileai to re-request a review after pushing changes)

Note on the tests box: this is a lockfile-only dependency bump with no product code touched, so the meaningful check is the scanner itself, run below against both commits. gitpython arrives transitively through the optional mlflow extra; postcss is a dashboard build-time dependency pinned in both devDependencies and overrides, so both had to move together for the pin to hold.

Delays in PR merge?

If you're seeing a delay in your PR being merged, ping the LiteLLM Team on Slack (#pr-review).

Screenshots / Proof of Fix

Same scanner and same invocation the osv-scan job runs (osv-scanner v2.3.8), run locally against the branch point and then against the tip of this branch.

Before, at commit 96f58fa:

$ osv-scanner scan source --config osv-scanner.toml -L uv.lock -L ui/litellm-dashboard/package-lock.json

Total 3 packages affected by 7 known vulnerabilities (0 Critical, 7 High, 0 Medium, 0 Low, 0 Unknown) from 2 ecosystems.
7 vulnerabilities can be fixed.

+-------------------------------------+------+-----------+-----------------------+---------+---------------+----------------------------------------+
| OSV URL                             | CVSS | ECOSYSTEM | PACKAGE               | VERSION | FIXED VERSION | SOURCE                                 |
+-------------------------------------+------+-----------+-----------------------+---------+---------------+----------------------------------------+
| https://osv.dev/GHSA-3rp5-jjmw-4wv2 | 7.0  | PyPI      | gitpython             | 3.1.52  | 3.1.53        | uv.lock                                |
| https://osv.dev/GHSA-6p8h-3wgx-97gf | 7.5  | PyPI      | gitpython             | 3.1.52  | 3.1.54        | uv.lock                                |
| https://osv.dev/GHSA-94p4-4cq8-9g67 | 7.5  | PyPI      | gitpython             | 3.1.52  | 3.1.55        | uv.lock                                |
| https://osv.dev/GHSA-fjr4-x663-mwxc | 8.1  | PyPI      | gitpython             | 3.1.52  | 3.1.54        | uv.lock                                |
| https://osv.dev/GHSA-r9mr-m37c-5fr3 | 8.8  | PyPI      | gitpython             | 3.1.52  | 3.1.54        | uv.lock                                |
| https://osv.dev/GHSA-mh99-v99m-4gvg | 7.5  | npm       | brace-expansion (dev) | 5.0.7   | 5.0.8         | ui/litellm-dashboard/package-lock.json |
| https://osv.dev/GHSA-r28c-9q8g-f849 | 7.5  | npm       | postcss               | 8.5.13  | 8.5.18        | ui/litellm-dashboard/package-lock.json |
+-------------------------------------+------+-----------+-----------------------+---------+---------------+----------------------------------------+
$ echo $?
1

After, at commit 3467871:

$ osv-scanner scan source --config osv-scanner.toml -L uv.lock -L ui/litellm-dashboard/package-lock.json

Total 2 packages affected by 2 known vulnerabilities (0 Critical, 2 High, 0 Medium, 0 Low, 0 Unknown) from 2 ecosystems.
2 vulnerabilities can be fixed.

+-------------------------------------+------+-----------+-----------------------+---------+---------------+----------------------------------------+
| OSV URL                             | CVSS | ECOSYSTEM | PACKAGE               | VERSION | FIXED VERSION | SOURCE                                 |
+-------------------------------------+------+-----------+-----------------------+---------+---------------+----------------------------------------+
| https://osv.dev/GHSA-94p4-4cq8-9g67 | 7.5  | PyPI      | gitpython             | 3.1.54  | 3.1.55        | uv.lock                                |
| https://osv.dev/GHSA-mh99-v99m-4gvg | 7.5  | npm       | brace-expansion (dev) | 5.0.7   | 5.0.8         | ui/litellm-dashboard/package-lock.json |
+-------------------------------------+------+-----------+-----------------------+---------+---------------+----------------------------------------+

The dashboard build was re-run against postcss 8.5.22 and completed clean:

$ cd ui/litellm-dashboard && npm install && npm run build
...
○  (Static)  prerendered as static content
$ echo $?
0

Type

🚄 Infrastructure

Changes

uv.lock moves gitpython from 3.1.52 to 3.1.54, which is the highest release that satisfies our dependency cooldown; 3.1.55 and 3.1.56 were both published within the last three days. That clears GHSA-3rp5-jjmw-4wv2, GHSA-6p8h-3wgx-97gf, GHSA-fjr4-x663-mwxc and GHSA-r9mr-m37c-5fr3

The dashboard moves postcss from 8.5.13 to 8.5.22 in devDependencies and in overrides, since a lockfile-only edit would be reverted by the next install. That clears GHSA-r28c-9q8g-f849 and pulls nanoid 3.3.12 -> 3.3.16 as a required transitive, which is two weeks old and outside the cooldown

Two findings are deliberately left in place. GHSA-94p4-4cq8-9g67 needs gitpython 3.1.55, published 2026-07-23; GHSA-mh99-v99m-4gvg needs brace-expansion 5.0.8, published the same day. Both clear the three-day cooldown on 2026-07-26 and will go out in a follow-up bump, so osv-scan stays red on this PR by design rather than being suppressed

Final Attestation

  • The tests check the right things, including the edge cases, and regressions in the respective real-world customer use-cases are not possible after this PR

Clears five OSV findings the scanner flags on every PR: four gitpython
advisories fixed in 3.1.54, and one postcss advisory fixed in 8.5.18.

gitpython 3.1.55 and brace-expansion 5.0.8 are left for a follow-up; both
were published less than three days ago and are still inside the
dependency cooldown window.
@yuneng-berri
yuneng-berri requested a review from a team July 25, 2026 17:30
@greptile-apps

greptile-apps Bot commented Jul 25, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

This PR updates pinned dependencies to advisory-clear versions while preserving existing dependency constraints.

  • Bumps PostCSS from 8.5.13 to 8.5.22 in the dashboard manifest, override, and lockfile.
  • Updates the corresponding Nano ID transitive dependency from 3.3.12 to 3.3.16.
  • Bumps the optional MLflow dependency chain’s GitPython package from 3.1.52 to 3.1.54.
  • Advances the UV lock resolution cutoff while retaining the configured three-day cooldown.

Confidence Score: 5/5

The PR appears safe to merge because the dependency manifests and lockfiles remain internally consistent and no actionable regression was identified.

The PostCSS consumers accept the updated patch release, the Nano ID lock entry matches PostCSS’s new requirement, and GitPython remains compatible with the unconstrained optional MLflow dependency chain and supported lock targets.

Important Files Changed

Filename Overview
ui/litellm-dashboard/package.json Updates the PostCSS development dependency and override consistently to 8.5.22; the version remains compatible with the configured dashboard tooling.
ui/litellm-dashboard/package-lock.json Regenerates the lock entries for PostCSS and its Nano ID dependency with matching versions, integrity hashes, and dependency constraints.
uv.lock Updates GitPython to 3.1.54 and records the expected lock-resolution cutoff metadata without introducing an inconsistent dependency constraint.

Reviews (1): Last reviewed commit: "chore(deps): bump gitpython and postcss ..." | Re-trigger Greptile

@yuneng-berri
yuneng-berri enabled auto-merge July 25, 2026 17:37
@codecov

codecov Bot commented Jul 25, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@yuneng-berri
yuneng-berri merged commit 2227bd5 into litellm_internal_staging Jul 25, 2026
79 of 80 checks passed
@yuneng-berri
yuneng-berri deleted the litellm_/osv-scanner-issues-d16cf2 branch July 25, 2026 17:42
@codspeed-hq

codspeed-hq Bot commented Jul 25, 2026

Copy link
Copy Markdown
Contributor

Merging this PR will not alter performance

✅ 31 untouched benchmarks


Comparing litellm_/osv-scanner-issues-d16cf2 (3467871) with litellm_internal_staging (a66bac3)1

Open in CodSpeed

Footnotes

  1. No successful run was found on litellm_internal_staging (3467871) during the generation of this report, so a66bac3 was used instead as the comparison base. There might be some changes unrelated to this pull request in this report.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants