planning too far ahead
[imager.git] / Changes
CommitLineData
7623d340
TC
1Imager release history. Older releases can be found in Changes.old
2
c8a9be42
TC
3Imager 0.62 - not yet released
4===========
874c55db
TC
5
6Bug fixes:
7
8 - Imager::Fountain couldn't read GIMP gradient files with 10 or more
9 segments
10
11 - the scale() method with qtype mixing now handles images with an
12 alpha channel correctly.
13
8d17eae9
TC
14 - fixed a broken link from the "animated GIF" entry in the concept index.
15 Thanks to Slaven Rezic.
16 http://rt.cpan.org/Ticket/Display.html?id=30889
17
d06f6707 18Imager 0.61 - 5 November 2007
1cfa190e
TC
19===========
20
21 - added samples/gifscale.pl, which adjusts the screen size/position tags
22 when scaling an animated gif
23 http://rt.cpan.org/Ticket/Display.html?id=27591
24
8a2cd317
TC
25Bug fixes:
26
e7ac18bd
TC
27 - correct handling of sz in matrix_transform() - this should allow
28 perspective type transformations to work now.
29 http://rt.cpan.org/Ticket/Display.html?id=29936
30
8a2cd317
TC
31 - prevent a cast to integer warning on x64 builds in datatypes.c
32 also fixed some other type warnings
33 https://rt.cpan.org/Ticket/Display.html?id=30204
34
9188b23e
TC
35 - some sub-directory tests depended on files produced by the parent
36 directory tests
37 http://rt.cpan.org/Ticket/Display.html?id=30203
38
7febff1d
TC
39 - Imager::Font::Wrap doesn't correctly set savepos
40 thanks to Nikita Dedik and Eleneldil G. Arilou for reporting this.
41 http://rt.cpan.org/Ticket/Display.html?id=29771
42
76411e99
TC
43 - test 171 in t/t01introvert.t was failing on perls configured to
44 use long double.
45 http://rt.cpan.org/Ticket/Display.html?id=29413
46
3f29de50
TC
47 - the code for the transform2() uminus operator was missing a break.
48 Added tests for better code coverage of the ops.
49 http://rt.cpan.org/Ticket/Display.html?id=29296
50
ed107438
TC
51 - the SGI RLE compression code could overflow its compression buffer
52 http://rt.cpan.org/Ticket/Display.html?id=30334
53
54 - the 32-bit output function used by the SGI code only handled values
55 under 0x10000. This was most noticable when writing large RLE images.
56 http://rt.cpan.org/Ticket/Display.html?id=30335
57
c7481ae1
TC
58 - validate chan_count for chans == NULL for each of the i_gsamp()
59 implementations.
60 http://rt.cpan.org/Ticket/Display.html?id=28985
61
ff37fc3f
TC
62 - attempt to work around the test failure at
63 http://www.nntp.perl.org/group/perl.cpan.testers/2007/09/msg650810.html
64 http://rt.cpan.org/Ticket/Display.html?id=29562
65
f245645a
TC
66 - improve the error messages produced when attempting to read or write
67 an unknown image file format.
68 http://rt.cpan.org/Ticket/Display.html?id=30103
69
333d7485
TC
70 - improve the transform2() documentation
71 http://rt.cpan.org/Ticket/Display.html?id=29267
72
3b115720
TC
73 - correctly generate the author key in META.yml
74 http://rt.cpan.org/Ticket/Display.html?id=30377
75
13c9a303
TC
76 - correctly blend a rotated (or matrix_transformed()) image when
77 performing interpolation in the presence of an alpha channel.
8a071022
TC
78 Also corrected the centring of the rotated image on the output
79 image.
13c9a303 80
0e622083 81Imager 0.60 - 30 August 2007
bcff4dd9
TC
82===========
83
d5477d3d
TC
84 - Finished/rewrote Arnar's old SGI RGB file format support, so Imager
85 now has full SGI RGB image format, including RLE and 16-bit/sample
86 images.
87 https://rt.cpan.org/Ticket/Display.html?id=8666
88
89 - logging functions are now available in the API
90
a60905e4
TC
91 - applied Gabriel Vasseur's patch
92 added documentation, further tests, and support for greyscale images
93 Obviously problems are my fault :)
94 https://rt.cpan.org/Ticket/Display.html?id=28142
95
413dc198
TC
96 - the mask for ICO/CUR images is now applied as an alpha channel to
97 the returned image. For the old behaviour, supply ico_masked => 0
98 to read() or read_multi(). This should be less confusing when
99 using Imager as a general image processor.
100 https://rt.cpan.org/Ticket/Display.html?id=29001
101
bcff4dd9
TC
102Bug fixes:
103
104 - in some cases it's possible for giflib/libungif to return color
105 indexes outside the range of colors defined by the image's palette.
106 We now expand the palette to match the indexes used.
107 Thanks to Gabriel Vasseur for reporting this.
108
02576e8d
TC
109 - fixed various memory leaks that could occur when failing to read png,
110 jpeg, bmp or tga files.
111
b3aa972f
TC
112 - to avoid confusion, channels not present in the image are returned as
113 zero by getscanline(). This has no effect on the C level i_glin()
114 and i_glinf() API functions which continue to not set the unused
115 channels.
116
d5477d3d
TC
117 - the convert() method now returns an image of the same sample size as
118 the source image.
119 https://rt.cpan.org/Ticket/Display.html?id=28492
120
baa880ef
TC
121 - remove repeated text in Imager::Files
122 http://rt.cpan.org/Ticket/Display.html?id=27589
123
124 - be even more explicit that scale() and friends don't modify the source
125 image, but return a new image.
126 http://rt.cpan.org/Ticket/Display.html?id=28570
127
0561d49c
TC
128 - improve the error message from errstr() when you try to load a font
129 for which the driver hasn't been built in Imager.
130 http://rt.cpan.org/Ticket/Display.html?id=27571
131
d8a39ce0
TC
132 - transparency is now enabled by default when writing GIF images
133 http://rt.cpan.org/Ticket/Display.html?id=27615
134
5730d6e7
TC
135 - Imager would not load on Windows 98
136 http://rt.cpan.org/Ticket/Display.html?id=27653
137
b4996113 138Imager 0.59 - 14 June 2007
e6e94ab0
TC
139===========
140
141Bug fixes:
142
143 - fixes a regression introduced by the fixes for RT 11972
144 http://rt.cpan.org/Ticket/Display.html?id=27546
145
9fc9d0ca
TC
146 - cropping outside the image would return an Imager object with
147 no low-level image object, instead of returning false.
148 Fixed by: Philip Gwyn (Leolo)
149 http://rt.cpan.org/Ticket/Display.html?id=27509
150
7e7508dd
TC
151Imager 0.58 - 16 May 2007
152===========
153
154No significant changes from 0.57_01.
155
1970a2c7
TC
156Imager 0.57_01 - 11 May 2007
157==============
d034a178 158
f8e36694
TC
159 - added to_rgb16 to produce a 16-bit/sample version of an image
160
95b2bff4
TC
161 - improve freetype 1.x text output efficiency
162
d034a178
TC
163Bug fixes:
164
165 - search another place for rgb.txt, and check all the places
166 Imager::Color checks when deciding whether to skip testing it
167 http://rt.cpan.org/Ticket/Display.html?id=26064
168
73962964
TC
169 - use a convolution kernel size based on the stddev rather than a
170 fixed size when performing a gaussian blur
171 http://rt.cpan.org/Ticket/Display.html?id=25645
172
01b84320
TC
173 - document the difference() method's mindist parameter, and debug it.
174
7e7508dd 175 - put the Imager release number in the Inline::C generated code to
22f9ca48
TC
176 regenerate Inline code when a new release of Imager is installed.
177 http://rt.cpan.org/Ticket/Display.html?id=26278
178
fa16b6c6
TC
179 - fix rendering on alpha channel images for the FreeType 1.x driver.
180 http://rt.cpan.org/Ticket/Display.html?id=11972
181
4c84ccfb
TC
182 - fix rendering on alpha channel images for the T1lib driver.
183 http://rt.cpan.org/Ticket/Display.html?id=11972
184
1fe8316b
TC
185 - reworked library probing, we can now set more than one probe
186 function for a library. Disabled the default (non-freetype-config)
187 library probe and added an extra probe function that searches for
188 both ft2build.h and whatever it includes, and adds -I as needed.
189 Hopefully this will fix build problems like
190 http://www.nntp.perl.org/group/perl.cpan.testers/2007/05/msg472281.html
191 http://rt.cpan.org/Ticket/Display.html?id=26086
192
bb5712de
TC
193Imager 0.57 - 30 Apr 2007
194===========
195
196This is a maintenence release fixing a security issue in Imager.
197
198 - CRITICAL: a specially crafted compressed BMP file can cause a buffer
199 overflow in malloced memory. There will be further discussion of
200 this issue in the ticket below.
201 http://rt.cpan.org/Ticket/Display.html?id=26811
7e7508dd
TC
202 CVE-2007-2459 CVE-2007-2413
203 The descriptions at cve.mitre.org varied in quality, please see the
204 ticket at rt.cpan.org for a more accurate description of the issue.
bb5712de 205
d034a178 206Imager 0.56 - 1 Apr 2007
7623d340
TC
207===========
208
209 - added support for reading 16-bit/sample PGM/PPM images
210
211 - added support for writing 16-bit/sample PGM/PPM images
212
213 - improved performance of reading PBM/PGM/PPM images
214
215 - added support for writing PBM images if the image is paletted and
216 contains only black and white
217
218 - added a new make_colors value - "mono"
219
220 - switched from the svn log Changes to a manual Changes to reduce
221 noise
222
1225d272
TC
223 - new sample code - samples/flasher.pl
224
7623d340
TC
225Bug fixes:
226
227 - CRITICAL: the "Imager" typemap entry (not used by Imager itself)
228 was returning an image object with an extra reference, this
229 resulted in a memory leak.
230 http://rt.cpan.org/Ticket/Display.html?id=24992
231
232 - fix rendering on alpha channel images for the FreeType 2.x driver
233 http://rt.cpan.org/Ticket/Display.html?id=11972
234
235 - reading bmp files now consitently handles short reads. You can now
236 supply a parameter to treat a short read as successful and set
237 i_incomplete
238 http://rt.cpan.org/Ticket/Display.html?id=8426
239
240 - previously, reading ASCII PBM files required spaces between samples,
241 even though the format doesn't require that
242
1225d272
TC
243 - improved documentation of the unsharpmask filter (I hope)
244 http://rt.cpan.org/Ticket/Display.html?id=25531
245
246 - force flushing of the output from i_tt_dump_names() and test output
247 in t/t35ttfont.t to prevent output from being mixed up.
248 https://rt.cpan.org/Ticket/Display.html?id=24859
249
250 - rewrite a conditional expression as an if() to hopefully work around
251 a bug in the pre-4.0 GCC Apple shipped with OS X 10.4.
252 https://rt.cpan.org/Ticket/Display.html?id=25561
253
254 - avoid Data::Dumper in regops.perl to support older releases of perl
255 https://rt.cpan.org/Ticket/Display.html?id=24391
256
7623d340
TC
257Imager 0.55 - 16 Dec 2006
258===========
259
260This is primarily a bug fix release.
261
262Note: Test::More is now a pre-requisite for Imager and is no longer bundled.
263
264There is one new feature:
265
266 - the Win32 font driver now supports UTF8 (RT 22166)
267 http://www.cpanforum.com/threads/3276
268 http://rt.cpan.org/Ticket/Display.html?id=22166
269
270Several bugs were fixed:
271
272 - the string() method would not output the string "0"
273 http://rt.cpan.org/Public/Bug/Display.html?id=21770
274
275 - fills.c was failing to compile on Solaris 10 (compiler unknown)
276 http://rt.cpan.org/Public/Bug/Display.html?id=21944
277
278 - the gif_disposal and gif_user_input tags weren't being read from
279 the file correctly
280 http://rt.cpan.org/Public/Bug/Display.html?id=22192
281
282 - gif.c was failing to build under MSVC
283 http://rt.cpan.org/Ticket/Display.html?id=23922
284
285 - in some cases strings passed to the string() method were treated as
286 terminated by NUL (chr 0)
287 http://rt.cpan.org/Public/Bug/Display.html?id=21770
288
289 - on "MSWin32" perl builds we now link to -lzlib instead of -lz since
290 that's the default build name for zlib on Win32.
291 http://rt.cpan.org/Ticket/Display.html?id=23064
292
293 - search $Config{incpath} for headers too, which we should have been
294 doing all along.
295
296Win32 font driver fixes:
297
298 - the global descent value from bounding box was the wrong sign
299 http://www.cpanforum.com/threads/3276
300
301 - if the first or last glyph overflowed the left or right side of the
302 advance width they would be clipped
303
304
305Imager 0.54 - 14 Sep 2006
306===========
307
308This is primarily a feature release:
309
310 - a new qtype value 'mixing' has been added to the scale()
311 method. This is faster than 'normal', slower than 'preview'. This
312 is based on the method used by pnmscale, and seems to produce less
313 blurry results than normal.
314 http://rt.cpan.org/Public/Bug/Display.html?id=20677
315
316 - the rubthrough() method can now render onto images with an alpha
317 channel.
318 http://rt.cpan.org/Ticket/Display.html?id=20678
319
320 - the read_multi() method now falls back to calling doing a single
321 image read via the read() method and write_multi() will now fall
322 back to calling write() if a single image is supplied. This means
323 you can simply call the read_multi() or write_multi() functions
324 without having to check if the type is formatted by that method.
325 http://rt.cpan.org/Ticket/Display.html?id=19457
326 http://rt.cpan.org/Ticket/Display.html?id=19458
327
328 - the GIF loop extension can now be written. If you don't have
329 libungif/giflib 4.1.4 (or some distribution's bugfixed equivalent) you
330 should upgrade.
331 http://rt.cpan.org/Ticket/Display.html?id=21185
332
333 - getscanline() and setscanline() can now read/write palette index
334 based data from/to the image for paletted images, by setting type to
335 'index'.
336 http://rt.cpan.org/Ticket/Display.html?id=20338
337
338 - we no longer hassle you to disable GIF support
339 http://rt.cpan.org/Ticket/Display.html?id=20687
340
341 - minor documentation fixes
342
343
344Imager 0.53 - 26 Jul 2006
345===========
346
347This is a bugfix release.
348
349Some test code was left in a code path not covered by the test
350suite. A test was added to cover this code path and the test code was
351removed.
352http://rt.cpan.org/Public/Bug/Display.html?id=20705
353
354
355Imager 0.52 - 25 Jul 2006
356===========
357
358This is primarily a feature release, but contains a fair few bug
359fixes, new features:
360
361 - ability to read and write MS Windows ICO and CUR files
362
363 - you can now add file format plugins to support new file formats
364
365 - add POD coverage tests
366
367 - setcolors() and addcolors() now accept color names and so on
368 instead of requiring Imager::Color objects.
369 http://rt.cpan.org/Ticket/Display.html?id=20056
370
371 - flood_fill() can now fill to a specified border color instead of
372 just to the area the same color as the seed.
373 http://rt.cpan.org/Ticket/Display.html?id=19618
374
375
376Bug fixes:
377
378 - bounding_box for the T1 driver wasn't converting UTF8 to ascii when
379 calculating the advance width.
380 http://rt.cpan.org/Public/Bug/Display.html?id=20554
381
382 - bounding_box for the T1 driver wasn't including leading and
383 trailing spaces in the bounding box as the other drivers did, it also
384 produced strange results for empty strings or strings containing only
385 spaces
386
387 - when reading CMYK jpeg images they were being transferred to the
388 image object as is, producing a four channel image. It only looked ok
389 due to an old still unfixed Photoshop bug. We now convert from the
390 inverted CMYK that photoshop (and Corel for example) produce into RGB.
391 http://rt.cpan.org/Ticket/Display.html?id=20416
392
393 - reading a CYMK TIFF would result in a 4 channel image, reading any
394 image with more than 4 channels (eg. RGB with 2 alpha channels) would
395 result in an error.
396 http://rt.cpan.org/Ticket/Display.html?id=20415
397
398 - added /usr/local/include to the default include search path, since
399 we were already searching /usr/local/lib for libraries.
400
401And various minor fixes and documentation updates.
402
403
404Imager 0.51 - 23 Apr 2006
405===========
406
407 - fix a validation bug when processing JPEG EXIF data that can cause
408 a crash
409 http://rt.cpan.org/Public/Bug/Display.html?id=18496
410
411 - fix mis-processing of the src_maxx and src_maxy parameters of the
412 paste() method
413 http://rt.cpan.org/Public/Bug/Display.html?id=18712
414
415 - fix a problem in Imager's "smart" handling of the color parameter
416 to various methods.
417 http://rt.cpan.org/Public/Bug/Display.html?id=18561
418
419
420Imager 0.50 - 29 Mar 2006
421===========
422
423 - CRITICAL: fixes a segmentation fault from attempting to write a 2
424 or 4 channel image to jpeg or a 2 channel image to tga where the
425 output is an in-memeory buffer.
426 http://rt.cpan.org/Public/Bug/Display.html?id=18397
427
428 - fixes an incorrect pointer parameter in the PNG code
429 http://rt.cpan.org/Public/Bug/Display.html?id=18051
430
431 - skip Inline::C tests when building in a directory with spaces
432 http://rt.cpan.org/Public/Bug/Display.html?id=18049