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