chore(deps): update dependency pillow to v12 [security]#14215
chore(deps): update dependency pillow to v12 [security]#14215renovate-bot wants to merge 1 commit into
Conversation
There was a problem hiding this comment.
Code Review
This pull request updates the pillow dependency to version 12.2.0 across multiple requirements.txt files. The reviewer feedback consistently highlights that Pillow 12.2.0 requires Python 3.10 or later, which will cause installation failures in environments supporting older Python versions (3.7, 3.8, and 3.9) currently targeted by these files. It is recommended to use environment markers to provide compatible versions for older Python environments while allowing the upgrade for newer ones.
| numpy==1.26.4; python_version == '3.9' | ||
| numpy==1.24.4; python_version == '3.8' | ||
| pillow==10.4.0 | ||
| pillow==12.2.0 |
There was a problem hiding this comment.
Pillow 12.2.0 requires Python 3.10 or later. This file explicitly supports Python 3.8 and 3.9 (as seen in the numpy and scipy pins), so pinning to version 12.2.0 without environment markers will break the installation for those versions.
pillow==10.4.0; python_version < '3.10'
pillow==12.2.0; python_version >= '3.10'
| pillow==12.2.0; python_version < '3.8' | ||
| pillow==12.2.0; python_version >= '3.8' |
There was a problem hiding this comment.
Pillow 12.2.0 requires Python 3.10 or later. These environment markers explicitly target Python versions (like < '3.8') that are incompatible with Pillow 12, leading to installation failures. While version 10.4.0 (or 9.5.0 for 3.7) is vulnerable to the security issues mentioned in this PR, it is the last version compatible with those Python environments.
pillow==9.5.0; python_version < '3.8'
pillow==10.4.0; python_version >= '3.8' and python_version < '3.10'
pillow==12.2.0; python_version >= '3.10'
| pillow==12.2.0; python_version < '3.8' | ||
| pillow==12.2.0; python_version >= '3.8' |
There was a problem hiding this comment.
Pillow 12.2.0 requires Python 3.10 or later. These environment markers explicitly target Python versions that are incompatible with Pillow 12, leading to installation failures.
pillow==9.5.0; python_version < '3.8'
pillow==10.4.0; python_version >= '3.8' and python_version < '3.10'
pillow==12.2.0; python_version >= '3.10'
| pillow==12.2.0; python_version < '3.8' | ||
| pillow==12.2.0; python_version >= '3.8' |
There was a problem hiding this comment.
Pillow 12.2.0 requires Python 3.10 or later. These environment markers explicitly target Python versions that are incompatible with Pillow 12, leading to installation failures.
pillow==9.5.0; python_version < '3.8'
pillow==10.4.0; python_version >= '3.8' and python_version < '3.10'
pillow==12.2.0; python_version >= '3.10'
| pillow==12.2.0; python_version < '3.8' | ||
| pillow==12.2.0; python_version >= '3.8' |
There was a problem hiding this comment.
Pillow 12.2.0 requires Python 3.10 or later. These environment markers explicitly target Python versions that are incompatible with Pillow 12, leading to installation failures.
pillow==9.5.0; python_version < '3.8'
pillow==10.4.0; python_version >= '3.8' and python_version < '3.10'
pillow==12.2.0; python_version >= '3.10'
| pillow==12.2.0; python_version < '3.8' | ||
| pillow==12.2.0; python_version >= '3.8' |
There was a problem hiding this comment.
Pillow 12.2.0 requires Python 3.10 or later. These environment markers explicitly target Python versions that are incompatible with Pillow 12, leading to installation failures.
pillow==9.5.0; python_version < '3.8'
pillow==10.4.0; python_version >= '3.8' and python_version < '3.10'
pillow==12.2.0; python_version >= '3.10'
| pillow==12.2.0; python_version < '3.8' | ||
| pillow==12.2.0; python_version >= '3.8' |
There was a problem hiding this comment.
Pillow 12.2.0 requires Python 3.10 or later. These environment markers explicitly target Python versions that are incompatible with Pillow 12, leading to installation failures.
pillow==9.5.0; python_version < '3.8'
pillow==10.4.0; python_version >= '3.8' and python_version < '3.10'
pillow==12.2.0; python_version >= '3.10'
| pillow==12.2.0; python_version < '3.8' | ||
| pillow==12.2.0; python_version >= '3.8' |
There was a problem hiding this comment.
Pillow 12.2.0 requires Python 3.10 or later. These environment markers explicitly target Python versions that are incompatible with Pillow 12, leading to installation failures.
pillow==9.5.0; python_version < '3.8'
pillow==10.4.0; python_version >= '3.8' and python_version < '3.10'
pillow==12.2.0; python_version >= '3.10'
| pillow==12.2.0; python_version < '3.8' | ||
| pillow==12.2.0; python_version >= '3.8' |
There was a problem hiding this comment.
Pillow 12.2.0 requires Python 3.10 or later. These environment markers explicitly target Python versions that are incompatible with Pillow 12, leading to installation failures.
pillow==9.5.0; python_version < '3.8'
pillow==10.4.0; python_version >= '3.8' and python_version < '3.10'
pillow==12.2.0; python_version >= '3.10'
| pillow==12.2.0; python_version < '3.8' | ||
| pillow==12.2.0; python_version >= '3.8' |
There was a problem hiding this comment.
Pillow 12.2.0 requires Python 3.10 or later. These environment markers explicitly target Python versions that are incompatible with Pillow 12, leading to installation failures.
pillow==9.5.0; python_version < '3.8'
pillow==10.4.0; python_version >= '3.8' and python_version < '3.10'
pillow==12.2.0; python_version >= '3.10'
This PR contains the following updates:
==10.4.0→==12.2.0==10.4.0→==12.2.0==10.3.0→==12.2.0==11.1.0→==12.2.0Pillow affected by out-of-bounds write when loading PSD images
CVE-2026-25990 / GHSA-cfh3-3jmp-rvhc
More information
Details
Impact
An out-of-bounds write may be triggered when loading a specially crafted PSD image. Pillow >= 10.3.0 users are affected.
Patches
Pillow 12.1.1 will be released shortly with a fix for this.
Workarounds
Image.open()has aformatsparameter that can be used to prevent PSD images from being opened.References
Pillow 12.1.1 will add release notes at https://pillow.readthedocs.io/en/stable/releasenotes/index.html
Severity
CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:NReferences
This data is provided by the GitHub Advisory Database (CC-BY 4.0).
FITS GZIP decompression bomb in Pillow
CVE-2026-40192 / GHSA-whj4-6x5x-4v2j
More information
Details
Impact
Pillow did not limit the amount of GZIP-compressed data read when decoding a FITS image, making it vulnerable to decompression bomb attacks. A specially crafted FITS file could cause unbounded memory consumption, leading to denial of service (OOM crash or severe performance degradation).
Patches
The amount of data read is now limited to the necessary amount.
Fixed in Pillow 12.2.0 (PR #9521).
Workarounds
Avoid Pillow >= 10.3.0, < 12.2.0
Only open specific image formats, excluding FITS.
Severity
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:NReferences
This data is provided by the GitHub Advisory Database (CC-BY 4.0).
Release Notes
python-pillow/Pillow (Pillow)
v12.2.0Compare Source
https://pillow.readthedocs.io/en/stable/releasenotes/12.2.0.html
Documentation
Dependencies
Testing
macos-15-inteltomacos-26-intel#9454 [@hugovk]Other changes
_getxyrefcount leaks #9487 [@hugovk]setimage()by always passing extents #9395 [@radarhere]self.decodetypo #9445 [@bysiber]v12.1.1Compare Source
v12.1.0Compare Source
https://pillow.readthedocs.io/en/stable/releasenotes/12.1.0.html
Deprecations
Documentation
Dependencies
Testing
ResourceWarnings inselftest.py#9332 [@hugovk]Type hints
Other changes
v12.0.0Compare Source
https://pillow.readthedocs.io/en/stable/releasenotes/12.0.0.html
Removals
Deprecations
Documentation
Dependencies
Testing
Type hints
Other changes
Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Never, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about these updates again.
This PR was generated by Mend Renovate. View the repository job log.