ANNOUNCE 4.1 KB
Newer Older
1
Libpng 1.6.22beta04 - April 5, 2016
2

3 4
This is not intended to be a public release.  It will be replaced
within a few weeks by a public version or by another test version.
5

6 7 8 9 10
Files available for download:

Source files with LF line endings (for Unix/Linux) and with a
"configure" script

11 12
   1.6.22beta04.tar.xz (LZMA-compressed, recommended)
   1.6.22beta04.tar.gz
13

14 15 16
Source files with CRLF line endings (for Windows), without the
"configure" script

17 18
   lp1622b04.7z  (LZMA-compressed, recommended)
   lp1622b04.zip
19 20 21

Other information:

22 23 24
   1.6.22beta04-README.txt
   1.6.22beta04-LICENSE.txt
   libpng-1.6.22beta04-*.asc (armored detached GPG signatures)
25 26 27

Changes since the last public release (1.6.21):

28
Version 1.6.22beta01 [January 23, 2016]
29 30
  Changed PNG_USE_MKSTEMP to __COVERITY__ to select alternate
    "tmpfile()" implementation in contrib/libtests/pngstest.c
31 32
  Fixed NO_STDIO build of pngunknown.c to skip calling png_init_io()
    if there is no stdio.h support.
33 34 35
  Added a png_image_write_to_memory() API and a number of assist macros
    to allow an application that uses the simplified API write to bypass
    stdio and write directly to memory.
36 37 38 39 40
  Added some warnings (png.h) and some check code to detect *possible*
    overflow in the ROW_STRIDE and simplified image SIZE macros.  This
    disallows image width/height/format that *might* overflow.  This is
    a quiet API change that limits in-memory image size (uncompressed) to
    less than 4GByte and image row size (stride) to less than 2GByte.
41
  Revised workaround for false-positive Coverity issue in pngvalid.c.
42

43
Version 1.6.22beta02 [February 8, 2016]
44 45 46 47 48
  Only use exit(77) in configure builds.
  Corrected error in PNG_IMAGE_PNG_SIZE_MAX. This new macro underreported
    the palette size because it failed to take into account that the memory
    palette has to be expanded to full RGB when it is written to PNG.
  Updated CMakeLists.txt, added supporting scripts/gen*.cmake.in
49
    and test.cmake.in (Roger Leigh).
50 51 52 53 54 55
  Relaxed limit checks on gamma values in pngrtran.c. As suggested in
    the comments gamma values outside the range currently permitted
    by png_set_alpha_mode are useful for HDR data encoding.  These values
    are already permitted by png_set_gamma so it is reasonable caution to
    extend the png_set_alpha_mode range as HDR imaging systems are starting
    to emerge.
56

57
Version 1.6.22beta03 [March 9, 2016]
58 59
  Added a common-law trademark notice and export control information
    to the LICENSE file, png.h, and the man page.
60 61
  Restored "& 0xff" in png_save_uint_16() and png_save_uint_32() that
    were accidentally removed from libpng-1.6.17. 
62
  Changed PNG_INFO_cHNK and PNG_FREE_cHNK from 0xnnnn to 0xnnnnU in png.h
63
    (Robert C. Seacord).
64
  Removed dubious "#if INT_MAX" test from png.h that was added to
65
    libpng-1.6.19beta02 (John Bowler).
66
  Add ${INCLUDES} in scripts/genout.cmake.in (Bug report by Nixon Kwok).
67 68 69
  Updated LICENSE to say files in the contrib directory are not
    necessarily under the libpng license, and that some makefiles have
    other copyright owners.
70
  Added INTEL-SSE2 support (Mike Klein and Matt Sarett, Google, Inc.).
71 72 73 74 75 76 77
  Made contrib/libtests/timepng more robust.  The code no longer gives
    up/fails on invalid PNG data, it just skips it (with error messages).
    The code no longer fails on PNG files with data beyond IEND.  Options
    exist to use png_read_png (reading the whole image, not by row) and, in
    that case, to apply any of the supported transforms.  This makes for
    more realistic testing; the decoded data actually gets used in a
    meaningful fashion (John Bowler).
78
  Fixed some misleading indentation (Krishnaraj Bhat).
79

80
Version 1.6.22beta04 [April 5, 2016]
81
  Force GCC compilation to C89 if needed (Dagobert Michelsen).
82 83 84
  SSE filter speed improvements for bpp=3:
    memcpy-free implementations of load3() / store3().
    call load3() only when needed at the end of a scanline.
85

86 87 88 89 90 91 92
Send comments/corrections/commendations to png-mng-implement at lists.sf.net
(subscription required; visit
https://lists.sourceforge.net/lists/listinfo/png-mng-implement
to subscribe)
or to glennrp at users.sourceforge.net

Glenn R-P