Skip to content

Commit

Permalink
Release libpng version 1.6.45
Browse files Browse the repository at this point in the history
  • Loading branch information
ctruta committed Jan 7, 2025
1 parent 3714c58 commit 51f5bd6
Show file tree
Hide file tree
Showing 17 changed files with 74 additions and 79 deletions.
49 changes: 15 additions & 34 deletions ANNOUNCE
Original file line number Diff line number Diff line change
@@ -1,13 +1,5 @@
libpng 1.6.45.git
=================

This is a development version, not intended to be a public release.
It will be replaced by a public release, or by another development
version, at a later time.


libpng 1.6.44 - September 12, 2024
==================================
libpng 1.6.45 - January 7, 2025
===============================

This is a public release of libpng, intended for use in production code.

Expand All @@ -17,13 +9,13 @@ Files available for download

Source files with LF line endings (for Unix/Linux):

* libpng-1.6.44.tar.xz (LZMA-compressed, recommended)
* libpng-1.6.44.tar.gz (deflate-compressed)
* libpng-1.6.45.tar.xz (LZMA-compressed, recommended)
* libpng-1.6.45.tar.gz (deflate-compressed)

Source files with CRLF line endings (for Windows):

* lpng1644.7z (LZMA-compressed, recommended)
* lpng1644.zip (deflate-compressed)
* lpng1645.7z (LZMA-compressed, recommended)
* lpng1645.zip (deflate-compressed)

Other information:

Expand All @@ -33,29 +25,18 @@ Other information:
* TRADEMARK.md


Changes from version 1.6.43 to version 1.6.44
Changes from version 1.6.44 to version 1.6.45
---------------------------------------------

* Hardened calculations in chroma handling to prevent overflows, and
relaxed a constraint in cHRM validation to accomodate the standard
ACES AP1 set of color primaries.
* Added support for the cICP chunk.
(Contributed by Lucas Chollet and John Bowler)
* Adjusted and improved various checks in colorspace calculations.
(Contributed by John Bowler)
* Rearranged the write order of colorspace chunks for better conformance
with the PNG v3 draft specification.
(Contributed by John Bowler)
* Removed the ASM implementation of ARM Neon optimizations and updated
the build accordingly. Only the remaining C implementation shall be
used from now on, thus ensuring the support of the PAC/BTI security
features on ARM64.
(Contributed by Ross Burton and John Bowler)
* Fixed the pickup of the PNG_HARDWARE_OPTIMIZATIONS option in the
CMake build on FreeBSD/amd64. This is an important performance fix
on this platform.
* Applied various fixes and improvements to the CMake build.
(Contributed by Eric Riff, Benjamin Buch and Erik Scholz)
* Added fuzzing targets for the simplified read API.
(Contributed by Mikhail Khachayants)
* Fixed a build error involving pngtest.c under a custom config.
This was a regression introduced in a code cleanup in libpng-1.6.43.
(Contributed by Ben Wagner)
* Fixed and improved the config files for AppVeyor CI and Travis CI.
* Raised the minimum required CMake version from 3.6 to 3.14.
* Forked off a development branch for libpng version 1.8.


Send comments/corrections/commendations to png-mng-implement at lists.sf.net.
Expand Down
11 changes: 10 additions & 1 deletion CHANGES
Original file line number Diff line number Diff line change
Expand Up @@ -6218,7 +6218,16 @@ Version 1.6.44 [September 12, 2024]
(Contributed by Ben Wagner)
Fixed and improved the config files for AppVeyor CI and Travis CI.

Version 1.6.45 [TODO]
Version 1.6.45 [January 7, 2025]
Added support for the cICP chunk.
(Contributed by Lucas Chollet and John Bowler)
Adjusted and improved various checks in colorspace calculations.
(Contributed by John Bowler)
Rearranged the write order of colorspace chunks for better conformance
with the PNG v3 draft specification.
(Contributed by John Bowler)
Raised the minimum required CMake version from 3.6 to 3.14.
Forked off a development branch for libpng version 1.8.

Send comments/corrections/commendations to png-mng-implement at lists.sf.net.
Subscription is required; visit
Expand Down
4 changes: 2 additions & 2 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,8 @@ cmake_minimum_required(VERSION 3.14)
set(PNGLIB_MAJOR 1)
set(PNGLIB_MINOR 6)
set(PNGLIB_REVISION 45)
#set(PNGLIB_SUBREVISION 0)
set(PNGLIB_SUBREVISION "git")
set(PNGLIB_SUBREVISION 0)
#set(PNGLIB_SUBREVISION "git")
set(PNGLIB_VERSION ${PNGLIB_MAJOR}.${PNGLIB_MINOR}.${PNGLIB_REVISION})
set(PNGLIB_ABI_VERSION ${PNGLIB_MAJOR}${PNGLIB_MINOR})
set(PNGLIB_SHARED_VERSION ${PNGLIB_ABI_VERSION}.${PNGLIB_REVISION}.${PNGLIB_SUBREVISION})
Expand Down
4 changes: 2 additions & 2 deletions README
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
README for libpng version 1.6.45.git
====================================
README for libpng version 1.6.45
================================

See the note about version numbers near the top of `png.h`.
See `INSTALL` for instructions on how to install libpng.
Expand Down
22 changes: 11 additions & 11 deletions configure
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.72 for libpng 1.6.45.git.
# Generated by GNU Autoconf 2.72 for libpng 1.6.45.
#
# Report bugs to <png-mng-implement@lists.sourceforge.net>.
#
Expand Down Expand Up @@ -614,8 +614,8 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='libpng'
PACKAGE_TARNAME='libpng'
PACKAGE_VERSION='1.6.45.git'
PACKAGE_STRING='libpng 1.6.45.git'
PACKAGE_VERSION='1.6.45'
PACKAGE_STRING='libpng 1.6.45'
PACKAGE_BUGREPORT='png-mng-implement@lists.sourceforge.net'
PACKAGE_URL=''

Expand Down Expand Up @@ -1421,7 +1421,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
'configure' configures libpng 1.6.45.git to adapt to many kinds of systems.
'configure' configures libpng 1.6.45 to adapt to many kinds of systems.

Usage: $0 [OPTION]... [VAR=VALUE]...

Expand Down Expand Up @@ -1492,7 +1492,7 @@ fi

if test -n "$ac_init_help"; then
case $ac_init_help in
short | recursive ) echo "Configuration of libpng 1.6.45.git:";;
short | recursive ) echo "Configuration of libpng 1.6.45:";;
esac
cat <<\_ACEOF

Expand Down Expand Up @@ -1689,7 +1689,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
libpng configure 1.6.45.git
libpng configure 1.6.45
generated by GNU Autoconf 2.72

Copyright (C) 2023 Free Software Foundation, Inc.
Expand Down Expand Up @@ -1952,7 +1952,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.

It was created by libpng $as_me 1.6.45.git, which was
It was created by libpng $as_me 1.6.45, which was
generated by GNU Autoconf 2.72. Invocation command line was

$ $0$ac_configure_args_raw
Expand Down Expand Up @@ -3433,7 +3433,7 @@ fi

# Define the identity of the package.
PACKAGE='libpng'
VERSION='1.6.45.git'
VERSION='1.6.45'


printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h
Expand Down Expand Up @@ -3528,7 +3528,7 @@ fi



PNGLIB_VERSION=1.6.45.git
PNGLIB_VERSION=1.6.45
PNGLIB_MAJOR=1
PNGLIB_MINOR=6
PNGLIB_RELEASE=45
Expand Down Expand Up @@ -16165,7 +16165,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
This file was extended by libpng $as_me 1.6.45.git, which was
This file was extended by libpng $as_me 1.6.45, which was
generated by GNU Autoconf 2.72. Invocation command line was

CONFIG_FILES = $CONFIG_FILES
Expand Down Expand Up @@ -16233,7 +16233,7 @@ ac_cs_config_escaped=`printf "%s\n" "$ac_cs_config" | sed "s/^ //; s/'/'\\\\\\\\
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config='$ac_cs_config_escaped'
ac_cs_version="\\
libpng config.status 1.6.45.git
libpng config.status 1.6.45
configured by $0, generated by GNU Autoconf 2.72,
with options \\"\$ac_cs_config\\"

Expand Down
4 changes: 2 additions & 2 deletions configure.ac
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ AC_PREREQ([2.68])

dnl Version number stuff here:

AC_INIT([libpng],[1.6.45.git],[png-mng-implement@lists.sourceforge.net])
AC_INIT([libpng],[1.6.45],[png-mng-implement@lists.sourceforge.net])
AC_CONFIG_MACRO_DIR([scripts/autoconf])

# libpng does not follow GNU file name conventions (hence 'foreign')
Expand All @@ -46,7 +46,7 @@ dnl automake, so the following is not necessary (and is not defined anyway):
dnl AM_PREREQ([1.11.2])
dnl stop configure from automagically running automake

PNGLIB_VERSION=1.6.45.git
PNGLIB_VERSION=1.6.45
PNGLIB_MAJOR=1
PNGLIB_MINOR=6
PNGLIB_RELEASE=45
Expand Down
6 changes: 3 additions & 3 deletions libpng-manual.txt
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
libpng-manual.txt - A description on how to use and modify libpng

Copyright (c) 2018-2024 Cosmin Truta
Copyright (c) 2018-2025 Cosmin Truta
Copyright (c) 1998-2018 Glenn Randers-Pehrson

This document is released under the libpng license.
Expand All @@ -9,9 +9,9 @@ libpng-manual.txt - A description on how to use and modify libpng

Based on:

libpng version 1.6.36, December 2018, through 1.6.44 - September 2024
libpng version 1.6.36, December 2018, through 1.6.45 - January 2025
Updated and distributed by Cosmin Truta
Copyright (c) 2018-2024 Cosmin Truta
Copyright (c) 2018-2025 Cosmin Truta

libpng versions 0.97, January 1998, through 1.6.35 - July 2018
Updated and distributed by Glenn Randers-Pehrson
Expand Down
10 changes: 5 additions & 5 deletions libpng.3
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
.TH LIBPNG 3 "September 12, 2024"
.TH LIBPNG 3 "January 7, 2025"
.SH NAME
libpng \- Portable Network Graphics (PNG) Reference Library 1.6.44
libpng \- Portable Network Graphics (PNG) Reference Library 1.6.45

.SH SYNOPSIS
\fB#include <png.h>\fP
Expand Down Expand Up @@ -519,7 +519,7 @@ Following is a copy of the libpng-manual.txt file that accompanies libpng.
.SH LIBPNG.TXT
libpng-manual.txt - A description on how to use and modify libpng

Copyright (c) 2018-2024 Cosmin Truta
Copyright (c) 2018-2025 Cosmin Truta
Copyright (c) 1998-2018 Glenn Randers-Pehrson

This document is released under the libpng license.
Expand All @@ -528,9 +528,9 @@ libpng-manual.txt - A description on how to use and modify libpng

Based on:

libpng version 1.6.36, December 2018, through 1.6.44 - September 2024
libpng version 1.6.36, December 2018, through 1.6.45 - January 2025
Updated and distributed by Cosmin Truta
Copyright (c) 2018-2024 Cosmin Truta
Copyright (c) 2018-2025 Cosmin Truta

libpng versions 0.97, January 1998, through 1.6.35 - July 2018
Updated and distributed by Glenn Randers-Pehrson
Expand Down
4 changes: 2 additions & 2 deletions libpngpf.3
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
.TH LIBPNGPF 3 "September 12, 2024"
.TH LIBPNGPF 3 "January 7, 2025"
.SH NAME
libpng \- Portable Network Graphics (PNG) Reference Library 1.6.44
libpng \- Portable Network Graphics (PNG) Reference Library 1.6.45
(private functions)

.SH SYNOPSIS
Expand Down
7 changes: 6 additions & 1 deletion png.5
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
.TH PNG 5 "September 12, 2024"
.TH PNG 5 "January 7, 2025"
.SH NAME
png \- Portable Network Graphics (PNG) format

Expand All @@ -20,6 +20,11 @@ matching on heterogeneous platforms.
.SH "SEE ALSO"
.BR "libpng"(3), " zlib"(3), " deflate"(5), " " and " zlib"(5)
.LP
PNG Specification (Third Edition) Candidate Recommendation Draft, July 2024:
.IP
.br
https://www.w3.org/TR/2024/CRD-png-3-20240718/
.LP
PNG Specification (Second Edition), November 2003:
.IP
.br
Expand Down
4 changes: 2 additions & 2 deletions png.c
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
#include "pngpriv.h"

/* Generate a compiler error if there is an old png.h in the search path. */
typedef png_libpng_version_1_6_45_git Your_png_h_is_not_version_1_6_45_git;
typedef png_libpng_version_1_6_45 Your_png_h_is_not_version_1_6_45;

/* Tells libpng that we have already handled the first "num_bytes" bytes
* of the PNG file signature. If the PNG data is embedded into another
Expand Down Expand Up @@ -793,7 +793,7 @@ png_get_copyright(png_const_structrp png_ptr)
return PNG_STRING_COPYRIGHT
#else
return PNG_STRING_NEWLINE \
"libpng version 1.6.45.git" PNG_STRING_NEWLINE \
"libpng version 1.6.45" PNG_STRING_NEWLINE \
"Copyright (c) 2018-2025 Cosmin Truta" PNG_STRING_NEWLINE \
"Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson" \
PNG_STRING_NEWLINE \
Expand Down
16 changes: 8 additions & 8 deletions png.h
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
/* png.h - header file for PNG reference library
*
* libpng version 1.6.45.git
* libpng version 1.6.45
*
* Copyright (c) 2018-2025 Cosmin Truta
* Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson
Expand All @@ -14,7 +14,7 @@
* libpng versions 0.89, June 1996, through 0.96, May 1997: Andreas Dilger
* libpng versions 0.97, January 1998, through 1.6.35, July 2018:
* Glenn Randers-Pehrson
* libpng versions 1.6.36, December 2018, through 1.6.44, September 2024:
* libpng versions 1.6.36, December 2018, through 1.6.45, January 2025:
* Cosmin Truta
* See also "Contributing Authors", below.
*/
Expand Down Expand Up @@ -238,7 +238,7 @@
* ...
* 1.5.30 15 10530 15.so.15.30[.0]
* ...
* 1.6.44 16 10644 16.so.16.44[.0]
* 1.6.45 16 10645 16.so.16.45[.0]
*
* Henceforth the source version will match the shared-library major and
* minor numbers; the shared-library major version number will be used for
Expand Down Expand Up @@ -274,7 +274,7 @@
*/

/* Version information for png.h - this should match the version in png.c */
#define PNG_LIBPNG_VER_STRING "1.6.45.git"
#define PNG_LIBPNG_VER_STRING "1.6.45"
#define PNG_HEADER_VERSION_STRING " libpng version " PNG_LIBPNG_VER_STRING "\n"

/* The versions of shared library builds should stay in sync, going forward */
Expand All @@ -290,7 +290,7 @@
/* This should be zero for a public release, or non-zero for a
* development version.
*/
#define PNG_LIBPNG_VER_BUILD 1
#define PNG_LIBPNG_VER_BUILD 0

/* Release Status */
#define PNG_LIBPNG_BUILD_ALPHA 1
Expand All @@ -307,7 +307,7 @@
#define PNG_LIBPNG_BUILD_SPECIAL 32 /* Cannot be OR'ed with
PNG_LIBPNG_BUILD_PRIVATE */

#define PNG_LIBPNG_BUILD_BASE_TYPE PNG_LIBPNG_BUILD_BETA
#define PNG_LIBPNG_BUILD_BASE_TYPE PNG_LIBPNG_BUILD_STABLE

/* Careful here. At one time, Guy wanted to use 082, but that
* would be octal. We must not include leading zeros.
Expand All @@ -316,7 +316,7 @@
* From version 1.0.1 it is:
* XXYYZZ, where XX=major, YY=minor, ZZ=release
*/
#define PNG_LIBPNG_VER 10645 /* 1.6.45.git */
#define PNG_LIBPNG_VER 10645 /* 1.6.45 */

/* Library configuration: these options cannot be changed after
* the library has been built.
Expand Down Expand Up @@ -426,7 +426,7 @@ extern "C" {
/* This triggers a compiler error in png.c, if png.c and png.h
* do not agree upon the version number.
*/
typedef char* png_libpng_version_1_6_45_git;
typedef char* png_libpng_version_1_6_45;

/* Basic control structions. Read libpng-manual.txt or libpng.3 for more info.
*
Expand Down
4 changes: 2 additions & 2 deletions pngconf.h
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
/* pngconf.h - machine-configurable file for libpng
*
* libpng version 1.6.45.git
* libpng version 1.6.45
*
* Copyright (c) 2018-2024 Cosmin Truta
* Copyright (c) 2018-2025 Cosmin Truta
* Copyright (c) 1998-2002,2004,2006-2016,2018 Glenn Randers-Pehrson
* Copyright (c) 1996-1997 Andreas Dilger
* Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc.
Expand Down
Loading

0 comments on commit 51f5bd6

Please sign in to comment.