github-actions
released this
15 Oct 14:29
·
213 commits
to refs/heads/main
since this release
https://pillow.readthedocs.io/en/stable/releasenotes/11.0.0.html
Removals
- Drop support for EOL PyPy3.9 #8335 [@hugovk]
- Remove all WITH_* flags from _imaging.c and other flags #8211 [@homm]
- Remove unused _util.is_directory #8259 [@hugovk]
- Drop support for Python 3.8 #8183 [@hugovk]
- Remove PSFile, PyAccess and USE_CFFI_ACCESS #8182 [@hugovk]
Deprecations
- Deprecate ICNS (width, height, scale) sizes in favour of load(scale) #8352 [@radarhere]
- Deprecate isImageType #8364 [@radarhere]
- Deprecate support for FreeType 2.9.0 #8356 [@hugovk]
- Remove WebP support without anim, mux/demux, and with buggy alpha #8213 [@homm]
- Deprecate JpegImageFile huffman_ac and huffman_dc #8274 [@radarhere]
- Deprecate ImageMath lambda_eval and unsafe_eval options argument #8242 [@radarhere]
Changes
- Do not create core image in TIFF seek() #8392 [@radarhere]
- Removed custom build_openjpeg #8365 [@radarhere]
- Support writing LONG8 offsets in AppendingTiffWriter #8417 [@radarhere]
- Use ImageFile.MAXBLOCK when saving TIFF images #8461 [@radarhere]
- Always raise warnings for deprecated feature checks #8459 [@radarhere]
- Do not close provided file handles with libtiff when saving #8458 [@radarhere]
- Revert "Skip QEMU-emulated wheels on workflow dispatch event" #8455 [@radarhere]
- Support ImageFilter.BuiltinFilter for I;16* images #8438 [@radarhere]
- [pre-commit.ci] pre-commit autoupdate #8448 [@pre-commit-ci]
- Use ImagingCore.ptr instead of ImagingCore.id #8341 [@homm]
- Simplified code #8445 [@radarhere]
- Removed unused code #8447 [@radarhere]
- Updated EPS mode when opening images without transparency #8281 [@Yay295]
- Use transparency when combining P frames from APNGs #8443 [@radarhere]
- Generate and upload attestations to PyPI #8441 [@hugovk]
- Do not convert images unnecessarily in ImageEnhance #8431 [@radarhere]
- Raise an error if path is compacted during mapping #8416 [@radarhere]
- Support all resampling filters when resizing I;16* images #8422 [@radarhere]
- Free memory on early return #8413 [@radarhere]
- Cast int before potentially exceeding INT_MAX #8402 [@radarhere]
- Prevent division by zero #8408 [@radarhere]
- Check image value before use #8400 [@radarhere]
- Use ruff check #8423 [@radarhere]
- Change harfbuzz versions in wheels #8421 [@radarhere]
- Use Capsule for WebP saving #8386 [@homm]
- Fixed writing multiple StripOffsets to TIFF #8317 [@Yay295]
- Updated macOS deployment target for PyPy on Intel to 10.15 #8414 [@radarhere]
- Fix dereference before checking for NULL in ImagingTransformAffine #8398 [@PavlNekrasov]
- Use transposed size after opening for TIFF images #8390 [@radarhere]
- Improve ImageFont error messages #8338 [@yngvem]
- Mention MAX_TEXT_CHUNK limit in PNG error message #8391 [@radarhere]
- Cast Dib handle to int #8385 [@radarhere]
- Updated macOS deployment target for Python >= 3.12 on Intel to 10.13 #8379 [@radarhere]
- Removed unused ImagePath variable #8377 [@radarhere]
- Change macos-14 to macos-latest #8376 [@radarhere]
- Accept float stroke widths #8369 [@radarhere]
- Remove comments #8370 [@radarhere]
- Removed libffi-dev #8368 [@radarhere]
- Improved handling of RGBA palettes when saving GIF images #8366 [@radarhere]
- Support converting more modes to LAB by converting to RGBA first #8358 [@radarhere]
- Optimize getbbox() and getextrema() routines #8194 [@homm]
- Removed unused TiffImagePlugin IFD_LEGACY_API #8355 [@radarhere]
- Handle duplicate EXIF header #8350 [@zakajd]
- Use (void) for empty function parameters #8002 [@Yay295]
- Return early from BoxBlur if either width or height is zero #8347 [@radarhere]
- Check text is either string or bytes #8308 [@radarhere]
- Added writing XMP bytes to JPEG #8286 [@radarhere]
- Require font parameter in FreeTypeFont and truetype() #8261 [@radarhere]
- Support JPEG2000 RGBA palettes #8256 [@radarhere]
- Expand C image to match GIF frame image size #8237 [@radarhere]
- Allow saving I;16 images as PPM #8231 [@radarhere]
- When IFD is missing, connect get_ifd() dictionary to Exif #8230 [@radarhere]
- Skip truncated ICO mask if LOAD_TRUNCATED_IMAGES is enabled #8180 [@radarhere]
- Treat unknown JPEG2000 colorspace as unspecified #8343 [@radarhere]
- [pre-commit.ci] pre-commit autoupdate #8342 [@pre-commit-ci]
- Updated error message when saving WebP with invalid width or height #8322 [@radarhere]
- Remove warning if NumPy failed to raise an error during conversion #8326 [@radarhere]
- Move repeated code to private helper function #8310 [@Yay295]
- Get IPTC info from tag_v2 #8315 [@radarhere]
- Log value from tag_v2 instead of tag #8306 [@radarhere]
- If left and right sides meet in ImageDraw.rounded_rectangle(), do not draw rectangle to fill gap #8304 [@radarhere]
- Add missing TIFF CMYK;16B reader #8298 [@homm]
- Fix undefined variable #8293 [@radarhere]
- Enforce CSV names style for
pytest.mark.parametrize
#8295 [@akx] - Fixed sign comparison warning #8294 [@radarhere]
- Move auxiliary mypy requirements to a requirements file #8289 [@akx]
- Removed unused variable #8288 [@radarhere]
- Improve ImageDraw2 shape methods #8265 [@radarhere]
- Lock around usages of imaging memory arenas #8238 [@lysnikolaou]
- Removed unused argument #8257 [@radarhere]
- Do not run scheduled wheel jobs on forks #8254 [@Yay295]
- Use local variable instead of casting every line #8248 [@Yay295]
- Change AlignAfterOpenBracket in .clang-format to BlockIndent #8067 [@Yay295]
- Move uploading nightly wheels to different job #8244 [@lysnikolaou]
- Skip QEMU-emulated wheels on workflow dispatch event #8243 [@lysnikolaou]
- Upload wheels to scientific-python-nightly-wheels index #8236 [@lysnikolaou]
- Temporarily disable cifuzz #8239 [@radarhere]
- Simplified code #8235 [@radarhere]
- Move away from APIs that use borrowed references under the free-threaded build #8216 [@hugovk]
- Build free-threaded wheels #8219 [@radarhere]
- Group aarch64 wheel jobs #8206 [@radarhere]
- Allow size argument to resize() to be a NumPy array #8201 [@radarhere]
- Add support for Python 3.13 #8181 [@hugovk]
- Removed Debian 11 #8185 [@radarhere]
Dependencies
- Update dependency cibuildwheel to v2.21.3 #8453 [@renovate]
- Update dependency cibuildwheel to v2.21.2 #8436 [@renovate]
- Updated xz to 5.6.3 #8434 [@radarhere]
- Update scientific-python/upload-nightly-action action to v0.6.1 #8430 [@renovate]
- Update scientific-python/upload-nightly-action action to v0.6.0 #8425 [@renovate]
- Updated harfbuzz to 10.0.1 in remaining wheels #8424 [@radarhere]
- Improved copying imagequant libraries #8420 [@radarhere]
- Updated fribidi to 1.0.16 #8419 [@radarhere]
- Updated harfbuzz to 10.0.1 #8415 [@radarhere]
- Updated harfbuzz to 10.0.0 #8411 [@radarhere]
- Shared imagequant libraries may be located within usr/lib64 #8407 [@radarhere]
- winbuild: Build freetype.vcxproj to fix passing in custom parameters #8403 [@nulano]
- Updated raqm to 0.10.2 #8404 [@radarhere]
- Updated Ghostscript to 10.4.0 #8395 [@radarhere]
- Update dependency cibuildwheel to v2.21.1 #8388 [@renovate]
- Updated libjpeg-turbo to 3.0.4 #8384 [@radarhere]
- Update dependency cibuildwheel to v2.21.0 #8378 [@renovate]
- Updated xz to 5.6.2 #7916 [@radarhere]
- Updated libpng to 1.6.44 #8375 [@radarhere]
- Updated harfbuzz to 9.0.0 in wheels, except for manylinux2014 #8361 [@radarhere]
- Update deadsnakes/action action to v3.2.0 #8360 [@renovate]
- Updated harfbuzz to 9.0.0 #8344 [@radarhere]
- Updated libimagequant to 4.3.3 #8284 [@radarhere]
- Updated freetype to 2.13.3 #8302 [@radarhere]
- Update dependency mypy to v1.11.2 #8334 [@renovate]
- [pre-commit.ci] pre-commit autoupdate #8287 [@pre-commit-ci]
- Update dependency cibuildwheel to v2.20.0 #8282 [@renovate]
- Update dependency mypy to v1.11.1 #8280 [@renovate]
- Update dependency mypy to v1.11.0 #8252 [@renovate]
- Update dependency cibuildwheel to v2.19.2 #8192 [@renovate]
- [pre-commit.ci] pre-commit autoupdate #8188 [@pre-commit-ci]
Documentation
- Update Python 3.13 release date #8463 [@hugovk]
- Update licence to MIT-CMU #8460 [@hugovk]
- Use CVE and CWE roles from Sphinx 8.1 #8457 [@hugovk]
- Updated test environment documentation #8427 [@radarhere]
- Updated macOS tested Pillow versions #8429 [@radarhere]
- Updated link to OSS Fuzz issues #8399 [@radarhere]
- Added release notes for #8379 #8381 [@radarhere]
- Windows wheels are now grouped with the others #8371 [@radarhere]
- Added release notes for #8199, #8213 and #8286 #8367 [@radarhere]
- Restore exiv2.org links #8260 [@hugovk]
- Add tutorial images #8246 [@aclark4life]
- Updated macOS tested Pillow versions #8202 [@radarhere]
- Updated CVE URL #8186 [@radarhere]
Testing
- Fixed unclosed file warning in test_imageshow.py #8446 [@radarhere]
- Test Python 3.13 on AppVeyor #8442 [@hugovk]
- Test cifuzz when wheel dependencies change #8435 [@radarhere]
- Restore cifuzz #8428 [@radarhere]
- Use common test scripts for more tests #8396 [@Yay295]
- Lint: Run PT016 #8382 [@radarhere]
- Test NumPy with musllinux wheels #8374 [@radarhere]
- Install NumPy from PyPI when testing wheels #8373 [@lysnikolaou]
- Install NumPy from PyPI for free threaded job #8372 [@radarhere]
- Canonical type comparison #8349 [@AryazE]
- Updated oss-fuzz to Python 3.10 #8297 [@radarhere]
- Corrected GitHub Actions Windows Ghostscript path #8332 [@radarhere]
- Catch defusedxml warnings #8325 [@radarhere]
- Uninstall gradle and maven on macOS 13 #8318 [@radarhere]
- Lint: run more flake8-pytest-style #8309 [@hugovk]
- Parametrize some color_lut tests for DRYness #8290 [@akx]
- Test 3.13 free-threaded build on CI #8200 [@hugovk]
- Test NumPy on Python 3.13 #8189 [@hugovk]
Type hints
- Added type hints to remaining ImageMath methods #8464 [@radarhere]
- Conditionally define ImageCms type hint to avoid requiring core #8197 [@radarhere]
- Added type hints #8354 [@radarhere]
- Added type hints #8351 [@radarhere]
- Added type hints #8339 [@radarhere]
- Added type hints to ImageFile.init() #8336 [@radarhere]
- Added type hints to Image.init() #8279 [@radarhere]
- Added type hints #8331 [@radarhere]
- Added type hints #8319 [@radarhere]
- Added type hints #8285 [@radarhere]
- Added type hints #8270 [@radarhere]
- Added type hints #8268 [@radarhere]
- Added type hints #8267 [@radarhere]
- Added type hints #8263 [@radarhere]
- Added type hints #8262 [@radarhere]
- Added type hints #8250 [@radarhere]
- Changed ContainerIO to subclass IO #8240 [@radarhere]
- Added type hints #8234 [@radarhere]
- Added type hints #8228 [@radarhere]
- Added type hints #8214 [@radarhere]
- Added type hint #8210 [@radarhere]
- Added type hints to PdfParser #8207 [@radarhere]
- Check test type hints #8208 [@radarhere]
- Added type hints to tests #8203 [@radarhere]
- Added type hints #8204 [@radarhere]
- Added type hints #8191 [@radarhere]
- Fix incompatibility with NumPy 1.20 #8187 [@neutrinoceros]