Version 1!

There should not be any more breaking changes for a long time.
This commit is contained in:
Josh Holmer 2018-01-31 18:57:52 -05:00
parent 3d643b16b2
commit 27e6dfeaab
4 changed files with 17 additions and 17 deletions

View file

@ -1,14 +1,14 @@
### Version 0.20.0 (unreleased)
- Refactor of internal code.
- Implement unix-specific permissions copying for `-p` option
- Performance optimizations
### Version 1.0.0
- Remove the C dependency on miniz, and replace it with a Rust version ([#57](https://github.com/shssoichiro/oxipng/issues/57))
- This improves decompression speed by 15%. Compression speed is not affected.
- [SEMVER_MAJOR] This also obsoletes the `-zm` command line option and the `memory` key on the `Options` struct.
- Presets will be updated automatically. This means that presets 3 and higher will run significantly more quickly.
- Adjust the presets, now that memory is no longer an option.
- [SEMVER_MAJOR] Adjust the presets, now that `-zm` is no longer an option.
- `-o3` now tests all filter types. This will result in 50% more trials than before, but may give up to 10% more compression gain.
- `-o4` and higher now test all alpha optimization types. This adds 5 trials specific to the alpha channel. Only transparent images are affected.
- `-o4` and higher now test all alpha optimization types. This adds 5 trials specific to the alpha channel. Only transparent images are affected.
- Implement unix-specific permissions copying for `-p` option
- Performance optimizations
- Refactor of internal code
### Version 0.19.0
- [SEMVER_MAJOR] Default to overwriting the input file if `out_file` is not set.

2
Cargo.lock generated
View file

@ -318,7 +318,7 @@ dependencies = [
[[package]]
name = "oxipng"
version = "0.19.0"
version = "1.0.0"
dependencies = [
"bit-vec 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)",
"byteorder 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",

View file

@ -14,7 +14,7 @@ homepage = "https://github.com/shssoichiro/oxipng"
license = "MIT"
name = "oxipng"
repository = "https://github.com/shssoichiro/oxipng"
version = "0.19.0"
version = "1.0.0"
[[bin]]
doc = false

View file

@ -94,31 +94,31 @@ Oxipng is open-source software, distributed under the MIT license.
## Benchmarks
Tested oxipng 0.19.0 (compiled on rustc 1.25.0-nightly (f62f77403 2018-01-10)) against OptiPNG version 0.7.7 on Intel(R) Core(TM) i7-6700HQ CPU @ 2.60GHz with 8 logical cores
Tested oxipng 1.0.0 (compiled on rustc 1.25.0-nightly (def3269a7 2018-01-30)) against OptiPNG version 0.7.7 on Intel(R) Core(TM) i7-6700HQ CPU @ 2.60GHz with 8 logical cores
Benchmark #1: ./target/release/oxipng -P ./tests/files/rgb_16_should_be_grayscale_8.png
Time (mean ± σ): 137.7 ms ± 3.3 ms
Time (mean ± σ): 138.6 ms ± 4.5 ms [User: 251.7 ms, System: 18.0 ms]
Range (min … max): 131.8 ms … 144.2 ms
Range (min … max): 133.4 ms … 146.9 ms
Benchmark #2: optipng -simulate ./tests/files/rgb_16_should_be_grayscale_8.png
Time (mean ± σ): 293.7 ms ± 7.0 ms
Time (mean ± σ): 286.3 ms ± 4.0 ms [User: 286.4 ms, System: 0.7 ms]
Range (min … max): 286.0 ms … 310.2 ms
Range (min … max): 280.6 ms … 296.0 ms
Benchmark #1: ./target/release/oxipng -o4 -P ./tests/files/rgb_16_should_be_grayscale_8.png
Time (mean ± σ): 255.6 ms ± 5.3 ms
Time (mean ± σ): 225.1 ms ± 6.1 ms [User: 735.0 ms, System: 30.3 ms]
Range (min … max): 245.7 ms … 261.1 ms
Range (min … max): 216.8 ms … 240.5 ms
Benchmark #2: optipng -o 4 -simulate ./tests/files/rgb_16_should_be_grayscale_8.png
Time (mean ± σ): 1.001 s ± 0.013 s
Time (mean ± σ): 969.1 ms ± 10.2 ms [User: 967.7 ms, System: 1.6 ms]
Range (min … max): 0.982 s … 1.017 s
Range (min … max): 954.4 ms … 985.8 ms