shssoichiro / oxipng

Multithreaded PNG optimizer written in Rust
MIT License
2.95k stars 125 forks source link

Show eval sort method in verbose output #604

Closed andrews05 closed 7 months ago

andrews05 commented 7 months ago

This changes verbose output logging to show the palette sort method used for eval trials. Additionally it changes the line "Reducing image to..." to "Transformed image to..." to be more correct. Example output:

Eval: 8-bit Indexed (luma sort)     None       6495 bytes
Eval: 8-bit Indexed (luma sort)     Bigrams    6133 bytes
Eval: 8-bit Indexed (battiato sort) None       6607 bytes
Eval: 8-bit Indexed (battiato sort) Bigrams    6441 bytes
Eval: 8-bit Indexed (mzeng sort)    None       6410 bytes
Eval: 8-bit Indexed (248 colors)    None       6478 bytes
Eval: 8-bit Indexed (248 colors)    Bigrams   >6133 bytes
Eval: 8-bit Indexed (mzeng sort)    Bigrams    6045 bytes
Transformed image to 8-bit Indexed (248 colors), non-interlaced

Note the sort method is not known after evaluations are complete, so it can't be shown in any later lines. In the above example we know it selected the mzeng sort because it's smallest.

andrews05 commented 7 months ago

@AlexTMjugador Shall we do a 9.1 release after this? [edit]: Actually maybe we should do the deb packaging first...

andrews05 commented 7 months ago

After doing .deb packaging I think it'd be sensible to move forward with the new release, although it itches me a bit that I didn't have the bandwidth to fix the small Zopfli regression yet. From your empirical observations, how important do you think that regression is?

Not super important. Certainly not enough to hold back a release - the regression can be investigated any time.