pillow v4.3.0 Release Notes

Release Date: 2017-10-02 // over 6 years ago
    • ๐Ÿ›  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]

    • 0๏ธโƒฃ 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]