Josh Holmer
9408a50b1b
Version 2.2.2
2019-07-03 19:21:21 -04:00
Josh Holmer
b2364d2398
Update dependencies
2019-07-03 19:14:42 -04:00
Kamal Ahmad
34ee78dbbc
Preallocate memory in reduced_alpha_to_up ( #180 )
2019-06-27 13:44:49 -04:00
Felix Hanau
56b94542a6
Fix decoding interlaced images with height or width <= 2 ( #175 )
2019-06-27 13:44:34 -04:00
Felix Hanau
c09e8f6d12
Make filter, zlib level and strategy deterministic ( #179 )
2019-06-27 10:05:35 -04:00
Hugo Locurcio
5b5aeaa683
Enable link-time optimization for release builds ( #177 )
...
This creates faster and smaller binaries, at the cost of longer
build times.
2019-06-26 09:09:26 -04:00
Josh Holmer
c60bd82da7
Add test case for #171
2019-06-20 14:07:47 -04:00
Josh Holmer
9d8ce5e4ee
Disable large image test for 32-bit systems
...
Closes #176
2019-06-20 13:38:59 -04:00
Josh Holmer
458e9f64a7
Fix --strip safe which was broken in 5b1121c9d
2019-06-19 15:27:43 -04:00
Josh Holmer
3809421de7
Use image 0.21.2 with bugfixes from crates.io
2019-06-19 15:21:41 -04:00
Josh Holmer
5b1121c9dd
Make order of chunks deterministic by sorting chunks
...
Closes #174
2019-06-18 13:29:17 -04:00
Felix Hanau
5dcfe44ccd
Fix info message and typos ( #172 )
2019-06-18 13:06:37 -04:00
Felix Hanau
cc290c0bdb
Fixes for grey scale reduction ( #171 )
2019-06-18 13:04:26 -04:00
Josh Holmer
9c6190c1ff
Version 2.2.1
2019-03-26 14:19:34 -04:00
Josh Holmer
7bd7c0cfc9
Bump image crate to handle large images
...
Closes #167 and #168
2019-03-26 14:14:01 -04:00
Josh Holmer
b18414ba8c
Fix display of benchmarks in README ( #165 )
2019-02-04 10:03:58 -05:00
Josh Holmer
6430166ec9
Add to changelog as well [ci skip]
2019-02-01 17:59:15 -05:00
Josh Holmer
c7da7f2073
Bump minimum supported Rust version
2019-02-01 17:58:24 -05:00
Josh Holmer
bd6e7dbbb1
Version 2.2.0
2019-02-01 17:30:16 -05:00
Josh Holmer
d86bc80f43
Prepare for next release
2019-02-01 17:27:03 -05:00
Kornel
485a127cf6
Remove Mutex from evaluation loop ( #163 )
2019-02-01 17:03:25 -05:00
Josh Holmer
c92b03d908
Remove unused features
2019-02-01 16:42:00 -05:00
Kornel
dad6230cf1
Check timeout more often during compression ( #160 )
2019-02-01 16:30:47 -05:00
Kornel
33890cf0fd
Fake Rayon ( #162 )
...
Dummy implementation of Rayon's traits to avoid `#[cfg()]` and duplicated non-parallel code.
2019-01-28 13:35:42 -05:00
Kornel
0d4a9e06d6
Avoid using excessive number of threads ( #161 )
2019-01-27 04:15:41 -05:00
Kornel
9af874d21b
Make reductions return a new uncompressed image ( #158 )
...
* Fix verbose message
* No cloning when restoring original data
* Make reductions return a new uncompressed image
Partially fixes #145
* Async reduction evaluator
* Assert
* Faster bit depth check
* Also try 4-bit depth for small-depth images
* Skip test when using miniz
* Ensure palette is trimmed after depth reduction
Fixes #159
* Fudge factor for reductions to prefer better reductions even if gzip estimation says otherwise
2019-01-27 03:22:49 -05:00
Kornel
55d85df9fc
Non-self-mutable reductions ( #154 )
...
* Move reductions to a module. Make copy instead of changing in-place.
* Alpha reductions
* Immutable color reductions
* Immutable interlace reductions
2019-01-12 05:07:57 -05:00
Josh Holmer
d91fc890cd
2.1.8
2018-12-02 00:14:43 -05:00
Josh Holmer
918c52eed8
Fix more nonstandard sBIT headers
...
Closes #153
2018-12-02 00:13:30 -05:00
Josh Holmer
7594ec632b
Add test file
2018-12-01 22:32:29 -05:00
Josh Holmer
565d08ed72
Version 2.1.7
2018-11-27 22:34:58 -05:00
Joshua Holmer
1305b5cf17
Fix clippy lints and run rustfmt
2018-11-26 13:41:14 -05:00
Joshua Holmer
041c433ccb
Handle non-standard sBIT headers
...
Closes #141
2018-11-26 13:10:21 -05:00
Kornel
ff7a9547c3
Nicer wrapper for cfzlib ( #149 )
2018-11-25 03:29:30 -05:00
Kornel
602cd6991e
80× faster palette reduction ( #150 )
...
* Faster palette reduction
* Simplified iterator
* Mutable scanline iterator
2018-11-25 01:31:43 -05:00
Kornel
686adcdebd
Optimize RGB/A to palette conversion ( #148 )
2018-11-22 21:52:02 -05:00
Kornel
588d5bd52b
Tweaks and Microoptimizations ( #146 )
...
* Fixed alpha benchmark
* Dedupe function
* Use integer math when rounding
* Fewer temporaries when slicing palette
* Filtering microoptimizations
2018-11-20 08:39:46 -05:00
Josh Holmer
d82406a959
Version 2.1.6
2018-11-17 18:02:16 -05:00
Kornel
4765eaa7f3
Alpha heuristic improvements ( #144 )
...
* Compress alpha with strategy sensitive to repetitions
* Update reductions flag when alpha changed
* Avoid needlessly cloning out-of-date idat_data and temp raw_data
2018-11-14 08:30:15 -05:00
Kornel
96eda85806
Identify and drop useless sRGB profiles ( #143 )
2018-11-13 14:37:02 -05:00
Joshua Holmer
88035ccbae
Version 2.1.5
2018-10-11 08:41:11 -04:00
Joshua Holmer
87e738dda2
Fix incorrect detection of images that can reduce bit depth
...
Closes #140
2018-10-11 08:29:48 -04:00
Josh Holmer
903f962f29
Version 2.1.4
2018-09-28 21:05:58 -04:00
Josh Holmer
a4e0a34357
Bump version to 2.1.3
2018-09-16 23:21:51 -04:00
Kornel
3c466df80e
Chunk name as 4 bytes ( #135 )
2018-09-16 16:09:55 -04:00
Josh Holmer
edd4966cea
Fix compilation error on i686 due to cfzlib incompat ( #138 )
...
Closes #137
2018-09-16 14:43:08 -04:00
Kornel
72393d06c9
Parallel loading ( #136 )
...
* Parallel loading
* Avoid vec allocation per pixel
2018-09-15 17:30:53 -04:00
Josh Holmer
df07d10a5c
Version 2.1.2
2018-08-11 23:35:57 -04:00
Josh Holmer
bb1737928e
Fix RGB to Indexed reduction if transparency pixel exists
...
Closes #129
2018-08-11 23:33:55 -04:00
Josh Holmer
7895e42687
Version 2.1.1
2018-08-11 20:34:04 -04:00