Pillow

Latest version: v11.1.0

Safety actively analyzes 721825 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 8 of 24

4.3.0

Not secure
------------------

- Fix warning on pointer cast in isblock 2775, 2778
[cgohlke]

- Doc: Added macOS High Sierra tested Pillow version 2777
[radarhere]

- Use correct Windows handle type on 64 bit in imagingcms 2774
[cgohlke]

- 64 Bit Windows fix for block storage 2773
[cgohlke]

- Fix "expression result unused" warning 2764
[radarhere]

- Add 16bit Read/Write and RLE read support to SgiImageFile 2769
[jbltx, wiredfool]

- Block & array hybrid storage 2738
[homm]

- Common seek frame position check 1849
[radarhere]

- Doc: Add note about aspect ratio to Image thumbnail script 2281
[wilsonge]

- Fix ValueError: invalid version number '1.0.0rc1' in scipy release candidate 2771
[cgohlke]

- Unfreeze requirements.txt 2766
[hugovk]

- Test: ResourceWarning tests 2756
[hugovk]

- Use n_frames to determine is_animated if possible 2315
[radarhere]

- Doc: Corrected parameters in documentation 2768
[radarhere]

- Avoid unnecessary Image operations 1891
[radarhere]

- Added register_extensions method 1860
[radarhere]

- Fix TIFF support for I;16S, I;16BS, and I;32BS rawmodes 2748
[wiredfool]

- Fixed doc syntax in ImageDraw 2752
[radarhere]

- Fixed support for building on Windows/msys2. Added Appveyor CI coverage for python3 on msys2 2746
[wiredfool]

- Fix ValueError in Exif/Tiff IFD 2719
[wiredfool]

- Use pathlib2 for Path objects on Python < 3.4 2291
[asergi]

- Export only required properties in unsafe_ptrs 2740
[homm]

- Alpha composite fixes 2709
[homm]

- Faster Transpose operations, added 'Transverse' option 2730
[homm]

- Deprecate ImageOps undocumented functions gaussian_blur, gblur, unsharp_mask, usm and box_blur in favor of ImageFilter implementations 2735
[homm]

- Dependencies: Updated freetype to 2.8.1 2741
[radarhere]

- Bug: Player skipped first image 2742
[radarhere]

- Faster filter operations for Kernel, Gaussian, and Unsharp Mask filters 2679
[homm]

- EPS: Add showpage to force rendering of some EPS images 2636
[kaplun]

- DOC: Fix type of palette parameter in Image.quantize. 2703
[kkopachev]

- DOC: Fix Ico docs to match code 2712
[hugovk]

- Added file pointer save to SpiderImagePlugin 2647
[radarhere]

- Add targa version 2 footer 2713
[jhultgre]

- Removed redundant lines 2714
[radarhere]

- Travis CI: Use default pypy/pypy3 2721
[hugovk]

- Fix for SystemError when rendering an empty string, added in 4.2.0 2706
[wiredfool]

- Fix for memory leaks in font handling added in 4.2.0 2634
[wiredfool]

- Tests: cleanup, more tests. Fixed WMF save handler 2689
[radarhere]

- Removed debugging interface for Image.core.grabclipboard 2708
[radarhere]

- Doc syntax fix 2710
[radarhere]

- Faster packing and unpacking for RGB, LA, and related storage modes 2693
[homm]

- Use RGBX rawmode for RGB JPEG images where possible 1989
[homm]

- Remove palettes from non-palette modes in _new 2704
[wiredfool]

- Delete transparency info when convert'ing RGB/L to RGBA 2633
[olt]

- Code tweaks to ease type annotations 2687
[neiljp]

- Fixed incorrect use of 's' to byteslike object 2691
[wiredfool]

- Fix JPEG subsampling labels for subsampling=2 2698
[homm]

- Region of interest (box) for resampling 2254
[homm]

- Basic support for Termux (android) in setup.py 2684
[wiredfool]

- Bug: Fix Image.fromarray for numpy.bool type. 2683
[wiredfool]

- CI: Add Fedora 24 and 26 to Docker tests
[wiredfool]

- JPEG: Fix ZeroDivisionError when EXIF contains invalid DPI (0/0). 2667
[vytisb]

- Depends: Updated openjpeg to 2.2.0 2669
[radarhere]

- Depends: Updated Tk Tcl to 8.6.7 2668
[radarhere]

- Depends: Updated libimagequant to 2.10.2 2660
[radarhere]

- Test: Added test for ImImagePlugin tell() 2675
[radarhere]

- Test: Additional tests for SGIImagePlugin 2659
[radarhere]

- New Image.getchannel method 2661
[homm]

- Remove unused im.copy2 and core.copy methods 2657
[homm]

- Fast Image.merge() 2677
[homm]

- Fast Image.split() 2676
[homm]

- Fast image allocation 2655
[homm]

- Storage cleanup 2654
[homm]

- FLI: Use frame count from FLI header 2674
[radarhere]

- Test: Test animated FLI file 2650
[hugovk]

- Bug: Fixed uninitialized memory in bc5 decoding 2648
[ifeherva]

- Moved SgiImagePlugin save error to before the start of write operations 2646
[radarhere]

- Move createfontdatachunk.py so isn't installed globally 2645
[hugovk]

- Bug: Fix unexpected keyword argument 'align' 2641
[hugovk]

- Add newlines to error message for clarity 2640
[hugovk]

- Docs: Updated redirected URL 2637
[radarhere]

- Bug: Fix JPEG DPI when EXIF is invalid 2632
[wiredfool]

- Bug: Fix for font getsize on empty string 2624
[radarhere]

- Docs: Improved ImageDraw documentation 2626
[radarhere]

- Docs: Corrected alpha_composite args documentation 2627
[radarhere]

- Docs: added the description of the filename attribute to images.rst 2621
[dasdachs]

- Dependencies: Updated libimagequant to 2.10.1 2616
[radarhere]

- PDF: Renamed parameter to not shadow built-in dict 2612
[kijeong]

4.2.1

Not secure
------------------

- CI: Fix version specification and test on CI for PyPy/Windows 2608
[wiredfool]

4.2.0

Not secure
------------------

- Doc: Clarified Image.save:append_images documentation 2604
[radarhere]

- CI: Amazon Linux and Centos6 docker images added to Travis CI 2585
[wiredfool]

- Image.alpha_composite added 2595
[wiredfool]

- Complex Text Support 2576
[ShamsaHamed, Fahad-Alsaidi, wiredfool]

- Added threshold parameter to ImageDraw.floodfill 2599
[nediamond]

- Added dBATCH parameter to ghostscript command 2588
[radarhere]

- JPEG: Adjust buffer size when icc_profile > MAXBLOCK 2596
[Darou]

- Specify Pillow Version in one place 2517
[wiredfool]

- CI: Change the owner of the TRAVIS_BUILD_DIR, fixing broken docker runs 2587
[wiredfool]

- Fix truncated PNG loading for some images, Fix memory leak on truncated PNG images. 2541, 2598
[homm]

- Add decompression bomb check to Image.crop 2410
[wiredfool]

- ImageFile: Ensure that the ``err_code`` variable is initialized in case of exception. 2363
[alexkiro]

- Tiff: Support append_images for saving multipage TIFFs 2406
[blochl]

- Doc: Clarify that draft is only implemented for JPEG and PCD 2409
[wiredfool]

- Test: MicImagePlugin 2447
[hugovk]

- Use round() instead of floor() to eliminate zero coefficients in resample 2558
[homm]

- Remove deprecated code 2549
[hugovk]

- Added append_images to PDF saving 2526
[radarhere]

- Remove unused function core image function new_array 2548
[hugovk]

- Remove unnecessary calls to dict.keys() 2551
[jdufresne]

- Add more ImageDraw.py tests and remove unused Draw.c code 2533
[hugovk]

- Test: More tests for ImageMorph 2554
[hugovk]

- Test: McIDAS area file 2552
[radarhere]

- Update Feature Detection 2520
[wiredfool]

- CI: Update pypy on Travis CI 2573
[hugovk]

- ImageMorph: Fix wrong expected size of MRLs read from disk 2561
[dov]

- Docs: Update install docs for FreeBSD 2546
[wiredfool]

- Build: Ignore OpenJpeg 1.5 on FreeBSD 2544
[melvyn-sopacua]

- Remove 'not yet implemented' methods from PIL 1.1.4 2538
[hugovk]

- Dependencies: Update FreeType to 2.8, LibTIFF to 4.0.8 and libimagequant to 2.9.1 2535 2537 2540
[radarhere]

- Raise TypeError and not also UnboundLocalError in ImageFile.Parser() 2525
[joshblum]

- Test: Use Codecov for coverage 2528
[hugovk]

- Use PNG for Image.show() 2527
[HinTak, wiredfool]

- Remove WITH_DEBUG compilation flag 2522
[wiredfool]

- Fix return value on parameter parse error in _webp.c 2521
[adw1n]

- Set executable flag on scripts with shebang line 2295
[radarhere]

- Flake8 2460
[radarhere]

- Doc: Release Process Changes 2516
[wiredfool]

- CI: Added region for s3 deployment on appveyor 2515
[wiredfool]

- Doc: Updated references to point to existing files 2507
[radarhere]

- Return copy on Image crop if crop dimensions match the image 2471
[radarhere]

- Test: Optimize CI speed 2464, 2466
[hugovk]

4.1.1

Not secure
------------------

- Undef PySlice_GetIndicesEx, see https://bugs.python.org/issue29943 #2493
[cgohlke]

- Fix for file with DPI in EXIF but not metadata, and XResolution is an int rather than tuple 2484
[hugovk]

- Docs: Removed broken download counter badge 2487
[hugovk]

- Docs: Fixed rst syntax error 2477
[thebjorn]

4.1.0

Not secure
------------------

- Close files after loading if possible 2330
[homm, wiredfool]

- Fix Image Access to be reloadable when embedding the Python interpreter 2296
[wiredfool, cgohlke]

- Fetch DPI from EXIF if not specified in JPEG header 2449, 2472
[hugovk]

- Removed winbuild checksum verification 2468
[radarhere]

- Git: Set ContainerIO test file as binary 2469
[cgohlke]

- Remove superfluous import of FixTk 2455
[cgohlke)

- Fix import of tkinter/Tkinter 2456
[cgohlke)

- Pure Python Decoders, including Python decoder to fix for MSP images 1938
[wiredfool, hugovk]

- Reorganized GifImagePlugin, fixes 2314. 2374
[radarhere, wiredfool]

- Doc: Reordered operating systems in Compatibility Matrix 2436
[radarhere]

- Test: Additional tests for BufrStub, Eps, Container, GribStub, IPTC, Wmf, XVThumb, ImageDraw, ImageMorph, ImageShow 2425
[radarhere]

- Health fixes 2437
[radarhere]

- Test: Correctness tests ContainerIO, XVThumbImagePlugin, BufrStubImagePlugin, GribStubImagePlugin, FitsStubImagePlugin, Hdf5StubImagePlugin, PixarImageFile, PsdImageFile 2443, 2442, 2441, 2440, 2431, 2430, 2428, 2427
[hugovk]

- Remove unused imports 1822
[radarhere]

- Replaced KeyError catch with dictionary get method 2424
[radarhere]

- Test: Removed unrunnable code in test_image_toqimage 2415
[hugovk]

- Removed use of spaces in TIFF kwargs names, deprecated in 2.7 1390
[radarhere]

- Removed deprecated ImageDraw setink, setfill, setfont methods 2220
[jdufresne]

- Send unwanted subprocess output to /dev/null 2253
[jdufresne]

- Fix division by zero when creating 0x0 image from numpy array 2419
[hugovk]

- Test: Added matrix convert tests 2381
[hugovk]

- Replaced broken URL to partners.adobe.com 2413
[radarhere]

- Removed unused private functions in setup.py and build_dep.py 2414
[radarhere]

- Test: Fixed Qt tests for QT5 and saving 1 bit PNG 2394
[wiredfool]

- Test: docker builds for Arch and Debian Stretch 2394
[wiredfool]

- Updated libwebp to 0.6.0 on appveyor 2395
[radarhere]

- More explicit error message when saving to a file with invalid extension 2399
[ces42]

- Docs: Update some http urls to https 2403
[hugovk]

- Preserve aux/alpha channels when performing Imagecms transforms 2355
[gunjambi]

- Test linear and radial gradient effects 2382
[hugovk]

- Test ImageDraw.Outline and and ImageDraw.Shape 2389
[hugovk]

- Added PySide to ImageQt documentation 2392
[radarhere]

- BUG: Empty image mode no longer causes a crash 2380
[evalapply]

- Exclude .travis and contents from manifest 2386
[radarhere]

- Remove 'MIT-like' from license 2145
[wiredfool]

- Tests: Add tests for several Image operations 2379
[radarhere]

- PNG: Moved iCCP chunk before PLTE chunk when saving as PNG, restricted chunks known value/ordering 2347
[radarhere]

- Default to inch-interpretation for missing ResolutionUnit in TiffImagePlugin 2365
[lambdafu]

- Bug: Fixed segfault when using ImagingTk on pypy Issue 2376, 2359.
[wiredfool]

- Bug: Fixed Integer overflow using ImagingTk on 32 bit platforms 2359
[wiredfool, QuLogic]

- Tests: Added docker images for testing alternate platforms. See also https://github.com/python-pillow/docker-images. #2368
[wiredfool]

- Removed PIL 1.0 era TK readme that concerns Windows 95/NT 2360
[wiredfool]

- Prevent ``nose -v`` printing docstrings 2369
[hugovk]

- Replaced absolute PIL imports with relative imports 2349
[radarhere]

- Added context managers for file handling 2307
[radarhere]

- Expose registered file extensions in Image 2343
[iggomez, radarhere]

- Make mode descriptor cache initialization thread-safe. 2351
[gunjambi]

- Updated Windows test dependencies: Freetype 2.7.1, zlib 1.2.11 2331, 2332, 2357
[radarhere]

- Followed upstream pngquant packaging reorg to libimagquant 2354
[radarhere]

- Fix invalid string escapes 2352
[hugovk]

- Add test for crop operation with no argument 2333
[radarhere]

4.0.0

Not secure
------------------

- Refactor out postprocessing hack to load_end in PcdImageFile
[wiredfool]

- Add center and translate option to Image.rotate. 2328
[lambdafu]

- Test: Relax WMF test condition, fixes 2323. 2327
[wiredfool]

- Allow 0 size images, Fixes 2259, Reverts to pre-3.4 behavior. 2262
[wiredfool]

- SGI: Save uncompressed SGI/BW/RGB/RGBA files 2325
[jbltx]

- Depends: Updated pngquant to 2.8.2 2319
[radarhere]

- Test: Added correctness tests for opening SGI images 2324
[wiredfool]

- Allow passing a list or tuple of individual frame durations when saving a GIF 2298
[Xdynix]

- Unified different GIF optimize conditions 2196
[radarhere]

- Build: Refactor dependency installation 2305
[hugovk]

- Test: Add python 3.6 to travis, tox 2304
[hugovk]

- Test: Fix coveralls coverage for Python+C 2300
[hugovk]

- Remove executable bit and shebang from OleFileIO.py 2308
[jwilk, radarhere]

- PyPy: Buffer interface workaround 2294
[wiredfool]

- Test: Switch to Ubuntu Trusty 14.04 on Travis CI 2294

- Remove vendored version of olefile Python package in favor of upstream 2199
[jdufresne]

- Updated comments to use print as a function 2234
[radarhere]

- Set executable flag on selftest.py, setup.py and added shebang line 2282, 2277
[radarhere, homm]

- Test: Increase epsilon for FreeType 2.7 as rendering is slightly different. 2286
[hugovk]

- Test: Faster assert_image_similar 2279
[homm]

- Removed deprecated internal "stretch" method 2276
[homm]

- Removed the handles_eof flag in decode.c 2223
[wiredfool]

- Tiff: Fix for writing Tiff to BytesIO using libtiff 2263
[wiredfool]

- Doc: Design docs 2269
[wiredfool]

- Test: Move tests requiring libtiff to test_file_libtiff 2273
[wiredfool]

- Update Maxblock heuristic 2275
[wiredfool]

- Fix for 2-bit palette corruption 2274
[pdknsk, wiredfool]

- Tiff: Update info.icc_profile when using libtiff reader. 2193
[lambdafu]

- Test: Fix bug in test_ifd_rational_save when libtiff is not available 2270
[ChristopherHogan]

- ICO: Only save relevant sizes 2267
[hugovk]

- ICO: Allow saving .ico files of 256x256 instead of 255x255 2265
[hugovk]

- Fix TIFFImagePlugin ICC color profile saving. 2087
[cskau]

- Doc: Improved description of ImageOps.deform resample parameter 2256
[radarhere]

- EMF: support negative bounding box coordinates 2249
[glexey]

- Close file if opened in WalImageFile 2216
[radarhere]

- Use Image._new() instead of _makeself() 2248
[homm]

- SunImagePlugin fixes 2241
[wiredfool]

- Use minimal scale for jpeg drafts 2240
[homm]

- Updated dependency scripts to use FreeType 2.7, OpenJpeg 2.1.2, WebP 0.5.2 and Tcl/Tk 8.6.6 2235, 2236, 2237, 2290, 2302
[radarhere]

- Fix "invalid escape sequence" bytestring warnings in Python 3.6 2186
[timgraham]

- Removed support for Python 2.6 and Python 3.2 2192
[jdufresne]

- Setup: Raise custom exceptions when required/requested dependencies are not found 2213
[wiredfool]

- Use a context manager in FontFile.save() to ensure file is always closed 2226
[jdufresne]

- Fixed bug in saving to fp-objects in Python >= 3.4 2227
[radarhere]

- Use a context manager in ImageFont._load_pilfont() to ensure file is always closed 2232
[jdufresne]

- Use generator expressions instead of list comprehension 2225
[jdufresne]

- Close file after reading in ImagePalette.load() 2215
[jdufresne]

- Changed behaviour of default box argument for paste method to match docs 2211
[radarhere]

- Add support for another BMP bitfield 2221
[jmerdich]

- Added missing top-level test __main__ 2222
[radarhere]

- Replaced range(len()) 2197
[radarhere]

- Fix for ImageQt Segfault, fixes 1370 2182
[wiredfool]

- Setup: Close file in setup.py after finished reading 2208
[jdufresne]

- Setup: optionally use pkg-config (when present) to detect dependencies 2074
[garbas]

- Search for tkinter first in builtins 2210
[matthew-brett]

- Tests: Replace try/except/fail pattern with TestCase.assertRaises() 2200
[jdufresne]

- Tests: Remove unused, open files at top level of tests 2188
[jdufresne]

- Replace type() equality checks with isinstance 2184
[jdufresne]

- Doc: Move ICO out of the list of read-only file formats 2180
[alexwlchan]

- Doc: Fix formatting, too-short title underlines and malformed table 2175
[hugovk]

- Fix BytesWarnings 2172
[jdufresne]

- Use Integer division to eliminate deprecation warning. 2168
[mastermatt]

- Doc: Update compatibility matrix
[daavve, wiredfool]

Page 8 of 24

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.