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