- ImageMagick 7.1.1-38
- Completely redesigned fully portable build using the new
hadron
build system (xpm
+meson / node-api
+conan
)- Fully self-contained static build that does not depend on any system libraries (
conan
) - Identical on all three supported OS - Linux, Windows and macOS - and browser WASM (
meson / node-api
) - No other requirements for the host machine besides Node.js and
npm
- Optional built-in C++ compiler (
xpm
) - If rebuilding when installing, default build is now against the system-installed shared libraries
- Fully configurable from the
npm install
command - New
CMake
-based build system for ImageMagick itself available as a stand-alone project targeted at portable open-source projects that distribute ImageMagick as source - https://github.com/mmomtchev/ImageMagick - Support rebuilding from source with Python 3.12 without
distutils
- Fully self-contained static build that does not depend on any system libraries (
- Drop macOS 11 support
- macOS 14
arm64
prebuilt binaries and support for rebuilding from source on macOS 14arm64
- The generation of the SWIG wrappers and the
npm
package is now reproducible and hosted in Github Actions, and the generated wrappers are included in the published package - Drop X11 support from the prebuilt binaries for headless installation, X11 support now requires rebuilding from source
- Fix #220, distortion methods require C-style arrays
- New build system based on conan 2
- Upgrade ImageMagick to the latest 7.1.1-30
- Compatibility with Node.js 18.20.2 / 21.7.3 after nodejs/node#52475
- Drop Node.js 16 support
- Upgrade ImageMagick to the latest 7.1.1-27 (git)
- Fix #73, render
Image.fontTypeMetrics
usable from JS - Fix #72, exception in constructors used for implicit casting are not catchable
- Fix #71, do not generate wrappers for the unusable from JS
Image.{get|set|read|write}Pixels
- Update ImageMagick to 7.1.1-26
- Regenerate the wrappers with the published version of SWIG JSE
node-magickwand
becomesmagickwand.js
- WASM target for true dual environment 3+1 platforms support - native on Linux, macOS and Windows and WASM for browser JavaScript
- Now that browser JavaScript is supported,
Magick.Blob
uses anArrayBuffer
, to retrieve the underlyingArrayBuffer
from aBuffer
useb.buffer
and to wrap anArrayBuffer
in aBuffer
useBuffer.from(ab)
- both of these do not actually copy the data and have no performance impact - Support building a light version by disabling delegate libraries
- Update ImageMagick to 7.1.1-23
- Fix #66, accept a JS array of
Magick.Coordinate
for methods that expect aMagick::CoordinateList
akastd::vector<Magick::Coordinate>
- Update
libwebp
to 1.3.2 to fix a number of recent critical vulnerabilities including CVE-2023-4863 - Update ImageMagick to 7.1.1-20
- Enable OpenMP in the pre-built binaries on Linux and macOS (it was already enabled on Windows)
- Fix #39, do not install
conan
in the system directory - Add a number of generic version information getters to
MagickCore
includingMagickCore.GetMagickFeatures()
that allow to check the build configuration
- Update ImageMagick to 7.1.1-19
- Add support for ES6 named exports
- Fix #35, do not allow
null
as an argument forMagick.Image
- Update ImageMagick to 7.1.1-18
- Fix #26, crash when using
Image.display
multiple times - Update conan dependencies on POSIX
glib
2.76.2 to 2.78.0libjpeg-turbo
2.1.5 to 3.0.0libtiff
4.5.0 to 4.6.0libwebp
1.3.0 to 1.3.1xz_utils
5.4.2 to 5.4.4
- Add
libdeflate
on Windows - Export all
MagickCore
macros to JavaScript - includingMagickCore.MagickLibAddendum
- Fix and test rebuilding against an externally installed ImageMagick-7
- Remove some unused types to reduce code size and compilation times
- Update ImageMagick to 7.1.1-16
- Fully implement the security policy API
- All SWIG-exported symbols are now configurable and writable with getters/setters also being enumerable
- Eliminate all getters returning constant values and replace them with constants set at module initialization
- Fix #20, rebuilding when installing from
npm
fails on macOS/Linux withfatal error: MagickCore/magick-baseconfig.h: No such file or directory
- Fix #21, rebuilding when installing from
npm
fails on Windowsnpm ERR! fatal: not a git repository (or any of the parent directories): .git
- Fix #14, rebuilding when installing from
npm
fails - Fix #19, possible memory corruption issue when throwing asynchronously on macOS
- Fix #17, crashes with
undefined symbol ...
on Linux when invoking methods in MagickWand such asAnimateImages
- TypeScript support
- Implicit convenience casting from strings to
Magick.Geometry
andMagick.Color
, allows to writenew Magick.Image('640x480', 'black')
instead ofnew Magick.Image(new Magick.Geometry('640x480'), new Magick.Color('black'))
- Fix numerous leaks in the error paths of most methods that take string arguments
*Async
versions of most CPU-heavy classes, includingImage
and the filters
- Fully self-contained build with conan that can produce an universal binary on POSIX
- Fix and test the
DrawablePath
API
- Fix and test automatic rebuilding when installing from npm
- Render the package compatible with Node.js 14.x / 16.x
- Fix the install script
- First alpha release