Skip to content

Releases: shssoichiro/oxipng

v9.1.3

29 Nov 19:14
e8e8309
Compare
Choose a tag to compare
  • [Feature] Add --zi option to control the number of Zopfli iterations.
  • [Improvement] Allow setting compression level to 0.
  • [Performance] Improve filtering performance for some images.
  • [Build] Move man page generation to an xtask.

v9.1.2

12 Jul 21:41
Compare
Choose a tag to compare
  • [Bugfix] Fix --nx still applying deinterlacing by default.
  • [Bugfix] Fix wildcard matching being case-sensitive on Windows.
  • [Bugfix] Fix optimized APNGs not being compatible with some programs.
  • [Build] Fix feature sanity-checks not working without parallel.
  • [Misc] Resolve ambiguity between optional dependencies and crate features.

v9.1.1

23 Apr 05:33
Compare
Choose a tag to compare
  • [Build] Change man page generation path to resolve issue with cargo publish.

v9.1.0

21 Apr 20:18
Compare
Choose a tag to compare
  • [Improvement] Add --keep display equivalent to --strip safe.
  • [Improvement] Add modified zeng palette sorting method, improving optimization of indexed images.
  • [Improvement] If only one filter is specified, guarantee to only use this one.
  • [Improvement] Evaluate low-depth indexed even if low-depth grayscale was already achieved.
  • [Bugfix] Fix battiato palette sorting method not being used if the input was not already indexed.
  • [Bugfix] Fix rare crash caused by a truncated palette.
  • [Build] Reduce size of binaries.
  • [Build] Add man page generation.
  • [Build] Publish deb archives for Linux.
  • [Misc] Bump minimum Rust version to 1.74.0.

⚠️ Due to a build issue, this release is not available on crates.io.

v9.0.0

10 Oct 19:28
e1db84f
Compare
Choose a tag to compare
  • [Breaking] Remove --backup option. Use --out or --dir to preserve existing files.
  • [Breaking] Remove --check option. Use --nx --nz to perform a non-optimizing run.
  • [Breaking] API: Replace pretend option with OutFile::None.
  • [Breaking] API: Move preserve_attrs into OutFile::Path.
  • [Breaking] Default to removing interlacing. Use -i keep to retain existing interlacing.
  • [Feature] Add Raw API for creating optimised PNGs from raw image data.
  • [Feature] Add basic support for APNG files.
  • [Feature] Add --scale16 option to forcibly reduce 16-bit images to 8-bit.
  • [Improvement] Process multiple files in parallel.
  • [Improvement] Improve reductions, particularly for indexed or very small images.
  • [Improvement] Improve compression with latest version of libdeflate.
  • [Improvement] Recompress iCCP chunks.
  • [Improvement] Change recursive mode to only process .png/.apng files.
  • [Improvement] Add support for glob patterns in quotes on Windows.
  • [Improvement] Quieter default output logging, with multiple levels of verbosity.
  • [Bugfix] Fix deadlock when using oxipng within an existing Rayon thread pool.
  • [Bugfix] Fix early abort in recursive mode when a read error occurred.
  • [Bugfix] Fix losing aux chunks when there's more than one of the same type.
  • [Bugfix] Fix sometimes writing output even when it was larger.
  • [Misc] Revamp CI workflow to upload artifacts and generate binaries for additional architectures.
  • [Misc] Bump minimum Rust version to 1.66.0.

v8.0.0

24 Dec 14:27
Compare
Choose a tag to compare
  • [Breaking] Revamp alpha optimization
  • [Bugfix] Fix grayscale depth reduction with tRNS pixel
  • [Bugfix] Fix fast mode with zopfli
  • [Improvement] Tweaks to interlacing and format display
  • [Improvement] Ability to reduce alpha channel to tRNS pixel
  • [Improvement] Performance improvements to colorspace reduction
  • [Misc] Disable image validation in release mode, as it is deemed no longer necessary

v7.0.0

07 Dec 19:24
Compare
Choose a tag to compare
  • [Breaking] Switch to libdeflater as the default
  • [Breaking] Rebalance presets
  • [Breaking] Update safe headers to remove
  • [Breaking] Bump minimum Rust version to 1.61.0
  • [Feature] Introduce new filter strategies
  • [Feature] Allow setting libdeflate compression level
  • [Feature] Add optional dockerization
  • [Improvement] Improve alpha reductions
  • [Improvement] Fast deinterlace for 8-bit
  • [Improvement] Refactor heuristics for fast filter evaluation
  • [Improvement] Improve file size reduction further
  • [Bugfix] Avoid printing output bytes on decompress error
  • [Bugfix] Fix compression level 0
  • [Bugfix] Fix directional alpha reductions
  • [Bugfix] Fix edge cases in palette reduction

v6.0.1

07 Sep 15:52
Compare
Choose a tag to compare
  • [Bugfix] Fix an issue where Zopfli mode could generate corrupt images

v6.0.0

05 Sep 17:07
5810ae4
Compare
Choose a tag to compare
  • [Breaking] Bump minimum Rust version to 1.57.0
  • [Feature] Add --check/-c CLI option
  • [Security] Update stderrlog to 0.5.2 (Fixes RUSTSEC-2022-0006)
  • [Security] Remove chrono as a transitive dependency (Fixes RUSTSEC-2020-0159)
  • [Misc] Bump clap to 3.2
  • [Misc] Bump zopfli to 0.7
  • [Misc] Bump libdeflater to 0.10
  • [Misc] Remove byteorder dependency in favor of stdlib functions
  • [Misc] Bump image to 0.24
  • [Misc] Bump crc to 3.0
  • [Misc] Bump miniz_oxide to 0.6
  • [Misc] Update to Rust edition 2021
  • [Misc] Various internal improvements

v5.0.1

15 Nov 16:46
Compare
Choose a tag to compare
Version 5.0.1