1 Imager release history. Older releases can be found in Changes.old
3 Imager 0.81 - unreleased
6 - added coverage tests for masked images (maskimg.c @100% test coverage)
10 - paletted writes to a masked image are now masked correctly.
11 Revealed by new coverage tests.
13 - update the filter plugin documentation.
14 https://rt.cpan.org/Ticket/Display.html?id=56513
16 Imager 0.80 - 17 Jan 2011
19 - added coverage tests for Imager::Fountain and Imager::Color::Float
21 - Imager is now maintained in git
22 http://git.imager.perl.org/imager.git
23 git://git.imager.perl.org/imager.git
27 - images with an translucent alpha channel were not scaled correctly
28 by the default (qtype=normal) scaling method.
29 https://rt.cpan.org/Public/Bug/Display.html?id=63922
31 - Imager::Color::Float now translates "#FFFFFF" to white instead of
34 - make the default color map build algorithm "mediancut". This
35 changes the default color map builder for writing GIFs back to what
36 it was in 0.77, reverting a performance regression.
37 https://rt.cpan.org/Ticket/Display.html?id=64785
39 - handle failure to create a masked image correctly
41 Imager 0.79 - 10 Dec 2010
44 - add Imager::Test to the POD coverage tests and document the missing
47 - the convert() method now optimizes the case where all output
48 channels are either 0, sourced from a single input channel or 1.
49 This significantly speeds up presets like "addalpha", "green".
50 https://rt.cpan.org/Ticket/Display.html?id=51254
52 - add wiggle.pl sample, as suggested by Dan Oppenheim.
54 - add the combine() method to combine channels from multiple source
55 images into a new image
56 https://rt.cpan.org/Ticket/Display.html?id=11872
60 - treat the co-efficients for convert() as doubles instead of floats.
62 - If a higher (earlier) priority font handler failed to load, that
63 would crash preventing loading of later font handlers.
64 https://rt.cpan.org/Ticket/Display.html?id=62855
66 - parse defines from the options returned by pkg-config --cflags
67 https://rt.cpan.org/Ticket/Display.html?id=63223
69 - a regen of the MANIFEST revealed that GIF and FT2 tests weren't
70 included in the tarball. They are now included.
72 Imager 0.78 - 4 Oct 2010
77 - don't access deprecated members of the png_structp.
78 https://rt.cpan.org/Ticket/Display.html?id=60242
80 - document that using color objects is faster than supplying colors
82 https://rt.cpan.org/Ticket/Display.html?id=61047
84 - Imager::Probe now accepts array references for incpath and libpath.
85 https://rt.cpan.org/Ticket/Display.html?id=60244
87 Imager 0.77_02 - 27 Sep 2010
90 - moved Win32, FreeType 2 font support into sub-modules.
91 https://rt.cpan.org/Ticket/Display.html?id=49616 (partial)
92 Uses Imager::Probe now.
93 https://rt.cpan.org/Public/Bug/Display.html?id=61328
95 - tested successfully with jpeg-8b
96 https://rt.cpan.org/Ticket/Display.html?id=60221
100 - from _01: look for missing file support test files in the right
103 - flood_fill() wouldn't fill the right side of a single scan-line
105 Thanks to Nicolas Roggli for reporting this.
107 - flood_fill wouldn't fill to the left edge of the image if the
108 starting line didn't reach the left edge.
109 Thanks to Nicolas Roggli for reporting this.
111 Imager 0.77_01 - 13 Sep 2010
114 - add each library-directory/pkgconfig/ to the pkg-config search path
116 Thanks to Justin Davis.
117 https://rt.cpan.org/Ticket/Display.html?id=60491
119 - moved GIF, TIFF, JPEG file handling code into sub-modules in
120 preparation for separate distribution.
121 https://rt.cpan.org/Ticket/Display.html?id=49616 (partial)
123 - optimize filled box drawing (color, not fill)
127 - Imager::Probe was calling ExtUtils::Liblist to initialize
128 LD_RUN_PATH supplying an undefined value rather than the found
129 directory. Thanks to Justin Davis.
130 https://rt.cpan.org/Ticket/Display.html?id=60491
132 - only prepend ./ to font filenames when passing them to T1Lib and
133 then only when it would use its search mechanisms.
134 https://rt.cpan.org/Ticket/Display.html?id=60509
136 - fix the cache check for the X rgb.txt loader. This is typically
137 used for color translation on Unix-like systems, and the fix
138 improves performance of supplying colors by name by about 80 times.
139 Test code that managed 3400 10x10 pixel boxes/second sped up to
142 - clarify that Imager doesn't write EXIF metadata to images.
143 https://rt.cpan.org/Ticket/Display.html?id=60637
145 - Imager::Probe can now search subdirectories under its include path.
146 Used by the PNG Makefile.PL to find headers and libraries when they
147 aren't in the base directory, as in cygwin.
148 https://rt.cpan.org/Ticket/Display.html?id=60635
150 Imager 0.77 - 11 Aug 2010
153 I don't want Imager::File::PNG indexed as part of Imager, but forgot
154 to update the META.yml before updating the version.
156 - don't index Imager::File::PNG as part of Imager
158 - add resources to META.yml
160 Imager 0.76 - not released
165 - the align_string() method would ignore a string of "0" due to a
167 Thanks to Maurice Height for reporting this.
168 https://rt.cpan.org/Ticket/Display.html?id=60199
170 Imager 0.75_03 - 09 Aug 2010
175 - read_types() and write_types() would include png when it wasn't
176 available due to a problem with the %formats tie
178 - handle dependent libraries correctly (eg -lpng requiring -lz) in
179 the code run phase of library probing.
181 Imager 0.75_02 - 07 Aug 2010
186 - add file missing from MANIFEST, which was causing TIFF failures.
188 Imager 0.75_01 - 06 Aug 2010
191 Test release for the new PNG probe.
193 - added the ability to read multiple-image PNM files.
194 Note that unlike the pbm/pgm/ppm specification this accepts mixed
195 format files and allows white space padding between files.
196 Thanks to Philip Gwyn (Leolo) for this patch.
198 - moved the PNG file handling code into a sub-module in preparation
199 for separate distribution.
200 https://rt.cpan.org/Ticket/Display.html?id=49616 (partial)
201 Also helps avoid complications from -I/-L compile/link options from
206 - Imager->new(data => $data) didn't try to process image file data in
208 https://rt.cpan.org/Ticket/Display.html?id=58761
210 - t/t50basicoo.t no longer depends on the other tests to generate its
212 https://rt.cpan.org/Ticket/Display.html?id=9798
213 Also, it wasn't testing pnm (pnm vs ppm mix-up)
215 - update the documentation of hardinvert to match the change in 0.62.
216 https://rt.cpan.org/Ticket/Display.html?id=59785
218 - added hardinvertall filter which also inverts the alpha channel
221 - when probing for TIFF, set LD_RUN_PATH just as the Makefile does so
222 the probe can find the library for the test run.
223 https://rt.cpan.org/Ticket/Display.html?id=57518
225 Imager 0.75 - 20 Jun 2010
228 - use PERL_NO_GET_CONTEXT to slightly improve performance on threaded
233 - an opacity fill based on a fountain fill would segfault when
234 filling an 8-bit/sample image.
236 - merge thickline branch polygon fix
237 https://rt.cpan.org/Ticket/Display.html?id=43518
239 Imager 0.74 - 7 May 2010
244 - read_multi() didn't handle a missing file format library correctly,
245 aborting on failing to call i_readgif_multi_wiol() or
246 i_readtiff_multi_wiol().
248 - fix spelling errors patched by Debian
249 http://svn.debian.org/viewsvn/pkg-perl/trunk/libimager-perl/debian/patches/spelling.patch?revision=54839&view=markup
251 - add an (unshipped) author test to spellcheck Imager's POD.
253 - update the TIFF file format documentation
254 https://rt.cpan.org/Ticket/Display.html?id=56510
256 - lib/Imager/IO.pod was written almost 4 years ago but never shipped.
258 Imager 0.73 - 15 Mar 2010
261 - implement outline circles, both anti-aliased and not
262 https://rt.cpan.org/Ticket/Display.html?id=19755
264 - a combine => "none" fill to a 1 or 3 channel image would produce
265 the incorrect colour.
267 Imager 0.72 - 09 Dec 2009
270 Bump version for release, since 0.71_03 is stable with CPAN testers.
272 Imager 0.71_03 - 5 Dec 2009
275 - further adjust the threads test so it only performs the tests on
276 perls where it's expected to work, and only if the threads module
279 Imager 0.71_02 - 1 Dec 2009
282 - adjust the way we load the threads module for the threads test so
283 it works with non-threaded perls
285 Imager 0.71_01 - 30 Nov 2009
290 - use scanline oriented operations to flip images instead of pixel
292 https://rt.cpan.org/Ticket/Display.html?id=39278
294 - use double/sample operations to flip large sample images instead of
295 8-bit sample operations.
296 https://rt.cpan.org/Ticket/Display.html?id=39280
299 https://rt.cpan.org/Ticket/Display.html?id=51874
301 - prevent double-frees when someone creates Imager objects and then
302 creates a thread. Note: this just handles some simple cases,
303 Imager doesn't support perl threads, and isn't likely to.
304 https://rt.cpan.org/Ticket/Display.html?id=52268
306 Imager 0.71 - 16 Nov 2009
309 - add the opacity fill type - an adaptor that modifies the opacity of
314 - the conv filter now enforces that the sum of the coefficients is
315 non-zero. Also, rather than skipping pixels off the edge off the
316 edge of the image, the closest edge pixel is used. Previously
317 dividing by the zero sum of coefficients could cause invalid
318 results or runtime exceptions.
319 Thanks to David Cantrell's Alpha-NetBSD CPAN test box for revealing
322 Imager 0.70 - 21 Sep 2009
327 - release image row and comments memory on all error returns in gif
330 - handle zero length extensions, previously this would cause a null
332 Thanks to Krzysztof Wojtaś for the test data and fix for this.
334 - an integer division meant that preview scaling to below 1 pixel
335 wide or high (which isn't too useful anyway) was calculating using
336 NaNs on most platforms, and causing an exception on others.
337 Thanks to David Cantrell for producing a backtrace of the crash on
338 his Alpha-NetBSD CPAN test box which made it possible to track this
341 Imager 0.69 - 08 Sep 2009
346 - broken test fix - was attempting to call a function skip_all, when
347 that should be a parameter to plan().
349 - briefly document apidocs.perl, the tool used to build
350 Imager::APIRef and make some minor enhancements
352 - various minor documentation enhancements and fixes.
354 Imager 0.68 - 07 Sep 2009
357 - Imager->new(file => $filename) and other similar incantations will
359 https://rt.cpan.org/Ticket/Display.html?id=48261
363 - avoid using CHECK as a label in Imager::Test
364 http://nntp.x.perl.org/group/perl.cpan.testers/5220921
366 - re-work most image file test files that require a library into
367 separate library present/not present files to remove stupidly long
370 - don't treat rubthrough() outside the bounds of the target image as
372 http://nntp.x.perl.org/group/perl.cpan.testers/5185716
374 Imager 0.67_01 - 02 Sep 2009
379 - correct documentation of default of raw image interleave read
381 https://rt.cpan.org/Ticket/Display.html?id=42074
383 - add raw_ prefix to raw read parameters, though the original names
386 - fail the read if an invalid raw_interleave parameter is supplied
388 - warn if no interleave or raw_interleave parameter is supplied,
389 since the documented default was wrong, and incompatible with the
392 - for reading raw images, if raw_storechannels > raw_datachannels,
393 set the extra channels in the image to 0
395 - when probing for executables like freetype-config, search for .bat
396 and .cmd on MSWin32, as well as .exe.
397 https://rt.cpan.org/Ticket/Display.html?id=49275
399 - re-work the external libraries section of README:
400 - list Debian and Redhat package names for each library
404 - use the new EU::MM META_MERGE facility instead of generating
405 META.yml from scratch
406 https://rt.cpan.org/Ticket/Display.html?id=47888
408 - use Devel::CheckLib (bundled, modified) to check which release of
409 libtiff is installed and reject 3.9.0
410 http://bugzilla.maptools.org/show_bug.cgi?id=2088
411 http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=543079
413 Imager 0.67 - 12 Dec 2008
418 - fix a packaging error
420 Imager 0.66 - 12 Dec 2008
423 - 24-bit color .ICO/.CUR files can now be read.
427 - an optimization skipping 0 src alpha values could cause the
428 rubthrough() to read past the end of a buffer.
429 http://www.nntp.perl.org/group/perl.cpan.testers/2008/05/msg1509184.html
431 - corrected a reference leak where writing GIFs would leak memory.
432 This could also happen calling to_paletted().
433 Also documented the underlying long existing feature where the
434 colors parameter is filled with the generated color table and added
436 http://rt.cpan.org/Ticket/Display.html?id=41028
438 - write out the image size in bytes field of a BMP correctly.
439 http://rt.cpan.org/Ticket/Display.html?id=41406
441 - add limited tests for Imager::ExtUtils
443 - make Imager::ExtUtils->includes use an absolute path, since
444 a relative path could cause failures using Inline::C.
445 http://rt.cpan.org/Ticket/Display.html?id=37353
447 - re-arrange the POD for Imager::Font::BBox:
448 - mark total_width(), pos_width(), end_offset() obsolete, since
449 they're mostly for backwards compatibility
450 - group width methods and height methods
451 https://rt.cpan.org/Ticket/Display.html?id=39999
453 Imager 0.65 - 20 May 2008
458 - In some cases when an error occurs reading those parts of a JPEG
459 file after the image the scan-line buffer could be freed a second
460 time. In cases where the the error occured while reading the image
461 data it's possible that the buffer could have leaked.
462 Thanks to Gabriel Vasseur for reporting this and help in tracking
465 - the gif_screen_height tag was overriding the screen width and being
466 ignored for the screen height when present.
467 https://rt.cpan.org/Public/Bug/Display.html?id=35568
469 Imager 0.64 - 23 April 2008
472 This is a bug fix release. This includes a fix for a possible
477 - Possible security issue: The floating point sample path for image
478 based fills had a buffer overflow. This would overwrite the end of
479 a malloc()ed buffer with double precision floats.
480 http://rt.cpan.org/Ticket/Display.html?id=35324
483 - check that the result of fileno($fh) is defined rather than simply
484 true when read() or write() is supplied with an fh parameter.
485 http://rt.cpan.org/Ticket/Display.html?id=35139
487 - i_scale_axis() wasn't checking the result of i_img_new_ch()
488 resulting in a SIGSEGV when attempting to scale an image to a size
489 too large to fit in memory. This is a NULL pointer access issue,
490 not a buffer overflow.
491 Added a check for the failure.
492 scale_calculate() (and hence scale()) will now fail if any of the
493 scale size parameters are a reference.
494 http://rt.cpan.org/Ticket/Display.html?id=35172
496 - Regression: filling a greyscale image with a hatch used the wrong
497 color channels from the supplied fg/bg colors.
498 https://rt.cpan.org/Ticket/Display.html?id=35278
500 - fixed a related problem for image fills.
502 Imager 0.63 - 7 April 2008
505 This release primarily contains changes to improve ease of use -
506 rather than you having to convert images to the appropriate number of
507 channels, Imager handles it internally. How to handle drawing colors
508 and the default combine mode is a thornier problem left for some other
511 - the font libraries are now only initialized when needed.
512 http://rt.cpan.org/Ticket/Display.html?id=28825
514 - moved the imtoc.perl code into Imager::Preprocess
516 - paste() and rubthrough() now adapt the source image data to the
517 destination, so you can now safely paste/rubthrough from greyscale
518 images to color images or back, or from alpha channel images to
519 noalpha channels or back.
520 https://rt.cpan.org/Ticket/Display.html?id=30908
522 - rubthrough() now falls back to pasting when the source doesn't have
523 an alpha channel. This effectively treats the source as having a
524 max alpha channel, the right thing to do.
525 http://rt.cpan.org/Ticket/Display.html?id=29944
527 - re-worked most of the area filling code to use a common set of
528 functions when filling.
529 Corrected normal combine mode.
530 Rewrote most of the combine modes to match the way the SVG draft
531 defines them with respect to a translucent source and destination.
532 Added tests for translucent source and destination.
533 Added tests to check 8-bit/sample and double/sample combines work
535 https://rt.cpan.org/Ticket/Display.html?id=29879
537 - writing a 2 or 4 channel image to a JPEG file will now write that
538 image as if composited against a background, black by default,
539 overridable with the i_background tag/parameter.
540 https://rt.cpan.org/Ticket/Display.html?id=29876
542 - writing a 2 or 4 channel image to a PGM/PPM file will now write
543 that image as if composited against a background, black by default,
544 overridable with the i_background tag/parameter.
545 http://rt.cpan.org/Ticket/Display.html?id=30074
547 - writing a 2 or 4 channel image to a BMP file will now write that
548 image as if composited against a background, black by default,
549 overridable with the i_background tag/parameter.
550 http://rt.cpan.org/Ticket/Display.html?id=30075
554 - Imager::Matrix2d->translate() now only requires one of the x or y
556 http://rt.cpan.org/Ticket/Display.html?id=29937
558 - mixing qtype scaling now sets all channels of a pixel to zero if
559 the pixel has zero coverage (zero alpha). This should produce more
560 compressible output files.
561 http://rt.cpan.org/Ticket/Display.html?id=32324
563 - removed the pointless #! line from lib/Imager/Font/Wrap.pm
565 https://bugzilla.redhat.com/show_bug.cgi?id=166254
566 I'm not changing the #! lines of the sample code, since it's sample
567 code, not intended for installation.
568 http://rt.cpan.org/Ticket/Display.html?id=33408
570 - some TGA images weren't being detected correctly as TGA images
571 https://rt.cpan.org/Ticket/Display.html?id=32925
573 - handling of the left-over bit for 16-bit/pixel TGA images has been
574 changed to match the behaviour of the GIMP. Previously the bit
575 being set was treated as an opaque pixel, but one user reported a
576 problem with loading such an image. I haven't been able to find any
577 tools beyond the GIMP that handle alpha-channel 16-bit TGAs, so
578 I'll match it's behaviour. See issue 114913 in the GIMP's
580 http://rt.cpan.org/Ticket/Display.html?id=32926
582 Imager 0.62 - 10 December 2007
585 - Makefile.PL now expands ~/path supplied to --incpath or --libpath
586 to /path under your home directory.
587 http://rt.cpan.org/Ticket/Display.html?id=29484
589 - the old dynaload code used Mach API functions to load dynamic
590 libraries on Mac OS X. These APIs have been deprecated in OS X
591 10.5 and were causing some build problems.
592 So henceforth Imager uses the dlopen() family of functions, and you
593 will need version 10.3 or later of OS X.
595 - added the det() function to the transform2() engine.
596 added the sample quad_to_square.pl
597 Courtesy Richard Fairhurst.
598 http://rt.cpan.org/Ticket/Display.html?id=31244
602 - samples/gifscale.pl sourced the base value for gif_top from
604 Thanks to Eleneldil G. Arilou for pointing this out.
606 - t/t82inline.t no longer loads B at runtime, to work around a bug
607 in some 5.005_0[45] installations.
608 http://rt.cpan.org/Ticket/Display.html?id=30508
610 - work around Module::Depends::Intrusive bug #21229
611 http://rt.cpan.org/Ticket/Display.html?id=30520
613 - the hardinvert filter no-longer inverts the alpha channel.
614 http://rt.cpan.org/Ticket/Display.html?id=30002
616 - the hardinvert filter now supports large samples
618 Imager 0.61_02 - 28 November 2007
621 - major TIFF support re-work
622 http://rt.cpan.org/Ticket/Display.html?id=20329
624 - added a C level image interface for accessing samples from 1-32
625 bits, exposed this at the perl level in getsamples()
627 - the conv filter now works at floating point precision for high bit
630 - added is_bilevel method to test whether an image should be written as
631 a bilevel image if the image format supports it.
633 - added -log-stderr as an Imager import list option
635 - added some important types to Imager::APIRef
637 - added test_image_double() to Imager::Test
641 - Imager::Fountain couldn't read GIMP gradient files with 10 or more
644 - the scale() method with qtype mixing now handles images with an
645 alpha channel correctly.
647 - fixed a broken link from the "animated GIF" entry in the concept index.
648 Thanks to Slaven Rezic.
649 http://rt.cpan.org/Ticket/Display.html?id=30889
651 - on some perl's the infix expression parser test would fail due to
652 actions in the grammar returning false. Made sure all actions return
654 Thanks to Richard Fairhurst for spending a lot of time in tracking
656 http://rt.cpan.org/Public/Bug/Display.html?id=29562
658 Imager 0.61 - 5 November 2007
661 - added samples/gifscale.pl, which adjusts the screen size/position tags
662 when scaling an animated gif
663 http://rt.cpan.org/Ticket/Display.html?id=27591
667 - correct handling of sz in matrix_transform() - this should allow
668 perspective type transformations to work now.
669 http://rt.cpan.org/Ticket/Display.html?id=29936
671 - prevent a cast to integer warning on x64 builds in datatypes.c
672 also fixed some other type warnings
673 https://rt.cpan.org/Ticket/Display.html?id=30204
675 - some sub-directory tests depended on files produced by the parent
677 http://rt.cpan.org/Ticket/Display.html?id=30203
679 - Imager::Font::Wrap doesn't correctly set savepos
680 thanks to Nikita Dedik and Eleneldil G. Arilou for reporting this.
681 http://rt.cpan.org/Ticket/Display.html?id=29771
683 - test 171 in t/t01introvert.t was failing on perls configured to
685 http://rt.cpan.org/Ticket/Display.html?id=29413
687 - the code for the transform2() uminus operator was missing a break.
688 Added tests for better code coverage of the ops.
689 http://rt.cpan.org/Ticket/Display.html?id=29296
691 - the SGI RLE compression code could overflow its compression buffer
692 http://rt.cpan.org/Ticket/Display.html?id=30334
694 - the 32-bit output function used by the SGI code only handled values
695 under 0x10000. This was most noticable when writing large RLE images.
696 http://rt.cpan.org/Ticket/Display.html?id=30335
698 - validate chan_count for chans == NULL for each of the i_gsamp()
700 http://rt.cpan.org/Ticket/Display.html?id=28985
702 - attempt to work around the test failure at
703 http://www.nntp.perl.org/group/perl.cpan.testers/2007/09/msg650810.html
704 http://rt.cpan.org/Ticket/Display.html?id=29562
706 - improve the error messages produced when attempting to read or write
707 an unknown image file format.
708 http://rt.cpan.org/Ticket/Display.html?id=30103
710 - improve the transform2() documentation
711 http://rt.cpan.org/Ticket/Display.html?id=29267
713 - correctly generate the author key in META.yml
714 http://rt.cpan.org/Ticket/Display.html?id=30377
716 - correctly blend a rotated (or matrix_transformed()) image when
717 performing interpolation in the presence of an alpha channel.
718 Also corrected the centring of the rotated image on the output
721 Imager 0.60 - 30 August 2007
724 - Finished/rewrote Arnar's old SGI RGB file format support, so Imager
725 now has full SGI RGB image format, including RLE and 16-bit/sample
727 https://rt.cpan.org/Ticket/Display.html?id=8666
729 - logging functions are now available in the API
731 - applied Gabriel Vasseur's patch
732 added documentation, further tests, and support for greyscale images
733 Obviously problems are my fault :)
734 https://rt.cpan.org/Ticket/Display.html?id=28142
736 - the mask for ICO/CUR images is now applied as an alpha channel to
737 the returned image. For the old behaviour, supply ico_masked => 0
738 to read() or read_multi(). This should be less confusing when
739 using Imager as a general image processor.
740 https://rt.cpan.org/Ticket/Display.html?id=29001
744 - in some cases it's possible for giflib/libungif to return color
745 indexes outside the range of colors defined by the image's palette.
746 We now expand the palette to match the indexes used.
747 Thanks to Gabriel Vasseur for reporting this.
749 - fixed various memory leaks that could occur when failing to read png,
750 jpeg, bmp or tga files.
752 - to avoid confusion, channels not present in the image are returned as
753 zero by getscanline(). This has no effect on the C level i_glin()
754 and i_glinf() API functions which continue to not set the unused
757 - the convert() method now returns an image of the same sample size as
759 https://rt.cpan.org/Ticket/Display.html?id=28492
761 - remove repeated text in Imager::Files
762 http://rt.cpan.org/Ticket/Display.html?id=27589
764 - be even more explicit that scale() and friends don't modify the source
765 image, but return a new image.
766 http://rt.cpan.org/Ticket/Display.html?id=28570
768 - improve the error message from errstr() when you try to load a font
769 for which the driver hasn't been built in Imager.
770 http://rt.cpan.org/Ticket/Display.html?id=27571
772 - transparency is now enabled by default when writing GIF images
773 http://rt.cpan.org/Ticket/Display.html?id=27615
775 - Imager would not load on Windows 98
776 http://rt.cpan.org/Ticket/Display.html?id=27653
778 Imager 0.59 - 14 June 2007
783 - fixes a regression introduced by the fixes for RT 11972
784 http://rt.cpan.org/Ticket/Display.html?id=27546
786 - cropping outside the image would return an Imager object with
787 no low-level image object, instead of returning false.
788 Fixed by: Philip Gwyn (Leolo)
789 http://rt.cpan.org/Ticket/Display.html?id=27509
791 Imager 0.58 - 16 May 2007
794 No significant changes from 0.57_01.
796 Imager 0.57_01 - 11 May 2007
799 - added to_rgb16 to produce a 16-bit/sample version of an image
801 - improve freetype 1.x text output efficiency
805 - search another place for rgb.txt, and check all the places
806 Imager::Color checks when deciding whether to skip testing it
807 http://rt.cpan.org/Ticket/Display.html?id=26064
809 - use a convolution kernel size based on the stddev rather than a
810 fixed size when performing a gaussian blur
811 http://rt.cpan.org/Ticket/Display.html?id=25645
813 - document the difference() method's mindist parameter, and debug it.
815 - put the Imager release number in the Inline::C generated code to
816 regenerate Inline code when a new release of Imager is installed.
817 http://rt.cpan.org/Ticket/Display.html?id=26278
819 - fix rendering on alpha channel images for the FreeType 1.x driver.
820 http://rt.cpan.org/Ticket/Display.html?id=11972
822 - fix rendering on alpha channel images for the T1lib driver.
823 http://rt.cpan.org/Ticket/Display.html?id=11972
825 - reworked library probing, we can now set more than one probe
826 function for a library. Disabled the default (non-freetype-config)
827 library probe and added an extra probe function that searches for
828 both ft2build.h and whatever it includes, and adds -I as needed.
829 Hopefully this will fix build problems like
830 http://www.nntp.perl.org/group/perl.cpan.testers/2007/05/msg472281.html
831 http://rt.cpan.org/Ticket/Display.html?id=26086
833 Imager 0.57 - 30 Apr 2007
836 This is a maintenence release fixing a security issue in Imager.
838 - CRITICAL: a specially crafted compressed BMP file can cause a buffer
839 overflow in malloced memory. There will be further discussion of
840 this issue in the ticket below.
841 http://rt.cpan.org/Ticket/Display.html?id=26811
842 CVE-2007-2459 CVE-2007-2413
843 The descriptions at cve.mitre.org varied in quality, please see the
844 ticket at rt.cpan.org for a more accurate description of the issue.
846 Imager 0.56 - 1 Apr 2007
849 - added support for reading 16-bit/sample PGM/PPM images
851 - added support for writing 16-bit/sample PGM/PPM images
853 - improved performance of reading PBM/PGM/PPM images
855 - added support for writing PBM images if the image is paletted and
856 contains only black and white
858 - added a new make_colors value - "mono"
860 - switched from the svn log Changes to a manual Changes to reduce
863 - new sample code - samples/flasher.pl
867 - CRITICAL: the "Imager" typemap entry (not used by Imager itself)
868 was returning an image object with an extra reference, this
869 resulted in a memory leak.
870 http://rt.cpan.org/Ticket/Display.html?id=24992
872 - fix rendering on alpha channel images for the FreeType 2.x driver
873 http://rt.cpan.org/Ticket/Display.html?id=11972
875 - reading bmp files now consitently handles short reads. You can now
876 supply a parameter to treat a short read as successful and set
878 http://rt.cpan.org/Ticket/Display.html?id=8426
880 - previously, reading ASCII PBM files required spaces between samples,
881 even though the format doesn't require that
883 - improved documentation of the unsharpmask filter (I hope)
884 http://rt.cpan.org/Ticket/Display.html?id=25531
886 - force flushing of the output from i_tt_dump_names() and test output
887 in t/t35ttfont.t to prevent output from being mixed up.
888 https://rt.cpan.org/Ticket/Display.html?id=24859
890 - rewrite a conditional expression as an if() to hopefully work around
891 a bug in the pre-4.0 GCC Apple shipped with OS X 10.4.
892 https://rt.cpan.org/Ticket/Display.html?id=25561
894 - avoid Data::Dumper in regops.perl to support older releases of perl
895 https://rt.cpan.org/Ticket/Display.html?id=24391
897 Imager 0.55 - 16 Dec 2006
900 This is primarily a bug fix release.
902 Note: Test::More is now a pre-requisite for Imager and is no longer bundled.
904 There is one new feature:
906 - the Win32 font driver now supports UTF8 (RT 22166)
907 http://www.cpanforum.com/threads/3276
908 http://rt.cpan.org/Ticket/Display.html?id=22166
910 Several bugs were fixed:
912 - the string() method would not output the string "0"
913 http://rt.cpan.org/Public/Bug/Display.html?id=21770
915 - fills.c was failing to compile on Solaris 10 (compiler unknown)
916 http://rt.cpan.org/Public/Bug/Display.html?id=21944
918 - the gif_disposal and gif_user_input tags weren't being read from
920 http://rt.cpan.org/Public/Bug/Display.html?id=22192
922 - gif.c was failing to build under MSVC
923 http://rt.cpan.org/Ticket/Display.html?id=23922
925 - in some cases strings passed to the string() method were treated as
926 terminated by NUL (chr 0)
927 http://rt.cpan.org/Public/Bug/Display.html?id=21770
929 - on "MSWin32" perl builds we now link to -lzlib instead of -lz since
930 that's the default build name for zlib on Win32.
931 http://rt.cpan.org/Ticket/Display.html?id=23064
933 - search $Config{incpath} for headers too, which we should have been
936 Win32 font driver fixes:
938 - the global descent value from bounding box was the wrong sign
939 http://www.cpanforum.com/threads/3276
941 - if the first or last glyph overflowed the left or right side of the
942 advance width they would be clipped
945 Imager 0.54 - 14 Sep 2006
948 This is primarily a feature release:
950 - a new qtype value 'mixing' has been added to the scale()
951 method. This is faster than 'normal', slower than 'preview'. This
952 is based on the method used by pnmscale, and seems to produce less
953 blurry results than normal.
954 http://rt.cpan.org/Public/Bug/Display.html?id=20677
956 - the rubthrough() method can now render onto images with an alpha
958 http://rt.cpan.org/Ticket/Display.html?id=20678
960 - the read_multi() method now falls back to calling doing a single
961 image read via the read() method and write_multi() will now fall
962 back to calling write() if a single image is supplied. This means
963 you can simply call the read_multi() or write_multi() functions
964 without having to check if the type is formatted by that method.
965 http://rt.cpan.org/Ticket/Display.html?id=19457
966 http://rt.cpan.org/Ticket/Display.html?id=19458
968 - the GIF loop extension can now be written. If you don't have
969 libungif/giflib 4.1.4 (or some distribution's bugfixed equivalent) you
971 http://rt.cpan.org/Ticket/Display.html?id=21185
973 - getscanline() and setscanline() can now read/write palette index
974 based data from/to the image for paletted images, by setting type to
976 http://rt.cpan.org/Ticket/Display.html?id=20338
978 - we no longer hassle you to disable GIF support
979 http://rt.cpan.org/Ticket/Display.html?id=20687
981 - minor documentation fixes
984 Imager 0.53 - 26 Jul 2006
987 This is a bugfix release.
989 Some test code was left in a code path not covered by the test
990 suite. A test was added to cover this code path and the test code was
992 http://rt.cpan.org/Public/Bug/Display.html?id=20705
995 Imager 0.52 - 25 Jul 2006
998 This is primarily a feature release, but contains a fair few bug
1001 - ability to read and write MS Windows ICO and CUR files
1003 - you can now add file format plugins to support new file formats
1005 - add POD coverage tests
1007 - setcolors() and addcolors() now accept color names and so on
1008 instead of requiring Imager::Color objects.
1009 http://rt.cpan.org/Ticket/Display.html?id=20056
1011 - flood_fill() can now fill to a specified border color instead of
1012 just to the area the same color as the seed.
1013 http://rt.cpan.org/Ticket/Display.html?id=19618
1018 - bounding_box for the T1 driver wasn't converting UTF8 to ascii when
1019 calculating the advance width.
1020 http://rt.cpan.org/Public/Bug/Display.html?id=20554
1022 - bounding_box for the T1 driver wasn't including leading and
1023 trailing spaces in the bounding box as the other drivers did, it also
1024 produced strange results for empty strings or strings containing only
1027 - when reading CMYK jpeg images they were being transferred to the
1028 image object as is, producing a four channel image. It only looked ok
1029 due to an old still unfixed Photoshop bug. We now convert from the
1030 inverted CMYK that photoshop (and Corel for example) produce into RGB.
1031 http://rt.cpan.org/Ticket/Display.html?id=20416
1033 - reading a CYMK TIFF would result in a 4 channel image, reading any
1034 image with more than 4 channels (eg. RGB with 2 alpha channels) would
1036 http://rt.cpan.org/Ticket/Display.html?id=20415
1038 - added /usr/local/include to the default include search path, since
1039 we were already searching /usr/local/lib for libraries.
1041 And various minor fixes and documentation updates.
1044 Imager 0.51 - 23 Apr 2006
1047 - fix a validation bug when processing JPEG EXIF data that can cause
1049 http://rt.cpan.org/Public/Bug/Display.html?id=18496
1051 - fix mis-processing of the src_maxx and src_maxy parameters of the
1053 http://rt.cpan.org/Public/Bug/Display.html?id=18712
1055 - fix a problem in Imager's "smart" handling of the color parameter
1057 http://rt.cpan.org/Public/Bug/Display.html?id=18561
1060 Imager 0.50 - 29 Mar 2006
1063 - CRITICAL: fixes a segmentation fault from attempting to write a 2
1064 or 4 channel image to jpeg or a 2 channel image to tga where the
1065 output is an in-memeory buffer.
1066 http://rt.cpan.org/Public/Bug/Display.html?id=18397
1068 - fixes an incorrect pointer parameter in the PNG code
1069 http://rt.cpan.org/Public/Bug/Display.html?id=18051
1071 - skip Inline::C tests when building in a directory with spaces
1072 http://rt.cpan.org/Public/Bug/Display.html?id=18049