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