All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- added: Add
struct:CorePalettes
- added: Add unit tests for
struct:SchemeContent
- added: Add unit tests for
struct:SchemeExpressive
- added: Add unit tests for
struct:SchemeFidelity
- added: Add unit tests for
struct:SchemeFruitSalad
- added: Add unit tests for
struct:SchemeMonochrome
- added: Add unit tests for
struct:SchemeNeutral
- added: Add unit tests for
struct:SchemeRainbow
- added: Add unit tests for
struct:SchemeVibrant
- changed: Deprecate
struct:CorePalette
- changed: Update
struct:MaterialDynamicColors
to use the expressive on-colors spec - changed: Update
struct:TonalPalette
to use new key color algorithm
- fixed: Fix markdown in
README
- added: Add badges to the
README
- added: Add the Features, Status of no-std & License headings to the
README
- added: Add compile errors for
std
withlibm
&no_std
withoutlibm
- fixed: Fix HEX color example in
README
- changed: Move to dual-license to be compatible with the Rust project
- changed: Make all math operations on floating point numbers use their equivalent in
trait:FloatExt
for compatibility withno_std
environments
- added: Add support for
no_std
environments - added: Add
surface_tint
color - added: Add MSRV in
README
- changed: Code cleanup, imports organizing
- changed: Now the use of
image
feature requiresstd
feature - changed: Update dependencies
image
:v0.25.1
->v0.25.2
serde
:v1.0.203
->v1.0.204
- changed: Update dev-dependencies
reqwest
:v0.12.4
->v0.12.5
tokio
:v1.37.0
->v1.39.2
- changed: Remove
image
from dev-dependencies - changed: Update tests
-
added: Add tests for:
mod:blend
mod:contrast
mod:dislike
mod:dynamic_color/dynamic_scheme
mod:dynamic_color
mod:hct/cam16
mod:hct
mod:hct/viewing_conditions
mod:palette/core
mod:palette/tonal
mod:quantize/quantizer_celebi
mod:quantize/quantizer_wsmeans
mod:quantize/quantizer_wu
mod:scheme/content
mod:utils/math
-
changed: Allow
clippy:while_float
lint -
fixed: Fix stack overflow in
struct:QuantizerWu
creation -
fixed: Fix
func:on_secondary_container
instruct:MaterialDynamicColors
-
fixed: Fix
func:critical_plane_below
andfunc:critical_plane_above
instruct:HctSolver
-
fixed: Fix
clippy:doc_lazy_continuation
lint inmod:hct/solver
andmod:palette/tonal
- added: Add tests for
mod:color
- changed: Change type of
arg:max_colors
intrait:Quantizer
'sfunc:quantize
fromi32
tousize
; - changed: Rewrite
struct:QuantierWsmeans
inmod:quantize/quantizer_wsmeans
; - changed: Rewrite
struct:QuantierWu
inmod:quantize/quantizer_wu
; - fixed: Fix color extraction from images (FULLY)
- fixed: Fix color extraction from images (PARTIALLY)
- breaking: Move the functions within
mod:theme
into structs for a more idiomatic approach - breaking: Update exports
- breaking: Apply more strictly Clippy lints
- breaking: Replace
func:from_source_color
instruct:Theme
withstruct:ThemeBuilder
- breaking: Replace
struct:ParseRgbError
withenum:Error
ParseRGB
variant inmod:error
- breaking: Replace
func:as_hex
instruct:Argb
withfunc:to_hex
andfunc:to_hex_with_pound
- breaking: Rename
mod:palettes
tomod:palette
- added: Add
CHANGELOG
- added: Add documentation above
struct:Argb
- added: Add
check
job toactions:CI.yml
- added: Implement tests from C++ for
mod:scheme
,mod:score
andmod:temperature
- changed: Rename
actions:tests.yml
toactions:CI.yml
- changed: Rename
build
job totest
inactions:CI.yml
- changed: Remove unnecessary comments about warnings count from the
README
- changed: Update tests
- changed: Update examples in
README
- changed: Update dependencies
- fixed: Restore
trait:Serialize
onstruct:Argb
and implement it for a new color types
- breaking: Introduce new structures in
mod:utils/color
as a replacement for the color type aliases - breaking: Merge
mod:utils/string
intomod:utils/color
- breaking: Rewrite
mod:utils/image
for usingimage
crate - breaking:
mod:utils/image
is now optional and available with theimage
feature - added: Add support for the serde with the
serde
feature - changed: Update dependencies
- changed: Update tests
- fixed: Fix
func:secondary_container
instruct:MaterialDynamicColors
- added: Implement
trait:IntoIterator
for thestruct:Scheme
- fixed: Fix incorrect proportion calcuation in
mod:score
- fixed: Update the description of
struct:Random
inmod:utils/random
- added: Add partial LCG algorithm implementation in
mod:utils/random
- changed: Remove small F.A.Q. from
README
- changed: Now functions in
mod:utils/color
andmod:utils/string
require only references to colors - fixed: Fix how cluster indicies fill in
struct:QuantizerWu
- fixed: Fix sorting of scored colors in
mod:score
- added: Add a test for the image color extraction
- changed: Cleanup code in quantizers
- changed: Remove random color filling from
struct:QuantizerWsmeans
- changed: Update constants in
struct:QuantizerWu
- changed: Update
func:get_index
instruct:QuantizerWu
- changed: Add a warning for the image color extraction example in
README
- fixed: Update broken example of extracting colors from image in
README
- fixed: Replace
struct:HashMap
withstruct:IndexMap
- fixed: Fix different palettes for the same image
- fixed: Fix
func:sanitize_degrees_int
inmod:utils/math
- breaking:
func:source_color_from_image
now accepts an ARGB color array instead of a byte array - fixed: Change visibility in
struct:QuantizerWsmeans
- fixed: Fix some issues with integers in
struct:QuantizerWu
andmod:score
- added: Add a small F.A.Q. about std to
README
- changed: Update for visibility for a lot of mods, structs, functions, etc.
- fixed: Fix incorrect code highlighting of examples in
README
- fixed: Update to a valid license