Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update release notes #7885

Merged
merged 16 commits into from
Mar 17, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 0 additions & 16 deletions docs/releasenotes/10.3.0.rst
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

s/10.4/10.3/ 😄

Original file line number Diff line number Diff line change
Expand Up @@ -90,19 +90,3 @@ Release GIL when fetching WebP frames

Python's Global Interpreter Lock is now released when fetching WebP frames from
the libwebp decoder.

Added release notes for past releases
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Added release notes for past releases: ``2.6.0``, ``2.5.2``,
``2.3.2``, ``2.3.1``. With these additions we are able to
provide a comprehensive list of all Pillow CVE records from
1995 to 2024 across three noteworthy periods:

- 1995-2009: No known CVEs
- 2010-2018: :cve:`2014-1932`, :cve:`2014-3589`, :cve:`2016-0740`, :cve:`2016-3076`
- 2019-2024: :cve:`2019-16865`, :cve:`2019-19911`, :cve:`2020-10177`, :cve:`2020-15999`,
:cve:`2020-35653`, :cve:`2021-25289`, :cve:`2020-35654`, :cve:`2020-35654`,
:cve:`2021-27921`, :cve:`2021-27922`, :cve:`2021-27923`, :cve:`2021-25287`,
:cve:`2021-25288`, :cve:`2021-34552`, :cve:`2021-23437`, :cve:`2022-22817`,
:cve:`2022-24303`, :cve:`2022-30595`, :cve:`2023-44271`, :cve:`2023-4863`
14 changes: 7 additions & 7 deletions docs/releasenotes/2.3.1.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4,23 +4,23 @@
Security
========

These issues reported in
These issues were reported in
`Debian bug #737059 <https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=737059>`_.

:cve:`2014-1932`: Fix insecure use of :py:func:`tempfile.mktemp`
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

The (1) load_djpeg function in ``JpegImagePlugin.py``, (2) Ghostscript function
in EpsImagePlugin.py, (3) load function in ``IptcImagePlugin.py``, and (4)
``_copy`` function in Image.py in Python Image Library (PIL) 1.1.7 and earlier
and Pillow before 2.3.1 do not properly create temporary files, which allow
The (1) ``load_djpeg`` function in ``JpegImagePlugin.py``, (2) Ghostscript function
in ``EpsImagePlugin.py``, (3) ``load`` function in ``IptcImagePlugin.py``, and (4)
``_copy`` function in ``Image.py`` in
Pillow before 2.3.1 do not properly create temporary files, which allow
local users to overwrite arbitrary files and obtain sensitive information via a
symlink attack on the temporary file.

:cve:`2014-1933`: Fix insecure use of :py:func:`tempfile.mktemp`
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

The (1) ``JpegImagePlugin.py`` and (2) ``EpsImagePlugin.py`` scripts in Python
Image Library (PIL) 1.1.7 and earlier and Pillow before 2.3.1 uses the names of
The (1) ``JpegImagePlugin.py`` and (2) ``EpsImagePlugin.py`` scripts in
Pillow before 2.3.1 uses the names of
temporary files on the command line, which makes it easier for local users to
conduct symlink attacks by listing the processes.
4 changes: 2 additions & 2 deletions docs/releasenotes/2.3.2.rst
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@ Security
:cve:`2014-3589`: Fix DOS attack
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

``PIL/IcnsImagePlugin.py`` in Python Imaging Library (PIL) and Pillow before 2.3.2 and
``PIL/IcnsImagePlugin.py`` in Pillow before 2.3.2 and
2.5.x before 2.5.2 allows remote attackers to cause a denial of service via a crafted
block size.

Found and reported by Andrew Drake of dropbox.com
Found and reported by Andrew Drake of `Dropbox <https://www.dropbox.com/>`__.
4 changes: 2 additions & 2 deletions docs/releasenotes/2.5.2.rst
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@ Security
:cve:`2014-3589`: Fix DOS attack
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

``PIL/IcnsImagePlugin.py`` in Python Imaging Library (PIL) and Pillow before 2.3.2 and
``PIL/IcnsImagePlugin.py`` in Pillow before 2.3.2 and
2.5.x before 2.5.2 allows remote attackers to cause a denial of service via a crafted
block size.

Found and reported by Andrew Drake of dropbox.com
Found and reported by Andrew Drake of `Dropbox <https://www.dropbox.com/>`__.
12 changes: 2 additions & 10 deletions docs/releasenotes/2.6.0.rst
Original file line number Diff line number Diff line change
Expand Up @@ -7,16 +7,8 @@ Security
:cve:`2014-3589`: Fix DOS attack
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

``PIL/IcnsImagePlugin.py`` in Python Imaging Library (PIL) and Pillow before 2.3.2 and
``PIL/IcnsImagePlugin.py`` in Pillow before 2.3.2 and
2.5.x before 2.5.2 allows remote attackers to cause a denial of service via a crafted
block size.

Found and reported by Andrew Drake of dropbox.com

Other Changes
=============

Relaxed precision of some tests
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Relaxed imagedraw tests to allow slight errors for x86 vs x64.
Found and reported by Andrew Drake of `Dropbox <https://www.dropbox.com/>`__.
4 changes: 1 addition & 3 deletions docs/releasenotes/2.7.0.rst
Original file line number Diff line number Diff line change
@@ -1,9 +1,6 @@
2.7.0
-----

Other Changes
=============

Sane Plugin
^^^^^^^^^^^

Expand Down Expand Up @@ -105,6 +102,7 @@ other filters gave poor quality for reduction. Starting from Pillow 2.7.0,
uses supersampling internally, not convolutions.

Image transposition
+++++++++++++++++++

A new method ``TRANSPOSE`` has been added for the
:py:meth:`~PIL.Image.Image.transpose` operation in addition to
Expand Down
3 changes: 0 additions & 3 deletions docs/releasenotes/2.8.0.rst
Original file line number Diff line number Diff line change
@@ -1,9 +1,6 @@
2.8.0
-----

Other Changes
=============

Open HTTP response objects with Image.open
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Expand Down
28 changes: 14 additions & 14 deletions docs/releasenotes/3.0.0.rst
Original file line number Diff line number Diff line change
@@ -1,22 +1,22 @@
3.0.0
-----

Deprecations
============
Backwards Incompatible Changes
==============================

Several methods that have been marked as deprecated for many releases
have been removed in this release::

Image.tostring()
Image.fromstring()
Image.offset()
ImageDraw.setink()
ImageDraw.setfill()
The ImageFileIO module
The ImageFont.FreeTypeFont and ImageFont.truetype ``file`` keyword arg
The ImagePalette private _make functions
ImageWin.fromstring()
ImageWin.tostring()
have been removed in this release:

* ``Image.tostring()``
* ``Image.fromstring()``
* ``Image.offset()``
* ``ImageDraw.setink()``
* ``ImageDraw.setfill()``
* The ``ImageFileIO`` module
* The ``ImageFont.FreeTypeFont`` and ``ImageFont.truetype`` ``file`` keyword arg
* The ``ImagePalette`` private ``_make`` functions
* ``ImageWin.fromstring()``
* ``ImageWin.tostring()``

Other Changes
=============
Expand Down
3 changes: 0 additions & 3 deletions docs/releasenotes/3.1.0.rst
Original file line number Diff line number Diff line change
@@ -1,9 +1,6 @@
3.1.0
-----

Other Changes
=============

ImageDraw arc, chord and pieslice can now use floats
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Expand Down
7 changes: 3 additions & 4 deletions docs/releasenotes/3.1.1.rst
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,7 @@ Security
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Pillow 3.1.0 and earlier when linked against libtiff >= 4.0.0 on x64
may overflow a buffer when reading a specially crafted tiff file
(:cve:`2016-0740`).
may overflow a buffer when reading a specially crafted tiff file.

Specifically, libtiff >= 4.0.0 changed the return type of
``TIFFScanlineSize`` from ``int32`` to machine dependent
Expand Down Expand Up @@ -63,8 +62,8 @@ assuming 4 bytes per pixel. This writes 768 bytes beyond the end of
the buffer into other Python object storage. In some cases, this
causes a segfault, in others an internal Python malloc error.

Integer overflow in Resample.c
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Integer overflow in ``Resample.c``
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

If a large value was passed into the new size for an image, it is
possible to overflow an ``int32`` value passed into malloc.
Expand Down
3 changes: 0 additions & 3 deletions docs/releasenotes/3.2.0.rst
Original file line number Diff line number Diff line change
@@ -1,9 +1,6 @@
3.2.0
-----

Other Changes
=============

New DDS and FTEX Image Plugins
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Expand Down
19 changes: 8 additions & 11 deletions docs/releasenotes/3.3.0.rst
Original file line number Diff line number Diff line change
@@ -1,9 +1,6 @@
3.3.0
-----

Other Changes
=============

Libimagequant support
^^^^^^^^^^^^^^^^^^^^^

Expand All @@ -19,13 +16,13 @@ New Setup.py options

There are two new options to control the ``build_ext`` task in ``setup.py``:

* ``--debug`` dumps all of the directories and files that are
checked when searching for libraries or headers when building the
extensions.
* ``--disable-platform-guessing`` removes many of the directories
that are checked for libraries and headers for build systems or
cross compilers that specify that information in via environment
variables.
* ``--debug`` dumps all of the directories and files that are
checked when searching for libraries or headers when building the
extensions.
* ``--disable-platform-guessing`` removes many of the directories
that are checked for libraries and headers for build systems or
cross compilers that specify that information in via environment
variables.

Resizing
^^^^^^^^
Expand All @@ -51,4 +48,4 @@ Image Metadata

The return type for binary data in version 2 Exif and Tiff metadata
has been changed from a tuple of integers to bytes. This is a change
from the behavior since ``3.0.0``.
from the behavior since 3.0.0.
19 changes: 11 additions & 8 deletions docs/releasenotes/3.4.0.rst
Original file line number Diff line number Diff line change
@@ -1,6 +1,16 @@
3.4.0
-----

Backwards Incompatible Changes
==============================

Image.core.open_ppm removed
^^^^^^^^^^^^^^^^^^^^^^^^^^^

The nominally private/debugging function ``Image.core.open_ppm`` has
been removed. If you were using this function, please use
``Image.open`` instead.

Deprecations
============

Expand All @@ -12,14 +22,7 @@ silently drops the alpha channel. With this release Pillow will now
issue a :py:exc:`DeprecationWarning` when attempting to save a ``RGBA`` mode
image as a JPEG. This will become an error in Pillow 4.2.

Image.core.open_ppm removed
^^^^^^^^^^^^^^^^^^^^^^^^^^^

The nominally private/debugging function ``Image.core.open_ppm`` has
been removed. If you were using this function, please use
``Image.open`` instead.

Other changes
API Additions
=============

New resizing filters
Expand Down
3 changes: 0 additions & 3 deletions docs/releasenotes/4.0.0.rst
Original file line number Diff line number Diff line change
@@ -1,9 +1,6 @@
4.0.0
-----

Other Changes
=============

Python 2.6 and 3.2 Dropped
^^^^^^^^^^^^^^^^^^^^^^^^^^

Expand Down
3 changes: 0 additions & 3 deletions docs/releasenotes/4.1.1.rst
Original file line number Diff line number Diff line change
@@ -1,9 +1,6 @@
4.1.1
-----

Other Changes
=============

Fix Regression with reading DPI from EXIF data
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Expand Down
4 changes: 2 additions & 2 deletions docs/releasenotes/4.2.0.rst
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
4.2.0
-----

Deprecations
============
Backwards Incompatible Changes
==============================

Several deprecated items have been removed
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Expand Down
3 changes: 0 additions & 3 deletions docs/releasenotes/4.2.1.rst
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,6 @@

There are no functional changes in this release.

Other Changes
=============

Fixed Windows PyPy Build
^^^^^^^^^^^^^^^^^^^^^^^^

Expand Down
9 changes: 6 additions & 3 deletions docs/releasenotes/5.1.0.rst
Original file line number Diff line number Diff line change
Expand Up @@ -12,21 +12,24 @@ and ``CMYK`` with up to 6 8-bit channels, discarding any extra
channels if the content is tagged as UNSPECIFIED. Pillow still does
not store more than 4 8-bit channels of image data.

API Additions
=============

Append to PDF Files
^^^^^^^^^^^^^^^^^^^

Images can now be appended to PDF files in place by passing in
``append=True`` when saving the image.

Other Changes
=============

New BLP File Format
^^^^^^^^^^^^^^^^^^^

Pillow now supports reading the BLP "Blizzard Mipmap" file format used
for tiles in Blizzard's engine.

Other Changes
=============

WebP memory leak
^^^^^^^^^^^^^^^^

Expand Down
3 changes: 0 additions & 3 deletions docs/releasenotes/5.4.1.rst
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,6 @@

This release fixes regressions in 5.4.0.

Other Changes
=============

Installation on Termux
^^^^^^^^^^^^^^^^^^^^^^

Expand Down
38 changes: 19 additions & 19 deletions docs/releasenotes/6.2.0.rst
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,25 @@ perform operations on it.
The CVE is regarding DOS problems, such as consuming large amounts of memory,
or taking a large amount of time to process an image.

API Changes
===========

Image.getexif
^^^^^^^^^^^^^

To allow for lazy loading of Exif data, ``Image.getexif()`` now returns a
shared instance of ``Image.Exif``.

Deprecations
^^^^^^^^^^^^

Image.frombuffer
~~~~~~~~~~~~~~~~

There has been a longstanding warning that the defaults of ``Image.frombuffer``
may change in the future for the "raw" decoder. The change will now take place
in Pillow 7.0.

API Additions
=============

Expand Down Expand Up @@ -74,25 +93,6 @@ ImageGrab on multi-monitor Windows
An ``all_screens`` argument has been added to ``ImageGrab.grab``. If ``True``,
all monitors will be included in the created image.

API Changes
===========

Image.getexif
^^^^^^^^^^^^^

To allow for lazy loading of Exif data, ``Image.getexif()`` now returns a
shared instance of ``Image.Exif``.

Deprecations
^^^^^^^^^^^^

Image.frombuffer
~~~~~~~~~~~~~~~~

There has been a longstanding warning that the defaults of ``Image.frombuffer``
may change in the future for the "raw" decoder. The change will now take place
in Pillow 7.0.

Other Changes
=============

Expand Down
Loading