Skip to content

Releases: facelessuser/coloraide

2.10

12 Sep 13:26
Compare
Choose a tag to compare

2.10

  • NEW: Declare official support for Python 3.12.
  • NEW: Color.steps and Color.discrete now accept delta_e_args to allow configuring the underlying distance
    algorithm when using the delta_e option.
  • NEW: CIE Lab, both D50 and D65, are now derived from a CIELab class. CIE LCh, both D50 and D65, are also
    now derived from a CIELCh class. This makes it easy to determine a CIE Lab or CIE LCh space from other Lab-like
    spaces.
  • NEW: ∆E^*^76, ∆E^*^94, ∆E^*^00, and ∆E^*^cmc all accept a new parameter called space which allows
    the user to specify a registered Lab color space name (one that is derived from the CIELab class) to use as the
    distancing color space. This allows a user to use D50 Lab (or any other variant) for distancing if required.
  • FIX: For consistency, ∆E^*^94 and ∆E^*^cmc now use Lab D65 by default just like ∆E^*^76 and
    ∆E^*^00. This fixes an issue where the docs indicated that they use D65, but in actuality they were using D50.

2.9.1.post1

28 Aug 15:34
Compare
Choose a tag to compare

2.9.1.post1

  • FIX: Fix incorrect changelog mention of recent fix being for HSL instead of HWB.

2.9.1

28 Aug 15:13
Compare
Choose a tag to compare

2.9.1

  • FIX: Average should allow controlling powerless be disabled by default for backwards compatibility.
  • FIX: HWB should use the algorithm defined in CSS that allows for round tripping even in the negative lightness
    direction. Previously we were converting directly from HSV.

2.9

23 Aug 16:19
34739c6
Compare
Choose a tag to compare
2.9

2.9

  • NEW: Add HWBish mixin class.
  • NEW: Deprecate algebra.no_nan(), algebra.no_nans(), and algebra.is_nan().
  • NEW: When averaging in a cylindrical space, always treat achromatic hues as powerless for better results.
  • NEW: Add experimental support for CSS "powerless" hue handling and carrying-forward in interpolation, both
    disabled by default.
  • FIX: Fix RLAB conversion.
  • FIX: Fix clipping of hues.
  • ENHANCE: Tweaks to some matrix calculations.
  • ENHANCE: Various performance related tweaks.

2.8

13 Aug 17:16
Compare
Choose a tag to compare
2.8

2.8

  • NEW: Add Cubehelix color space.
  • NEW: When precision is set to -1 for string output, double precision (17) will be assumed.
  • ENHANCE: More robust and generally better matrix inverse. Related inverse matrices have been regenerated for
    consistency.

2.7.1

06 Aug 16:57
9bfc9df
Compare
Choose a tag to compare

2.7.1

  • FIX: Fix issue where harmony would convert some colors to cylindrical spaces and not properly consider order
    of channels.
  • FIX: XYB, while Lab like in its default configuration, has such a large disparity in the non-lightness
    components that the ranges for them should not be the same when using percentages.
  • FIX: Lab like space mixins should not try and order a and b like coordinates when calling indexes(), but
    should return them in there current order with lightness first. The meaning of these components can be different
    enough for a given color space to make normalizing their ordered configuration meaningless and alter inherit hue
    direction when processing for harmony.

2.7

05 Aug 13:51
Compare
Choose a tag to compare
2.7

2.7

  • NEW: Add new RYB color space.
  • NEW: Add Regular mixin class for normal, 3 channel color spaces (sRGB, CMY, RYB, etc.).
  • NEW: harmony() can now accept and transform Labish and Regular color spaces to cylindrical spaces.

2.6

27 Jul 02:35
Compare
Choose a tag to compare
2.6

2.6

  • NEW: Add padding parameter to limit color scales when interpolating.

2.5

22 Jul 20:08
Compare
Choose a tag to compare
2.5

2.5

  • NEW: Add new discrete() function that creates a discrete interpolation object.
  • NEW: Deprecate coloraide.algebra.apply function in favor of new vectorize functions.
  • FIX: Fix small typing issue.
  • FIX: Tweaks to Oklab 64 bit matrix precision.
  • FIX: Fix prismatic and cmyk achromatic check logic.
  • FIX: Ensure IPT uses the exact white point as documented in the paper.
  • FIX: Fix various corner cases of algebraic functions and implement some performance improvements.

2.4

27 Jun 23:48
Compare
Choose a tag to compare
2.4

2.4

  • NEW: Add Rec. 709 RGB color space.
  • NEW: Add the 1960 UCS color space.
  • NEW: Add correlated color temperature support with new cct() and blackbody() API.
  • NEW: Add support for Robertson 1968 and Ohno 2013 CCT plugins.
  • NEW: Add support for determining if a color is in the Pointer Gamut and provide a way to clamp a color to the
    gamut.
  • NEW: Include CMFS: CIE 1931 2 Degree Standard Observer, CIE 1964 10 Degree Standard Observer, CIE 2015 2 Degree
    Standard Observer, and CIE 2015 10 Degree Standard Observer.
  • NEW: Add split_chromaticity() method which will split a color into its chromaticity and luminance parts.
  • NEW: Add chromaticity() which will create a new color from a given set of chromaticity coordinates.
  • NEW: Relax chromatic_adaptation() type requirement of white point chromaticity inputs.
  • NEW: luminance(), xy(), and uv() all now accept an optional white point via the white parameter to
    control the white point in which the returned values are relative to. luminance() still defaults to D65 but will
    use the current color's white point, like xy() and uv() if white is set to None.
  • NEW: white() now accepts a positional parameter allowing it to output the white point of the current color
    as various chromaticity coordinates in addition to the default XYZ coordinates.
  • FIX: Fix case where deregistering all plugins with * was not deregistering Filter plugins.