]> git.imager.perl.org - imager.git/blob - Changes
formatting nit
[imager.git] / Changes
1 Imager release history.  Older releases can be found in Changes.old
2
3 Imager 0.62 - not yet released
4 ===========
5
6 Bug 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
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
18 Imager 0.61 - 5 November 2007
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
25 Bug fixes:
26
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
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
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
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
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
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
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
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
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
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
70  - improve the transform2() documentation
71    http://rt.cpan.org/Ticket/Display.html?id=29267
72
73  - correctly generate the author key in META.yml
74    http://rt.cpan.org/Ticket/Display.html?id=30377
75
76  - correctly blend a rotated (or matrix_transformed()) image when
77    performing interpolation in the presence of an alpha channel.
78    Also corrected the centring of the rotated image on the output
79    image.
80
81 Imager 0.60 - 30 August 2007
82 ===========
83
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
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
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
102 Bug 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
109  - fixed various memory leaks that could occur when failing to read png,
110    jpeg, bmp or tga files.
111
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
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
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
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
132  - transparency is now enabled by default when writing GIF images
133    http://rt.cpan.org/Ticket/Display.html?id=27615
134
135  - Imager would not load on Windows 98
136    http://rt.cpan.org/Ticket/Display.html?id=27653
137
138 Imager 0.59 - 14 June 2007
139 ===========
140
141 Bug fixes:
142
143  - fixes a regression introduced by the fixes for RT 11972
144    http://rt.cpan.org/Ticket/Display.html?id=27546
145
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
151 Imager 0.58 - 16 May 2007
152 ===========
153
154 No significant changes from 0.57_01.
155
156 Imager 0.57_01 - 11 May 2007
157 ==============
158
159  - added to_rgb16 to produce a 16-bit/sample version of an image
160
161  - improve freetype 1.x text output efficiency
162
163 Bug 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
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
173  - document the difference() method's mindist parameter, and debug it.
174
175  - put the Imager release number in the Inline::C generated code to
176    regenerate Inline code when a new release of Imager is installed.
177    http://rt.cpan.org/Ticket/Display.html?id=26278
178
179  - fix rendering on alpha channel images for the FreeType 1.x driver.
180    http://rt.cpan.org/Ticket/Display.html?id=11972
181
182  - fix rendering on alpha channel images for the T1lib driver.
183    http://rt.cpan.org/Ticket/Display.html?id=11972
184
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
193 Imager 0.57 - 30 Apr 2007
194 ===========
195
196 This 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
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.
205
206 Imager 0.56 - 1 Apr 2007
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
223  - new sample code - samples/flasher.pl
224
225 Bug 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
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
257 Imager 0.55 - 16 Dec 2006
258 ===========
259
260 This is primarily a bug fix release.
261
262 Note: Test::More is now a pre-requisite for Imager and is no longer bundled.
263
264 There 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
270 Several 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
296 Win32 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
305 Imager 0.54 - 14 Sep 2006
306 ===========
307
308 This 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
344 Imager 0.53 - 26 Jul 2006
345 ===========
346
347 This is a bugfix release.
348
349 Some test code was left in a code path not covered by the test
350 suite. A test was added to cover this code path and the test code was
351 removed.
352 http://rt.cpan.org/Public/Bug/Display.html?id=20705
353
354
355 Imager 0.52 - 25 Jul 2006
356 ===========
357
358 This is primarily a feature release, but contains a fair few bug
359 fixes, 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
376 Bug 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
401 And various minor fixes and documentation updates.
402
403
404 Imager 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
420 Imager 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