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