Rémi Lauzier
91a18ebe97
Fix some clippy warnings
2021-06-24 15:57:41 -04:00
Ingvar Stepanyan
23ae9c302f
Switch to standard logging library ( #218 )
...
This allows to configure or compile away logging in the library from a single place in Rust apps.
For the CLI side, the usage and output remained the same, except it's now colour-coded.
Fixes #217 .
2020-04-18 18:33:48 -04:00
Ingvar Stepanyan
878bbedb37
Improve performance consistency ( #202 )
...
* Improve performance consistency
Switch from HashMap / HashSet to IndexMap / IndexSet for consistent iteration order of various options and, as a result, more predictable performance.
2020-03-31 21:54:05 -04: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
Josh Holmer
d110949d2a
Version 2.0.0
2018-07-20 19:19:20 -04:00
Kornel
c99b3778b2
Expose only one internal module specifically for tests ( #123 )
...
Closes #98
2018-07-17 23:38:11 -04:00
Kornel
cb52d8466a
Reading from stdin ( #118 )
2018-07-12 07:54:06 -04:00
Kornel
ebf541219c
DRYyer tests ( #117 )
2018-07-10 22:38:49 -04:00
Kornel
55a095d536
Enum for stdout writing flag ( #110 )
2018-07-10 18:41:06 -04:00
Kornel
e83762d3b1
Remove deprecated Error::description ( #109 )
2018-07-06 07:26:49 -04:00
Josh Holmer
e3ba535a79
Add some changes and fixes around how the output file is handled
...
See changelog for details
2018-01-10 20:54:15 -05:00
Josh Holmer
88f5bb0931
Hide modules from documentation, and only export structs used in options or return types
2018-01-10 10:37:01 -05:00
Josh Holmer
413f1aac7c
Automatically change transparent pixels to black
2017-07-24 08:47:27 -04:00
Josh Holmer
d18850ebab
Ignore color reductions that would increase file size
...
Closes #61
2017-03-08 10:11:13 -05:00
Josh Holmer
6c8e7d253d
Verify images are correct before outputting them, and fix a bug in certain images
...
Closes #60
2017-03-06 20:16:28 -05:00
Josh Holmer
44818a854b
Fix two bugs in reducing palette and release version 0.14.2
2017-02-22 15:45:46 -05:00
Josh Holmer
d99db3ad23
Convert results to return a PngError
...
Closes #44
2016-08-16 12:38:09 -04:00
Josh Holmer
fa2b5c4ae5
Remove conversion from palette to grayscale
...
Closes #45
2016-07-26 12:32:43 -04:00
Josh Holmer
7f9ad263ec
Refactor code into modules
2016-07-14 11:10:10 -04:00
Joshua Holmer
ecc19ad5cd
Fix bug where interlaced images with certain widths would fail to optimize
2016-05-13 22:11:45 -04:00
Joshua Holmer
3a39b13acf
Add option for changing number of threads at runtime
...
Closes #39
2016-05-04 10:37:45 -04:00
Joshua Holmer
a84611c9ae
Replace appropriate uses of assert! with assert_eq! in test suite
2016-05-03 08:03:25 -04:00
Joshua Holmer
a4a5953786
Implement --fix to fix CRC errors in PNG block headers
...
Closes #5
2016-05-02 09:25:48 -04:00
Joshua Holmer
2974bbbee3
Fix issue with very small images [ci skip]
2016-04-04 11:06:00 -04:00
Joshua Holmer
5740867be5
Work on implementing interlacing [ci skip]
2016-03-29 22:44:21 -04:00