Re: [csswg-drafts] [css-color-4] What if legacy colors *also* interpolated in Oklab by default? (#7948)

The CSS Working Group just discussed `[css-color-4] What if legacy colors *also* interpolated in Oklab by default?`.

<details><summary>The full IRC log of that discussion</summary>
&lt;emeyer> chris: We resolved but we got some pushback on github; people thought we were too hasty and they were worried about backward compatibility<br>
&lt;lea> q+<br>
&lt;emeyer> …The current issue is, are we sticking with our original resolution, are we backpedaling on it, will there be an origin trial?<br>
&lt;fserb> q+<br>
&lt;emeyer> lea: My recollection is we didn’t just resolve to use okLAB everywhere, we resolved to explore the potential implications<br>
&lt;emeyer> Rossen: I would be surprised if people are pushing back on us being more careful<br>
&lt;fantasai> the resolution definitely wasn't worded that way...<br>
&lt;emeyer> fserb: I don’t think this was well captured on the issue; that wasn’t my understanding<br>
&lt;emeyer> …Is this too much for an origin trial?  It feels like it has the potential to break sites in weird ways<br>
&lt;emeyer> …There’s not firm ground here<br>
&lt;emeyer> …It felt a little bit too much, even for an origin trial, because there are expectations of what colors look like<br>
&lt;lea> q+<br>
&lt;emeyer> Rossen: Origin trials are the best way we have to test safely<br>
&lt;emeyer> …Anything we introduce can have the effect of changing things in ways authors don’t expect<br>
&lt;emeyer> …If this is an extension of an existing features, there are different risks that can be taken<br>
&lt;emilio> q+<br>
&lt;emeyer> …But anything introduced generally needs an origin trisl to make sure we don’t upset expectations<br>
&lt;Rossen_> q?<br>
&lt;emeyer> …This doesn’t seem too heavy in terms of trial<br>
&lt;emeyer> dbaron: I don’t think this is the sort of thing origin trials are good at<br>
&lt;emeyer> …Trials are good for things like PIAs<br>
&lt;emeyer> …This is making a change that might be a compatbility problem that might break sites<br>
&lt;emeyer> s/PIAs/APIs/<br>
&lt;lea> wouldn't deploying the change on beta/canary channels address this?<br>
&lt;emeyer> …There is the concept of a reverse origin trial, but I think that’s useful when we’re more strongly committed to making breaking change but might need a bumpy rollout<br>
&lt;Rossen_> ack dbaron<br>
&lt;emeyer> …I didn’t get the sense we were that committed to it<br>
&lt;fserb> +1 to what dbaron said<br>
&lt;emeyer> emilio: I agree with fserb<br>
&lt;emeyer> s/fserb/dbaron/<br>
&lt;Rossen_> ack emeyer<br>
&lt;Rossen_> ack emilio<br>
&lt;emeyer> …In general, an origin trial seems do-able, but I was going to ask if this has to be an origin trial as we know them<br>
&lt;emeyer> lea: Would deploying on beta or canary channels address this?<br>
&lt;fserb> q+<br>
&lt;emeyer> …In my experience, when authors do gradients, they have expectations about the color stops, not what’s between the stops<br>
&lt;emeyer> …Also, how does a reverse origin trial work?<br>
&lt;emeyer> iank_: Generally it’s when we’re making a known breaking change, and we want time to roll it out<br>
&lt;emeyer> …An origin can opt out while they work to fix their site<br>
&lt;Rossen_> q?<br>
&lt;emeyer> …Generally only used when we really really want to do something, as they can drag on for quarters or years<br>
&lt;Rossen_> ack lea<br>
&lt;Rossen_> ack fserb<br>
&lt;chris> q?<br>
&lt;emeyer> fserb: I agree authors usually don’t want a particular value outside stops, but the gradients are different enough that even the stops can look odd<br>
&lt;emeyer> …Colors could get darker or lighter than expected<br>
&lt;emeyer> fantasai: I support Lea’s too points: the best way is to roll out through beta channels and collected feedback, and also that changing interpolation isn’t nearly as bad as changing stops<br>
&lt;emeyer> …Authors who really care about the interpolation tend to add color stops to force them<br>
&lt;lea> +1 fantasai<br>
&lt;chris> I agree that if a specific matching color is relied on, there will be a color stop there<br>
&lt;emeyer> …We have to consider cases where this will make things better, not just those where things will be worse<br>
&lt;emeyer> …We expect this change to make the web better overall<br>
&lt;emeyer> Rossen_: Is there anything we need to do about the previous resoluion?<br>
&lt;lea> q+<br>
&lt;emeyer> chris: Do we stick the previous resolution in the spec, or put it in with caveats?<br>
&lt;emeyer> lea: In theory, fserb’s point about breakage is possible if not likely, but we should explore that<br>
&lt;emeyer> …It sounds to me like we have consensus that we should do this, but perhaps we should make the resolution more explicit that we want to explore this<br>
&lt;emeyer> Rossen_: I agree with you there<br>
&lt;Rossen_> ack lea<br>
&lt;emeyer> fantasai: If we’re not going to do this, then we can’t put it in the specification, so we need an implementor to say they’re willing to do it<br>
&lt;fserb> q+<br>
&lt;emeyer> Rossen_: Any implementor interest?<br>
&lt;lea> How could implementors be interested in testing this if we have no idea *how* to test? They cannot commit to an unknown amount of work<br>
&lt;lea> Op, I guess I was wrong :)<br>
&lt;emeyer> emilio: It should be relatively easy to prototype and test out<br>
&lt;fantasai> Release it in beta, and see what happens<br>
&lt;fantasai> If there aren't lots of bugs reported, then we should be fine to release more broadly<br>
&lt;emeyer> fserb: I’d like to see a way to measure the impact of this<br>
&lt;lea> q?<br>
&lt;lea> q+<br>
&lt;emeyer> …How would we extrapolate from beta to stable?<br>
&lt;Rossen_> ack fserb<br>
&lt;emeyer> …Not against this on principle<br>
&lt;emeyer> lea: Another testing channel could be to tack it onto a flag that a lot of developers already have enabled<br>
&lt;fantasai> s/have enabled/have enabled, e.g. experimental web platform features flag/<br>
&lt;fantasai> +!<br>
&lt;fantasai> +1<br>
&lt;emeyer> Rossen_: There was some implementor interest, and how we implement testing is really their call<br>
&lt;emeyer> …With that said, it sounds like the text that goes into the spec is the previous resolution<br>
&lt;Rossen_> q?<br>
&lt;emeyer> chris: Okay, thanks<br>
&lt;Rossen_> ack lea<br>
&lt;emeyer> Rossen_: So, no change here<br>
</details>


-- 
GitHub Notification of comment by css-meeting-bot
Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/7948#issuecomment-1570552354 using your GitHub account


-- 
Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config

Received on Wednesday, 31 May 2023 16:31:42 UTC