Contact emails
ericwi...@chromium.org, sh...@chromium.org
Spec
https://drafts.fxtf.org/motion-1/
TAG Review https://github.com/w3ctag/spec-reviews/issues/66
Summary
The CSS Motion Path properties (already shipped by Chrome) have recently been renamed:
motion-path becomes offset-path
motion-offset becomes offset-distance
motion-rotation becomes offset-rotation
The shorthand property has also been renamed:
motion becomes offset
This occurred when the CSS Round Display functionality was merged into the CSS Motion Path spec.
We propose to rename the properties to offset-path, offset-distance and offset-rotation. offset will be implemented behind a flag. motion-path, motion-offset, motion-rotation and motion will be deprecated, to be removed in M58. We are not shipping any new behavior with this intent.
Link to “Intent to Implement” blink-dev discussion
Covered by original Intent to Implement
Is this feature supported on all six Blink platforms (Windows, Mac, Linux, Chrome OS, Android, and Android WebView)?
Yes.
Demo link
Debuggability
No changes needed.
Interoperability and Compatibility Risk
We are the first browser shipping Motion Path. Each current property has usage below 0.02%.
The decision has been made to move to new property names, so we increase interoperability risk the longer we ship only the old names.
The spec still has some open issues, and more examples need to be added. In particular, the offset shorthand is still under discussion. Working under the original Intent to Implement, we will implement the additional features behind a flag. As we are the first browser to ship, there is always the risk of the spec changing further.
OWP launch tracking bug
Entry on the feature dashboard
https://www.chromestatus.com/features/6390764217040896
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscribe@chromium.org.
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
It's a change the WG wanted to make - while there is a degree of churn I think it's better to remain aligned to the spec so that we can be interoperable when other vendors implement.
I'll raise the change at TPAC to get a sense for whether the WG is happy with the names now (this will be well before the name change hits stable). If there's likely to be more churn then we can discuss whether to avoid making the change now.Cheers,-Shane
On Tue, Sep 13, 2016 at 11:07 AM Elliott Sprehn <esp...@chromium.org> wrote:
This feels like a lot of churn when we just told people to get off SMIL and use this instead. What's the motivation for breaking people again?On Mon, Sep 12, 2016 at 5:07 PM, Eric <ericwi...@chromium.org> wrote:Correction to the intent: motion will be renamed to offset at the same time as the motion-* properties are renamed. This will not happen behind a flag.
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscribe@chromium.org.
Healthy web evolution is a collaboration between the implementations and standards groups, making constant trade-offs to balance speed of evolution, web compatibility and API aesthetics. If we're shipping APIs from one version of a spec and then the WG is really expecting us to inflict even small amounts of pain on our users and developers without any justification better than "we like the name better" then something is broken with this collaboration.
Healthy web evolution is a collaboration between the implementations and standards groups, making constant trade-offs to balance speed of evolution, web compatibility and API aesthetics. If we're shipping APIs from one version of a spec and then the WG is really expecting us to inflict even small amounts of pain on our users and developers without any justification better than "we like the name better" then something is broken with this collaboration.I think I've given you the wrong impression. The WG didn't just change the name on a whim (it's a concerning sign that something may indeed be broken if this was your first assumption).
There is no "motion" encoded in a motion path, and hence there was a justifiable concern that the properties would be confusing to developers.When we take the risk of shipping a specification well before discussion has finished, we assume a burden of making reasonable adjustments, and this one doesn't seem unreasonable to me.
Developers feel the pain of changes once per change, but they feel constant and ongoing pain when features and APIs are poorly named.We can discuss why we decided to ship motion-* early here or elsewhere, but in this context I think it's enough to know that we did have that discussion and we did weigh the risks - in fact, there's an intent to ship that went to this list.Our options are either:(1) unship this API for now and wait for stabilization(2) make the name change and continue to track the specification
Either way, we need to deprecate the old names immediately. I think it's also OK to alias them now (before branch point) as the rollback will be reasonably trivial if we decide to go with option (1). Perhaps we could make this even simpler by aliasing behind a flag that we can switch off if necessary.
It "feels" like it may not be unreasonable to me too, but there hasn't yet been enough data on this thread to make an informed decision. Eg. if 0.01% page views are totally broken by this change then it's almost certainly not worth the cost. I suspect the actual compat cost is orders of magnitude lower, but the feature team making the change should provide the evidence for that argument (eg. do the HTTP Archive query, spot-check some or all of the results).
There's a third option that it still seems like you're avoiding discussing: analyze the compat impact more thoroughly and, if it turns out it's actually at the bad end of 0.02% of page views, present the compat argument to the WG and ask them to reconsider the spec change rather than deprecate anything.
Looking at the spec and in particular the circles example it's clear that the feature does something in the absence of animation/motion, so absent compat concerns I agree it makes sense. But I can't get the example to work in Chrome with s/offset/motion/, should it work?
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscribe@chromium.org.
Yeah let's merge a disable flag flip.