Persona is no longer an option for authentication on BMO. For more details see Persona Deprecated.
Last Comment Bug 747637 - Restore skew() support
: Restore skew() support
: dev-doc-complete, regression
Product: Core
Classification: Components
Component: CSS Parsing and Computation (show other bugs)
: 14 Branch
: All All
: -- normal (vote)
: mozilla17
Assigned To: Aryeh Gregor (:ayg) (working until November 1)
: Simona B [:simonab ]
: Jet Villegas (:jet)
: 771180 775046 775710 775763 783045 (view as bug list)
Depends on:
Blocks: 734953 783045 803074
  Show dependency treegraph
Reported: 2012-04-21 07:16 PDT by Alice0775 White
Modified: 2012-10-18 06:48 PDT (History)
14 users (show)
ayg: in‑testsuite+
See Also:
Crash Signature:
QA Whiteboard:
Iteration: ---
Points: ---
Has Regression Range: ---
Has STR: ---

Backout patch (23.88 KB, patch)
2012-07-30 05:23 PDT, Aryeh Gregor (:ayg) (working until November 1)
dbaron: review+
akeybl: approval‑mozilla‑aurora+
akeybl: approval‑mozilla‑beta+
Details | Diff | Splinter Review
Screenshot with the issue (203.48 KB, image/jpeg)
2012-10-17 07:51 PDT, Simona B [:simonab ]
no flags Details

Description Alice0775 White 2012-04-21 07:16:56 PDT
Build Identifier:
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:14.0) Gecko/20120420 Firefox/14.0a1 ID:20120420030653

Rendering is broken due to Remove skew() transformation function
Comment 1 Alice0775 White 2012-04-21 07:27:27 PDT
Select skew(θx,θy)of "Append another transform function"dropdown
And change degree by slider
Nothing happen in Firefox.
Rendering is broken in Firefox.
Comment 2 Aryeh Gregor (:ayg) (working until November 1) 2012-04-22 01:28:39 PDT
This seems like evangelism to me -- we want to contact MS and get them to take down that demo.  skew() is no longer in the spec.  How do we proceed in cases like this?  Do we have specific contacts at MS that we can call?
Comment 3 Boris Zbarsky [:bz] (still a bit busy) 2012-05-14 10:09:43 PDT
Contacting MS won't fix the other two testcases linked from this bug.  So while I can do that, it's not clear that I should.

Frankly, the way we usually proceed in cases like this is by readding back to the spec the thing that's being used on the web already that got removed from the spec.  Imo.
Comment 4 Aryeh Gregor (:ayg) (working until November 1) 2012-07-30 05:04:03 PDT
David Baron and I agreed that there's too much breakage -- we need to back out bug 734953 and re-add support for skew().
Comment 5 Aryeh Gregor (:ayg) (working until November 1) 2012-07-30 05:04:36 PDT
*** Bug 771180 has been marked as a duplicate of this bug. ***
Comment 6 Aryeh Gregor (:ayg) (working until November 1) 2012-07-30 05:04:53 PDT
*** Bug 775046 has been marked as a duplicate of this bug. ***
Comment 7 Aryeh Gregor (:ayg) (working until November 1) 2012-07-30 05:04:56 PDT
*** Bug 775710 has been marked as a duplicate of this bug. ***
Comment 8 Aryeh Gregor (:ayg) (working until November 1) 2012-07-30 05:04:59 PDT
*** Bug 775763 has been marked as a duplicate of this bug. ***
Comment 9 Aryeh Gregor (:ayg) (working until November 1) 2012-07-30 05:23:39 PDT
Created attachment 647135 [details] [diff] [review]
Backout patch


The backout was almost perfectly clean.

[Approval Request Comment]
Bug caused by (feature/regressing bug #): Bug 734953.  All browsers supported the skew() function in their CSS transforms implementations, but the spec editors agreed that it was useless and we should try to drop it.  All Firefox versions < 14 support it, and so do all versions of competing browsers (if they support transforms at all).

User impact if declined: We've received reports of several sites that display incorrectly because they depend on the removed feature.  There are probably more.  David Baron and I agreed that the compat impact is not worth dropping this feature; we intend to keep it indefinitely and get the spec updated to require it again.  All other browsers support skew() and always have, so any site that breaks because of this bug will work fine in all other browsers.

Testing completed (on m-c, etc.): This is a backout patch to revert to pre-14 behavior.

Risk to taking this patch (and alternatives if risky): Minimal.  The feature is quite isolated, so it's unlikely that we'd have substantial breakage for taking it.  Almost all the code to implement the feature was always there anyway for the skewX() and skewY() functions, which we never dropped support for, so we're more or less just readding parser support.

String or UUID changes made by this patch: None.
Comment 10 Aryeh Gregor (:ayg) (working until November 1) 2012-07-30 05:32:38 PDT
W3C bug:
Comment 11 Steve Kwan 2012-07-30 10:34:38 PDT
Thank you so much for taking the initiative on this.  There are definitely some of us who rely on this feature quite extensively.
Comment 12 David Baron :dbaron: ⌚️UTC+9 (busy until November 7) 2012-07-30 11:28:51 PDT
Comment on attachment 647135 [details] [diff] [review]
Backout patch

In property_database.js, you should convert the -moz-max( to max( to match the unprefixing of calc() -- we removed max() support, but in case we ever add it back, I suppose.

(I spent a little time checking the nsStyleAnimation stuff in light of bug 769193, but I think it's right.)

r=dbaron with that
Comment 13 Alex Keybl [:akeybl] 2012-07-30 12:26:22 PDT
Comment on attachment 647135 [details] [diff] [review]
Backout patch

[Triage Comment]
Given the minimal user benefit to leaving this feature removed, let's re-add for 15 and up.
Comment 14 Aryeh Gregor (:ayg) (working until November 1) 2012-07-31 03:56:29 PDT

(This had the wrong bug number in the commit message.)

I could try to push to aurora/beta tomorrow morning, when I have time to watch the tree.  Otherwise, someone else will have to do it.  Probably the original backout will have fewer conflicts on aurora/beta, so the patch I attached here likely won't apply, but re-backing out the original patch should work fine.
Comment 15 Ryan VanderMeulen [:RyanVM] 2012-07-31 19:20:40 PDT
Comment 17 Jean-Yves Perrier [:teoli] 2012-08-14 03:05:15 PDT
A note has been added to and

Note that everywhere in the MDN we tell the Web devs that this function is non-standard, shouldn't be used and give advice on how to fix it (like skew(x) ->skeyX(x), …)
Comment 18 Daniel Holbert [:dholbert] 2012-08-15 23:39:36 PDT
*** Bug 783045 has been marked as a duplicate of this bug. ***
Comment 19 Simona B [:simonab ] 2012-10-01 05:34:32 PDT
Verified that the skew() support is restored on Firefox 16 beta 5 - there are no rendering issues on the web sites provided in the URL, Comment 1 and the duplicate bugs, except for where the rendering is  broken on several browsers (Chrome, Opera and Safari).

Mozilla/5.0 (Windows NT 6.1; rv:16.0) Gecko/20100101 Firefox/16.0
Mozilla/5.0 (X11; Linux i686; rv:16.0) Gecko/20100101 Firefox/16.0
Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:16.0) Gecko/20100101 Firefox/16.0
Comment 20 Simona B [:simonab ] 2012-10-17 07:51:45 PDT
Created attachment 672306 [details]
Screenshot with the issue

When verifying this fix on Firefox 17 beta 1, I observed some rendering issues that are not reproducible on Firefox 16 beta 6.

Steps to reproduce:
1. Navigate to:
2. Select skew(θx,θy)of "Append another transform function"dropdown
3. Change degree by slider.
Actual results: Rendering issues when changing degree by slider (easily reproducible on Ubuntu 12.04 but also on Mac OS X 10.7 and Windows 7). Please see the attachment for more details. 

Please let me know if you would prefer me to reopen this bug or file a new one.
Comment 21 Alex Keybl [:akeybl] 2012-10-17 09:40:40 PDT
(In reply to Simona B [QA] from comment #20)
> Please let me know if you would prefer me to reopen this bug or file a new
> one.

Please clone this bug (to maintain the tracking flag and assignee) with the new STR and screenshot. Or file a new one and nominate for firefox 17 tracking.
Comment 22 Anthony Hughes (:ashughes) [GFX][QA][Mentor] 2012-10-17 11:45:26 PDT
Calling this verified fixed based on comment 20 and 21. Simona, please clone this bug with your testcase.

Note You need to log in before you can comment on or make changes to this bug.