Version bump for updating palette
to 0.7
.
Users will need to change calls using
palette::Pixel::{from_raw_slice, into_raw_slice}
to palette::cast::{from_component_slice, into_component_slice}
for preparing
the input image buffer. See the documentation or lib.rs
file for examples.
#52 - Upgrade palette to 0.7, bump crate version to 0.6, update CI/CD workflow
Version bump for updating palette
to 0.6
.
No changes to library code.
#49 - Update metadata for 0.5 release; CI/CD, clippy, and image
fixups
#44 - Upgrade palette
to 0.6, fix clippy lints, image
function fixups
Version bump for updating the rand
dependency to 0.8. No major API changes.
Minor change to Sort::sort_indexed_colors
which now takes &[Self]
instead of
&Vec<Self>
in the trait definition.
#41 - Prepare metadata for 0.4.0 release, small fixups
#40 - Update crate version to 0.4.0, rand to 0.8, rand_chacha to 0.3
An upstream package was changed which prevented the crate from building when installing with cargo from crates.io.
#36 - Upgrade image to 0.23.11, bump to crate version 0.3.4
#32 - Move color impls to their own module, add lints
Added transparency support to the find
sub-command. This will now work like
the main command where transparent pixels are disregarded for the k-means
calculation. Upstream dependencies have been updated, notably reading in PNG
images should have improved performance for the binary.
#27 - Add transparency support for find/replace
#26 - Update dependencies
#25 - Refactor out raw array indexing in favor of iterators
Bug fix for k-means++ to avoid divide by zero errors and panics with rand.
#23 - Fix bugs introduced by switch to kmeans++
Major performance improvements in the form of algorithmic optimization. Hamerly's algorithm was added which allows for skipping the calculation of many distance checks. kmeans++ initialization was also added which provides better initialization for centroids and generally higher quality results. Because of kmeans++, the results produced by this version will not match the previous implementation exactly but performance will be drastically improved.
#20 - Implement kmeans++ for better centroid initialization
#18 - Implement Hamerly's algoirthm for Lab and Srgb
#16 - Add metadata for docs.rs, allow other Lab white points
This update completes the refactor into a more generic, reusable library crate, and marks the first "stable" unstable release. The next breaking change release will occur after the color dependency has been updated, which will bring better performance to color and format conversions.
- Heavy dependencies have been made optional.
- Changes in the API should be much smaller.
- Binary performance has been improved due to the refactor.
#13 - Rethink MapColor trait, add transparency support
#12 - Deduplicate code in palette file saving [BIN]
#11 - Move map_indices_to_centroids
to its own trait
#10 - Make palette
an optional feature, update docs
#09 - Reimplement kmeans with generics
#08 - Fix indexing error for proportional palettes [BIN]
#06 - Bump to version 0.2.0
#05 - Output color palette as image [BIN]
#03 - Refactor crate into library with bin folder
- Initial Commit