v0.35.0-rc.0
Sharp v0.33.0
Breaking Changes
- Node.js 18 support dropped — requires ≥20.9.0
installscript removed — source compilation now opt-in viabuildscript- AVIF quality metrics changed —
iq(SSIMULACRA2) replacesssim - Removed deprecated properties:
failOnErrorconstructor,paletteBitDepthfrom metadata,sharpenoperation properties - Format rename:
format.jp2k→format.jp2 - Windows 32-bit binaries deprecated (win32-ia32)
Features
- AVIF/HEIF
tuneoption — control quality metrics for output withGainMap()— process HDR JPEG images with embedded gain mapstoUint8Array()— output as TypedArray backed by transferable ArrayBuffertrim()marginoption — add padding after trim- WebP
exactoption — control transparent pixel colour values
Improvements
- Upgraded to libvips v8.18.0
- TypeScript:
FormatEnumkeys now match actual format support
-
Breaking: Drop support for Node.js 18, now requires Node.js >= 20.9.0.
-
Breaking: Remove
installscript frompackage.jsonfile. Compiling from source is now opt-in via thebuildscript. -
Breaking: AVIF output is now tuned using SSIMULACRA2-based
iqquality metrics rather thanssim. -
Breaking: Remove deprecated
failOnErrorconstructor property. -
Breaking: Remove deprecated
paletteBitDepthfrommetadataresponse. -
Breaking: Remove deprecated properties from
sharpenoperation. -
Breaking: Rename
format.jp2kasformat.jp2for API consistency. -
Upgrade to libvips v8.18.0 for upstream bug fixes.
-
Deprecate Windows 32-bit (win32-ia32) prebuilt binaries.
-
Add AVIF/HEIF
tuneoption for control over quality metrics. #4227 -
Add
withGainMapto process HDR JPEG images with embedded gain maps. #4314 -
Add
toUint8Arrayfor output image as aTypedArraybacked by a transferableArrayBuffer. #4355 -
TypeScript: Ensure
FormatEnumkeys match reality. #4475 -
Add
marginoption totrimoperation. #4480 @eddienubes -
Add WebP
exactoption for control over transparent pixel colour values.