Re: [webkit-dev] Following up on removing -khtml- and -apple- CSS vendor prefixes

2012-05-03 Thread Ryosuke Niwa
Resent from the right email address.

-- Forwarded message --
From: Ryosuke Niwa rn...@berkeley.edu
Date: Thu, May 3, 2012 at 7:49 PM
Subject: Re: [webkit-dev] Following up on removing -khtml- and -apple- CSS
vendor prefixes
To: Adam Barth aba...@webkit.org
Cc: Alexey Proskuryakov a...@webkit.org, webkit-dev@lists.webkit.org


On Fri, Apr 6, 2012 at 4:27 PM, Adam Barth aba...@webkit.org wrote:

 2012/4/5 Alexey Proskuryakov a...@webkit.org:
  05.04.2012, в 01:08, Adam Barth написал(а):
 
  Based on this information, I've posted a patch that limits the -apple-
  and -khtml- vendor prefixes to ENABLE(DASHBOARD_SUPPORT):
 
  https://bugs.webkit.org/show_bug.cgi?id=83256
 
  This approach lets ports that wish to remain compatible with Dashboard
  widgets continue to support these prefixes while also letting ports
  that aren't constrained by dashboard widgets disable them, hopefully
  lessening their use on the broader web.
 
  Guarding on ENABLE(DASHBOARD_SUPPORT) will make it so that these names
 will be available in Safari on Mac, in every Mac application that uses
 WebKit, but not in Safari on Windows or iOS, and not in other WebKit based
 browsers such as Chrome. I don't think that this level of fragmentation is
 good.
 
  We normally guard Dashboard-only quirks with
 settings-usesDashboardBackwardCompatibilityMode().

 I attempted to implement this approach in
 https://bugs.webkit.org/attachment.cgi?id=136093action=prettypatch,
 but I ran into a problem because cssPropertyID is a free function.
 Requiring all the callers to pass in a Settings object seems
 undesirable.  Note: there are already a number of uses of
 ENABLE(DASHBOARD_SUPPORT) in CSSParser.cpp, and none of them check
 usesDashboardBackwardCompatibilityMode().


I don't think you need to do that. Looking at your latest work-in-progress
patch, it's probably sufficient to add a guard in CSSParser.cpp. It's okay
to have those free functions (in fact we DO need them)
when ENABLE(DASHBOARD_SUPPORT) is true
and usesDashboardBackwardCompatibilityMode() is false since they will never
be called if the parser rejects values.

- Ryosuke
___
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


Re: [webkit-dev] Following up on removing -khtml- and -apple- CSS vendor prefixes

2012-05-03 Thread Adam Barth
On Thu, May 3, 2012 at 7:57 PM, Ryosuke Niwa rn...@webkit.org wrote:
 Resent from the right email address.

 -- Forwarded message --
 From: Ryosuke Niwa rn...@berkeley.edu
 Date: Thu, May 3, 2012 at 7:49 PM
 Subject: Re: [webkit-dev] Following up on removing -khtml- and -apple- CSS
 vendor prefixes
 To: Adam Barth aba...@webkit.org
 Cc: Alexey Proskuryakov a...@webkit.org, webkit-dev@lists.webkit.org


 On Fri, Apr 6, 2012 at 4:27 PM, Adam Barth aba...@webkit.org wrote:

 2012/4/5 Alexey Proskuryakov a...@webkit.org:
  05.04.2012, в 01:08, Adam Barth написал(а):
 
  Based on this information, I've posted a patch that limits the -apple-
  and -khtml- vendor prefixes to ENABLE(DASHBOARD_SUPPORT):
 
  https://bugs.webkit.org/show_bug.cgi?id=83256
 
  This approach lets ports that wish to remain compatible with Dashboard
  widgets continue to support these prefixes while also letting ports
  that aren't constrained by dashboard widgets disable them, hopefully
  lessening their use on the broader web.
 
  Guarding on ENABLE(DASHBOARD_SUPPORT) will make it so that these names
  will be available in Safari on Mac, in every Mac application that uses
  WebKit, but not in Safari on Windows or iOS, and not in other WebKit based
  browsers such as Chrome. I don't think that this level of fragmentation is
  good.
 
  We normally guard Dashboard-only quirks with
  settings-usesDashboardBackwardCompatibilityMode().

 I attempted to implement this approach in
 https://bugs.webkit.org/attachment.cgi?id=136093action=prettypatch,
 but I ran into a problem because cssPropertyID is a free function.
 Requiring all the callers to pass in a Settings object seems
 undesirable.  Note: there are already a number of uses of
 ENABLE(DASHBOARD_SUPPORT) in CSSParser.cpp, and none of them check
 usesDashboardBackwardCompatibilityMode().

 I don't think you need to do that. Looking at your latest work-in-progress
 patch, it's probably sufficient to add a guard in CSSParser.cpp. It's okay
 to have those free functions (in fact we DO need them)
 when ENABLE(DASHBOARD_SUPPORT) is true
 and usesDashboardBackwardCompatibilityMode() is false since they will never
 be called if the parser rejects values.

Ok.  I'll update the patch.

Thanks!

Adam
___
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


Re: [webkit-dev] Following up on removing -khtml- and -apple- CSS vendor prefixes

2012-05-03 Thread Ryosuke Niwa
By the way, can we add a test for this? For example, we should make
sure document.body.style.khtmlTransform
and document.body.style.appleTransform are undefined on ports that do not
enable legacy prefixes. In fact, shouldn't we be able to override the value
of usesDashboardBackwardCompatibilityMode in DRT somehow?

- Ryosuke

On Thu, May 3, 2012 at 8:01 PM, Adam Barth aba...@webkit.org wrote:

 On Thu, May 3, 2012 at 7:57 PM, Ryosuke Niwa rn...@webkit.org wrote:
  Resent from the right email address.
 
  -- Forwarded message --
  From: Ryosuke Niwa rn...@berkeley.edu
  Date: Thu, May 3, 2012 at 7:49 PM
  Subject: Re: [webkit-dev] Following up on removing -khtml- and -apple-
 CSS
  vendor prefixes
  To: Adam Barth aba...@webkit.org
  Cc: Alexey Proskuryakov a...@webkit.org, webkit-dev@lists.webkit.org
 
 
  On Fri, Apr 6, 2012 at 4:27 PM, Adam Barth aba...@webkit.org wrote:
 
  2012/4/5 Alexey Proskuryakov a...@webkit.org:
   05.04.2012, в 01:08, Adam Barth написал(а):
  
   Based on this information, I've posted a patch that limits the
 -apple-
   and -khtml- vendor prefixes to ENABLE(DASHBOARD_SUPPORT):
  
   https://bugs.webkit.org/show_bug.cgi?id=83256
  
   This approach lets ports that wish to remain compatible with
 Dashboard
   widgets continue to support these prefixes while also letting ports
   that aren't constrained by dashboard widgets disable them, hopefully
   lessening their use on the broader web.
  
   Guarding on ENABLE(DASHBOARD_SUPPORT) will make it so that these names
   will be available in Safari on Mac, in every Mac application that uses
   WebKit, but not in Safari on Windows or iOS, and not in other WebKit
 based
   browsers such as Chrome. I don't think that this level of
 fragmentation is
   good.
  
   We normally guard Dashboard-only quirks with
   settings-usesDashboardBackwardCompatibilityMode().
 
  I attempted to implement this approach in
  https://bugs.webkit.org/attachment.cgi?id=136093action=prettypatch,
  but I ran into a problem because cssPropertyID is a free function.
  Requiring all the callers to pass in a Settings object seems
  undesirable.  Note: there are already a number of uses of
  ENABLE(DASHBOARD_SUPPORT) in CSSParser.cpp, and none of them check
  usesDashboardBackwardCompatibilityMode().
 
  I don't think you need to do that. Looking at your latest
 work-in-progress
  patch, it's probably sufficient to add a guard in CSSParser.cpp. It's
 okay
  to have those free functions (in fact we DO need them)
  when ENABLE(DASHBOARD_SUPPORT) is true
  and usesDashboardBackwardCompatibilityMode() is false since they will
 never
  be called if the parser rejects values.

 Ok.  I'll update the patch.

 Thanks!

 Adam

___
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


Re: [webkit-dev] Following up on removing -khtml- and -apple- CSS vendor prefixes

2012-04-06 Thread Adam Barth
2012/4/5 Alexey Proskuryakov a...@webkit.org:
 05.04.2012, в 01:08, Adam Barth написал(а):

 Based on this information, I've posted a patch that limits the -apple-
 and -khtml- vendor prefixes to ENABLE(DASHBOARD_SUPPORT):

 https://bugs.webkit.org/show_bug.cgi?id=83256

 This approach lets ports that wish to remain compatible with Dashboard
 widgets continue to support these prefixes while also letting ports
 that aren't constrained by dashboard widgets disable them, hopefully
 lessening their use on the broader web.

 Guarding on ENABLE(DASHBOARD_SUPPORT) will make it so that these names will 
 be available in Safari on Mac, in every Mac application that uses WebKit, but 
 not in Safari on Windows or iOS, and not in other WebKit based browsers such 
 as Chrome. I don't think that this level of fragmentation is good.

 We normally guard Dashboard-only quirks with 
 settings-usesDashboardBackwardCompatibilityMode().

I attempted to implement this approach in
https://bugs.webkit.org/attachment.cgi?id=136093action=prettypatch,
but I ran into a problem because cssPropertyID is a free function.
Requiring all the callers to pass in a Settings object seems
undesirable.  Note: there are already a number of uses of
ENABLE(DASHBOARD_SUPPORT) in CSSParser.cpp, and none of them check
usesDashboardBackwardCompatibilityMode().

My current plan is to introduce a new ENABLE macro that ports can set
as they desire.

Adam
___
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


[webkit-dev] Following up on removing -khtml- and -apple- CSS vendor prefixes

2012-04-05 Thread Adam Barth
In July 2010, there was a thread on webkit-dev about removing support
for the -khtml- and -apple- vendor prefixes:

https://lists.webkit.org/pipermail/webkit-dev/2010-July/013519.html

At the time, we tried an approach recommended by David Hyatt
https://lists.webkit.org/pipermail/webkit-dev/2010-July/013536.html,
but that approach appears to have been too agressive in that it broke
a number of Dashboard widgets:

https://bugs.webkit.org/show_bug.cgi?id=42093#c29

Based on this information, I've posted a patch that limits the -apple-
and -khtml- vendor prefixes to ENABLE(DASHBOARD_SUPPORT):

https://bugs.webkit.org/show_bug.cgi?id=83256

This approach lets ports that wish to remain compatible with Dashboard
widgets continue to support these prefixes while also letting ports
that aren't constrained by dashboard widgets disable them, hopefully
lessening their use on the broader web.

I welcome any thoughts the list has on this topic.

Adam
___
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


Re: [webkit-dev] Following up on removing -khtml- and -apple- CSS vendor prefixes

2012-04-05 Thread Ryosuke Niwa
On Thu, Apr 5, 2012 at 1:08 AM, Adam Barth aba...@webkit.org wrote:

 In July 2010, there was a thread on webkit-dev about removing support
 for the -khtml- and -apple- vendor prefixes:

 https://lists.webkit.org/pipermail/webkit-dev/2010-July/013519.html

 At the time, we tried an approach recommended by David Hyatt
 https://lists.webkit.org/pipermail/webkit-dev/2010-July/013536.html,
 but that approach appears to have been too agressive in that it broke
 a number of Dashboard widgets:

 https://bugs.webkit.org/show_bug.cgi?id=42093#c29

 Based on this information, I've posted a patch that limits the -apple-
 and -khtml- vendor prefixes to ENABLE(DASHBOARD_SUPPORT):

 https://bugs.webkit.org/show_bug.cgi?id=83256

 This approach lets ports that wish to remain compatible with Dashboard
 widgets continue to support these prefixes while also letting ports
 that aren't constrained by dashboard widgets disable them, hopefully
 lessening their use on the broader web.


That sounds like a nice middle ground.

It's unfortunate that we have to fragment the WebKit behavior like that but
exposing those two prefixes on the Web seems more harmful.

- Ryosuke
___
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


Re: [webkit-dev] Following up on removing -khtml- and -apple- CSS vendor prefixes

2012-04-05 Thread Allan Sandfeld Jensen
On Thursday 05 April 2012, Adam Barth wrote:
 In July 2010, there was a thread on webkit-dev about removing support
 for the -khtml- and -apple- vendor prefixes:
 
 https://lists.webkit.org/pipermail/webkit-dev/2010-July/013519.html
 
 At the time, we tried an approach recommended by David Hyatt
 https://lists.webkit.org/pipermail/webkit-dev/2010-July/013536.html,
 but that approach appears to have been too agressive in that it broke
 a number of Dashboard widgets:
 
 https://bugs.webkit.org/show_bug.cgi?id=42093#c29
 
 Based on this information, I've posted a patch that limits the -apple-
 and -khtml- vendor prefixes to ENABLE(DASHBOARD_SUPPORT):
 
 https://bugs.webkit.org/show_bug.cgi?id=83256
 
 This approach lets ports that wish to remain compatible with Dashboard
 widgets continue to support these prefixes while also letting ports
 that aren't constrained by dashboard widgets disable them, hopefully
 lessening their use on the broader web.
 
 I welcome any thoughts the list has on this topic.
 
I the way they currently work I am in favor of removing them as well. Though I 
think they optimally should still be available for features that were 
historically prefexed with those prefixes, but only those.

`Allan

___
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


Re: [webkit-dev] Following up on removing -khtml- and -apple- CSS vendor prefixes

2012-04-05 Thread Alexey Proskuryakov

05.04.2012, в 01:08, Adam Barth написал(а):

 Based on this information, I've posted a patch that limits the -apple-
 and -khtml- vendor prefixes to ENABLE(DASHBOARD_SUPPORT):
 
 https://bugs.webkit.org/show_bug.cgi?id=83256
 
 This approach lets ports that wish to remain compatible with Dashboard
 widgets continue to support these prefixes while also letting ports
 that aren't constrained by dashboard widgets disable them, hopefully
 lessening their use on the broader web.

Guarding on ENABLE(DASHBOARD_SUPPORT) will make it so that these names will be 
available in Safari on Mac, in every Mac application that uses WebKit, but not 
in Safari on Windows or iOS, and not in other WebKit based browsers such as 
Chrome. I don't think that this level of fragmentation is good.

We normally guard Dashboard-only quirks with 
settings-usesDashboardBackwardCompatibilityMode().

Due to high potential of site breakage, this seems worth a separate setting 
with pre-made plumbing for site-specific quirks, so that ports seeing release 
blocking regressions on important sites wouldn't have to undo this change 
entirely.

- WBR, Alexey Proskuryakov

___
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


Re: [webkit-dev] Following up on removing -khtml- and -apple- CSS vendor prefixes

2012-04-05 Thread Benjamin Poulain
On Thu, Apr 5, 2012 at 1:08 AM, Adam Barth aba...@webkit.org wrote:
 In July 2010, there was a thread on webkit-dev about removing support
 for the -khtml- and -apple- vendor prefixes:

As a first step toward deprecation, it would be nice if browsers could
issue a warning in the console when such property prefix are used.

Benjamin
___
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


Re: [webkit-dev] Following up on removing -khtml- and -apple- CSS vendor prefixes

2012-04-05 Thread Adam Barth
One option is to start evaluating the compat implications by disabling the
prefixes in Chrome.  If we have a positive experience we can disable them
in more ports/configurations over time, hopefully arriving where you
suggest while avoiding the stress of release blocking bugs.

Adam
 On Apr 5, 2012 10:14 AM, Alexey Proskuryakov a...@webkit.org wrote:


 05.04.2012, в 01:08, Adam Barth написал(а):

  Based on this information, I've posted a patch that limits the -apple-
  and -khtml- vendor prefixes to ENABLE(DASHBOARD_SUPPORT):
 
  https://bugs.webkit.org/show_bug.cgi?id=83256
 
  This approach lets ports that wish to remain compatible with Dashboard
  widgets continue to support these prefixes while also letting ports
  that aren't constrained by dashboard widgets disable them, hopefully
  lessening their use on the broader web.

 Guarding on ENABLE(DASHBOARD_SUPPORT) will make it so that these names
 will be available in Safari on Mac, in every Mac application that uses
 WebKit, but not in Safari on Windows or iOS, and not in other WebKit based
 browsers such as Chrome. I don't think that this level of fragmentation is
 good.

 We normally guard Dashboard-only quirks with
 settings-usesDashboardBackwardCompatibilityMode().

 Due to high potential of site breakage, this seems worth a separate
 setting with pre-made plumbing for site-specific quirks, so that ports
 seeing release blocking regressions on important sites wouldn't have to
 undo this change entirely.

 - WBR, Alexey Proskuryakov


___
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


Re: [webkit-dev] Following up on removing -khtml- and -apple- CSS vendor prefixes

2012-04-05 Thread Adam Barth
One option is to start evaluating the compat implications by disabling the
prefixes in Chrome.  If we have a positive experience we can disable them
in more ports/configurations over time, hopefully arriving where you
suggest while avoiding the stress of rel
On Apr 5, 2012 10:14 AM, Alexey Proskuryakov a...@webkit.org wrote:


 05.04.2012, в 01:08, Adam Barth написал(а):

  Based on this information, I've posted a patch that limits the -apple-
  and -khtml- vendor prefixes to ENABLE(DASHBOARD_SUPPORT):
 
  https://bugs.webkit.org/show_bug.cgi?id=83256
 
  This approach lets ports that wish to remain compatible with Dashboard
  widgets continue to support these prefixes while also letting ports
  that aren't constrained by dashboard widgets disable them, hopefully
  lessening their use on the broader web.

 Guarding on ENABLE(DASHBOARD_SUPPORT) will make it so that these names
 will be available in Safari on Mac, in every Mac application that uses
 WebKit, but not in Safari on Windows or iOS, and not in other WebKit based
 browsers such as Chrome. I don't think that this level of fragmentation is
 good.

 We normally guard Dashboard-only quirks with
 settings-usesDashboardBackwardCompatibilityMode().

 Due to high potential of site breakage, this seems worth a separate
 setting with pre-made plumbing for site-specific quirks, so that ports
 seeing release blocking regressions on important sites wouldn't have to
 undo this change entirely.

 - WBR, Alexey Proskuryakov


___
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


Re: [webkit-dev] Following up on removing -khtml- and -apple- CSS vendor prefixes

2012-04-05 Thread Adam Barth
(Previous email got cut off)

...release blocking bugs.
On Apr 5, 2012 2:25 PM, Adam Barth aba...@webkit.org wrote:

 One option is to start evaluating the compat implications by disabling the
 prefixes in Chrome.  If we have a positive experience we can disable them
 in more ports/configurations over time, hopefully arriving where you
 suggest while avoiding the stress of rel
 On Apr 5, 2012 10:14 AM, Alexey Proskuryakov a...@webkit.org wrote:


 05.04.2012, в 01:08, Adam Barth написал(а):

  Based on this information, I've posted a patch that limits the -apple-
  and -khtml- vendor prefixes to ENABLE(DASHBOARD_SUPPORT):
 
  https://bugs.webkit.org/show_bug.cgi?id=83256
 
  This approach lets ports that wish to remain compatible with Dashboard
  widgets continue to support these prefixes while also letting ports
  that aren't constrained by dashboard widgets disable them, hopefully
  lessening their use on the broader web.

 Guarding on ENABLE(DASHBOARD_SUPPORT) will make it so that these names
 will be available in Safari on Mac, in every Mac application that uses
 WebKit, but not in Safari on Windows or iOS, and not in other WebKit based
 browsers such as Chrome. I don't think that this level of fragmentation is
 good.

 We normally guard Dashboard-only quirks with
 settings-usesDashboardBackwardCompatibilityMode().

 Due to high potential of site breakage, this seems worth a separate
 setting with pre-made plumbing for site-specific quirks, so that ports
 seeing release blocking regressions on important sites wouldn't have to
 undo this change entirely.

 - WBR, Alexey Proskuryakov


___
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev