Skip to content
Aug 7, 2019
Changes since v0.4.5:
Improved performance by 60-200% on x86
Added spng_set_chunk_limits/spng_get_chunk_limits()
Added support for MSVC builds
Added SPNG_STATIC for controlling symbol exports
Removed SPNG_OPTIMIZE_FILTER compiler option
Added SPNG_DISABLE_OPT for disabling optimizations,
 they are enabled by default
Added SPNG_SSE option to control x86 optimizations
Changed default instruction set target from SSSE3 to SSE2
Added Meson wraps for libpng, zlib
Fixed testsuite on Windows
Improved fuzz target
Mar 25, 2019
Changes since v0.4.4:
Fixed validation of sBIT values for grayscale alpha images
Merged source files into a single source/header
Removed CMake build file
Code cleanup
Mar 11, 2019
Changes since v0.4.3:
Code cleanup
CMake builds now generate a pkg-config file
Improved fuzz target, testsuite, build files
Improved performance for paletted images
Feb 12, 2019
Changes since v0.4.2:
Fixed divide-by-zero error when reading incorrect gAMA chunks
Improved fuzz target, testsuite, build files
Jan 18, 2019
Changes since v0.4.1:
Project is now continously fuzzed by OSS-Fuzz
Fixed multiple bugs found by OSS-Fuzz
Added defilter optimizations for x86
Changed pkg-config name libspng -> spng
Disabled text and iCCP chunk reading (needs rewriting)
Removed benchmarks (now part of png_bench)
Dec 2, 2018
Changes since v0.4.0:
Fixed infinite loop bug when using SPNG_DECODE_USE_SBIT
	with grayscale images
Fixed cmake header path
Improved documentation
Nov 12, 2018
Changes since v0.3.1
First stable release
CMake build support
Added support for custom memory allocators
Added spng_set_crc_action()
Improved data reads, error handling
Simplified tRNS, bKGD structs
Changed API to use US english terms (color, gray, etc)
Cleanup and minor bugfixes
Sep 3, 2018
Added documentation
Improved testsuite
Aug 1, 2018
Changes since 0.2.0:
API changes to prepare for encode support
OSS-Fuzz integration
Simplified integer reads (Tomasz Kramkowski)
Added option to set custom image width/height limits
All standard chunks are read and validated
Added support for eXIf and oFFs extensions
Added spng_strerror(), spng_version_string()
Added spng_get_*(), spng_set_*() functions for supported chunks
build: libpng is no longer a build dependency, it's only required
        for benchmarks and the testsuite.
build: generate pkg-config file
benchmark: print averaged time over multiple runs
May 21, 2018
Changes since 0.1.0:
Stream support
Gamma correction
Added SPNG_DECODE_USE_TRNS flag
RGBA16 output format
Read suggested palettes(sPLT), color profiles(iCCP)
Testsuite improvements
Improved output compatibility with libpng
Validation fixes, bugfixes
You can’t perform that action at this time.