]> git.imager.perl.org - imager.git/blobdiff - Changes
0.78 release
[imager.git] / Changes
diff --git a/Changes b/Changes
index b635fe3891249211514b3448ddd435259560ec8c..98d4520c6b9b94241e83ccd7fcc2ccf0fe24cbba 100644 (file)
--- a/Changes
+++ b/Changes
@@ -1,8 +1,444 @@
 Imager release history.  Older releases can be found in Changes.old
 
-Imager 0.63 - unreleased
+Imager 0.78 - 4 Oct 2010
 ===========
 
+Bug fixes:
+
+ - don't access deprecated members of the png_structp.
+   https://rt.cpan.org/Ticket/Display.html?id=60242
+
+ - document that using color objects is faster than supplying colors
+   by name, etc.
+   https://rt.cpan.org/Ticket/Display.html?id=61047
+
+ - Imager::Probe now accepts array references for incpath and libpath.
+   https://rt.cpan.org/Ticket/Display.html?id=60244
+
+Imager 0.77_02 - 27 Sep 2010
+==============
+
+ - moved Win32, FreeType 2 font support into sub-modules.
+   https://rt.cpan.org/Ticket/Display.html?id=49616 (partial)
+   Uses Imager::Probe now.
+   https://rt.cpan.org/Public/Bug/Display.html?id=61328
+
+ - tested successfully with jpeg-8b
+   https://rt.cpan.org/Ticket/Display.html?id=60221
+
+Bug fixes:
+
+ - from _01: look for missing file support test files in the right
+   places.
+
+ - flood_fill() wouldn't fill the right side of a single scan-line
+   fill area.
+   Thanks to Nicolas Roggli for reporting this.
+
+ - flood_fill wouldn't fill to the left edge of the image if the
+   starting line didn't reach the left edge.
+   Thanks to Nicolas Roggli for reporting this.
+
+Imager 0.77_01 - 13 Sep 2010
+==============
+
+ - add each library-directory/pkgconfig/ to the pkg-config search path
+   in Imager::Probe.
+   Thanks to Justin Davis.
+   https://rt.cpan.org/Ticket/Display.html?id=60491
+
+ - moved GIF, TIFF, JPEG file handling code into sub-modules in
+   preparation for separate distribution.
+   https://rt.cpan.org/Ticket/Display.html?id=49616 (partial)
+
+ - optimize filled box drawing (color, not fill)
+
+Bug fixes:
+
+ - Imager::Probe was calling ExtUtils::Liblist to initialize
+   LD_RUN_PATH supplying an undefined value rather than the found
+   directory.  Thanks to Justin Davis.
+   https://rt.cpan.org/Ticket/Display.html?id=60491
+
+ - only prepend ./ to font filenames when passing them to T1Lib and
+   then only when it would use its search mechanisms.
+   https://rt.cpan.org/Ticket/Display.html?id=60509
+
+ - fix the cache check for the X rgb.txt loader.  This is typically
+   used for color translation on Unix-like systems, and the fix
+   improves performance of supplying colors by name by about 80 times.
+   Test code that managed 3400 10x10 pixel boxes/second sped up to
+   25700 boxes/second.
+
+ - clarify that Imager doesn't write EXIF metadata to images.
+   https://rt.cpan.org/Ticket/Display.html?id=60637
+
+ - Imager::Probe can now search subdirectories under its include path.
+   Used by the PNG Makefile.PL to find headers and libraries when they
+   aren't in the base directory, as in cygwin.
+   https://rt.cpan.org/Ticket/Display.html?id=60635
+
+Imager 0.77 - 11 Aug 2010
+===========
+
+I don't want Imager::File::PNG indexed as part of Imager, but forgot
+to update the META.yml before updating the version.
+
+ - don't index Imager::File::PNG as part of Imager
+
+ - add resources to META.yml
+
+Imager 0.76 - not released
+===========
+
+Bug fixes:
+
+ - the align_string() method would ignore a string of "0" due to a
+   mis-use of C< ||= >.
+   Thanks to Maurice Height for reporting this.
+   https://rt.cpan.org/Ticket/Display.html?id=60199
+
+Imager 0.75_03 - 09 Aug 2010
+==============
+
+Bug fixes:
+
+ - read_types() and write_types() would include png when it wasn't
+   available due to a problem with the %formats tie
+
+ - handle dependent libraries correctly (eg -lpng requiring -lz) in
+   the code run phase of library probing.
+
+Imager 0.75_02 - 07 Aug 2010
+==============
+
+Bug fixes:
+
+ - add file missing from MANIFEST, which was causing TIFF failures.
+
+Imager 0.75_01 - 06 Aug 2010
+==============
+
+Test release for the new PNG probe.
+
+ - added the ability to read multiple-image PNM files.
+   Note that unlike the pbm/pgm/ppm specification this accepts mixed
+   format files and allows white space padding between files.
+   Thanks to Philip Gwyn (Leolo) for this patch.
+
+ - moved the PNG file handling code into a sub-module in preparation
+   for separate distribution.
+   https://rt.cpan.org/Ticket/Display.html?id=49616 (partial)
+   Also helps avoid complications from -I/-L compile/link options from
+   other libraries.
+
+Bugs:
+
+ - Imager->new(data => $data) didn't try to process image file data in
+   $data
+   https://rt.cpan.org/Ticket/Display.html?id=58761
+
+ - t/t50basicoo.t no longer depends on the other tests to generate its 
+   input files.
+   https://rt.cpan.org/Ticket/Display.html?id=9798
+   Also, it wasn't testing pnm (pnm vs ppm mix-up)
+
+ - update the documentation of hardinvert to match the change in 0.62.
+   https://rt.cpan.org/Ticket/Display.html?id=59785
+
+ - added hardinvertall filter which also inverts the alpha channel
+   (sorry for the mess)
+
+ - when probing for TIFF, set LD_RUN_PATH just as the Makefile does so
+   the probe can find the library for the test run.
+   https://rt.cpan.org/Ticket/Display.html?id=57518
+
+Imager 0.75 - 20 Jun 2010
+===========
+
+ - use PERL_NO_GET_CONTEXT to slightly improve performance on threaded
+   perls (not measured)
+
+Bugs:
+
+ - an opacity fill based on a fountain fill would segfault when
+   filling an 8-bit/sample image.
+
+ - merge thickline branch polygon fix
+   https://rt.cpan.org/Ticket/Display.html?id=43518
+
+Imager 0.74 - 7 May 2010
+===========
+
+Bug fixes:
+
+ - read_multi() didn't handle a missing file format library correctly,
+   aborting on failing to call i_readgif_multi_wiol() or
+   i_readtiff_multi_wiol().
+
+ - fix spelling errors patched by Debian
+   http://svn.debian.org/viewsvn/pkg-perl/trunk/libimager-perl/debian/patches/spelling.patch?revision=54839&view=markup
+
+ - add an (unshipped) author test to spellcheck Imager's POD.
+
+ - update the TIFF file format documentation
+   https://rt.cpan.org/Ticket/Display.html?id=56510
+
+ - lib/Imager/IO.pod was written almost 4 years ago but never shipped.
+
+Imager 0.73 - 15 Mar 2010
+===========
+
+ - implement outline circles, both anti-aliased and not
+   https://rt.cpan.org/Ticket/Display.html?id=19755
+
+ - a combine => "none" fill to a 1 or 3 channel image would produce
+   the incorrect colour.
+
+Imager 0.72 - 09 Dec 2009
+===========
+
+Bump version for release, since 0.71_03 is stable with CPAN testers.
+
+Imager 0.71_03 - 5 Dec 2009
+==============
+
+ - further adjust the threads test so it only performs the tests on
+   perls where it's expected to work, and only if the threads module
+   can be loaded.
+
+Imager 0.71_02 - 1 Dec 2009
+==============
+
+ - adjust the way we load the threads module for the threads test so
+   it works with non-threaded perls
+
+Imager 0.71_01 - 30 Nov 2009
+===========
+
+Bug fixes:
+
+ - use scanline oriented operations to flip images instead of pixel
+   operations
+   https://rt.cpan.org/Ticket/Display.html?id=39278
+
+ - use double/sample operations to flip large sample images instead of
+   8-bit sample operations.
+   https://rt.cpan.org/Ticket/Display.html?id=39280
+
+ - fix POD nits
+   https://rt.cpan.org/Ticket/Display.html?id=51874
+
+ - prevent double-frees when someone creates Imager objects and then
+   creates a thread.  Note: this just handles some simple cases,
+   Imager doesn't support perl threads, and isn't likely to.
+   https://rt.cpan.org/Ticket/Display.html?id=52268
+
+Imager 0.71 - 16 Nov 2009
+===========
+
+ - add the opacity fill type - an adaptor that modifies the opacity of
+   another fill.
+
+Bug fixes:
+
+ - the conv filter now enforces that the sum of the coefficients is
+   non-zero.  Also, rather than skipping pixels off the edge off the
+   edge of the image, the closest edge pixel is used.  Previously
+   dividing by the zero sum of coefficients could cause invalid
+   results or runtime exceptions.
+   Thanks to David Cantrell's Alpha-NetBSD CPAN test box for revealing
+   this bug.
+
+Imager 0.70 - 21 Sep 2009
+===========
+
+Bug fixes:
+
+ - release image row and comments memory on all error returns in gif
+   reader
+
+ - handle zero length extensions, previously this would cause a null
+   pointer dereference
+   Thanks to Krzysztof Wojtaś for the test data and fix for this.
+
+ - an integer division meant that preview scaling to below 1 pixel
+   wide or high (which isn't too useful anyway) was calculating using
+   NaNs on most platforms, and causing an exception on others.
+   Thanks to David Cantrell for producing a backtrace of the crash on
+   his Alpha-NetBSD CPAN test box which made it possible to track this
+   down.
+
+Imager 0.69 - 08 Sep 2009
+===========
+
+Bug fixes:
+
+ - broken test fix - was attempting to call a function skip_all, when
+   that should be a parameter to plan().
+
+ - briefly document apidocs.perl, the tool used to build
+   Imager::APIRef and make some minor enhancements
+
+ - various minor documentation enhancements and fixes.
+
+Imager 0.68 - 07 Sep 2009
+===========
+
+ - Imager->new(file => $filename) and other similar incantations will
+   load the given file.
+   https://rt.cpan.org/Ticket/Display.html?id=48261
+
+Bug fixes:
+
+ - avoid using CHECK as a label in Imager::Test
+   http://nntp.x.perl.org/group/perl.cpan.testers/5220921
+
+ - re-work most image file test files that require a library into
+   separate library present/not present files to remove stupidly long
+   conditionals
+
+ - don't treat rubthrough() outside the bounds of the target image as
+   an error.
+   http://nntp.x.perl.org/group/perl.cpan.testers/5185716
+
+Imager 0.67_01 - 02 Sep 2009
+==============
+
+Bug fixes:
+
+ - correct documentation of default of raw image interleave read
+   parameter
+   https://rt.cpan.org/Ticket/Display.html?id=42074
+
+ - add raw_ prefix to raw read parameters, though the original names
+   still work.
+
+ - fail the read if an invalid raw_interleave parameter is supplied
+
+ - warn if no interleave or raw_interleave parameter is supplied,
+   since the documented default was wrong, and incompatible with the
+   write format
+
+ - for reading raw images, if raw_storechannels > raw_datachannels,
+   set the extra channels in the image to 0
+
+ - when probing for executables like freetype-config, search for .bat
+   and .cmd on MSWin32, as well as .exe.
+   https://rt.cpan.org/Ticket/Display.html?id=49275
+
+ - re-work the external libraries section of README:
+   - list Debian and Redhat package names for each library
+   - reformatting
+   - update URLs
+
+ - use the new EU::MM META_MERGE facility instead of generating
+   META.yml from scratch
+   https://rt.cpan.org/Ticket/Display.html?id=47888
+
+ - use Devel::CheckLib (bundled, modified) to check which release of
+   libtiff is installed and reject 3.9.0
+   http://bugzilla.maptools.org/show_bug.cgi?id=2088
+   http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=543079
+
+Imager 0.67 - 12 Dec 2008
+===========
+
+Bug fixes:
+
+ - fix a packaging error
+
+Imager 0.66 - 12 Dec 2008
+===========
+
+ - 24-bit color .ICO/.CUR files can now be read.
+
+Bug fixes:
+
+ - an optimization skipping 0 src alpha values could cause the
+   rubthrough() to read past the end of a buffer.
+   http://www.nntp.perl.org/group/perl.cpan.testers/2008/05/msg1509184.html
+
+ - corrected a reference leak where writing GIFs would leak memory.
+   This could also happen calling to_paletted().
+   Also documented the underlying long existing feature where the
+   colors parameter is filled with the generated color table and added
+   tests for it.
+   http://rt.cpan.org/Ticket/Display.html?id=41028
+
+ - write out the image size in bytes field of a BMP correctly.
+   http://rt.cpan.org/Ticket/Display.html?id=41406
+
+ - add limited tests for Imager::ExtUtils
+
+ - make Imager::ExtUtils->includes use an absolute path, since
+   a relative path could cause failures using Inline::C.
+   http://rt.cpan.org/Ticket/Display.html?id=37353
+
+ - re-arrange the POD for Imager::Font::BBox:
+   - mark total_width(), pos_width(), end_offset() obsolete, since
+     they're mostly for backwards compatibility
+   - group width methods and height methods
+   https://rt.cpan.org/Ticket/Display.html?id=39999
+
+Imager 0.65 - 20 May 2008
+===========
+
+Bug fixes:
+
+ - In some cases when an error occurs reading those parts of a JPEG
+   file after the image the scan-line buffer could be freed a second
+   time.  In cases where the the error occured while reading the image
+   data it's possible that the buffer could have leaked.
+   Thanks to Gabriel Vasseur for reporting this and help in tracking
+   it down.
+
+ - the gif_screen_height tag was overriding the screen width and being
+   ignored for the screen height when present.
+   https://rt.cpan.org/Public/Bug/Display.html?id=35568
+
+Imager 0.64 - 23 April 2008
+===========
+
+This is a bug fix release.  This includes a fix for a possible
+security issue.
+
+Bug fixes:
+
+ - Possible security issue: The floating point sample path for image
+   based fills had a buffer overflow.  This would overwrite the end of
+   a malloc()ed buffer with double precision floats.
+   http://rt.cpan.org/Ticket/Display.html?id=35324
+   CVE-2008-1928
+
+ - check that the result of fileno($fh) is defined rather than simply
+   true when read() or write() is supplied with an fh parameter.
+   http://rt.cpan.org/Ticket/Display.html?id=35139
+
+ - i_scale_axis() wasn't checking the result of i_img_new_ch()
+   resulting in a SIGSEGV when attempting to scale an image to a size
+   too large to fit in memory.  This is a NULL pointer access issue,
+   not a buffer overflow.
+   Added a check for the failure.
+   scale_calculate() (and hence scale()) will now fail if any of the
+   scale size parameters are a reference.
+   http://rt.cpan.org/Ticket/Display.html?id=35172
+
+ - Regression: filling a greyscale image with a hatch used the wrong
+   color channels from the supplied fg/bg colors.
+   https://rt.cpan.org/Ticket/Display.html?id=35278
+
+ - fixed a related problem for image fills.
+
+Imager 0.63 - 7 April 2008
+===========
+
+This release primarily contains changes to improve ease of use -
+rather than you having to convert images to the appropriate number of
+channels, Imager handles it internally.  How to handle drawing colors
+and the default combine mode is a thornier problem left for some other
+release.
+
  - the font libraries are now only initialized when needed.
    http://rt.cpan.org/Ticket/Display.html?id=28825
 
@@ -29,12 +465,51 @@ Imager 0.63 - unreleased
    similarly.
    https://rt.cpan.org/Ticket/Display.html?id=29879
 
+ - writing a 2 or 4 channel image to a JPEG file will now write that
+   image as if composited against a background, black by default,
+   overridable with the i_background tag/parameter.
+   https://rt.cpan.org/Ticket/Display.html?id=29876
+
+ - writing a 2 or 4 channel image to a PGM/PPM file will now write
+   that image as if composited against a background, black by default,
+   overridable with the i_background tag/parameter.
+   http://rt.cpan.org/Ticket/Display.html?id=30074
+
+ - writing a 2 or 4 channel image to a BMP file will now write that
+   image as if composited against a background, black by default,
+   overridable with the i_background tag/parameter.
+   http://rt.cpan.org/Ticket/Display.html?id=30075
+
 Bug fixes:
 
  - Imager::Matrix2d->translate() now only requires one of the x or y
    parameters.
    http://rt.cpan.org/Ticket/Display.html?id=29937
 
+ - mixing qtype scaling now sets all channels of a pixel to zero if
+   the pixel has zero coverage (zero alpha).  This should produce more
+   compressible output files.
+   http://rt.cpan.org/Ticket/Display.html?id=32324
+
+ - removed the pointless #! line from lib/Imager/Font/Wrap.pm
+   Noticed when I saw:
+   https://bugzilla.redhat.com/show_bug.cgi?id=166254
+   I'm not changing the #! lines of the sample code, since it's sample
+   code, not intended for installation.
+   http://rt.cpan.org/Ticket/Display.html?id=33408
+
+ - some TGA images weren't being detected correctly as TGA images
+   https://rt.cpan.org/Ticket/Display.html?id=32925
+
+ - handling of the left-over bit for 16-bit/pixel TGA images has been
+   changed to match the behaviour of the GIMP.  Previously the bit
+   being set was treated as an opaque pixel, but one user reported a
+   problem with loading such an image.  I haven't been able to find any
+   tools beyond the GIMP that handle alpha-channel 16-bit TGAs, so
+   I'll match it's behaviour.  See issue 114913 in the GIMP's
+   bugzilla.
+   http://rt.cpan.org/Ticket/Display.html?id=32926
+
 Imager 0.62 - 10 December 2007
 ===========