Coloraide

Latest version: v3.3.1

Safety actively analyzes 623075 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 18

3.3.1

- **FIX**: Ray trace gamut mapping algorithm will better handle perceptual spaces like CAM16 and HCT which have
atypical achromatic responses. This prevents unexpected cutoff close to white.
- **FIX**: Fix some documentation examples regarding gamut mapping in HCT.

3.3

- **NEW**: Extend the `Cylindrical` mixin class to expose `radial_name()` and `radial_index()` on the color space to
return the default name or default index of the radial coordinate in polar color spaces. It also exposes
`is_polar()` as a simple check to see if the space uses polar coordinates.
- **NEW**: Euclidean distance algorithm will now handle cylindrical color spaces by converting the polar coordinates
to rectangular coordinates in order to return sensible results.
- **NEW**: Allow specifying number of colors to return for monochromatic harmony. When fewer are specified, allow them
to be spaced further apart for better contrast.
- **FIX**: Handle unexpected undefined values in Euclidean distance.

3.2

- **NEW**: Add `zcam-jmh` color model.
- **NEW**: Previously, color spaces such as `cam16-jmh`, `cam16-ucs`, `jzczhz`, etc. would handle achromatic values
absolutely, based on XYZ with the specified white point which could result in values with non-zero chroma. Now they
will be handled relative to the space, meaning colors will be considered achromatic when they are close to zero
chroma. What is considered achromatic is affected by the adapting luminance and other environmental settings.
This simplifies logic making it faster and also easier for users to subclass with their own environmental settings.
- **NEW**: Normalize how color spaces with special viewing conditions are configured. Document configuring viewing
conditions of color models where applicable.
- **NEW**: Add new `space` parameter in `cam16` ∆E method to replace the now deprecate `model` parameter. `space` is
more flexible as users can now create CAM16 UCS spaces with different lighting environments and specify them
instead.
- **NEW**: Remove previously deprecated CAM16 Jab implementation. Use `cam16-ucs` instead.
- **NEW**: Interpolation will now gracefully handle a list of a single color causing the interpolation to just return
the single color.
- **NEW**: More helpful interpolation errors will raise for an empty list.
- **NEW**: Generic ray trace gamut mapping now has a new `pspace` parameter that can be used to specify a perceptual
space in either LCh-ish or Lab-ish form. `lch` parameter is now deprecated, but currently still present, but
`pspace` will take priority if both are defined.
- **NEW**: Rename `algebra.npow` to `algebra.spow` (signed power). `algebra.npow` is now deprecated and will be
removed at some future time.
- **FIX**: Don't force space to clamp negative XYZ when they are absolutizing them in some spaces.
- **FIX**: Ensure ST2084 EOTF implements the `max` step as specified in the spec.

3.1.2

- **ENHANCE**: Further improvements to both speed and accuracy of ray trace gamut mapping.
- **FIX**: Handle gamut mapping HDR spaces via ray trace more sanely.

3.1.1

- **ENHANCE**: Improved performance of ray tracing gamut mapping algorithm.
- **FIX**: Fix corner cases for detecting ray trace hits on gamut.

3.1

- **NEW**: Increase accuracy of the experimental ray tracing gamut mapping algorithm.
- **NEW**: Add generic gamut mapping algorithm that employs ray tracing method that can be used with any LCh
perceptual space.
- **NEW**: Ray tracing gamut mapping algorithm parameter `traces` will no longer do anything as the approach no longer
has variable passes after new accuracy enhancements.
- **FIX**: Jzazbz bug was fixed that would result in a divide by zero failure.

Page 1 of 18

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.