From d1abda4af94f05f858eaa9f0cb75784624076416 Mon Sep 17 00:00:00 2001 From: Beinsezii Date: Wed, 3 Jul 2024 20:58:00 -0700 Subject: [PATCH] Add CHANGELOG.md to track breaking changes --- CHANGELOG.md | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 CHANGELOG.md diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..fd0e2fd --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,10 @@ +# 0.10.0 +## BREAKING + - Most functions can now take 4 channels instead of 3 channels. While the compiler can usually infer which to use, you may have to manually annotate in some scenarios. This lets you directly process images with an alpha channel without splitting the data into separate streams + - The external C functions have all been renamed to monotyped versions of the generics. The naming scheme is `generic_name_NDtype` where `N` is the channel count (3 or 4) and DType is currently either `f32` or `f64`. So the prior `xyz_to_oklab` now becomes `xyz_to_oklab_3f32` + +## IMPROVEMENTS + - Many functions are 10-50% faster due to optimized algorithms, particularly fast cube root. + - Fast cube root is only different by an extremely tiny fraction + - Some integer functions are now stable in `const` + - `srgb_to_irgb` now properly rounds before casting