dailybruin / meow

Daily Bruin's homemade social media manager
GNU Affero General Public License v3.0
59 stars 15 forks source link

chore(deps): update dependency pillow to v10 [security] #441

Open renovate[bot] opened 3 months ago

renovate[bot] commented 3 months ago

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
Pillow (changelog) ==9.0.1 -> ==10.3.0 age adoption passing confidence

GitHub Vulnerability Alerts

CVE-2022-45198

Pillow before 9.2.0 performs Improper Handling of Highly Compressed GIF Data (Data Amplification).

CVE-2023-4863

Heap buffer overflow in libwebp allow a remote attacker to perform an out of bounds memory write via a crafted HTML page.

GHSA-56pw-mpj4-fxww

Pillow versions before v10.0.1 bundled libwebp binaries in wheels that are vulnerable to CVE-2023-5129 (previously CVE-2023-4863). Pillow v10.0.1 upgrades the bundled libwebp binary to v1.3.2.

CVE-2023-44271

An issue was discovered in Pillow before 10.0.0. It is a Denial of Service that uncontrollably allocates memory to process a given task, potentially causing a service to crash by having it run out of memory. This occurs for truetype in ImageFont when textlength in an ImageDraw instance operates on a long text argument.

CVE-2023-50447

Pillow through 10.1.0 allows PIL.ImageMath.eval Arbitrary Code Execution via the environment parameter, a different vulnerability than CVE-2022-22817 (which was about the expression parameter).

CVE-2024-28219

In _imagingcms.c in Pillow before 10.3.0, a buffer overflow exists because strcpy is used instead of strncpy.


Release Notes

python-pillow/Pillow (Pillow) ### [`v10.3.0`](https://redirect.github.com/python-pillow/Pillow/blob/HEAD/CHANGES.rst#1030-2024-04-01) [Compare Source](https://redirect.github.com/python-pillow/Pillow/compare/10.2.0...10.3.0) - CVE-2024-28219: Use `strncpy` to avoid buffer overflow [#​7928](https://redirect.github.com/python-pillow/Pillow/issues/7928) \[radarhere, hugovk] - Deprecate `eval()`, replacing it with `lambda_eval()` and `unsafe_eval()` [#​7927](https://redirect.github.com/python-pillow/Pillow/issues/7927) \[radarhere, hugovk] - Raise `ValueError` if seeking to greater than offset-sized integer in TIFF [#​7883](https://redirect.github.com/python-pillow/Pillow/issues/7883) \[radarhere] - Add `--report` argument to `__main__.py` to omit supported formats [#​7818](https://redirect.github.com/python-pillow/Pillow/issues/7818) \[nulano, radarhere, hugovk] - Added RGB to I;16, I;16L, I;16B and I;16N conversion [#​7918](https://redirect.github.com/python-pillow/Pillow/issues/7918), [#​7920](https://redirect.github.com/python-pillow/Pillow/issues/7920) \[radarhere] - Fix editable installation with custom build backend and configuration options [#​7658](https://redirect.github.com/python-pillow/Pillow/issues/7658) \[nulano, radarhere] - Fix putdata() for I;16N on big-endian [#​7209](https://redirect.github.com/python-pillow/Pillow/issues/7209) \[Yay295, hugovk, radarhere] - Determine MPO size from markers, not EXIF data [#​7884](https://redirect.github.com/python-pillow/Pillow/issues/7884) \[radarhere] - Improved conversion from RGB to RGBa, LA and La [#​7888](https://redirect.github.com/python-pillow/Pillow/issues/7888) \[radarhere] - Support FITS images with GZIP\_1 compression [#​7894](https://redirect.github.com/python-pillow/Pillow/issues/7894) \[radarhere] - Use I;16 mode for 9-bit JPEG 2000 images [#​7900](https://redirect.github.com/python-pillow/Pillow/issues/7900) \[scaramallion, radarhere] - Raise ValueError if kmeans is negative [#​7891](https://redirect.github.com/python-pillow/Pillow/issues/7891) \[radarhere] - Remove TIFF tag OSUBFILETYPE when saving using libtiff [#​7893](https://redirect.github.com/python-pillow/Pillow/issues/7893) \[radarhere] - Raise ValueError for negative values when loading P1-P3 PPM images [#​7882](https://redirect.github.com/python-pillow/Pillow/issues/7882) \[radarhere] - Added reading of JPEG2000 palettes [#​7870](https://redirect.github.com/python-pillow/Pillow/issues/7870) \[radarhere] - Added alpha_quality argument when saving WebP images [#​7872](https://redirect.github.com/python-pillow/Pillow/issues/7872) \[radarhere] - Fixed joined corners for ImageDraw rounded_rectangle() non-integer dimensions [#​7881](https://redirect.github.com/python-pillow/Pillow/issues/7881) \[radarhere] - Stop reading EPS image at EOF marker [#​7753](https://redirect.github.com/python-pillow/Pillow/issues/7753) \[radarhere] - PSD layer co-ordinates may be negative [#​7706](https://redirect.github.com/python-pillow/Pillow/issues/7706) \[radarhere] - Use subprocess with CREATE_NO_WINDOW flag in ImageShow WindowsViewer [#​7791](https://redirect.github.com/python-pillow/Pillow/issues/7791) \[radarhere] - When saving GIF frame that restores to background color, do not fill identical pixels [#​7788](https://redirect.github.com/python-pillow/Pillow/issues/7788) \[radarhere] - Fixed reading PNG iCCP compression method [#​7823](https://redirect.github.com/python-pillow/Pillow/issues/7823) \[radarhere] - Allow writing IFDRational to UNDEFINED tag [#​7840](https://redirect.github.com/python-pillow/Pillow/issues/7840) \[radarhere] - Fix logged tag name when loading Exif data [#​7842](https://redirect.github.com/python-pillow/Pillow/issues/7842) \[radarhere] - Use maximum frame size in IHDR chunk when saving APNG images [#​7821](https://redirect.github.com/python-pillow/Pillow/issues/7821) \[radarhere] - Prevent opening P TGA images without a palette [#​7797](https://redirect.github.com/python-pillow/Pillow/issues/7797) \[radarhere] - Use palette when loading ICO images [#​7798](https://redirect.github.com/python-pillow/Pillow/issues/7798) \[radarhere] - Use consistent arguments for load_read and load_seek [#​7713](https://redirect.github.com/python-pillow/Pillow/issues/7713) \[radarhere] - Turn off nullability warnings for macOS SDK [#​7827](https://redirect.github.com/python-pillow/Pillow/issues/7827) \[radarhere] - Fix shift-sign issue in Convert.c [#​7838](https://redirect.github.com/python-pillow/Pillow/issues/7838) \[r-barnes, radarhere] - Open 16-bit grayscale PNGs as I;16 [#​7849](https://redirect.github.com/python-pillow/Pillow/issues/7849) \[radarhere] - Handle truncated chunks at the end of PNG images [#​7709](https://redirect.github.com/python-pillow/Pillow/issues/7709) \[lajiyuan, radarhere] - Match mask size to pasted image size in GifImagePlugin [#​7779](https://redirect.github.com/python-pillow/Pillow/issues/7779) \[radarhere] - Release GIL while calling `WebPAnimDecoderGetNext` [#​7782](https://redirect.github.com/python-pillow/Pillow/issues/7782) \[evanmiller, radarhere] - Fixed reading FLI/FLC images with a prefix chunk [#​7804](https://redirect.github.com/python-pillow/Pillow/issues/7804) \[twolife] - Update wl-paste handling and return None for some errors in grabclipboard() on Linux [#​7745](https://redirect.github.com/python-pillow/Pillow/issues/7745) \[nik012003, radarhere] - Remove execute bit from `setup.py` [#​7760](https://redirect.github.com/python-pillow/Pillow/issues/7760) \[hugovk] - Do not support using test-image-results to upload images after test failures [#​7739](https://redirect.github.com/python-pillow/Pillow/issues/7739) \[radarhere] - Changed ImageMath.ops to be static [#​7721](https://redirect.github.com/python-pillow/Pillow/issues/7721) \[radarhere] - Fix APNG info after seeking backwards more than twice [#​7701](https://redirect.github.com/python-pillow/Pillow/issues/7701) \[esoma, radarhere] - Deprecate ImageCms constants and versions() function [#​7702](https://redirect.github.com/python-pillow/Pillow/issues/7702) \[nulano, radarhere] - Added PerspectiveTransform [#​7699](https://redirect.github.com/python-pillow/Pillow/issues/7699) \[radarhere] - Add support for reading and writing grayscale PFM images [#​7696](https://redirect.github.com/python-pillow/Pillow/issues/7696) \[nulano, hugovk] - Add LCMS2 flags to ImageCms [#​7676](https://redirect.github.com/python-pillow/Pillow/issues/7676) \[nulano, radarhere, hugovk] - Rename x64 to AMD64 in winbuild [#​7693](https://redirect.github.com/python-pillow/Pillow/issues/7693) \[nulano] ### [`v10.2.0`](https://redirect.github.com/python-pillow/Pillow/blob/HEAD/CHANGES.rst#1020-2024-01-02) [Compare Source](https://redirect.github.com/python-pillow/Pillow/compare/10.1.0...10.2.0) - Add `keep_rgb` option when saving JPEG to prevent conversion of RGB colorspace [#​7553](https://redirect.github.com/python-pillow/Pillow/issues/7553) \[bgilbert, radarhere] - Trim glyph size in ImageFont.getmask() [#​7669](https://redirect.github.com/python-pillow/Pillow/issues/7669), [#​7672](https://redirect.github.com/python-pillow/Pillow/issues/7672) \[radarhere, nulano] - Deprecate IptcImagePlugin helpers [#​7664](https://redirect.github.com/python-pillow/Pillow/issues/7664) \[nulano, hugovk, radarhere] - Allow uncompressed TIFF images to be saved in chunks [#​7650](https://redirect.github.com/python-pillow/Pillow/issues/7650) \[radarhere] - Concatenate multiple JPEG EXIF markers [#​7496](https://redirect.github.com/python-pillow/Pillow/issues/7496) \[radarhere] - Changed IPTC tile tuple to match other plugins [#​7661](https://redirect.github.com/python-pillow/Pillow/issues/7661) \[radarhere] - Do not assign new fp attribute when exiting context manager [#​7566](https://redirect.github.com/python-pillow/Pillow/issues/7566) \[radarhere] - Support arbitrary masks for uncompressed RGB DDS images [#​7589](https://redirect.github.com/python-pillow/Pillow/issues/7589) \[radarhere, akx] - Support setting ROWSPERSTRIP tag [#​7654](https://redirect.github.com/python-pillow/Pillow/issues/7654) \[radarhere] - Apply ImageFont.MAX_STRING_LENGTH to ImageFont.getmask() [#​7662](https://redirect.github.com/python-pillow/Pillow/issues/7662) \[radarhere] - Optimise `ImageColor` using `functools.lru_cache` [#​7657](https://redirect.github.com/python-pillow/Pillow/issues/7657) \[hugovk] - Restricted environment keys for ImageMath.eval() [#​7655](https://redirect.github.com/python-pillow/Pillow/issues/7655) \[wiredfool, radarhere] - Optimise `ImageMode.getmode` using `functools.lru_cache` [#​7641](https://redirect.github.com/python-pillow/Pillow/issues/7641) \[hugovk, radarhere] - Fix incorrect color blending for overlapping glyphs [#​7497](https://redirect.github.com/python-pillow/Pillow/issues/7497) \[ZachNagengast, nulano, radarhere] - Attempt memory mapping when tile args is a string [#​7565](https://redirect.github.com/python-pillow/Pillow/issues/7565) \[radarhere] - Fill identical pixels with transparency in subsequent frames when saving GIF [#​7568](https://redirect.github.com/python-pillow/Pillow/issues/7568) \[radarhere] - Corrected duration when combining multiple GIF frames into single frame [#​7521](https://redirect.github.com/python-pillow/Pillow/issues/7521) \[radarhere] - Handle disposing GIF background from outside palette [#​7515](https://redirect.github.com/python-pillow/Pillow/issues/7515) \[radarhere] - Seek past the data when skipping a PSD layer [#​7483](https://redirect.github.com/python-pillow/Pillow/issues/7483) \[radarhere] - Import plugins relative to the module [#​7576](https://redirect.github.com/python-pillow/Pillow/issues/7576) \[deliangyang, jaxx0n] - Translate encoder error codes to strings; deprecate `ImageFile.raise_oserror()` [#​7609](https://redirect.github.com/python-pillow/Pillow/issues/7609) \[bgilbert, radarhere] - Support reading BC4U and DX10 BC1 images [#​6486](https://redirect.github.com/python-pillow/Pillow/issues/6486) \[REDxEYE, radarhere, hugovk] - Optimize ImageStat.Stat.extrema [#​7593](https://redirect.github.com/python-pillow/Pillow/issues/7593) \[florath, radarhere] - Handle pathlib.Path in FreeTypeFont [#​7578](https://redirect.github.com/python-pillow/Pillow/issues/7578) \[radarhere, hugovk, nulano] - Added support for reading DX10 BC4 DDS images [#​7603](https://redirect.github.com/python-pillow/Pillow/issues/7603) \[sambvfx, radarhere] - Optimized ImageStat.Stat.count [#​7599](https://redirect.github.com/python-pillow/Pillow/issues/7599) \[florath] - Correct PDF palette size when saving [#​7555](https://redirect.github.com/python-pillow/Pillow/issues/7555) \[radarhere] - Fixed closing file pointer with olefile 0.47 [#​7594](https://redirect.github.com/python-pillow/Pillow/issues/7594) \[radarhere] - Raise ValueError when TrueType font size is not greater than zero [#​7584](https://redirect.github.com/python-pillow/Pillow/issues/7584), [#​7587](https://redirect.github.com/python-pillow/Pillow/issues/7587) \[akx, radarhere] - If absent, do not try to close fp when closing image [#​7557](https://redirect.github.com/python-pillow/Pillow/issues/7557) \[RaphaelVRossi, radarhere] - Allow configuring JPEG restart marker interval on save [#​7488](https://redirect.github.com/python-pillow/Pillow/issues/7488) \[bgilbert, radarhere] - Decrement reference count for PyObject [#​7549](https://redirect.github.com/python-pillow/Pillow/issues/7549) \[radarhere] - Implement `streamtype=1` option for tables-only JPEG encoding [#​7491](https://redirect.github.com/python-pillow/Pillow/issues/7491) \[bgilbert, radarhere] - If save_all PNG only has one frame, do not create animated image [#​7522](https://redirect.github.com/python-pillow/Pillow/issues/7522) \[radarhere] - Fixed frombytes() for images with a zero dimension [#​7493](https://redirect.github.com/python-pillow/Pillow/issues/7493) \[radarhere] ### [`v10.1.0`](https://redirect.github.com/python-pillow/Pillow/blob/HEAD/CHANGES.rst#1010-2023-10-15) [Compare Source](https://redirect.github.com/python-pillow/Pillow/compare/10.0.1...10.1.0) - Added TrueType default font to allow for different sizes [#​7354](https://redirect.github.com/python-pillow/Pillow/issues/7354) \[radarhere] - Fixed invalid argument warning [#​7442](https://redirect.github.com/python-pillow/Pillow/issues/7442) \[radarhere] - Added ImageOps cover method [#​7412](https://redirect.github.com/python-pillow/Pillow/issues/7412) \[radarhere, hugovk] - Catch struct.error from truncated EXIF when reading JPEG DPI [#​7458](https://redirect.github.com/python-pillow/Pillow/issues/7458) \[radarhere] - Consider default image when selecting mode for PNG save_all [#​7437](https://redirect.github.com/python-pillow/Pillow/issues/7437) \[radarhere] - Support BGR;15, BGR;16 and BGR;24 access, unpacking and putdata [#​7303](https://redirect.github.com/python-pillow/Pillow/issues/7303) \[radarhere] - Added CMYK to RGB unpacker [#​7310](https://redirect.github.com/python-pillow/Pillow/issues/7310) \[radarhere] - Improved flexibility of XMP parsing [#​7274](https://redirect.github.com/python-pillow/Pillow/issues/7274) \[radarhere] - Support reading 8-bit YCbCr TIFF images [#​7415](https://redirect.github.com/python-pillow/Pillow/issues/7415) \[radarhere] - Allow saving I;16B images as PNG [#​7302](https://redirect.github.com/python-pillow/Pillow/issues/7302) \[radarhere] - Corrected drawing I;16 points and writing I;16 text [#​7257](https://redirect.github.com/python-pillow/Pillow/issues/7257) \[radarhere] - Set blue channel to 128 for BC5S [#​7413](https://redirect.github.com/python-pillow/Pillow/issues/7413) \[radarhere] - Increase flexibility when reading IPTC fields [#​7319](https://redirect.github.com/python-pillow/Pillow/issues/7319) \[radarhere] - Set C palette to be empty by default [#​7289](https://redirect.github.com/python-pillow/Pillow/issues/7289) \[radarhere] - Added gs_binary to control Ghostscript use on all platforms [#​7392](https://redirect.github.com/python-pillow/Pillow/issues/7392) \[radarhere] - Read bounding box information from the trailer of EPS files if specified [#​7382](https://redirect.github.com/python-pillow/Pillow/issues/7382) \[nopperl, radarhere] - Added reading 8-bit color DDS images [#​7426](https://redirect.github.com/python-pillow/Pillow/issues/7426) \[radarhere] - Added has_transparency_data [#​7420](https://redirect.github.com/python-pillow/Pillow/issues/7420) \[radarhere, hugovk] - Fixed bug when reading BC5S DDS images [#​7401](https://redirect.github.com/python-pillow/Pillow/issues/7401) \[radarhere] - Prevent TIFF orientation from being applied more than once [#​7383](https://redirect.github.com/python-pillow/Pillow/issues/7383) \[radarhere] - Use previous pixel alpha for QOI_OP_RGB [#​7357](https://redirect.github.com/python-pillow/Pillow/issues/7357) \[radarhere] - Added BC5U reading [#​7358](https://redirect.github.com/python-pillow/Pillow/issues/7358) \[radarhere] - Allow getpixel() to accept a list [#​7355](https://redirect.github.com/python-pillow/Pillow/issues/7355) \[radarhere, homm] - Allow GaussianBlur and BoxBlur to accept a sequence of x and y radii [#​7336](https://redirect.github.com/python-pillow/Pillow/issues/7336) \[radarhere] - Expand JPEG buffer size when saving optimized or progressive [#​7345](https://redirect.github.com/python-pillow/Pillow/issues/7345) \[radarhere] - Added session type check for Linux in ImageGrab.grabclipboard() [#​7332](https://redirect.github.com/python-pillow/Pillow/issues/7332) \[TheNooB2706, radarhere, hugovk] - Allow "loop=None" when saving GIF images [#​7329](https://redirect.github.com/python-pillow/Pillow/issues/7329) \[radarhere] - Fixed transparency when saving P mode images to PDF [#​7323](https://redirect.github.com/python-pillow/Pillow/issues/7323) \[radarhere] - Added saving LA images as PDFs [#​7299](https://redirect.github.com/python-pillow/Pillow/issues/7299) \[radarhere] - Set SMaskInData to 1 for PDFs with alpha [#​7316](https://redirect.github.com/python-pillow/Pillow/issues/7316), [#​7317](https://redirect.github.com/python-pillow/Pillow/issues/7317) \[radarhere] - Changed Image mode property to be read-only by default [#​7307](https://redirect.github.com/python-pillow/Pillow/issues/7307) \[radarhere] - Silence exceptions in *repr_jpeg* and *repr_png* [#​7266](https://redirect.github.com/python-pillow/Pillow/issues/7266) \[mtreinish, radarhere] - Do not use transparency when saving GIF if it has been removed when normalizing mode [#​7284](https://redirect.github.com/python-pillow/Pillow/issues/7284) \[radarhere] - Fix missing symbols when libtiff depends on libjpeg [#​7270](https://redirect.github.com/python-pillow/Pillow/issues/7270) \[heitbaum] ### [`v10.0.1`](https://redirect.github.com/python-pillow/Pillow/blob/HEAD/CHANGES.rst#1001-2023-09-15) [Compare Source](https://redirect.github.com/python-pillow/Pillow/compare/10.0.0...10.0.1) - Updated libwebp to 1.3.2 [#​7395](https://redirect.github.com/python-pillow/Pillow/issues/7395) \[radarhere] - Updated zlib to 1.3 [#​7344](https://redirect.github.com/python-pillow/Pillow/issues/7344) \[radarhere] ### [`v10.0.0`](https://redirect.github.com/python-pillow/Pillow/blob/HEAD/CHANGES.rst#1000-2023-07-01) [Compare Source](https://redirect.github.com/python-pillow/Pillow/compare/9.5.0...10.0.0) - Fixed deallocating mask images [#​7246](https://redirect.github.com/python-pillow/Pillow/issues/7246) \[radarhere] - Added ImageFont.MAX_STRING_LENGTH [#​7244](https://redirect.github.com/python-pillow/Pillow/issues/7244) \[radarhere, hugovk] - Fix Windows build with pyproject.toml [#​7230](https://redirect.github.com/python-pillow/Pillow/issues/7230) \[hugovk, nulano, radarhere] - Do not close provided file handles with libtiff [#​7199](https://redirect.github.com/python-pillow/Pillow/issues/7199) \[radarhere] - Convert to HSV if mode is HSV in getcolor() [#​7226](https://redirect.github.com/python-pillow/Pillow/issues/7226) \[radarhere] - Added alpha_only argument to getbbox() [#​7123](https://redirect.github.com/python-pillow/Pillow/issues/7123) \[radarhere. hugovk] - Prioritise speed in *repr_png* [#​7242](https://redirect.github.com/python-pillow/Pillow/issues/7242) \[radarhere] - Do not use CFFI access by default on PyPy [#​7236](https://redirect.github.com/python-pillow/Pillow/issues/7236) \[radarhere] - Limit size even if one dimension is zero in decompression bomb check [#​7235](https://redirect.github.com/python-pillow/Pillow/issues/7235) \[radarhere] - Use --config-settings instead of deprecated --global-option [#​7171](https://redirect.github.com/python-pillow/Pillow/issues/7171) \[radarhere] - Better C integer definitions [#​6645](https://redirect.github.com/python-pillow/Pillow/issues/6645) \[Yay295, hugovk] - Fixed finding dependencies on Cygwin [#​7175](https://redirect.github.com/python-pillow/Pillow/issues/7175) \[radarhere] - Changed grabclipboard() to use PNG instead of JPG compression on macOS [#​7219](https://redirect.github.com/python-pillow/Pillow/issues/7219) \[abey79, radarhere] - Added in_place argument to ImageOps.exif_transpose() [#​7092](https://redirect.github.com/python-pillow/Pillow/issues/7092) \[radarhere] - Fixed calling putpalette() on L and LA images before load() [#​7187](https://redirect.github.com/python-pillow/Pillow/issues/7187) \[radarhere] - Fixed saving TIFF multiframe images with LONG8 tag types [#​7078](https://redirect.github.com/python-pillow/Pillow/issues/7078) \[radarhere] - Fixed combining single duration across duplicate APNG frames [#​7146](https://redirect.github.com/python-pillow/Pillow/issues/7146) \[radarhere] - Remove temporary file when error is raised [#​7148](https://redirect.github.com/python-pillow/Pillow/issues/7148) \[radarhere] - Do not use temporary file when grabbing clipboard on Linux [#​7200](https://redirect.github.com/python-pillow/Pillow/issues/7200) \[radarhere] - If the clipboard fails to open on Windows, wait and try again [#​7141](https://redirect.github.com/python-pillow/Pillow/issues/7141) \[radarhere] - Fixed saving multiple 1 mode frames to GIF [#​7181](https://redirect.github.com/python-pillow/Pillow/issues/7181) \[radarhere] - Replaced absolute PIL import with relative import [#​7173](https://redirect.github.com/python-pillow/Pillow/issues/7173) \[radarhere] - Replaced deprecated Py_FileSystemDefaultEncoding for Python >= 3.12 [#​7192](https://redirect.github.com/python-pillow/Pillow/issues/7192) \[radarhere] - Improved wl-paste mimetype handling in ImageGrab [#​7094](https://redirect.github.com/python-pillow/Pillow/issues/7094) \[rrcgat, radarhere] - Added *repr_jpeg*() for IPython display_jpeg [#​7135](https://redirect.github.com/python-pillow/Pillow/issues/7135) \[n3011, radarhere, nulano] - Use "/sbin/ldconfig" if ldconfig is not found [#​7068](https://redirect.github.com/python-pillow/Pillow/issues/7068) \[radarhere] - Prefer screenshots using XCB over gnome-screenshot [#​7143](https://redirect.github.com/python-pillow/Pillow/issues/7143) \[nulano, radarhere] - Fixed joined corners for ImageDraw rounded_rectangle() odd dimensions [#​7151](https://redirect.github.com/python-pillow/Pillow/issues/7151) \[radarhere] - Support reading signed 8-bit TIFF images [#​7111](https://redirect.github.com/python-pillow/Pillow/issues/7111) \[radarhere] - Added width argument to ImageDraw regular_polygon [#​7132](https://redirect.github.com/python-pillow/Pillow/issues/7132) \[radarhere] - Support I mode for ImageFilter.BuiltinFilter [#​7108](https://redirect.github.com/python-pillow/Pillow/issues/7108) \[radarhere] - Raise error from stderr of Linux ImageGrab.grabclipboard() command [#​7112](https://redirect.github.com/python-pillow/Pillow/issues/7112) \[radarhere] - Added unpacker from I;16B to I;16 [#​7125](https://redirect.github.com/python-pillow/Pillow/issues/7125) \[radarhere] - Support float font sizes [#​7107](https://redirect.github.com/python-pillow/Pillow/issues/7107) \[radarhere] - Use later value for duplicate xref entries in PdfParser [#​7102](https://redirect.github.com/python-pillow/Pillow/issues/7102) \[radarhere] - Load before getting size in **getstate** [#​7105](https://redirect.github.com/python-pillow/Pillow/issues/7105) \[bigcat88, radarhere] - Fixed type handling for include and lib directories [#​7069](https://redirect.github.com/python-pillow/Pillow/issues/7069) \[adisbladis, radarhere] - Remove deprecations for Pillow 10.0.0 [#​7059](https://redirect.github.com/python-pillow/Pillow/issues/7059), [#​7080](https://redirect.github.com/python-pillow/Pillow/issues/7080) \[hugovk, radarhere] - Drop support for soon-EOL Python 3.7 [#​7058](https://redirect.github.com/python-pillow/Pillow/issues/7058) \[hugovk, radarhere] ### [`v9.5.0`](https://redirect.github.com/python-pillow/Pillow/blob/HEAD/CHANGES.rst#950-2023-04-01) [Compare Source](https://redirect.github.com/python-pillow/Pillow/compare/9.4.0...9.5.0) - Added ImageSourceData to TAGS_V2 [#​7053](https://redirect.github.com/python-pillow/Pillow/issues/7053) \[radarhere] - Clear PPM half token after use [#​7052](https://redirect.github.com/python-pillow/Pillow/issues/7052) \[radarhere] - Removed absolute path to ldconfig [#​7044](https://redirect.github.com/python-pillow/Pillow/issues/7044) \[radarhere] - Support custom comments and PLT markers when saving JPEG2000 images [#​6903](https://redirect.github.com/python-pillow/Pillow/issues/6903) \[joshware, radarhere, hugovk] - Load before getting size in **array_interface** [#​7034](https://redirect.github.com/python-pillow/Pillow/issues/7034) \[radarhere] - Support creating BGR;15, BGR;16 and BGR;24 images, but drop support for BGR;32 [#​7010](https://redirect.github.com/python-pillow/Pillow/issues/7010) \[radarhere] - Consider transparency when applying APNG blend mask [#​7018](https://redirect.github.com/python-pillow/Pillow/issues/7018) \[radarhere] - Round duration when saving animated WebP images [#​6996](https://redirect.github.com/python-pillow/Pillow/issues/6996) \[radarhere] - Added reading of JPEG2000 comments [#​6909](https://redirect.github.com/python-pillow/Pillow/issues/6909) \[radarhere] - Decrement reference count [#​7003](https://redirect.github.com/python-pillow/Pillow/issues/7003) \[radarhere, nulano] - Allow libtiff_support_custom_tags to be missing [#​7020](https://redirect.github.com/python-pillow/Pillow/issues/7020) \[radarhere] - Improved I;16N support [#​6834](https://redirect.github.com/python-pillow/Pillow/issues/6834) \[radarhere] - Added QOI reading [#​6852](https://redirect.github.com/python-pillow/Pillow/issues/6852) \[radarhere, hugovk] - Added saving RGBA images as PDFs [#​6925](https://redirect.github.com/python-pillow/Pillow/issues/6925) \[radarhere] - Do not raise an error if os.environ does not contain PATH [#​6935](https://redirect.github.com/python-pillow/Pillow/issues/6935) \[radarhere, hugovk] - Close OleFileIO instance when closing or exiting FPX or MIC [#​7005](https://redirect.github.com/python-pillow/Pillow/issues/7005) \[radarhere] - Added **int** to IFDRational for Python >= 3.11 [#​6998](https://redirect.github.com/python-pillow/Pillow/issues/6998) \[radarhere] - Added memoryview support to Dib.frombytes() [#​6988](https://redirect.github.com/python-pillow/Pillow/issues/6988) \[radarhere, nulano] - Close file pointer copy in the libtiff encoder if still open [#​6986](https://redirect.github.com/python-pillow/Pillow/issues/6986) \[fcarron, radarhere] - Raise an error if ImageDraw co-ordinates are incorrectly ordered [#​6978](https://redirect.github.com/python-pillow/Pillow/issues/6978) \[radarhere] - Added "corners" argument to ImageDraw rounded_rectangle() [#​6954](https://redirect.github.com/python-pillow/Pillow/issues/6954) \[radarhere] - Added memoryview support to frombytes() [#​6974](https://redirect.github.com/python-pillow/Pillow/issues/6974) \[radarhere] - Allow comments in FITS images [#​6973](https://redirect.github.com/python-pillow/Pillow/issues/6973) \[radarhere] - Support saving PDF with different X and Y resolutions [#​6961](https://redirect.github.com/python-pillow/Pillow/issues/6961) \[jvanderneutstulen, radarhere, hugovk] - Fixed writing int as UNDEFINED tag [#​6950](https://redirect.github.com/python-pillow/Pillow/issues/6950) \[radarhere] - Raise an error if EXIF data is too long when saving JPEG [#​6939](https://redirect.github.com/python-pillow/Pillow/issues/6939) \[radarhere] - Handle more than one directory returned by pkg-config [#​6896](https://redirect.github.com/python-pillow/Pillow/issues/6896) \[sebastic, radarhere] - Do not retry past formats when loading all formats for the first time [#​6902](https://redirect.github.com/python-pillow/Pillow/issues/6902) \[radarhere] - Do not retry specified formats if they failed when opening [#​6893](https://redirect.github.com/python-pillow/Pillow/issues/6893) \[radarhere] - Do not unintentionally load TIFF format at first [#​6892](https://redirect.github.com/python-pillow/Pillow/issues/6892) \[radarhere] - Stop reading when EPS line becomes too long [#​6897](https://redirect.github.com/python-pillow/Pillow/issues/6897) \[radarhere] - Allow writing IFDRational to BYTE tag [#​6890](https://redirect.github.com/python-pillow/Pillow/issues/6890) \[radarhere] - Raise ValueError for BoxBlur filter with negative radius [#​6874](https://redirect.github.com/python-pillow/Pillow/issues/6874) \[hugovk, radarhere] - Support arbitrary number of loaded modules on Windows [#​6761](https://redirect.github.com/python-pillow/Pillow/issues/6761) \[javidcf, radarhere, nulano] ### [`v9.4.0`](https://redirect.github.com/python-pillow/Pillow/blob/HEAD/CHANGES.rst#940-2023-01-02) [Compare Source](https://redirect.github.com/python-pillow/Pillow/compare/9.3.0...9.4.0) - Fixed null pointer dereference crash with malformed font [#​6846](https://redirect.github.com/python-pillow/Pillow/issues/6846) \[wiredfool, radarhere] - Return from ImagingFill early if image has a zero dimension [#​6842](https://redirect.github.com/python-pillow/Pillow/issues/6842) \[radarhere] - Reversed deprecations for Image constants, except for duplicate Resampling attributes [#​6830](https://redirect.github.com/python-pillow/Pillow/issues/6830) \[radarhere] - Improve exception traceback readability [#​6836](https://redirect.github.com/python-pillow/Pillow/issues/6836) \[hugovk, radarhere] - Do not attempt to read IFD1 if absent [#​6840](https://redirect.github.com/python-pillow/Pillow/issues/6840) \[radarhere] - Fixed writing int as ASCII tag [#​6800](https://redirect.github.com/python-pillow/Pillow/issues/6800) \[radarhere] - If available, use wl-paste or xclip for grabclipboard() on Linux [#​6783](https://redirect.github.com/python-pillow/Pillow/issues/6783) \[radarhere] - Added signed option when saving JPEG2000 images [#​6709](https://redirect.github.com/python-pillow/Pillow/issues/6709) \[radarhere] - Patch OpenJPEG to include ARM64 fix [#​6718](https://redirect.github.com/python-pillow/Pillow/issues/6718) \[radarhere] - Added support for I;16 modes in putdata() [#​6825](https://redirect.github.com/python-pillow/Pillow/issues/6825) \[radarhere] - Added conversion from RGBa to RGB [#​6708](https://redirect.github.com/python-pillow/Pillow/issues/6708) \[radarhere] - Added DDS support for uncompressed L and LA images [#​6820](https://redirect.github.com/python-pillow/Pillow/issues/6820) \[radarhere, REDxEYE] - Added LightSource tag values to ExifTags [#​6749](https://redirect.github.com/python-pillow/Pillow/issues/6749) \[radarhere] - Fixed PyAccess after changing ICO size [#​6821](https://redirect.github.com/python-pillow/Pillow/issues/6821) \[radarhere] - Do not use EXIF from info when saving PNG images [#​6819](https://redirect.github.com/python-pillow/Pillow/issues/6819) \[radarhere] - Fixed saving EXIF data to MPO [#​6817](https://redirect.github.com/python-pillow/Pillow/issues/6817) \[radarhere] - Added Exif hide_offsets() [#​6762](https://redirect.github.com/python-pillow/Pillow/issues/6762) \[radarhere] - Only compare to previous frame when checking for duplicate GIF frames while saving [#​6787](https://redirect.github.com/python-pillow/Pillow/issues/6787) \[radarhere] - Always initialize all plugins in registered_extensions() [#​6811](https://redirect.github.com/python-pillow/Pillow/issues/6811) \[radarhere] - Ignore non-opaque WebP background when saving as GIF [#​6792](https://redirect.github.com/python-pillow/Pillow/issues/6792) \[radarhere] - Only set tile in ImageFile **setstate** [#​6793](https://redirect.github.com/python-pillow/Pillow/issues/6793) \[radarhere] - When reading BLP, do not trust JPEG decoder to determine image is CMYK [#​6767](https://redirect.github.com/python-pillow/Pillow/issues/6767) \[radarhere] - Added IFD enum to ExifTags [#​6748](https://redirect.github.com/python-pillow/Pillow/issues/6748) \[radarhere] - Fixed bug combining GIF frame durations [#​6779](https://redirect.github.com/python-pillow/Pillow/issues/6779) \[radarhere] - Support saving JPEG comments [#​6774](https://redirect.github.com/python-pillow/Pillow/issues/6774) \[smason, radarhere] - Added getxmp() to WebPImagePlugin [#​6758](https://redirect.github.com/python-pillow/Pillow/issues/6758) \[radarhere] - Added "exact" option when saving WebP [#​6747](https://redirect.github.com/python-pillow/Pillow/issues/6747) \[ashafaei, radarhere] - Use fractional coordinates when drawing text [#​6722](https://redirect.github.com/python-pillow/Pillow/issues/6722) \[radarhere] - Fixed writing int as BYTE tag [#​6740](https://redirect.github.com/python-pillow/Pillow/issues/6740) \[radarhere] - Added MP Format Version when saving MPO [#​6735](https://redirect.github.com/python-pillow/Pillow/issues/6735) \[radarhere] - Added Interop to ExifTags [#​6724](https://redirect.github.com/python-pillow/Pillow/issues/6724) \[radarhere] - CVE-2007-4559 patch when building on Windows [#​6704](https://redirect.github.com/python-pillow/Pillow/issues/6704) \[TrellixVulnTeam, nulano, radarhere] - Fix compiler warning: accessing 64 bytes in a region of size 48 [#​6714](https://redirect.github.com/python-pillow/Pillow/issues/6714) \[wiredfool] - Use verbose flag for pip install [#​6713](https://redirect.github.com/python-pillow/Pillow/issues/6713) \[wiredfool, radarhere] ### [`v9.3.0`](https://redirect.github.com/python-pillow/Pillow/blob/HEAD/CHANGES.rst#930-2022-10-29) [Compare Source](https://redirect.github.com/python-pillow/Pillow/compare/9.2.0...9.3.0) - Limit SAMPLESPERPIXEL to avoid runtime DOS [#​6700](https://redirect.github.com/python-pillow/Pillow/issues/6700) \[wiredfool] - Initialize libtiff buffer when saving [#​6699](https://redirect.github.com/python-pillow/Pillow/issues/6699) \[radarhere] - Inline fname2char to fix memory leak [#​6329](https://redirect.github.com/python-pillow/Pillow/issues/6329) \[nulano] - Fix memory leaks related to text features [#​6330](https://redirect.github.com/python-pillow/Pillow/issues/6330) \[nulano] - Use double quotes for version check on old CPython on Windows [#​6695](https://redirect.github.com/python-pillow/Pillow/issues/6695) \[hugovk] - Remove backup implementation of Round for Windows platforms [#​6693](https://redirect.github.com/python-pillow/Pillow/issues/6693) \[cgohlke] - Fixed set_variation_by_name offset [#​6445](https://redirect.github.com/python-pillow/Pillow/issues/6445) \[radarhere] - Fix malloc in \_imagingft.c:font_setvaraxes [#​6690](https://redirect.github.com/python-pillow/Pillow/issues/6690) \[cgohlke] - Release Python GIL when converting images using matrix operations [#​6418](https://redirect.github.com/python-pillow/Pillow/issues/6418) \[hmaarrfk] - Added ExifTags enums [#​6630](https://redirect.github.com/python-pillow/Pillow/issues/6630) \[radarhere] - Do not modify previous frame when calculating delta in PNG [#​6683](https://redirect.github.com/python-pillow/Pillow/issues/6683) \[radarhere] - Added support for reading BMP images with RLE4 compression [#​6674](https://redirect.github.com/python-pillow/Pillow/issues/6674) \[npjg, radarhere] - Decode JPEG compressed BLP1 data in original mode [#​6678](https://redirect.github.com/python-pillow/Pillow/issues/6678) \[radarhere] - Added GPS TIFF tag info [#​6661](https://redirect.github.com/python-pillow/Pillow/issues/6661) \[radarhere] - Added conversion between RGB/RGBA/RGBX and LAB [#​6647](https://redirect.github.com/python-pillow/Pillow/issues/6647) \[radarhere] - Do not attempt normalization if mode is already normal [#​6644](https://redirect.github.com/python-pillow/Pillow/issues/6644) \[radarhere] - Fixed seeking to an L frame in a GIF [#​6576](https://redirect.github.com/python-pillow/Pillow/issues/6576) \[radarhere] - Consider all frames when selecting mode for PNG save_all [#​6610](https://redirect.github.com/python-pillow/Pillow/issues/6610) \[radarhere] - Don't reassign crc on ChunkStream close [#​6627](https://redirect.github.com/python-pillow/Pillow/issues/6627) \[wiredfool, radarhere] - Raise a warning if NumPy failed to raise an error during conversion [#​6594](https://redirect.github.com/python-pillow/Pillow/issues/6594) \[radarhere] - Show all frames in ImageShow [#​6611](https://redirect.github.com/python-pillow/Pillow/issues/6611) \[radarhere] - Allow FLI palette chunk to not be first [#​6626](https://redirect.github.com/python-pillow/Pillow/issues/6626) \[radarhere] - If first GIF frame has transparency for RGB_ALWAYS loading strategy, use RGBA mode [#​6592](https://redirect.github.com/python-pillow/Pillow/issues/6592) \[radarhere] - Round box position to integer when pasting embedded color [#​6517](https://redirect.github.com/python-pillow/Pillow/issues/6517) \[radarhere, nulano] - Removed EXIF prefix when saving WebP [#​6582](https://redirect.github.com/python-pillow/Pillow/issues/6582) \[radarhere] - Pad IM palette to 768 bytes when saving [#​6579](https://redirect.github.com/python-pillow/Pillow/issues/6579) \[radarhere] - Added DDS BC6H reading [#​6449](https://redirect.github.com/python-pillow/Pillow/issues/6449) \[ShadelessFox, REDxEYE, radarhere] - Added support for opening WhiteIsZero 16-bit integer TIFF images [#​6642](https://redirect.github.com/python-pillow/Pillow/issues/6642) \[JayWiz, radarhere] - Raise an error when allocating translucent color to RGB palette [#​6654](https://redirect.github.com/python-pillow/Pillow/issues/6654) \[jsbueno, radarhere] - Added reading of TIFF child images [#​6569](https://redirect.github.com/python-pillow/Pillow/issues/6569) \[radarhere] - Improved ImageOps palette handling [#​6596](https://redirect.github.com/python-pillow/Pillow/issues/6596) \[PososikTeam, radarhere] - Defer parsing of palette into colors [#​6567](https://redirect.github.com/python-pillow/Pillow/issues/6567) \[radarhere] - Apply transparency to P images in ImageTk.PhotoImage [#​6559](https://redirect.github.com/python-pillow/Pillow/issues/6559) \[radarhere] - Use rounding in ImageOps contain() and pad() [#​6522](https://redirect.github.com/python-pillow/Pillow/issues/6522) \[bibinhashley, radarhere] - Fixed GIF remapping to palette with duplicate entries [#​6548](https://redirect.github.com/python-pillow/Pillow/issues/6548) \[radarhere] - Allow remap_palette() to return an image with less than 256 palette entries [#​6543](https://redirect.github.com/python-pillow/Pillow/issues/6543) \[radarhere] - Corrected BMP and TGA palette size when saving [#​6500](https://redirect.github.com/python-pillow/Pillow/issues/6500) \[radarhere] - Do not call load() before draft() in Image.thumbnail [#​6539](https://redirect.github.com/python-pillow/Pillow/issues/6539) \[radarhere] - Copy palette when converting from P to PA [#​6497](https://redirect.github.com/python-pillow/Pillow/issues/6497) \[radarhere] - Allow RGB and RGBA values for PA image putpixel [#​6504](https://redirect.github.com/python-pillow/Pillow/issues/6504) \[radarhere] - Removed support for tkinter in PyPy before Python 3.6 [#​6551](https://redirect.github.com/python-pillow/Pillow/issues/6551) \[nulano] - Do not use CCITTFaxDecode filter if libtiff is not available [#​6518](https://redirect.github.com/python-pillow/Pillow/issues/6518) \[radarhere] - Fallback to not using mmap if buffer is not large enough [#​6510](https://redirect.github.com/python-pillow/Pillow/issues/6510) \[radarhere] - Fixed writing bytes as ASCII tag [#​6493](https://redirect.github.com/python-pillow/Pillow/issues/6493) \[radarhere] - Open 1 bit EPS in mode 1 [#​6499](https://redirect.github.com/python-pillow/Pillow/issues/6499) \[radarhere] - Removed support for tkinter before Python 1.5.2 [#​6549](https://redirect.github.com/python-pillow/Pillow/issues/6549) \[radarhere] - Allow default ImageDraw font to be set [#​6484](https://redirect.github.com/python-pillow/Pillow/issues/6484) \[radarhere, hugovk] - Save 1 mode PDF using CCITTFaxDecode filter [#​6470](https://redirect.github.com/python-pillow/Pillow/issues/6470) \[radarhere] - Added support for RGBA PSD images [#​6481](https://redirect.github.com/python-pillow/Pillow/issues/6481) \[radarhere] - Parse orientation from XMP tag contents [#​6463](https://redirect.github.com/python-pillow/Pillow/issues/6463) \[bigcat88, radarhere] - Added support for reading ATI1/ATI2 (BC4/BC5) DDS images [#​6457](https://redirect.github.com/python-pillow/Pillow/issues/6457) \[REDxEYE, radarhere] - Do not clear GIF tile when checking number of frames [#​6455](https://redirect.github.com/python-pillow/Pillow/issues/6455) \[radarhere] - Support saving multiple MPO frames [#​6444](https://redirect.github.com/python-pillow/Pillow/issues/6444) \[radarhere] - Do not double quote Pillow version for setuptools >= 60 [#​6450](https://redirect.github.com/python-pillow/Pillow/issues/6450) \[radarhere] - Added ABGR BMP mask mode [#​6436](https://redirect.github.com/python-pillow/Pillow/issues/6436) \[radarhere] - Fixed PSDraw rectangle [#​6429](https://redirect.github.com/python-pillow/Pillow/issues/6429) \[radarhere] - Raise ValueError if PNG sRGB chunk is truncated [#​6431](https://redirect.github.com/python-pillow/Pillow/issues/6431) \[radarhere] - Handle missing Python executable in ImageShow on macOS [#​6416](https://redirect.github.com/python-pillow/Pillow/issues/6416) \[bryant1410, radarhere] ### [`v9.2.0`](https://redirect.github.com/python-pillow/Pillow/blob/HEAD/CHANGES.rst#920-2022-07-01) [Compare Source](https://redirect.github.com/python-pillow/Pillow/compare/9.1.1...9.2.0) - Deprecate ImageFont.getsize and related functions [#​6381](https://redirect.github.com/python-pillow/Pillow/issues/6381) \[nulano, radarhere] - Fixed null check for fribidi_version_info in FriBiDi shim [#​6376](https://redirect.github.com/python-pillow/Pillow/issues/6376) \[nulano] - Added GIF decompression bomb check [#​6402](https://redirect.github.com/python-pillow/Pillow/issues/6402) \[radarhere] - Handle PCF fonts files with less than 256 characters [#​6386](https://redirect.github.com/python-pillow/Pillow/issues/6386) \[dawidcrivelli, radarhere] - Improved GIF optimize condition [#​6378](https://redirect.github.com/python-pillow/Pillow/issues/6378) \[raygard, radarhere] - Reverted to **array_interface** with the release of NumPy 1.23 [#​6394](https://redirect.github.com/python-pillow/Pillow/issues/6394) \[radarhere] - Pad PCX palette to 768 bytes when saving [#​6391](https://redirect.github.com/python-pillow/Pillow/issues/6391) \[radarhere] - Fixed bug with rounding pixels to palette colors [#​6377](https://redirect.github.com/python-pillow/Pillow/issues/6377) \[btrekkie, radarhere] - Use gnome-screenshot on Linux if available [#​6361](https://redirect.github.com/python-pillow/Pillow/issues/6361) \[radarhere, nulano] - Fixed loading L mode BMP RLE8 images [#​6384](https://redirect.github.com/python-pillow/Pillow/issues/6384) \[radarhere] - Fixed incorrect operator in ImageCms error [#​6370](https://redirect.github.com/python-pillow/Pillow/issues/6370) \[LostBenjamin, hugovk, radarhere] - Limit FPX tile size to avoid extending outside image [#​6368](https://redirect.github.com/python-pillow/Pillow/issues/6368) \[radarhere] - Added support for decoding plain PPM formats [#​5242](https://redirect.github.com/python-pillow/Pillow/issues/5242) \[Piolie, radarhere] - Added apply_transparency() [#​6352](https://redirect.github.com/python-pillow/Pillow/issues/6352) \[radarhere] - Fixed behaviour change from endian fix [#​6197](https://redirect.github.com/python-pillow/Pillow/issues/6197) \[radarhere] - Allow remapping P images with RGBA palettes [#​6350](https://redirect.github.com/python-pillow/Pillow/issues/6350) \[radarhere] - Fixed drawing translucent 1px high polygons [#​6278](https://redirect.github.com/python-pillow/Pillow/issues/6278) \[radarhere] - Pad COLORMAP to 768 items when saving TIFF [#​6232](https://redirect.github.com/python-pillow/Pillow/issues/6232) \[radarhere] - Fix P -> PA conversion [#​6337](https://redirect.github.com/python-pillow/Pillow/issues/6337) \[RedShy, radarhere] - Once exif data is parsed, do not reload unless it changes [#​6335](https://redirect.github.com/python-pillow/Pillow/issues/6335) \[radarhere] - Only try to connect discontiguous corners at the end of edges [#​6303](https://redirect.github.com/python-pillow/Pillow/issues/6303) \[radarhere] - Improve transparency handling when saving GIF images [#​6176](https://redirect.github.com/python-pillow/Pillow/issues/6176) \[radarhere] - Do not update GIF frame position until local image is found [#​6219](https://redirect.github.com/python-pillow/Pillow/issues/6219) \[radarhere] - Netscape GIF extension belongs after the global color table [#​6211](https://redirect.github.com/python-pillow/Pillow/issues/6211) \[radarhere] - Only write GIF comments at the beginning of the file [#​6300](https://redirect.github.com/python-pillow/Pillow/issues/6300) \[raygard, radarhere] - Separate multiple GIF comment blocks with newlines [#​6294](https://redirect.github.com/python-pillow/Pillow/issues/6294) \[raygard, radarhere] - Always use GIF89a for comments [#​6292](https://redirect.github.com/python-pillow/Pillow/issues/6292) \[raygard, radarhere] - Ignore compression value from BMP info dictionary when saving as TIFF [#​6231](https://redirect.github.com/python-pillow/Pillow/issues/6231) \[radarhere] - If font is file-like object, do not re-read from object to get variant [#​6234](https://redirect.github.com/python-pillow/Pillow/issues/6234) \[radarhere] - Raise ValueError when trying to access internal fp after close [#​6213](https://redirect.github.com/python-pillow/Pillow/issues/6213) \[radarhere] - Support more affine expression forms in im.point() [#​6254](https://redirect.github.com/python-pillow/Pillow/issues/6254) \[benrg, radarhere] - Populate Python palette in fromarray() [#​6283](https://redirect.github.com/python-pillow/Pillow/issues/6283) \[radarhere] - Raise ValueError if PNG chunks are truncated [#​6253](https://redirect.github.com/python-pillow/Pillow/issues/6253) \[radarhere] - Use durations from each frame by default when saving GIFs [#​6265](https://redirect.github.com/python-pillow/Pillow/issues/6265) \[radarhere] - Adjust BITSPERSAMPLE to match SAMPLESPERPIXEL when opening TIFFs [#​6270](https://redirect.github.com/python-pillow/Pillow/issues/6270) \[radarhere] - Search pkgconf system libs/cflags [#​6138](https://redirect.github.com/python-pillow/Pillow/issues/6138) \[jameshilliard, radarhere] - Raise ValueError for invalid PPM maxval [#​6242](https://redirect.github.com/python-pillow/Pillow/issues/6242) \[radarhere] - Corrected screencapture argument in ImageGrab.grab() [#​6244](https://redirect.github.com/python-pillow/Pillow/issues/6244) \[axt-one] - Deprecate support for Qt 5 (PyQt5 and PySide2) [#​6237](https://redirect.github.com/python-pillow/Pillow/issues/6237) \[hugovk, radarhere] - Increase wait time of temporary file deletion on Windows [#​6224](https://redirect.github.com/python-pillow/Pillow/issues/6224) \[AlexTedeschi] - Deprecate FreeTypeFont.getmask2 fill parameter [#​6220](https://redirect.github.com/python-pillow/Pillow/issues/6220) \[nulano, radarhere, hugovk] - Round lut values where necessary [#​6188](https://redirect.github.com/python-pillow/Pillow/issues/6188) \[radarhere] - Load before getting size in resize() [#​6190](https://redirect.github.com/python-pillow/Pillow/issues/6190) \[radarhere] - Load image before performing size calculations in thumbnail() [#​6186](https://redirect.github.com/python-pillow/Pillow/issues/6186) \[radarhere] - Deprecated PhotoImage.paste() box parameter [#​6178](https://redirect.github.com/python-pillow/Pillow/issues/6178) \[radarhere] ### [`v9.1.1`](https://redirect.github.com/python-pillow/Pillow/blob/HEAD/CHANGES.rst#911-2022-05-17) [Compare Source](https://redirect.github.com/python-pillow/Pillow/compare/9.1.0...9.1.1) - When reading past the end of a TGA scan line, reduce bytes left. CVE-2022-30595 \[radarhere] - Do not open images with zero or negative height [#​6269](https://redirect.github.com/python-pillow/Pillow/issues/6269) \[radarhere] ### [`v9.1.0`](https://redirect.github.com/python-pillow/Pillow/blob/HEAD/CHANGES.rst#910-2022-04-01) [Compare Source](https://redirect.github.com/python-pillow/Pillow/compare/9.0.1...9.1.0) - Add support for multiple component transformation to JPEG2000 [#​5500](https://redirect.github.com/python-pillow/Pillow/issues/5500) \[scaramallion, radarhere, hugovk] - Fix loading FriBiDi on Alpine [#​6165](https://redirect.github.com/python-pillow/Pillow/issues/6165) \[nulano] - Added setting for converting GIF P frames to RGB [#​6150](https://redirect.github.com/python-pillow/Pillow/issues/6150) \[radarhere] - Allow 1 mode images to be inverted [#​6034](https://redirect.github.com/python-pillow/Pillow/issues/6034) \[radarhere] - Raise ValueError when trying to save empty JPEG [#​6159](https://redirect.github.com/python-pillow/Pillow/issues/6159) \[radarhere] - Always save TIFF with contiguous planar configuration [#​5973](https://redirect.github.com/python-pillow/Pillow/issues/5973) \[radarhere] - Connected discontiguous polygon corners [#​5980](https://redirect.github.com/python-pillow/Pillow/issues/5980) \[radarhere] - Ensure Tkinter hook is activated for getimage() [#​6032](https://redirect.github.com/python-pillow/Pillow/issues/6032) \[radarhere] - Use screencapture arguments to crop on macOS [#​6152](https://redirect.github.com/python-pillow/Pillow/issues/6152) \[radarhere] - Do not mark L mode JPEG as 1 bit in PDF [#​6151](https://redirect.github.com/python-pillow/Pillow/issues/6151) \[radarhere] - Added support for reading I;16R TIFF images [#​6132](https://redirect.github.com/python-pillow/Pillow/issues/6132) \[radarhere] - If an error occurs after creating a file, remove the file [#​6134](https://redirect.github.com/python-pillow/Pillow/issues/6134) \[radarhere] - Fixed calling DisplayViewer or XVViewer without a title [#​6136](https://redirect.github.com/python-pillow/Pillow/issues/6136) \[radarhere] - Retain RGBA transparency when saving multiple GIF frames [#​6128](https://redirect.github.com/python-pillow/Pillow/issues/6128) \[radarhere] - Save additional ICO frames with other bit depths if supplied [#​6122](https://redirect.github.com/python-pillow/Pillow/issues/6122) \[radarhere] - Handle EXIF data truncated to just the header [#​6124](https://redirect.github.com/python-pillow/Pillow/issues/6124) \[radarhere] - Added support for reading BMP images with RLE8 compression [#​6102](https://redirect.github.com/python-pillow/Pillow/issues/6102) \[radarhere] - Support Python distributions where \_tkinter is compiled in [#​6006](https://redirect.github.com/python-pillow/Pillow/issues/6006) \[lukegb] - Added support for PPM arbitrary maxval [#​6119](https://redirect.github.com/python-pillow/Pillow/issues/6119) \[radarhere] - Added BigTIFF reading [#​6097](https://redirect.github.com/python-pillow/Pillow/issues/6097) \[radarhere] - When converting, clip I;16 to be unsigned, not signed [#​6112](https://redirect.github.com/python-pillow/Pillow/issues/6112) \[radarhere] - Fixed loading L mode GIF with transparency [#​6086](https://redirect.github.com/python-pillow/Pillow/issues/6086) \[radarhere] - Improved handling of PPM header [#​5121](https://redirect.github.com/python-pillow/Pillow/issues/5121) \[Piolie, radarhere] - Reset size when seeking away from "Large Thumbnail" MPO frame [#​6101](https://redirect.github.com/python-pillow/Pillow/issues/6101) \[radarhere] - Replace requirements.txt with extras [#​6072](https://redirect.github.com/python-pillow/Pillow/issues/6072) \[hugovk, radarhere] - Added PyEncoder and support BLP saving [#​6069](https://redirect.github.com/python-pillow/Pillow/issues/6069) \[radarhere] - Handle TGA images with packets that cross scan lines [#​6087](https://redirect.github.com/python-pillow/Pillow/issues/6087) \[radarhere] - Added FITS reading [#​6056](https://redirect.github.com/python-pillow/Pillow/issues/6056) \[radarhere, hugovk] - Added rawmode argument to Image.getpalette() [#​6061](https://redirect.github.com/python-pillow/Pillow/issues/6061) \[radarhere] - Fixed BUFR, GRIB and HDF5 stub saving [#​6071](https://redirect.github.com/python-pillow/Pillow/issues/6071) \[radarhere] - Do not automatically remove temporary ImageShow files on Unix [#​6045](https://redirect.github.com/python-pillow/Pillow/issues/6045) \[radarhere] - Correctly read JPEG compressed BLP images [#​4685](https://redirect.github.com/python-pillow/Pillow/issues/4685) \[Meithal, radarhere] - Merged \_MODE_CONV typ into ImageMode as typestr [#​6057](https://redirect.github.com/python-pillow/Pillow/issues/6057) \[radarhere] - Consider palette size when converting and in getpalette() [#​6060](https://redirect.github.com/python-pillow/Pillow/issues/6060) \[radarhere] - Added enums [#​5954](https://redirect.github.com/python-pillow/Pillow/issues/5954) \[radarhere]

Configuration

📅 Schedule: Branch creation - "" (UTC), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.



This PR was generated by Mend Renovate. View the repository job log.