summaryrefslogtreecommitdiff
path: root/ANNOUNCE
diff options
context:
space:
mode:
Diffstat (limited to 'ANNOUNCE')
-rw-r--r--ANNOUNCE209
1 files changed, 19 insertions, 190 deletions
diff --git a/ANNOUNCE b/ANNOUNCE
index a5a943747..b719f6683 100644
--- a/ANNOUNCE
+++ b/ANNOUNCE
@@ -1,36 +1,35 @@
-Libpng 1.6.0rc09 - February 11, 2013
+Libpng 1.6.0 - February 14, 2013
-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.
+This is a public release of libpng, intended for use in production codes.
Files available for download:
Source files with LF line endings (for Unix/Linux) and with a
"configure" script
- 1.6.0rc09.tar.xz (LZMA-compressed, recommended)
- 1.6.0rc09.tar.gz
+ libpng-1.6.0.tar.xz (LZMA-compressed, recommended)
+ libpng-1.6.0.tar.gz
Source files with CRLF line endings (for Windows), without the
"configure" script
- lp160r09.7z (LZMA-compressed, recommended)
- lp160r09.zip
+ lpng160.7z (LZMA-compressed, recommended)
+ lpng160.zip
Other information:
- 1.6.0rc09-README.txt
- 1.6.0rc09-LICENSE.txt
+ libpng-1.6.0-README.txt
+ libpng-1.6.0-LICENSE.txt
Changes since the last public release (1.5.7):
-Version 1.6.0beta01 [December 15, 2011]
Removed machine-generated configure files from the GIT repository (they will
- continue to appear in the tarball distributions).
+ continue to appear in the tarball distributions and in the libpng15 and
+ earlier GIT branches).
Restored the new 'simplified' API, which was started in libpng-1.5.7beta02
but later deleted from libpng-1.5.7beta05.
- Added example programs for the new 'simplified' API.
+ Added example programs and test program pngstest for the new 'simplified' API.
Added ANSI-C (C90) headers and require them, and take advantage of the
change. Also fixed some of the projects/* and contrib/* files that needed
updates for libpng16 and the move of pngvalid.c.
@@ -53,13 +52,9 @@ Version 1.6.0beta01 [December 15, 2011]
build is deleted or overwritten in another arm. This changes the
temporary files for suffix rules to always use $* and ensures that the
non-suffix rules use unique file names.
-
-Version 1.6.0beta02 [December 21, 2011]
Correct configure builds where build and source directories are separate.
The include path of 'config.h' was erroneously made relative in pngvalid.c
in libpng 1.5.7.
-
-Version 1.6.0beta03 [December 22, 2011]
Start-up code size improvements, error handler flexibility. These changes
alter how the tricky allocation of the initial png_struct and png_info
structures are handled. png_info is now handled in pretty much the same
@@ -77,8 +72,6 @@ Version 1.6.0beta03 [December 22, 2011]
about 465 bytes because of the new functionality.
Added png_convert_to_rfc1123_buffer() and deprecated png_convert_to_rfc1123()
to avoid including a spurious buffer in the png_struct.
-
-Version 1.6.0beta04 [December 30, 2011]
Regenerated configure scripts with automake-1.11.2
Eliminated png_info_destroy(). It is now used only in png.c and only calls
one other internal function and memset().
@@ -104,22 +97,11 @@ Version 1.6.0beta04 [December 30, 2011]
it had become misaligned.
Revised contrib/pngminus/pnm2png.c to avoid warnings when png_uint_32
and unsigned long are of different sizes.
-
-Version 1.6.0beta05 [January 15, 2012]
- Updated manual with description of the simplified API (copied from png.h)
+ Updated manual with description of the simplified API.
Fix bug in pngerror.c: some long warnings were being improperly truncated
- (CVE-2011-3464, bug introduced in libpng-1.5.3beta05).
-
-Version 1.6.0beta06 [January 24, 2012]
- Added palette support to the simplified APIs. This commit
- changes some of the macro definitions in png.h, app code
- may need corresponding changes.
+ (CVE-2011-3464, bug introduced in libpng-1.5.4).
Increased the formatted warning buffer to 192 bytes.
- Added color-map support to simplified API. This is an initial version for
- review; the documentation has not yet been updated.
Fixed Min/GW uninstall to remove libpng.dll.a
-
-Version 1.6.0beta07 [January 28, 2012]
Eliminated Intel icc/icl compiler warnings. The Intel (GCC derived)
compiler issues slightly different warnings from those issued by the
current vesions of GCC. This eliminates those warnings by
@@ -139,48 +121,24 @@ Version 1.6.0beta07 [January 28, 2012]
Freeze libtool files in the 'scripts' directory. This version of autogen.sh
attempts to dissuade people from running it when it is not, or should not,
be necessary. In fact, autogen.sh does not work when run in a libpng
- directory extracted from atar distribution anymore. You must run it in
+ directory extracted from a tar distribution anymore. You must run it in
a GIT clone instead.
Added two images to contrib/pngsuite (1-bit and 2-bit transparent grayscale),
and renamed three whose names were inconsistent with those in
pngsuite/README.txt.
-
-Version 1.6.0beta08 [February 1, 2012]
- Fixed Image::colormap misalignment in pngstest.c
Check libtool/libtoolize version number (2.4.2) in configure.ac
- Divide test-pngstest.sh into separate pngstest runs for basic and
- transparent images.
Moved automake options to AM_INIT_AUTOMAKE in configure.ac
Added color-tests, silent-rules (Not yet implemented in Makefile.am) and
version checking to configure.ac
- Improved pngstest speed by not doing redundant tests and add const to
- the background parameter of png_image_finish_read. The --background
- option is now done automagically only when required, so that commandline
- option no longer exists.
Cleaned up pngpriv.h to consistently declare all functions and data.
Also eliminated PNG_CONST_DATA, which is apparently not needed but we
can't be sure until it is gone.
Added symbol prefixing that allows all the libpng external symbols
to be prefixed (suggested by Reuben Hawkins).
Updated "ftbb*.png" list in the owatcom and vstudio projects.
- Fixed 'prefix' builds on clean systems. The generation of pngprefix.h
- should not require itself.
- Updated INSTALL to explain that autogen.sh must be run in a GIT clone,
- not in a libpng directory extracted from a tar distribution.
-
-Version 1.6.0beta09 [February 1, 2012]
- Reverted the prebuilt configure files to libpng-1.6.0beta05 condition.
-
-Version 1.6.0beta10 [February 3, 2012]
Added Z_SOLO for zlib-1.2.6+ and correct pngstest tests
+ Revised INSTALL information about autogen.sh.
Updated list of test images in CMakeLists.txt
- Updated the prebuilt configure files to current condition.
- Revised INSTALL information about autogen.sh; it works in tar distributions.
-
-Version 1.6.0beta11 [February 16, 2012]
- Fix character count in pngstest command in projects/owatcom/pngstest.tgt
- Revised test-pngstest.sh to report PASS/FAIL for each image.
- Updated documentation about the simplified API.
Corrected estimate of error in libpng png_set_rgb_to_gray API. The API is
extremely inaccurate for sRGB conversions because it uses an 8-bit
intermediate linear value and it does not use the sRGB transform, so it
@@ -209,18 +167,10 @@ Version 1.6.0beta11 [February 16, 2012]
fix is to cause png.h to declare the functions with PNG_INTERNAL_FUNCTION
when png.h is included from pngpriv.h.
Check for invalid palette index while reading paletted PNG. When one is
- found, issue a warning and increase png_ptr->num_palette accordingly.
- Apps are responsible for checking to see if that happened.
-
-Version 1.6.0beta12 [February 18, 2012]
- Do not increase num_palette on invalid_index.
- Relocated check for invalid palette index to pngrtran.c, after unpacking
- the sub-8-bit pixels.
+ found, issue a warning.
Fixed CVE-2011-3026 buffer overrun bug. Deal more correctly with the test
on iCCP chunk length. Also removed spurious casts that may hide problems
on 16-bit systems.
-
-Version 1.6.0beta13 [February 24, 2012]
Eliminated redundant png_push_read_tEXt|zTXt|iTXt|unknown code from
pngpread.c and use the sequential png_handle_tEXt, etc., in pngrutil.c;
now that png_ptr->buffer is inaccessible to applications, the special
@@ -230,17 +180,9 @@ Version 1.6.0beta13 [February 24, 2012]
defined. To enable, use "CPPFLAGS=-DPNG_SAFE_LIMITS_SUPPORTED=1" on the
configure command or put #define PNG_SAFE_LIMITS_SUPPORTED in
pnglibconf.h.prebuilt and pnglibconf.h.
-
-Version 1.6.0beta14 [February 27, 2012]
Added information about the new limits in the manual.
- Updated Makefile.in
-
-Version 1.6.0beta15 [March 2, 2012]
Removed unused "current_text" members of png_struct and the png_free()
of png_ptr->current_text from pngread.c
- Rewrote pngstest.c for substantial speed improvement.
- Fixed transparent pixel and 16-bit rgb tests in pngstest and removed a
- spurious check in pngwrite.c
Added PNG_IMAGE_FLAG_FAST for the benefit of applications that store
intermediate files, or intermediate in-memory data, while processing
image data with the simplified API. The option makes the files larger
@@ -251,28 +193,16 @@ Version 1.6.0beta15 [March 2, 2012]
allow the error numbers in pngstest to be tuned and checked. makepng
also allows generation of images with extra chunks, although this is
still work-in-progress.
- Added tests for invalid palette index while reading and writing (work in
- progress, the latter isn't finished).
Fixed some bugs in ICC profile writing. The code should now accept
all potentially valid ICC profiles and reject obviously invalid ones.
It now uses png_error() to do so rather than casually writing a PNG
without the necessary color data.
Removed whitespace from the end of lines in all source files and scripts.
-
-Version 1.6.0beta16 [March 6, 2012]
- Relocated palette-index checking function from pngrutil.c to pngtrans.c
- Added palette-index checking while writing.
+ Added tests for invalid palette index while reading and writing.
Changed png_inflate() and calling routines to avoid overflow problems.
This is an intermediate check-in that solves the immediate problems and
introduces one performance improvement (avoiding a copy via png_ptr->zbuf.)
Further changes will be made to make ICC profile handling more secure.
- Fixed build warnings (MSVC, GCC, GCC v3). Cygwin GCC with default options
- declares 'index' as a global, causing a warning if it is used as a local
- variable. GCC 64-bit warns about assigning a (size_t) (unsigned 64-bit)
- to an (int) (signed 32-bit). MSVC, however, warns about using the
- unary '-' operator on an unsigned value (even though it is well defined
- by ANSI-C to be ~x+1). The padding calculation was changed to use a
- different method. Removed the tests on png_ptr->pass.
Added contrib/libtests/tarith.c to test internal arithmetic functions from
png.c. This is a libpng maintainer program used to validate changes to the
internal arithmetic functions.
@@ -286,8 +216,6 @@ Version 1.6.0beta16 [March 6, 2012]
Added code to validate the windowBits value passed to deflateInit2().
If the call to deflateInit2() is wrong a png_warning will be issued
(in fact this is harmless, but the PNG data produced may be sub-optimal).
-
-Version 1.6.0beta17 [March 10, 2012]
Fixed PNG_LIBPNG_BUILD_BASE_TYPE definition.
Reject all iCCP chunks after the first, even if the first one is invalid.
Deflate/inflate was reworked to move common zlib calls into single
@@ -298,11 +226,8 @@ Version 1.6.0beta17 [March 10, 2012]
This works round a bug introduced in 1.5.4 where compressed ancillary
chunks could end up with a too-small windowBits value in the deflate
header.
-
-Version 1.6.0beta18 [March 16, 2012]
Issue a png_benign_error() instead of png_warning() about bad palette index.
In pngtest, treat benign errors as errors if "-strict" is present.
- Fixed an off-by-one error in the palette index checking function.
Fixed a compiler warning under Cygwin (Windows-7, 32-bit system)
Revised example.c to put text strings in a temporary character array
instead of directly assigning string constants to png_textp members.
@@ -318,8 +243,6 @@ Version 1.6.0beta18 [March 16, 2012]
changing the behavior on read). The simplified API always forces
read benign errors to warnings (regardless of the system default, unless
this is disabled in which case the simplified API can't be built.)
-
-Version 1.6.0beta19 [March 18,2012]
Work around for duplicate row start calls; added warning messages.
This turns on PNG_FLAG_DETECT_UNINITIALIZED to detect app code that
fails to call one of the 'start' routines (not enabled in libpng-1.5
@@ -339,8 +262,6 @@ Version 1.6.0beta19 [March 18,2012]
yet because a warning is produced.
Avoid the double gamma correction warning in the simplified API.
This allows the --strict option to pass in the pngstest checks
-
-Version 1.6.0beta20 [March 29, 2012]
Changed chunk handler warnings into benign errors, incrementally load iCCP
Added checksum-icc.c to contrib/tools
Prevent PNG_EXPAND+PNG_SHIFT doing the shift twice.
@@ -348,9 +269,7 @@ Version 1.6.0beta20 [March 29, 2012]
iCCP profile over writing the sRGB chunk, controlled by the
PNG_sRGB_PROFILE_CHECKS option.
Revised png_set_text_2() to avoid potential memory corruption (fixes
- CVE-2011-3048, also known as CVE-2012-3425).
-
-Version 1.6.0beta21 [April 27, 2012]
+ CVE-2011-3048).
Revised scripts/makefile.darwin: use system zlib; remove quotes around
architecture list; add missing ppc architecture; add architecture options
to shared library link; don't try to create a shared lib based on missing
@@ -360,8 +279,6 @@ Version 1.6.0beta21 [April 27, 2012]
declaration of png_handle_unknown().
Added -lssp_nonshared in a comment in scripts/makefile.freebsd
and changed deprecated NOOBJ and NOPROFILE to NO_OBJ and NO_PROFILE.
-
-Version 1.6.0beta22 [May 23, 2012]
Removed need for -Wno-cast-align with clang. clang correctly warns on
alignment increasing pointer casts when -Wcast-align is passed. This
fixes the cases that clang warns about either by eliminating the
@@ -369,8 +286,6 @@ Version 1.6.0beta22 [May 23, 2012]
where the cast is previously verified or pngstest.c where it is OK, by
introducing new png_aligncast macros to do the cast in a way that clang
accepts.
-
-Version 1.6.0beta23 [June 6, 2012]
Revised CMakeLists.txt to not attempt to make a symlink under mingw.
Made fixes for new optimization warnings from gcc 4.7.0. The compiler
performs an optimization which is safe; however it then warns about it.
@@ -380,25 +295,17 @@ Version 1.6.0beta23 [June 6, 2012]
Improved performance of new do_check_palette_indexes() function (only
update the value when it actually increases, move test for whether
the check is wanted out of the function.
-
-Version 1.6.0beta24 [June 7, 2012]
Don't check palette indexes if num_palette is 0 (as it can be in MNG files).
-
-Version 1.6.0beta25 [June 16, 2012]
Revised png_set_keep_unknown_chunks() so num_chunks < 0 means ignore all
unknown chunks and all known chunks except for IHDR, PLTE, tRNS, IDAT,
and IEND. Previously it only meant ignore all unknown chunks, the
same as num_chunks == 0. Revised png_image_skip_unused_chunks() to
provide a list of chunks to be processed instead of a list of chunks to
ignore. Revised contrib/gregbook/readpng2.c accordingly.
-
-Version 1.6.0beta26 [July 10, 2012]
Removed scripts/makefile.cegcc from the *.zip and *.7z distributions; it
depends on configure, which is not included in those archives.
Moved scripts/chkfmt to contrib/tools.
Changed "a+w" to "u+w" in Makefile.in to fix CVE-2012-3386.
-
-Version 1.6.0beta27 [August 11, 2012]
Do not compile PNG_DEPRECATED, PNG_ALLOC and PNG_PRIVATE when __GNUC__ < 3.
Do not use __restrict when GNUC is <= 3.1
Removed references to png_zalloc() and png_zfree() from the manual.
@@ -440,8 +347,6 @@ Version 1.6.0beta27 [August 11, 2012]
png_memcmp() macros.
Work around gcc 3.x and Microsoft Visual Studio 2010 complaints. Both object
to the split initialization of num_chunks.
-
-Version 1.6.0beta28 [August 29, 2012]
Unknown handling fixes and clean up. This adds more correct option
control of the unknown handling, corrects the pre-existing bug where
the per-chunk 'keep' setting is ignored and makes it possible to skip
@@ -480,11 +385,8 @@ Version 1.6.0beta28 [August 29, 2012]
app behavior and might even cause app crashes.) Check that profiles
contain the tags needed to process the PNG (tags all required by the ICC
spec). Removed unused PNG_STATIC from pngpriv.h.
-
-Version 1.6.0beta29 [September 4, 2012]
Fixed the simplified API example programs and improved the error message
if the version field is not set.
- Added contrib/examples/* to the *.zip and *.7z distributions.
Updated simplified API synopses and description of the png_image structure
in the manual.
Made makepng and pngtest produce identical PNGs, add "--relaxed" option
@@ -493,26 +395,6 @@ Version 1.6.0beta29 [September 4, 2012]
where the length has not been extended to a multiple of 4, and pngtest
now intercepts all libpng errors, allowing the previously-introduced
"--strict test" on no warnings to actually work.
- Improved ICC profile handling including cHRM chunk generation and fixed
- Cygwin+MSVC build errors. The ICC profile handling now includes more
- checking. Several errors that caused rejection of the profile are now
- handled with a warning in such a way that the invalid profiles will be
- read by default in release (but not pre-RC) builds but will not be
- written by default. The easy part of handling the cHRM chunk is written,
- where the ICC profile contains the required data. The more difficult
- part plus guessing a gAMA value requires code to pass selected RGB values
- through the profile.
-
-Version 1.6.0beta30 [October 24, 2012]
- Changed ICC profile matrix/vector types to not depend on array type rules.
- By the ANSI-C standard the new types should be identical to the previous
- versions, and all known versions of gcc tested with the previous versions
- except for GCC-4.2.1 work with this version. The change makes the ANSI-C
- rule that const applied to an array of elements applies instead to the
- elements in the array moot by explicitly applying const to the base
- elements of the png_icc_matrix and png_icc_vector types. The accidental
- (harmless) 'const' previously applied to the parameters of two of the
- functions have also been removed.
Added a work around for GCC 4.2 optimization bug.
Marked the broken (bad white point) original HP sRGB profiles correctly and
correct comments.
@@ -523,11 +405,7 @@ Version 1.6.0beta30 [October 24, 2012]
Add updated WARNING file to projects/vstudio from libpng 1.5/vstudio
Fixed build when using #define PNG_NO_READ_GAMMA in png_do_compose() in
pngrtran.c (Domani Hannes).
-
-Version 1.6.0beta31 [November 1, 2012]
- Undid the erroneous change to vstudio/pngvalid build in libpng-1.6.0beta30.
Made pngvalid so that it will build outside the libpng source tree.
- Made builds -DPNG_NO_READ_GAMMA compile (the unit tests still fail).
Made PNG_NO_READ_GAMMA switch off interfaces that depend on READ_GAMMA.
Prior to 1.6.0 switching off READ_GAMMA did unpredictable things to the
interfaces that use it (specifically, png_do_background in 1.4 would
@@ -537,21 +415,9 @@ Version 1.6.0beta31 [November 1, 2012]
depends on it; this obliges people who set it to consider whether they
really want it off if they happen to use any of the interfaces in
question (typically most users who disable it won't).
- Fixed GUIDs in projects/vstudio. Some were duplicated or missing,
- resulting in VS2010 having to update the files.
- Removed non-working ICC profile support code that was mostly added to
- libpng-1.6.0beta29 and beta30. There was too much code for too little
- gain; implementing full ICC color correction may be desireable but is left
- up to applications.
-
-Version 1.6.0beta32 [November 25, 2012]
- Fixed an intermittent SEGV in pngstest due to an uninitialized array element.
Added the ability for contrib/libtests/makepng.c to make a PNG with just one
color. This is useful for debugging pngstest color inaccuracy reports.
- Fixed error checking in the simplified write API (Olaf van der Spek)
Made png_user_version_check() ok to use with libpng version 1.10.x and later.
-
-Version 1.6.0beta33 [December 15, 2012]
Fixed typo in png.c (PNG_SET_CHUNK_MALLOC_MAX should be PNG_CHUNK_MALLOC_MAX)
that causes the MALLOC_MAX limit not to work (John Bowler)
Change png_warning() to png_app_error() in pngwrite.c and comment the
@@ -561,14 +427,9 @@ Version 1.6.0beta33 [December 15, 2012]
to the hardware subdirectory and added comments to pngrutil.c so that
implementors of other optimizations know what to do.
Fixed cases of unquoted DESTDIR in Makefile.am
- Rebuilt Makefile.in, etc., with autoconf-2.69 and automake-1.12.5.
-
-Version 1.6.0beta34 [December 19, 2012]
Cleaned up whitespace in the synopsis portion of the manpage "libpng.3"
Disassembled the version number in scripts/options.awk (necessary for
building on SunOs).
-
-Version 1.6.0beta35 [December 23, 2012]
Made default Zlib compression settings be configurable. This adds #defines to
pnglibconf.h to control the defaults.
Fixed Windows build issues, enabled ARM compilation. Various warnings issued
@@ -576,56 +437,24 @@ Version 1.6.0beta35 [December 23, 2012]
GCCs.) ARM support is enabled by default in zlib.props (unsupported by
Microsoft) and ARM compilation is made possible by deleting the check for
x86. The test programs cannot be run because they are not signed.
-
-Version 1.6.0beta36 [January 2, 2013]
Discontinued distributing libpng-1.x.x.tar.bz2.
Discontinued distributing libpng-1.7.0-1.6.0-diff.txt and similar.
- Rebuilt configure with autoconf-2.69 (inadvertently not done in beta33)
+ Rebuilt Makefile.in, configure, etc., with autoconf-2.69 and automake-1.12.5.
Fixed 'make distcheck' on SUN OS - libpng.so was not being removed
-
-Version 1.6.0beta37 [January 10, 2013]
Fixed conceivable but difficult to repro overflow. Also added two test
programs to generate and test a PNG which should have the problem.
-
-Version 1.6.0beta39 [January 19, 2013]
- Again corrected attempt at overflow detection in png_set_unknown_chunks().
Added overflow detection in png_set_sPLT() and png_set_text_2().
-
-Version 1.6.0beta40 [January 20, 2013]
Use consistent handling of overflows in text, sPLT and unknown png_set_* APIs
-
-Version 1.6.0rc01 [January 26, 2013]
- No changes.
-
-Version 1.6.0rc02 [February 4, 2013]
Added png_get_palette_max() function.
-
-Version 1.6.0rc03 [February 5, 2013]
- Fixed the png_get_palette_max API.
-
-Version 1.6.0rc04 [February 7, 2013]
- Turn serial tests back on (recently turned off by autotools upgrade).
-
-Version 1.6.0rc05 [February 8, 2013]
- Update manual about png_get_palette_max().
-
-Version 1.6.0rc06 [February 9, 2013]
Fixed missing dependency in --prefix builds The intermediate
internal 'prefix.h' file can only be generated correctly after
pnglibconf.h, however the dependency was not in Makefile.am. The
symptoms are unpredictable depending on the order make chooses to
build pngprefix.h and pnglibconf.h, often the error goes unnoticed
because there is a system pnglibconf.h to use instead.
-
-Version 1.6.0rc07 [February 10, 2013]
Enclosed the new png_get_palette_max in #ifdef PNG_GET_PALETTE_MAX_SUPPORTED
block, and revised pnglibconf.h and pnglibconf.h.prebuilt accordingly.
-Version 1.6.0rc08 [February 10, 2013]
- Fix typo in png.h #ifdef
-
-Version 1.6.0rc09 [February 11, 2013]
-
Send comments/corrections/commendations to png-mng-implement at lists.sf.net
(subscription required; visit
https://lists.sourceforge.net/lists/listinfo/png-mng-implement