Re: [csswg-drafts] [css-easing-2] Is linear() easing in a shippable state? (#7533)

The CSS Working Group just discussed `Easing linear()`, and agreed to the following:

* `RESOLVED: Publish css-easing-2 FPWD with linear() function`

<details><summary>The full IRC log of that discussion</summary>
&lt;TabAtkins> Topic: Easing linear()<br>
&lt;dbaron> github: https://github.com/w3c/csswg-drafts/issues/7533<br>
&lt;TabAtkins> github: https://github.com/w3c/csswg-drafts/issues/7533<br>
&lt;TabAtkins> emilio: There was a bunch of work to add linear(), spec was written by Jake a<br>
&lt;TabAtkins> emilio: End result was qite straightforward, it's a piecewise linear function<br>
&lt;TabAtkins> emilio: we have an impl in gecko<br>
&lt;TabAtkins> emilio: I just wanted to check whether the group is happy with design<br>
&lt;TabAtkins> emilio: I think it's a good compromise for th euse-cases it enables<br>
&lt;TabAtkins> emilio: So are we confident enough to ship it?<br>
&lt;iank_> is there a tag review for this feature?<br>
&lt;TabAtkins> emilio: Or ait?<br>
&lt;TabAtkins> emilio: birtles commented about the feature, says he's happy with it shipping<br>
&lt;Rossen_> q?<br>
&lt;lea> q+<br>
&lt;fantasai> emilio: Anyone need more time to check it out?<br>
&lt;fantasai> scribe+ fantasai<br>
&lt;ChrisLilley> tag reviow would be good<br>
&lt;fantasai> Rossen_: TAG review for the feature?<br>
&lt;fantasai> emilio: I don't think so, but can file one<br>
&lt;Rossen_> ack lea<br>
&lt;fantasai> lea: I haven't looked at this before, what use cases does it address and how does it relate to linear keyword?<br>
&lt;fantasai> emilio: It's a compromise to allow more complex functions than we currently allow<br>
&lt;fantasai> emilio: you can approximate other functions<br>
&lt;fantasai> lea: complex path through linear segments?<br>
&lt;fantasai> emilio: yes, exactly<br>
&lt;fantasai> lea: I agree that's really useful!<br>
&lt;fantasai> TabAtkins: Can approximate any easing function you want<br>
&lt;bramus> relevant demo that shows how it works: https://static-misc-3.glitch.me/linear-easing/4.html<br>
&lt;lea> q+<br>
&lt;fantasai> emilio: Compromise from adding a bunch of complex functions<br>
&lt;ChrisLilley> q+<br>
&lt;fantasai> lea: While very useful to approximate, there are many ways to interpolate, and linear is only one<br>
&lt;fantasai> lea: do we have any plans to add curved interpolation<br>
&lt;fantasai> lea: and if so, do we want to add a generic function instead of different functions by curve?<br>
&lt;dbaron> "the other one" !! :-)<br>
&lt;fremy> +1 to lea's point<br>
&lt;fantasai> emilio: perhaps. This all was discussed in issue 229<br>
&lt;fantasai> emilio: There's a follow-up issue, I'll paste link<br>
&lt;emilio> https://github.com/w3c/csswg-drafts/issues/7508<br>
&lt;Rossen_> ack lea<br>
&lt;TabAtkins> all is linear, quadratic, and cubic. there are no other easings<br>
&lt;fantasai> emilio: I don't feel strongly about having a linear function vs generic<br>
&lt;astearns> (previous discussion in https://github.com/w3c/csswg-drafts/issues/229)<br>
&lt;fantasai> lea: I agree with having the functionality in CSS, just unsure about the design<br>
&lt;fantasai> emilio: Discussed bezier, complex spline, etc.<br>
&lt;fantasai> emilio: I personally don't care<br>
&lt;Rossen_> q?<br>
&lt;fantasai> lea: If trying to approximate a curve, good to have a fallback<br>
&lt;bramus> (also see https://github.com/w3c/csswg-drafts/issues/7508 which was spilt off from 229)<br>
&lt;fantasai> emilio: usual CSS fallback<br>
&lt;fantasai> lea: but painful<br>
&lt;fantasai> TabAtkins: would still be painful<br>
&lt;astearns> (not sure interpolation fallback is something we should be designing around)<br>
&lt;ChrisLilley> q?<br>
&lt;fantasai> lea: Have a series of arguments that represent points, and if don't support the interpolation method, use the same points but different method<br>
&lt;fantasai> dbaron: If you add specific fallback rules that prevent authors from write their own custom fallback<br>
&lt;Rossen_> ack fantasai<br>
&lt;Zakim> fantasai, you wanted to react to lea to respond<br>
&lt;TabAtkins> fantasai: I think at some point we'll want a generic function that lets you interpolate differently<br>
&lt;dbaron> s/prevent/prevents/<br>
&lt;TabAtkins> fantasai: but linear() as designed now is simple and straightforward, and adding more things to it isn't necessarily better<br>
&lt;TabAtkins> fantasai: And some of th eother curves require more args than just the points.<br>
&lt;TabAtkins> fantasai: This is just the list of points.<br>
&lt;TabAtkins> fantasai: So even if we have a generic function, this is still useful on its own for author ease<br>
&lt;fantasai> ChrisLilley: Good thing about the P5 Linear is you can approximate anything with enough points<br>
&lt;fantasai> ChrisLilley: and you don't have off-curve points to add<br>
&lt;fantasai> ChrisLilley: Bad thing ist's always going to be discontinuous<br>
&lt;fantasai> ChrisLilley: If your points get animated, your piecewise thing falls apart<br>
&lt;fantasai> ChrisLilley: So another option, and I know I've brought it up before, is a thing called a ?????<br>
&lt;astearns> s/?????/catmull-rom/<br>
&lt;fantasai> ChrisLilley: which automatically produces a smooth curve through a set of point<br>
&lt;astearns> (sp)<br>
&lt;fantasai> ChrisLilley: I think this is objectively better<br>
&lt;fantasai> TabAtkins: it's not just that linear is simple<br>
&lt;fantasai> TabAtkins: but some things can't be produced with curves, e.g. step function<br>
&lt;fantasai> ChrisLilley: It's not a replacement, but in many cases it would be a better thing<br>
&lt;fantasai> TabAtkins: I agree it's the best simple way to get smoothness<br>
&lt;astearns> s/(sp)//<br>
&lt;Rossen_> q?<br>
&lt;Rossen_> ack ChrisLilley<br>
&lt;fantasai> ChrisLilley: I want that on the record, so when ppl complain we didn't do it it's on the record :)<br>
&lt;TabAtkins> fantasai: this spec doesn't have a fpwd<br>
&lt;TabAtkins> fantasai: so i think before we decide to ship we shoud do that and get review<br>
&lt;TabAtkins> Rossen_: and tag review<br>
&lt;TabAtkins> fantasai: so i think we shoudl publish fpwd, ask for review, then ask if it's ready to ship<br>
&lt;TabAtkins> emilio: sounds good<br>
&lt;Rossen_> ack fantasai<br>
&lt;Zakim> fantasai, you wanted to ask about FPWD<br>
&lt;Rossen_> ack dbaron<br>
&lt;TabAtkins> dbaron: admin - i think when we resolve something's ready to ship, we need to file an issue against the snapshot with a link to the resolution<br>
&lt;TabAtkins> dbaron: we have a history of resolving that things are shippable and not writing it down anywhere<br>
&lt;ChrisLilley> dbaron++<br>
&lt;astearns> +1<br>
&lt;ChrisLilley> qq+<br>
&lt;TabAtkins> dbaron: so i think one req should be an open issue against the snapshot<br>
&lt;TabAtkins> fantasai: i think it should be *in* the snapshot, just edit it<br>
&lt;TabAtkins> ChrisLilley: do we have to wait for december to publish snapshots?<br>
&lt;TabAtkins> fantasai: no<br>
&lt;TabAtkins> ChrisLilley: then we shoudl pub<br>
&lt;TabAtkins> Rossen_: anything else?<br>
&lt;Rossen_> q?<br>
&lt;Rossen_> ack ChrisLilley<br>
&lt;Zakim> ChrisLilley, you wanted to react to dbaron<br>
&lt;TabAtkins> Rossen_: So, objections to FPWD?<br>
&lt;TabAtkins> Rossen_: css-easing-2<br>
&lt;TabAtkins> RESOLVED: Publish css-easing-2 FPWD with linear() function<br>
&lt;TabAtkins> fantasai: i suggest a res to publish the snapshot<br>
&lt;TabAtkins> fantasai: and then once it's published at least once in a year, anyone can add to it and repub, not just the editor<br>
&lt;TabAtkins> florian: why not just publish a Note?<br>
&lt;TabAtkins> fantasai: we'll update it thru th eyear, seems like it should be a draft...<br>
&lt;TabAtkins> florian: Doesn't need to be<br>
&lt;TabAtkins> fantasai: kinda indicates we're updating<br>
&lt;TabAtkins> astearns: prefer to just publish as a Note<br>
&lt;TabAtkins> astearns: Or else we'll forget<br>
</details>


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


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

Received on Monday, 1 August 2022 14:09:16 UTC