Skip to content

fix(deps): bump pillow to 13.0.0 - #693

Merged
dylan-openhands merged 1 commit into
mainfrom
vuln-agent/2026-11-05-automation-major-pillow
Nov 9, 2026
Merged

dylan-openhands merged 1 commit into
mainfrom
vuln-agent/2026-11-05-automation-major-pillow

Conversation

@openhands-agent

@openhands-agent openhands-agent commented Nov 5, 2026 •

Copy link
Copy Markdown
Contributor

Opened by an automated OpenHands agent.

Risk: 3/10 — a major bump of one transitive dependency with a lockfile-only diff; none of the removed APIs are used.

Upgrades 1 dependency to fix 28 vulnerabilities (5 critical).

Evidence

  1. The 2026-11-04 scan of ghcr.io/openhands/automation:1.26.1 as shipped in OpenHands-Cloud openhands/0.96.0 found 1 package with known CRITICAL or HIGH vulnerabilities that already have a released fix.
  2. This PR moves pillow from major version 12 to 13; the breaking changes are listed below. Our code does not import pillow. It gets in through openhands-sdk, which uses only Image.open, Image.thumbnail and Image.save in openhands/sdk/llm/utils/image_resize.py. OpenHands/integrations-hub already ships pillow 13.0.0 with openhands-sdk.
  3. This PR changes uv.lock so the image builds with the fixed versions. Nothing else changes.

Breaking changes

Change Used in our code Adaptation
Drops Python 3.10 no; the project requires Python >= 3.12 none
Saving I mode images as PNG no longer clips to 16 bits openhands-sdk image_resize.py saves resized images in their original format. A 32-bit I mode PNG would now raise there; that function catches every exception and sends the original image unresized none
Image.fromarray mode no longer changes data types no none
Image.Image.get_child_images() moved to ImageFile.ImageFile no none
Image._show removed no none
ImageCms.ImageCmsProfile.product_name and .product_info removed no none
ExifTags.IFD.Makernote removed no none

Upgrades

Package Image From → To How it gets in Fixes
pillow automation 12.3.0 → 13.0.0 transitive through openhands-sdk CVE-2026-96639 (critical), CVE-2026-112393 (critical), CVE-2026-112398 (critical), CVE-2026-112403 (critical), CVE-2026-112900 (critical), GHSA-78g4-xqwv-q3g8 (high), CVE-2026-96637 (high), CVE-2026-96640 (high), CVE-2026-96642 (high), CVE-2026-96643 (high), CVE-2026-96644 (high), CVE-2026-96778 (high), CVE-2026-112390 (high), CVE-2026-112392 (high), CVE-2026-112397 (high), CVE-2026-112399 (high), CVE-2026-112400 (high), CVE-2026-112402 (high), CVE-2026-112404 (high), CVE-2026-112405 (high), CVE-2026-112406 (high), CVE-2026-112892 (high), CVE-2026-112893 (high), CVE-2026-112894 (high), CVE-2026-112895 (high), CVE-2026-112896 (high), CVE-2026-112897 (high), CVE-2026-112902 (high)

Verification

Customers get this fix once a release includes this change and the OpenHands-Cloud chart pins that release. The next scan after that should no longer report these vulnerabilities.

Refs OSS-13504

Jev-Fast-Audit

⚡ Jev fast audit · estimates · 0.39s · commit 1ea7074
Strongest signal: No primary concern selected.
Evidence: No primary concern to locate.
Coverage: ⚠️ reduced context — partial coverage; 1/1 hunks, 1/1 files (missing context: 2).

All estimates and evidence
Estimate Likelihood / value Direct evidence
SQL injection 2.0% No direct hunk selected
Command injection 2.0% No direct hunk selected
Weakened authentication 2.0% No direct hunk selected
Weakened authorization 3.0% No direct hunk selected
Contract regression 13.0% No direct hunk selected
Data loss 3.0% No direct hunk selected
Sensitive data disclosure 2.0% No direct hunk selected
Unexpected data transfer 3.0% No direct hunk selected
Credential misuse 3.0% No direct hunk selected
Untrusted instruction authority 2.0% No direct hunk selected
Package source redirection 4.0% No direct hunk selected
Unverified remote execution 3.0% No direct hunk selected
Privileged environment access 3.0% No direct hunk selected
Security assessment bypass 5.0% No direct hunk selected
Prohibited workload 2.0% No direct hunk selected
Primary concern None selected; confidence 74.0% No primary concern to locate

@github-actions github-actions Bot added the type: fix A bug fix label Nov 5, 2026
@github-actions

github-actions Bot commented Nov 5, 2026

Copy link
Copy Markdown
Contributor

Coverage

Warning

Your comment is too long (maximum is 65536 characters), so the coverage report was not added. See the job log for how to reduce it.

@dylan-openhands
dylan-openhands merged commit e0ae846 into main Nov 9, 2026
13 checks passed
@openhands-release-bot openhands-release-bot Bot added the released: 1.31.0 Shipped in 1.31.0 label Nov 9, 2026
@openhands-release-bot

Copy link
Copy Markdown
Contributor

🚀 Released in 1.31.0.

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

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants