1.21.1 / 2015-10-26
- fixed: Fixed #465 hard coded gm binary, also fixed issues with compare and fixed tests so they will fail on subsequent runs when they should do rwky
1.21.0 / 2015-10-26 contains security fix
- fixed: gm.compare fails to escape arguments properly (Reported by Brendan Scarvell) rwky
1.20.0 / 2015-09-23
- changed: Reverted "Add format inference from filename for buffers/streams" due to errors #448
1.19.0 / 2015-09-16
- changed: Added error to notify about image magick not supporting minify encima
- changed: Refactored orientation getter to use faster identify call lbeschastny
- added: resizeExact function DanMMX
- added: thumbExact function DanMMX
- added: Add format inference from filename for buffers/streams adurrive
- fixed: Hex values when passed to compare aren't quoted automatically DanMMX
- fixed: identify returning last frame size instead of the larges on animated gifs preynal
- docs: Updated docs laurilehmijoki
1.18.1 / 2015-05-18
- changed: Added io.js support rwky
1.18.0 / 2015-05-18
- changed: Removed support for node 0.8 and added support for 0.12 rwky
- changed: Listen to stdin error event for spawn errors kapouer
- changed: Improved error handling when gm isn't installed FreshXOpenSource
- changed: Allow append method to use an array of arguments emohacker
- changed: appPath option now specifies full path to gm binary John Borkowski
- changed: Ignore warning messages for identify asrail
- added: Montage method donaldpcook
- added: Progressive option to thumb mohebifar
- added: Native gm auto-orient for use with gm >= 1.3.18 bog
- added: Timeout support by passing the timeout option in milliseconds marcbachmann
- fixed: density when using ImageMagick syzer
- fixed: resize behaviour for falsy values adius
- changed: extended compare callback also returns the file names #297 mastix
- changed: pass spawn crash to callback #306 medikoo
- changed: geometry supports arbitary string as first argument #330 jdiez17
- added: support for repage+ option #275 desigens
- added: added the dissolve command #300 microadm
- added: composite method #332 jdiez17
- fixed: cannot set tolerance to 0 #302 rwky
- fixed: handle empty buffers #330 alcidesv
- fixed; dropped "+" when 0 passed as vertical roll amt #267 dwtkns
- added; highlight-style support #272 fdecampredon
- changed; gm.compare logic to always run the mse comparison as expected #258 Vokkim
- added;
tolerance
to gm.compare options object #258 Vokkim - added; option to set ImageMagick application path explicitly #250 (akreitals)
- fixed; gm.compare: support values like 9.51582e-05 #260 normanrz
- README: add call for maintainers
- fixed; background is now a setting #246 (PEM--)
- fixed; identify -verbose colon behavior #240 ludow
- added; compare method for imagemagick (longlho)
- fixed; escape diffOptions.file in compare (dwabyick)
- fixed; density is a setting not an operator
- added; boolean for % crop
- added; morph more than two images (overra)
- fixed; fallback to through in node 0.8
- refactor; replace through with stream.PassThrough
- added; diff image output file (chenglou)
- added; proto.selectFrame(#)
- fixed; getters should not ignore frame selection
- added; optional formatting string for gm().identify(format, callback) (tornillo)
- removed; error messages when gm/im binary is not installed
- refactor; use native
-auto-orient
for imagemagick
- refactor; move
streamToBuffer
to a separate module - fixed; .stream(format) without a callback
- fixed; gm().resize(width) always only resizes width
- fixed; gm('img.gif').format() returns the format of the first frame
- added; node v0.10 support
- removed; node < v0.8 support -
Buffer.concat()
- tests; all tests now run on Travis
- added; gm().stream() returns a stream when no callback is present
- added; gm().toBuffer(callback)
- fixed; gm().size() only returns the size of the first frame of a GIF
- include source path in identify data #126 soupdiver
- Avoid losing already set arguments on identify #105 #113 #109 JNissi
- tests; add autoOrient + thumb() test
- tests; add test case for #113
- tests; added test for #109
- tests; add resize on buffer test
- added; geometry support to scale() #98
- removed; incorrect/broken dissolve() method (never worked)
- fixed; handle child_proc error when using Buffer input #109
- fixed; use of Buffers with identify() #109
- fixed; no longer include -size arg with resize() #98
- fixed; remove -size arg from extent() #103
- fixed; magnify support
- fixed; autoOrient to work with all types of exif orientations dambalah #108
- tests; npm test runs unit only (now compatible with travis)
- tests; fix magnify test on imagemagick
- tests; added for cmd line args
- added; gm.compare support
- added; passing Buffers directly danmilon
- fixed regression; only pass additional params on error #96
- changed; rename internal buffer to _buffer #88 kof
- changed; optimized identify getters (format, depth, size, color, filesize). #83 please read this for details: https://github.com/aheckmann/gm/commit/8fcf3f8f84a02cc2001da874cbebb89bf7084409
- added; visionmedia/debug support
- added;
gm convert -thumbnail
support. differs from thumb(). danmilon - fixed; -rotate 0 support #90
- fixed; multi-execution of same gm instance arguments corruption
- fixed; gracefully handle parser errors #94 eldilibra
- fixed; passing multiple paths to append() #77
- fixed; callback scope
- fixed; append() usage #77
- fixed; identify parsing for ImageMagick exif data (#58)
- fixed; when in imageMagick mode, complain about missing imageMagick bcherry (#73)
- added; tests
- fixed; scenes() args
- fixed; accept the left-to-right arg of append()
- added; _subCommand
- added; adjoin() [Math-]
- added; affine() [Math-]
- added; append() [Math-]
- added; authenticate() [Math-]
- added; average() [Math-]
- added; backdrop() [Math-]
- added; blackThreshold() [Math-]
- added; bluePrimary() [Math-]
- added; border() [Math-]
- added; borderColor() [Math-]
- added; box() [Math-]
- added; channel() [Math-]
- added; clip() [Math-]
- added; coalesce() [Math-]
- added; colorMap() [Math-]
- added; compose() [Math-]
- added; compress() [Math-]
- added; convolve() [Math-]
- added; createDirectories() [Math-]
- added; deconstruct() [Math-]
- added; delay() [Math-]
- added; define() [Math-]
- added; displace() [Math-]
- added; display() [Math-]
- added; dispose() [Math-]
- added; disolve() [Math-]
- added; encoding() [Math-]
- added; endian() [Math-]
- added; file() [Math-]
- added; flatten() [Math-]
- added; foreground() [Math-]
- added; frame() [Math-]
- added; fuzz() [Math-]
- added; gaussian() [Math-]
- added; geometry() [Math-]
- added; greenPrimary() [Math-]
- added; highlightColor() [Math-]
- added; highlightStyle() [Math-]
- added; iconGeometry() [Math-]
- added; intent() [Math-]
- added; lat() [Math-]
- added; level() [Math-]
- added; list() [Math-]
- added; log() [Math-]
- added; map() [Math-]
- added; matte() [Math-]
- added; matteColor() [Math-]
- added; mask() [Math-]
- added; maximumError() [Math-]
- added; mode() [Math-]
- added; monitor() [Math-]
- added; mosaic() [Math-]
- added; motionBlur() [Math-]
- added; name() [Math-]
- added; noop() [Math-]
- added; normalize() [Math-]
- added; opaque() [Math-]
- added; operator() [Math-]
- added; orderedDither() [Math-]
- added; outputDirectory() [Math-]
- added; page() [Math-]
- added; pause() [Math-]
- added; pen() [Math-]
- added; ping() [Math-]
- added; pointSize() [Math-]
- added; preview() [Math-]
- added; process() [Math-]
- added; profile() [Math-]
- added; progress() [Math-]
- added; rawSize() [Math-]
- added; randomThreshold() [Math-]
- added; recolor() [Math-]
- added; redPrimary() [Math-]
- added; remote() [Math-]
- added; render() [Math-]
- added; repage() [Math-]
- added; sample() [Math-]
- added; samplingFactor() [Math-]
- added; scene() [Math-]
- added; scenes() [Math-]
- added; screen() [Math-]
- added; segment() [Math-]
- added; set() [Math-]
- added; shade() [Math-]
- added; shadow() [Math-]
- added; sharedMemory() [Math-]
- added; shave() [Math-]
- added; shear() [Math-]
- added; silent() [Math-]
- added; snaps() [Math-]
- added; stagano() [Math-]
- added; stereo() [Math-]
- added; textFont() [Math-]
- added; texture() [Math-]
- added; threshold() [Math-]
- added; tile() [Math-]
- added; transform() [Math-]
- added; transparent() [Math-]
- added; treeDepth() [Math-]
- added; update() [Math-]
- added; units() [Math-]
- added; unsharp() [Math-]
- added; usePixmap() [Math-]
- added; view() [Math-]
- added; virtualPixel() [Math-]
- added; visual() [Math-]
- added; watermark() [Math-]
- added; wave() [Math-]
- added; whitePoint() [Math-]
- added; whiteThreshold() [Math-]
- added; window() [Math-]
- added; windowGroup() [Math-]
- added; node >= 0.7/0.8 compat
- fixed; thumb() alignment and cropping [thomaschaaf]
- added; hint when graphicsmagick is not installed (#62)
- fixed; minify() (#59)
- added; flatten support [jwarchol]
- added; background support [jwarchol]
- fixed; identify parser error [chriso]
- added; extent and gravity support [jwarchol]
- added; filter() support [travisbeck]
- added; density() [travisbeck]
- fixed; permit either width or height in resize [dambalah]
- updated; docs
- added; strip() support [Math-]
- added; interlace() support [Math-]
- added; setFormat() support [Math-]
- fixed; regexps for image types [Math-]
- expose utils
- removed; console.log
- added; debugging info on parser errors
- fixed; exports.version
- fixed; use of reserved keyword
super
for node v0.5+
- added; autoOrient support [kainosnoema] (#21)
- added; orientation support [kainosnoema] (#21)
- fixed; identify parser now properly JSON formats all data output by
gm identify
such as IPTC, GPS, Make, etc (#20) - added; support for running as imagemagick (#23, #29)
- added; subclassing support; useful for setting default constructor options like one constructor for ImageMagick, the other for GM
- added; more tests
- changed; remove redundant
orientation
,resolution
, andfilesize
fromthis.data
inindentify()
. Use their uppercase equivalents.
- added; stream support [kainosnoema] (#22)
- added; gm#trim() support [lepokle]
- added; gm#inputIs() support
- fixed; 'geometry does not contain image' error: gh-17
- added; bunch of tests
- fixed; polygon, polyline, bezier drawing bug
- added; resize options support
- shell args are now escaped (thanks @visionmedia)
- added; gm.in()
- added; gm.out()
- various refactoring
- removed deprecated
new
method - added drawing docs
- new images are now created using same gm() constructor
- can now create images from scratch
- add type method
- add drawing api
- add quality option to thumb()
- add teropa to contributors
- added support for colorspace()
- fixed naming conflict. depth() manipulation method renamed bitdepth()
- added better docs
new methods
- swirl
- spread
- solarize
- sharpen
- roll
- sepia
- region
- raise
- lower
- paint
- noise
- negative
- morph
- median
- antialias
- limit
- label
- implode
- gamma
- enhance
- equalize
- emboss
- edge
- dither
- monochrome
- despeckle
- depth
- cycle
- contrast
- comment
- colors
added more default args to several methods added more examples
- refactor project into separate modules
- add modulate method
- add colorize method
- add charcoal method
- add chop method
- bug fix in write without a callback
-
no longer supporting mogrify
-
add image data getter methods
- size
- format
- color
- res
- depth
- filesize
- identify
-
add new convert methods
- scale
- resample
- rotate
- flip
- flop
- crop
- magnify
- minify
- quality
- blur
- thumb
Initial release