You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Although undefined color space conversion should result in an error, the error message is not helpful.
julia>using ColorTypes
julia>struct MyColor{T} <:Color{T, 3}; c1::T; c2::T; c3::T; end
julia>convert(RGB, MyColor{Float32}(1, 2, 3)) # without Colors.jl
ERROR: No conversion of MyColor{Float32}(1.0f0,2.0f0,3.0f0) to RGB{Float32} has been defined
julia>using Colors
julia>convert(RGB, MyColor{Float32}(1, 2, 3)) # with Colors.jl
ERROR: StackOverflowError:
A fix for this issue could theoretically affect downstream packages. However, given that there have been no issue reports on this so far, I think it can be included in the v0.12 series as a bug fix in practice.
The text was updated successfully, but these errors were encountered:
This is due to the circular calls between the conversion to RGB and the conversion to XYZ.
From the viewpoint of color management, I think the conversion to XYZ should be implemented preferentially over the conversion to RGB, but in actual cases where the stack overflow is a problem, the conversion to RGB seems to be defined preferentially.
Also, due to historical reasons, we currently limit the conversion source to Color3, but I think this should be more generalized.
Although undefined color space conversion should result in an error, the error message is not helpful.
A fix for this issue could theoretically affect downstream packages. However, given that there have been no issue reports on this so far, I think it can be included in the v0.12 series as a bug fix in practice.
The text was updated successfully, but these errors were encountered: