Re: [webkit-dev] Starting implementation on W3C Filter Effects

2011-11-04 Thread Chris Marrin

On Nov 3, 2011, at 7:00 PM, Charles Pritchard wrote:

 In my experience, implementing filters leads to writing them multiple times 
 for various targets.
 
 I suggest starting with the lowest common denominator before targeting 
 platforms like webgl. I understand that Google is working on an in-software 
 webgl implementation (angle is just a conversion lib); at some point LLVM may 
 have sufficient semantics-- it's certainly been attempted (there's a 
 polyhedron article somewhere on the site).

You're saying you believe Google is developing a version of WebGL that runs 
completely in the CPU? I haven't heard of such a thing and I would be surprised 
if it were true. Running a GLSL shader in software is possible, in fact OSX has 
a software renderer that does just that. And while it can get a few fps with a 
simple shader, it's not practical for serious realtime 3D graphics.

The initial WebKit implementation of CSS filters will use the filter code 
already in the SVG implementation. This does use vector optimizations on some 
platforms for some shaders. So it will be fully CPU based. From there several 
options exist for hardware acceleration, some platform specific and others more 
generic, based on WebGL or some other GPU based acceleration. 

In https://bugs.webkit.org/show_bug.cgi?id=68479 I plan on adding some filter 
infrastructure at the GraphicsLayer level to make it simpler to implement 
layer-based hardware accelerated filters.

-
~Chris
cmar...@apple.com




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


Re: [webkit-dev] DumpRenderTree for the EFL port :)

2011-11-04 Thread Raphael Kubo da Costa
Leandro Pereira lean...@profusion.mobi writes:

 At last, the EFL port of WebKit got a DumpRenderTree implementation!
 We're still working on ironing out a lot of bugs found by some of the
 LayoutTests, but the DRT (and ImageDiff) code has been submitted to
 Bugzilla. It would be awesome if anyone could help reviewing these
 patches.

... And we finally finished upstreaming our work a few weeks ago, with
baselines being committed some time later.

We'd like to thank everyone, especially those who helped review our
changes (eseidel, rniwa, tkent, tonikitoo, kenneth, mrobinson and so
many others).

Cheers!

-- 
Raphael Kubo da Costa
ProFUSION embedded systems
http://profusion.mobi

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


Re: [webkit-dev] Moving WTF out of JavaScriptCore (revisited)

2011-11-04 Thread Kevin Ollivier
Hi Darin,

On Nov 2, 2011, at 4:42 PM, Darin Adler wrote:

 On Nov 2, 2011, at 4:09 PM, Mark Rowe wrote:
 
 There are a few related goals here that I'm aware of:
 a) Separate WTF out of JavaScriptCore since it doesn't logically belong 
 there, but was simply a convenient home for it.
 b) Separate WebCore/platform out of WebCore to help avoid layering 
 violations.
 c) Rework the Mac build process so that we can eliminate forwarding headers 
 and remove the duplication of .xcconfig files.
 
 The process for addressing a) and b) will be similar:
 1) Move the relevant code from its current location to the new location.
 2) Create a new Xcode project that builds the desired output in the 
 appropriate fashion. Update other build systems as is applicable.
 3) Apple starts including the new project in our build process.
 
 Step (2) here involves coming up with a good solution for export control in 
 both the WTF and platform cases. Today we use an explicit .exp file for 
 JavaScriptCore and WebCore on Mac and I believe a .def file in the Apple 
 Windows WebKit port. So there might be a necessary first step of moving to a 
 different export approach. And I know someone has been working on that.

If you guys want to go the route of finishing up the export macros work, let me 
know and I'll see what I can do. I probably can't devote a lot of time to it 
for the next week or two, but I'd like to see this fixed regardless of if it's 
used to move forward the WTF split, obviously, so I can put a higher priority 
on it if I know there are reviewers waiting to land things. :) 

FWIW, I did distinguish between JS and WTF symbol export macros in the work 
I've been doing, so the macros approach will support the split as-is.

Thanks,

Kevin

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

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


Re: [webkit-dev] Moving WTF out of JavaScriptCore (revisited)

2011-11-04 Thread Steve Falkenburg

On Nov 4, 2011, at 8:48 AM, Kevin Ollivier wrote:

 Step (2) here involves coming up with a good solution for export control in 
 both the WTF and platform cases. Today we use an explicit .exp file for 
 JavaScriptCore and WebCore on Mac and I believe a .def file in the Apple 
 Windows WebKit port. So there might be a necessary first step of moving to a 
 different export approach. And I know someone has been working on that.
 
 If you guys want to go the route of finishing up the export macros work, let 
 me know and I'll see what I can do. I probably can't devote a lot of time to 
 it for the next week or two, but I'd like to see this fixed regardless of if 
 it's used to move forward the WTF split, obviously, so I can put a higher 
 priority on it if I know there are reviewers waiting to land things. :) 
 
 FWIW, I did distinguish between JS and WTF symbol export macros in the work 
 I've been doing, so the macros approach will support the split as-is.

If WTF is to be a static library, there's no need to change anything in the 
.def file on Windows.
.def files apply only to DLLs.

FWIW, WTF is already a static library in Apple's Windows port, just 
self-contained inside the JavaScriptCore project. See: 
http://trac.webkit.org/browser/trunk/Source/JavaScriptCore/JavaScriptCore.vcproj/WTF/WTF.vcproj

-steve

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


Re: [webkit-dev] It's time to remove the Haiku port

2011-11-04 Thread Peter Kasting
On Thu, Nov 3, 2011 at 7:32 PM, Ryan Leavengood leaveng...@gmail.comwrote:

 The primary problem with our port right now is some of the developers
 made the choice (which I objected to) to make our own Subversion repo
 containing the WebKit code to make it easier (in their eyes) to
 develop the port.

 Where can we go from here? What does the WebKit project need to see
 from the Haiku maintainers to have us be a supported port again?


It seems like either you should be a private fork/port, or a public
upstreamed one, but not both.  If you want to live in the upstream tree, I
think most of your development work should land quickly in public.  If you
want to work in a separate repository without landing changes back upstream
quickly*, I think it's better to stay private until the point at which that
changes.

*At most I don't think your private repo should be more than a couple weeks
off the public repo.

Based on our experience with the Chromium port I think it would be far
easier on your group to be public and do development directly in the public
tree.

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


Re: [webkit-dev] It's time to remove the Haiku port

2011-11-04 Thread Ryan Leavengood
On Fri, Nov 4, 2011 at 12:33 PM, Peter Kasting pkast...@google.com wrote:

 It seems like either you should be a private fork/port, or a public
 upstreamed one, but not both.  If you want to live in the upstream tree, I
 think most of your development work should land quickly in public.  If you
 want to work in a separate repository without landing changes back upstream
 quickly*, I think it's better to stay private until the point at which that
 changes.

Yes, this was definitely the hard lesson we learned, and as I'll
describe below we are going to move to the latter set up for now.

 *At most I don't think your private repo should be more than a couple weeks
 off the public repo.

Most definitely, I will strive to do that from now on :)

 Based on our experience with the Chromium port I think it would be far
 easier on your group to be public and do development directly in the public
 tree.

That is definitely our end goal. But it seems at this point the Haiku
port is too much of a burden to the WebKit community. I talked to Adam
Barth in IRC last night and we came to an agreement that it is best
*for now* if Haiku maintains a Git repo cloned off the WebKit repo
with a branch containing our port. When our port is further along with
layout tests working, most of the platform files implemented, a
Buildbot, and maintainers with the time and skill to keep our port
up-to-date, we can explore putting our code back in the public WebKit
repo.

This puts the burden on maintaining our port where it belongs: with
our developers. It won't always be fun doing it this way, but I think
using Git will help (as compared to Subversion which is where our
current copy of WebKit is, and now almost 42,000 changesets behind.)

Actually regarding the 42,000 changesets: these have all come in the
last year and a half (), and are almost as many changesets as ever
came before in the current WebKit repo. This is exponential growth!
How is a small port possibly suppose to stay up-to-date under those
conditions? Of course this just means that WebKit is a vibrant project
and you cannot be faulted for that, but I think with this onslaught of
changes it may be time to reconsider past methods of keeping ports
up-to-date. Adam tells me Google has two full-time engineers keeping
the Chromium port up-to-date. I think there is room for improvement in
this area.

Actually I have various thoughts about WebKit platform code which I'm
sure many of you would agree with, but I can express those in another
email. The short version is WebCore should have no platform code or
PLATFORM macros and all platform code should plug in using clean
abstract classes and delegates. Maybe this is an area where I or other
Haiku developers can give back to the WebKit community.

I just hope that when that time comes (and maybe sooner rather than
later) the WebKit community will let us back in and quickly apply our
patches.

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


Re: [webkit-dev] Moving WTF out of JavaScriptCore (revisited)

2011-11-04 Thread Mark Rowe

On 2011-11-04, at 10:57, Kevin Ollivier wrote:

 Hi Steve,
 
 On Nov 4, 2011, at 9:12 AM, Steve Falkenburg wrote:
 
 
 On Nov 4, 2011, at 8:48 AM, Kevin Ollivier wrote:
 
 Step (2) here involves coming up with a good solution for export control 
 in both the WTF and platform cases. Today we use an explicit .exp file for 
 JavaScriptCore and WebCore on Mac and I believe a .def file in the Apple 
 Windows WebKit port. So there might be a necessary first step of moving to 
 a different export approach. And I know someone has been working on that.
 
 If you guys want to go the route of finishing up the export macros work, 
 let me know and I'll see what I can do. I probably can't devote a lot of 
 time to it for the next week or two, but I'd like to see this fixed 
 regardless of if it's used to move forward the WTF split, obviously, so I 
 can put a higher priority on it if I know there are reviewers waiting to 
 land things. :) 
 
 FWIW, I did distinguish between JS and WTF symbol export macros in the work 
 I've been doing, so the macros approach will support the split as-is.
 
 If WTF is to be a static library, there's no need to change anything in the 
 .def file on Windows.
 .def files apply only to DLLs.
 
 Yes, I know, just saying I'd be willing to help if they wanted to go the DLL 
 route. Making it static would make life easier for me also by allowing us to 
 remove the need for WTF symbol exports entirely, of course, so either way is 
 a plus for me.

WTF being a static library doesn't change anything with respect to exports.  It 
will still only be linked by a single dynamic library, and that library will be 
expected to export the necessary symbols for other clients. Doing otherwise 
would cause problems due to multiple instances of WTF's data being created 
(e.g., separate FastMalloc heaps for each library that linked directly to WTF).

- Mark

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


Re: [webkit-dev] Starting implementation on W3C Filter Effects

2011-11-04 Thread Charles Pritchard

On 11/4/11 7:23 AM, Chris Marrin wrote:


On Nov 3, 2011, at 7:00 PM, Charles Pritchard wrote:

In my experience, implementing filters leads to writing them multiple 
times for various targets.


I suggest starting with the lowest common denominator before 
targeting platforms like webgl. I understand that Google is working 
on an in-software webgl implementation (angle is just a conversion 
lib); at some point LLVM may have sufficient semantics-- it's 
certainly been attempted (there's a polyhedron article somewhere on 
the site).


You're saying you believe Google is developing a version of WebGL that 
runs completely in the CPU? I haven't heard of such a thing and I 
would be surprised if it were true. Running a GLSL shader in software 
is possible, in fact OSX has a software renderer that does just that. 
And while it can get a few fps with a simple shader, it's not 
practical for serious realtime 3D graphics.



http://code.google.com/p/chromium/issues/detail?id=91445
a software fallback is in the works

Similarly, here's WebGL implemented in Canvas 2d and ECMAScript:
http://code.google.com/p/cwebgl/

It's certainly the case that CPU rendering will not be practical for 
serious realtime 3D graphics.
There's absolutely a divide between computers that have sufficient GPUs 
and ones that do not.


The initial WebKit implementation of CSS filters will use the filter 
code already in the SVG implementation. This does use vector 
optimizations on some platforms for some shaders. So it will be fully 
CPU based. From there several options exist for hardware acceleration, 
some platform specific and others more generic, based on WebGL or some 
other GPU based acceleration.
I'm a bit behind on the bleeding edge: Is there work / a foundation for 
running these rendering process across multiple cores?


In https://bugs.webkit.org/show_bug.cgi?id=68479 I plan on adding some 
filter infrastructure at the GraphicsLayer level to make it simpler to 
implement layer-based hardware accelerated filters.


Much appreciated.

-Charles

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


Re: [webkit-dev] Moving WTF out of JavaScriptCore (revisited)

2011-11-04 Thread Kevin Ollivier
Hi Mark,

On Nov 4, 2011, at 10:59 AM, Mark Rowe wrote:

 
 On 2011-11-04, at 10:57, Kevin Ollivier wrote:
 
 Hi Steve,
 
 On Nov 4, 2011, at 9:12 AM, Steve Falkenburg wrote:
 
 
 On Nov 4, 2011, at 8:48 AM, Kevin Ollivier wrote:
 
 Step (2) here involves coming up with a good solution for export control 
 in both the WTF and platform cases. Today we use an explicit .exp file 
 for JavaScriptCore and WebCore on Mac and I believe a .def file in the 
 Apple Windows WebKit port. So there might be a necessary first step of 
 moving to a different export approach. And I know someone has been 
 working on that.
 
 If you guys want to go the route of finishing up the export macros work, 
 let me know and I'll see what I can do. I probably can't devote a lot of 
 time to it for the next week or two, but I'd like to see this fixed 
 regardless of if it's used to move forward the WTF split, obviously, so I 
 can put a higher priority on it if I know there are reviewers waiting to 
 land things. :) 
 
 FWIW, I did distinguish between JS and WTF symbol export macros in the 
 work I've been doing, so the macros approach will support the split as-is.
 
 If WTF is to be a static library, there's no need to change anything in the 
 .def file on Windows.
 .def files apply only to DLLs.
 
 Yes, I know, just saying I'd be willing to help if they wanted to go the DLL 
 route. Making it static would make life easier for me also by allowing us to 
 remove the need for WTF symbol exports entirely, of course, so either way is 
 a plus for me.
 
 WTF being a static library doesn't change anything with respect to exports.  
 It will still only be linked by a single dynamic library, and that library 
 will be expected to export the necessary symbols for other clients. Doing 
 otherwise would cause problems due to multiple instances of WTF's data being 
 created (e.g., separate FastMalloc heaps for each library that linked 
 directly to WTF).

So I'm assuming that dynamic library would be JSCore, then? Is the idea 
basically just to have a clean separation between WTF and JSCore build projects?

Thanks,

Kevin

 - Mark
 

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


Re: [webkit-dev] Moving WTF out of JavaScriptCore (revisited)

2011-11-04 Thread Adam Barth
On Fri, Nov 4, 2011 at 11:12 AM, Kevin Ollivier kev...@theolliviers.com wrote:
 So I'm assuming that dynamic library would be JSCore, then? Is the idea
 basically just to have a clean separation between WTF and JSCore build
 projects?

Yes.  Conceptually, WTF is a separate layer from JavaScriptCore.

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


Re: [webkit-dev] Moving WTF out of JavaScriptCore (revisited)

2011-11-04 Thread Adam Barth
Mark,

I've created a stub WTF library at
http://trac.webkit.org/browser/trunk/Source/WTF

Would you be willing to create an appropriate xcodeproj file that
builds Stub.h and Stub.cpp (and integrates with whatever magic is
needed internally at Apple)?  I'm also happy to attempt webkit.org
side of that change if you'd prefer, but I suspect you know better
what the contrains are.

Thanks,
Adam


On Wed, Nov 2, 2011 at 4:47 PM, Adam Barth aba...@webkit.org wrote:
 On Wed, Nov 2, 2011 at 4:35 PM, Mark Rowe mr...@apple.com wrote:
 On 2011-11-02, at 16:32, Adam Barth wrote:
 On Wed, Nov 2, 2011 at 4:09 PM, Mark Rowe mr...@apple.com wrote:
 On 2011-11-02, at 13:23, Adam Barth wrote:
 As discussed previously, I think it would benefit the project to move
 WTF out of JavaScriptCore:

 https://lists.webkit.org/pipermail/webkit-dev/2010-December/015427.html
 https://lists.webkit.org/pipermail/webkit-dev/2011-February/015940.html

 Previously, we've been unable to do this because of Apple's internal
 build process.  In thinking about this problem again recently, I
 wonder if the following would work:

 1) Move JavaScriptCore.xcodeproj from
 Source/JavaScriptCore/JavaScriptCore.xcodeproj to
 Source/JavaScriptCore.xcodeproj.
 2) Change how Apple submits JavaScriptCore to the internal build
 process to submit Source as the code for JavaScriptCore instead of
 Source/JavaScriptCore.
 3) Move Source/JavaScriptCore/WTF to Source/WTF.

 Mark, do you have a sense for whether this plan is feasible?  If not,
 is there another approach that would work better?

 (If my understanding is correct, we could also apply this approach to
 the other xcodeproj files, which would let us get rid of
 ForwardingHeaders and move Source/WebCore/platform to
 Source/Platform.)

 There are a few related goals here that I'm aware of:
 a) Separate WTF out of JavaScriptCore since it doesn't logically belong 
 there, but was simply a convenient home for it.
 b) Separate WebCore/platform out of WebCore to help avoid layering 
 violations.
 c) Rework the Mac build process so that we can eliminate forwarding 
 headers and remove the duplication of .xcconfig files.

 Yes.  These are the goals.

 The process for addressing a) and b) will be similar:
 1) Move the relevant code from its current location to the new location.
 2) Create a new Xcode project that builds the desired output in the 
 appropriate fashion. Update other build systems as is applicable.
 3) Apple starts including the new project in our build process.

 I don't see any benefit or need to move existing Xcode projects as part of 
 this process.  Can you expand on why you included this in your proposal?

 Based on our previous discussions, I was unsure how difficult (3) was
 on your end.  If we can make (a) and (b) happen in the near term
 without moving xcodeproj files around, that would make me a happy
 camper.

 The code moving and the new Xcode project is relatively easy. I'm not sure 
 what will be involved in updating all of the other build systems though.

 I'm happy to coordinate that part of the effort.

 I'm not entirely clear on what we'll need to do to tackle c). My current 
 feeling is that it will mainly involve reshuffling of Apple's build 
 processes rather than any significant changes to WebKit.

 Maybe we should aim to do (a) first, then (b), and then work on (c)
 once we've figured out what needs to happen on Apple's end?

 My recollection of the situation with WebCore/platform is that there are a 
 number of existing layering violations in some ports.  Given the approach 
 outlined above I suspect they may need to be addressed before we can start 
 making progress on b).

 Yes.  Fixing these issues is going to be a fair amount of work.
 Perhaps it would make sense to create a stub Platform project for now,
 which will let us move code from WebCore/platform into Platform as we
 clean up the dependencies.

 Adam

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


Re: [webkit-dev] Moving WTF out of JavaScriptCore (revisited)

2011-11-04 Thread Mark Rowe

On 2011-11-04, at 11:56, Adam Barth wrote:

 Mark,
 
 I've created a stub WTF library at
 http://trac.webkit.org/browser/trunk/Source/WTF
 
 Would you be willing to create an appropriate xcodeproj file that
 builds Stub.h and Stub.cpp (and integrates with whatever magic is
 needed internally at Apple)?  I'm also happy to attempt webkit.org
 side of that change if you'd prefer, but I suspect you know better
 what the contrains are.

Yup, it's on my list.

- Mark

 
 On Wed, Nov 2, 2011 at 4:47 PM, Adam Barth aba...@webkit.org wrote:
 On Wed, Nov 2, 2011 at 4:35 PM, Mark Rowe mr...@apple.com wrote:
 On 2011-11-02, at 16:32, Adam Barth wrote:
 On Wed, Nov 2, 2011 at 4:09 PM, Mark Rowe mr...@apple.com wrote:
 On 2011-11-02, at 13:23, Adam Barth wrote:
 As discussed previously, I think it would benefit the project to move
 WTF out of JavaScriptCore:
 
 https://lists.webkit.org/pipermail/webkit-dev/2010-December/015427.html
 https://lists.webkit.org/pipermail/webkit-dev/2011-February/015940.html
 
 Previously, we've been unable to do this because of Apple's internal
 build process.  In thinking about this problem again recently, I
 wonder if the following would work:
 
 1) Move JavaScriptCore.xcodeproj from
 Source/JavaScriptCore/JavaScriptCore.xcodeproj to
 Source/JavaScriptCore.xcodeproj.
 2) Change how Apple submits JavaScriptCore to the internal build
 process to submit Source as the code for JavaScriptCore instead of
 Source/JavaScriptCore.
 3) Move Source/JavaScriptCore/WTF to Source/WTF.
 
 Mark, do you have a sense for whether this plan is feasible?  If not,
 is there another approach that would work better?
 
 (If my understanding is correct, we could also apply this approach to
 the other xcodeproj files, which would let us get rid of
 ForwardingHeaders and move Source/WebCore/platform to
 Source/Platform.)
 
 There are a few related goals here that I'm aware of:
 a) Separate WTF out of JavaScriptCore since it doesn't logically belong 
 there, but was simply a convenient home for it.
 b) Separate WebCore/platform out of WebCore to help avoid layering 
 violations.
 c) Rework the Mac build process so that we can eliminate forwarding 
 headers and remove the duplication of .xcconfig files.
 
 Yes.  These are the goals.
 
 The process for addressing a) and b) will be similar:
 1) Move the relevant code from its current location to the new location.
 2) Create a new Xcode project that builds the desired output in the 
 appropriate fashion. Update other build systems as is applicable.
 3) Apple starts including the new project in our build process.
 
 I don't see any benefit or need to move existing Xcode projects as part 
 of this process.  Can you expand on why you included this in your 
 proposal?
 
 Based on our previous discussions, I was unsure how difficult (3) was
 on your end.  If we can make (a) and (b) happen in the near term
 without moving xcodeproj files around, that would make me a happy
 camper.
 
 The code moving and the new Xcode project is relatively easy. I'm not sure 
 what will be involved in updating all of the other build systems though.
 
 I'm happy to coordinate that part of the effort.
 
 I'm not entirely clear on what we'll need to do to tackle c). My current 
 feeling is that it will mainly involve reshuffling of Apple's build 
 processes rather than any significant changes to WebKit.
 
 Maybe we should aim to do (a) first, then (b), and then work on (c)
 once we've figured out what needs to happen on Apple's end?
 
 My recollection of the situation with WebCore/platform is that there are a 
 number of existing layering violations in some ports.  Given the approach 
 outlined above I suspect they may need to be addressed before we can start 
 making progress on b).
 
 Yes.  Fixing these issues is going to be a fair amount of work.
 Perhaps it would make sense to create a stub Platform project for now,
 which will let us move code from WebCore/platform into Platform as we
 clean up the dependencies.
 
 Adam
 

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


[webkit-dev] Supporting w3c ref tests and changing our convention

2011-11-04 Thread Ryosuke Niwa
Hi,

There was a discussion about supporting W3C ref tests at TPAC yesterday.
However, there appears to be some disagreement in how we support them.

*Overview*

CSS WG ref tests contain link elements that specify reference files. e.g.

!DOCTYPE html PUBLIC -//W3C//DTD XHTML 1.0 Strict//EN
http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd;html
http://december.com/html/4/element/html.html
xmlns=http://www.w3.org/1999/xhtml;
 head http://december.com/html/4/element/head.html
  title http://december.com/html/4/element/title.htmlCSS Reftest
Reference/title http://december.com/html/4/element/title.html
  link http://december.com/html/4/element/link.html rel=author
title=NAME_OF_AUTHOR href=mailto:EMAIL OR http://CONTACT_PAGE/
link http://december.com/html/4/element/link.html rel=match
href=green-box-ref.xht /
  style http://december.com/html/4/element/style.html
type=text/css![CDATA[   CSS FOR REFERENCE  ]]/style
http://december.com/html/4/element/style.html
 /head http://december.com/html/4/element/head.html
 body http://december.com/html/4/element/body.html
  CONTENT OF REFERENCE
 /body http://december.com/html/4/element/body.html/html
http://december.com/html/4/element/html.html


The highlighted line specifies that the rendered result of this page should
be compared with that of green-box-ref.xht. This is very different from our
current method to use filenames such as -match.html, -mismatch.html, etc..
to identify reference files.

In addition, W3C test suites have a build step, which generates
Mozilla-like test manifest files. This file will contain entries that
identifies tests and corresponding reference files. e.g.


== floats-wrap-bfc-outside-001.xht floats-wrap-bfc-outside-001-ref.xht
== floats-wrap-top-below-bfc-001l.xht floats-wrap-top-below-001l-ref.xht
!= floats-wrap-top-below-bfc-001l.xht floats-wrap-top-below-001l-notref.xht
== floats-wrap-top-below-bfc-001r.xht floats-wrap-top-below-001r-ref.xht
!= floats-wrap-top-below-bfc-001r.xht floats-wrap-top-below-001r-notref.xht

All browser vendors who attended the meeting preferred this format.
Microsoft representatives didn't attend the meeting.

*Link element approach*
Pros:

   - Can reuse same ref. file for multiple tests
   - Can have multiple ref. files for single test
   - Information is self-contained in the test file
   - We may get away with test suite build step

(It turns out that we can't convert W3C ref tests to use WebKit conventions
due to the first two points.)

Cons:

   - Requires us modifying each port's DRT to support this format
   - Adding link elements itself may affect tests (all W3C tests are
   required to have link elements at the moment)
   - Hard to understand relationship between files. e.g. if we want to
   figure out which tests use ref.html, we must look at all test files
   - Other browser vendors (Firefox and Opera) prefer manifest file approach


*Manifest file approach*
Pros:

   - Easy to parse, and do not require us modifiying each port's DRT to
   support
   - Easy to tell relationships between files at glance
   - Do not affect tests since manifest files are external to tests
   - Preferred approach of Firefox and Opera

Cons:

   - Have to maintain information in two places, tests and manifests (W3C
   test suites auto-generates manifest files in their build step)
   - Require build step (new W3C tests only have link elements but not
   manifests)


I strongly prefer WebKit use the manifest file approach and deprecate our
current file-name convention because it won't burden each port, and it's
the preferred method of other browser vendors.  Any opinions?
*
*
Best,
Ryosuke Niwa
Software Engineer
Google Inc.
___
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


Re: [webkit-dev] Moving WTF out of JavaScriptCore (revisited)

2011-11-04 Thread Adam Barth
On Fri, Nov 4, 2011 at 12:04 PM, Mark Rowe mr...@apple.com wrote:
 On 2011-11-04, at 11:56, Adam Barth wrote:
 I've created a stub WTF library at
 http://trac.webkit.org/browser/trunk/Source/WTF

 Would you be willing to create an appropriate xcodeproj file that
 builds Stub.h and Stub.cpp (and integrates with whatever magic is
 needed internally at Apple)?  I'm also happy to attempt webkit.org
 side of that change if you'd prefer, but I suspect you know better
 what the contrains are.

 Yup, it's on my list.

Thanks!

Adam


 On Wed, Nov 2, 2011 at 4:47 PM, Adam Barth aba...@webkit.org wrote:
 On Wed, Nov 2, 2011 at 4:35 PM, Mark Rowe mr...@apple.com wrote:
 On 2011-11-02, at 16:32, Adam Barth wrote:
 On Wed, Nov 2, 2011 at 4:09 PM, Mark Rowe mr...@apple.com wrote:
 On 2011-11-02, at 13:23, Adam Barth wrote:
 As discussed previously, I think it would benefit the project to move
 WTF out of JavaScriptCore:

 https://lists.webkit.org/pipermail/webkit-dev/2010-December/015427.html
 https://lists.webkit.org/pipermail/webkit-dev/2011-February/015940.html

 Previously, we've been unable to do this because of Apple's internal
 build process.  In thinking about this problem again recently, I
 wonder if the following would work:

 1) Move JavaScriptCore.xcodeproj from
 Source/JavaScriptCore/JavaScriptCore.xcodeproj to
 Source/JavaScriptCore.xcodeproj.
 2) Change how Apple submits JavaScriptCore to the internal build
 process to submit Source as the code for JavaScriptCore instead of
 Source/JavaScriptCore.
 3) Move Source/JavaScriptCore/WTF to Source/WTF.

 Mark, do you have a sense for whether this plan is feasible?  If not,
 is there another approach that would work better?

 (If my understanding is correct, we could also apply this approach to
 the other xcodeproj files, which would let us get rid of
 ForwardingHeaders and move Source/WebCore/platform to
 Source/Platform.)

 There are a few related goals here that I'm aware of:
 a) Separate WTF out of JavaScriptCore since it doesn't logically belong 
 there, but was simply a convenient home for it.
 b) Separate WebCore/platform out of WebCore to help avoid layering 
 violations.
 c) Rework the Mac build process so that we can eliminate forwarding 
 headers and remove the duplication of .xcconfig files.

 Yes.  These are the goals.

 The process for addressing a) and b) will be similar:
 1) Move the relevant code from its current location to the new location.
 2) Create a new Xcode project that builds the desired output in the 
 appropriate fashion. Update other build systems as is applicable.
 3) Apple starts including the new project in our build process.

 I don't see any benefit or need to move existing Xcode projects as part 
 of this process.  Can you expand on why you included this in your 
 proposal?

 Based on our previous discussions, I was unsure how difficult (3) was
 on your end.  If we can make (a) and (b) happen in the near term
 without moving xcodeproj files around, that would make me a happy
 camper.

 The code moving and the new Xcode project is relatively easy. I'm not sure 
 what will be involved in updating all of the other build systems though.

 I'm happy to coordinate that part of the effort.

 I'm not entirely clear on what we'll need to do to tackle c). My current 
 feeling is that it will mainly involve reshuffling of Apple's build 
 processes rather than any significant changes to WebKit.

 Maybe we should aim to do (a) first, then (b), and then work on (c)
 once we've figured out what needs to happen on Apple's end?

 My recollection of the situation with WebCore/platform is that there are a 
 number of existing layering violations in some ports.  Given the approach 
 outlined above I suspect they may need to be addressed before we can start 
 making progress on b).

 Yes.  Fixing these issues is going to be a fair amount of work.
 Perhaps it would make sense to create a stub Platform project for now,
 which will let us move code from WebCore/platform into Platform as we
 clean up the dependencies.

 Adam



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


Re: [webkit-dev] Supporting w3c ref tests and changing our convention

2011-11-04 Thread Hayato Ito
Could you clarify why we have to need to modify DRT if we have Link Element
approach?
I guess one of the reasons is the performance. It might be better that we
use DRT to parse and extract reference links from HTML since parsing HTML
using Python might take unacceptable time and might be inaccurate.
Is there any other reasons we should modify DRT to support Link Element
approach?


On Fri, Nov 4, 2011 at 12:34 PM, Ryosuke Niwa rn...@webkit.org wrote:

 Hi,

 There was a discussion about supporting W3C ref tests at TPAC yesterday.
 However, there appears to be some disagreement in how we support them.

 *Overview*

 CSS WG ref tests contain link elements that specify reference files. e.g.

 !DOCTYPE html PUBLIC -//W3C//DTD XHTML 1.0 Strict//EN 
 http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd;html 
 http://december.com/html/4/element/html.html 
 xmlns=http://www.w3.org/1999/xhtml;
  head http://december.com/html/4/element/head.html
   title http://december.com/html/4/element/title.htmlCSS Reftest 
 Reference/title http://december.com/html/4/element/title.html
   link http://december.com/html/4/element/link.html rel=author 
 title=NAME_OF_AUTHOR href=mailto:EMAIL OR http://CONTACT_PAGE/  link 
 http://december.com/html/4/element/link.html rel=match 
 href=green-box-ref.xht /
   style http://december.com/html/4/element/style.html 
 type=text/css![CDATA[   CSS FOR REFERENCE  ]]/style 
 http://december.com/html/4/element/style.html
  /head http://december.com/html/4/element/head.html
  body http://december.com/html/4/element/body.html
   CONTENT OF REFERENCE
  /body http://december.com/html/4/element/body.html/html 
 http://december.com/html/4/element/html.html


 The highlighted line specifies that the rendered result of this page
 should be compared with that of green-box-ref.xht. This is very different
 from our current method to use filenames such as -match.html,
 -mismatch.html, etc.. to identify reference files.

 In addition, W3C test suites have a build step, which generates
 Mozilla-like test manifest files. This file will contain entries that
 identifies tests and corresponding reference files. e.g.


 == floats-wrap-bfc-outside-001.xht floats-wrap-bfc-outside-001-ref.xht
 == floats-wrap-top-below-bfc-001l.xht floats-wrap-top-below-001l-ref.xht
 != floats-wrap-top-below-bfc-001l.xht floats-wrap-top-below-001l-notref.xht
 == floats-wrap-top-below-bfc-001r.xht floats-wrap-top-below-001r-ref.xht
 != floats-wrap-top-below-bfc-001r.xht floats-wrap-top-below-001r-notref.xht

 All browser vendors who attended the meeting preferred this format.
 Microsoft representatives didn't attend the meeting.

 *Link element approach*
 Pros:

- Can reuse same ref. file for multiple tests
- Can have multiple ref. files for single test
- Information is self-contained in the test file
- We may get away with test suite build step

 (It turns out that we can't convert W3C ref tests to use WebKit
 conventions due to the first two points.)

 Cons:

- Requires us modifying each port's DRT to support this format
- Adding link elements itself may affect tests (all W3C tests are
required to have link elements at the moment)
- Hard to understand relationship between files. e.g. if we want to
figure out which tests use ref.html, we must look at all test files
- Other browser vendors (Firefox and Opera) prefer manifest file
approach


 *Manifest file approach*
 Pros:

- Easy to parse, and do not require us modifiying each port's DRT to
support
- Easy to tell relationships between files at glance
- Do not affect tests since manifest files are external to tests
- Preferred approach of Firefox and Opera

 Cons:

- Have to maintain information in two places, tests and manifests (W3C
test suites auto-generates manifest files in their build step)
- Require build step (new W3C tests only have link elements but not
manifests)


 I strongly prefer WebKit use the manifest file approach and deprecate our
 current file-name convention because it won't burden each port, and it's
 the preferred method of other browser vendors.  Any opinions?
 *
 *
 Best,
 Ryosuke Niwa
 Software Engineer
 Google Inc.



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




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


Re: [webkit-dev] Supporting w3c ref tests and changing our convention

2011-11-04 Thread Ryosuke Niwa
On Fri, Nov 4, 2011 at 1:32 PM, Hayato Ito hay...@chromium.org wrote:

 Could you clarify why we have to need to modify DRT if we have Link
 Element approach?
 I guess one of the reasons is the performance. It might be better that we
 use DRT to parse and extract reference links from HTML since parsing HTML
 using Python might take unacceptable time and might be inaccurate.
 Is there any other reasons we should modify DRT to support Link Element
 approach?


That's the primary reason. I can see that there are more than 100,000 .xht
files just in css2.1 test suite, and the number is growing. If we include
css3, and other w3c test suites, we'll end up having tens of thousands of
tests, if not millions.

In addition, link element approach doesn't scale well in that there's no
mandate as to how reference files are named, so we'll end up needlessly
parsing all reference files as well depending on the order they appear in
the directory.

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


Re: [webkit-dev] Supporting w3c ref tests and changing our convention

2011-11-04 Thread Dirk Pranke
On Fri, Nov 4, 2011 at 1:32 PM, Hayato Ito hay...@chromium.org wrote:
 Could you clarify why we have to need to modify DRT if we have Link Element
 approach?
 I guess one of the reasons is the performance. It might be better that we
 use DRT to parse and extract reference links from HTML since parsing HTML
 using Python might take unacceptable time and might be inaccurate.
 Is there any other reasons we should modify DRT to support Link Element
 approach?

I agree with Ito-san that I don't think you have to modify each DRT. I
see no reason to think that we couldn't parse the files reliably in
NRWT. It's unclear how much of a perf impact there would be but that's
easy enough to determine - I would expect it to be minimal compared to
the time of actually rendering a page.

That said, supporting a manifest file is clearly fairly easy to do in
NRWT, and presumably easy to add as a build step (e.g., make DRT
depend on it) and may have the added bonus of allowing us to run
various mozilla reference test suites that wouldn't be using the
links, so I'm fine with that.

I think we should voice a concern w/ the W3C that their tests must
follow consistent naming styles (for maintainability); we shouldn't
view the links and the  manifest step as a carte blanche to name tests
and results whatever they want.

Separately, if we are throwing around numbers in the range of 100K
for tests to run, we should consider when we actually want to run them
- i.e., what will the cycle time be if we run them on every change,
etc.? But that can be dealt with when we get there.

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


Re: [webkit-dev] Supporting w3c ref tests and changing our convention

2011-11-04 Thread Hayato Ito
If we import a bunch of w3c reftests in the future, it sounds reasonable
and unavoidable to use manifest file, assuming the manifest file is
auto-generated by w3c's build process.

But I'd like to leave an option to developers to write reftests more
casually without worrying about maintaing the manifest file.

At the same time, I don't want to increase the number of ways to write/run
tests anymore.

So that would be great that we have the best of both worlds somehow.


On Fri, Nov 4, 2011 at 1:39 PM, Ryosuke Niwa rn...@webkit.org wrote:

 On Fri, Nov 4, 2011 at 1:32 PM, Hayato Ito hay...@chromium.org wrote:

 Could you clarify why we have to need to modify DRT if we have Link
 Element approach?
 I guess one of the reasons is the performance. It might be better that we
 use DRT to parse and extract reference links from HTML since parsing HTML
 using Python might take unacceptable time and might be inaccurate.
 Is there any other reasons we should modify DRT to support Link Element
 approach?


 That's the primary reason. I can see that there are more than 100,000 .xht
 files just in css2.1 test suite, and the number is growing. If we include
 css3, and other w3c test suites, we'll end up having tens of thousands of
 tests, if not millions.

 In addition, link element approach doesn't scale well in that there's no
 mandate as to how reference files are named, so we'll end up needlessly
 parsing all reference files as well depending on the order they appear in
 the directory.

 - Ryosuke




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


Re: [webkit-dev] Supporting w3c ref tests and changing our convention

2011-11-04 Thread Ryosuke Niwa
On Fri, Nov 4, 2011 at 1:47 PM, Dirk Pranke dpra...@chromium.org wrote:

 It's unclear how much of a perf impact there would be but that's
 easy enough to determine - I would expect it to be minimal compared to
 the time of actually rendering a page.


Since I expect w3c to end up having hundreds of thousands of tests, I see
any performance implication to be a serious threat.

 That said, supporting a manifest file is clearly fairly easy to do in
 NRWT, and presumably easy to add as a build step (e.g., make DRT
 depend on it) and may have the added bonus of allowing us to run
 various mozilla reference test suites that wouldn't be using the
 links, so I'm fine with that.


In fact, we already have a patch to support it on :
https://bugs.webkit.org/show_bug.cgi?id=66837
and https://bugs.webkit.org/show_bug.cgi?id=71567

I think we should voice a concern w/ the W3C that their tests must
 follow consistent naming styles (for maintainability); we shouldn't
 view the links and the  manifest step as a carte blanche to name tests
 and results whatever they want.


Yes, I have. More comments on http://www.w3.org/html/wg/wiki/Testing or
http://wiki.csswg.org/test will be helpful.

Separately, if we are throwing around numbers in the range of 100K
 for tests to run, we should consider when we actually want to run them
 - i.e., what will the cycle time be if we run them on every change,
 etc.? But that can be dealt with when we get there.


We need separate bots in the long term for sure.

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


Re: [webkit-dev] Supporting w3c ref tests and changing our convention

2011-11-04 Thread Ryan Leavengood
On Fri, Nov 4, 2011 at 4:47 PM, Dirk Pranke dpra...@chromium.org wrote:

 Separately, if we are throwing around numbers in the range of 100K
 for tests to run, we should consider when we actually want to run them
 - i.e., what will the cycle time be if we run them on every change,
 etc.? But that can be dealt with when we get there.

I would also like to throw out the idea of pulling the layout tests
out into their own repo, maybe even per platform. Currently the huge
number of layout tests in WebKit make many git operations unbearably
slow, such as git status, which basically does a stat() on every file
in a repo when the plain git status is used. Even on Linux where
stat() is mega-fast it takes many seconds to show git status even on a
clean checkout (at least on my laptop, which admittedly isn't the
fastest.) It is worse on other platforms with a slower stat().

But I expect there might be a lot of pushback on such an idea,
especially just to make one tool run faster.

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


Re: [webkit-dev] It's time to remove the Haiku port

2011-11-04 Thread Dirk Pranke
On Fri, Nov 4, 2011 at 10:56 AM, Ryan Leavengood leaveng...@gmail.com wrote:
 Actually regarding the 42,000 changesets: these have all come in the
 last year and a half (), and are almost as many changesets as ever
 came before in the current WebKit repo. This is exponential growth!
 How is a small port possibly suppose to stay up-to-date under those
 conditions? Of course this just means that WebKit is a vibrant project
 and you cannot be faulted for that, but I think with this onslaught of
 changes it may be time to reconsider past methods of keeping ports
 up-to-date. Adam tells me Google has two full-time engineers keeping
 the Chromium port up-to-date. I think there is room for improvement in
 this area.

As far as keeping ports up-to-date goes, it seems like (in my limited
experience) there's roughly four kinds of changes you have to work
about: changes to tests that require new baselines, changes to the
build system (adding, renaming, deleting files), changes to
platform-specific core functionality (usually o/s-specific hooks), and
changes to platform functionality (e.g., webaudio).

Hopefully we will start writing more and more tests as reftests, to
address the first category. Moving to one of the existing cross-port
build mechanisms like GYP or CMake would help.

Changes to core platform code in the third category are hopefully
pretty rare, and I think you're just out of luck for the fourth
category, but hopefully they're done in a modular manner and at least
easy to enable/disable for a while.

I think the more feedback we can get on what sorts of things you do
have to do to keep up to date, the better things will get.

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


[webkit-dev] Putting layout tests on a separate repository (was Supporting w3c ref tests and changing our convention)

2011-11-04 Thread Ryosuke Niwa
On Fri, Nov 4, 2011 at 2:39 PM, Ryan Leavengood leaveng...@gmail.comwrote:

 I would also like to throw out the idea of pulling the layout tests
 out into their own repo, maybe even per platform.


How do we keep webkit/layout repositories in sync?


 Currently the huge number of layout tests in WebKit make many git
 operations unbearably
 slow, such as git status, which basically does a stat() on every file in a
 repo when the plain git status is used. Even on Linux where stat() is
 mega-fast it takes many seconds to show git status even on a clean checkout
 (at least on my laptop, which admittedly isn't the
 fastest.) It is worse on other platforms with a slower stat().


Even if we put in a separate repo, you'll likely need to checkout all of
them anyway because if your patch ever require baselines in some port that
you don't work on, you'll still need to rebaseline them.

But I expect there might be a lot of pushback on such an idea,
 especially just to make one tool run faster.


Indeed, I'm against this idea.

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


Re: [webkit-dev] It's time to remove the Haiku port

2011-11-04 Thread Ryan Leavengood
On Fri, Nov 4, 2011 at 5:40 PM, Dirk Pranke dpra...@chromium.org wrote:

 Hopefully we will start writing more and more tests as reftests, to
 address the first category. Moving to one of the existing cross-port
 build mechanisms like GYP or CMake would help.

Yeah I will attempt to make use of GYP myself for the Haiku port,
except I'll need to add a new backend to generate Jamfiles, since Jam
is the preferred Haiku build system.

 Changes to core platform code in the third category are hopefully
 pretty rare, and I think you're just out of luck for the fourth
 category, but hopefully they're done in a modular manner and at least
 easy to enable/disable for a while.

 I think the more feedback we can get on what sorts of things you do
 have to do to keep up to date, the better things will get.

For additions to platform, I think a harmless default implementation
should suffice. Having to add an empty method to a port just to
satisfy the compiler seems like a lot of trouble. I can't find a good
example at the moment, so maybe it really isn't an issue.

Looking over some of the changes made to the Haiku port by non-Haiku
people just shows a lot of renames and changing of method arguments
and return values in the platform directory. This tells me that
platform really isn't any sort of API (and yes I know it isn't meant
to be) but maybe it should be? I personally would like to see WebCore
evolve into being as self-contained as possible, with clear APIs for a
platform to attach to. Maybe the new Platform directory will be the
start of this, and if so, I applaud the effort. Right now the platform
coupling is pretty bad. I hope one day #if PLATFORM(X) doesn't exist
in WebCore, at least not where such code adds a class member or
methods to core platform classes.

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


Re: [webkit-dev] Putting layout tests on a separate repository (was Supporting w3c ref tests and changing our convention)

2011-11-04 Thread Ryan Leavengood
On Fri, Nov 4, 2011 at 5:58 PM, Ryosuke Niwa rn...@webkit.org wrote:

 Indeed, I'm against this idea.

You make good points. There may be solutions to your objections, but
they might not be much better than having a slow git status right now.

Do other people who use WebKit with Git see this problem?  If so, what
do you do to stay productive? If not then I'll just be sure to only
develop WebKit on a faster machine (which I do have and look forward
to testing soon.)

Sorry for hijacking the other thread, thanks for changing the subject.

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


Re: [webkit-dev] It's time to remove the Haiku port

2011-11-04 Thread David Levin
On Fri, Nov 4, 2011 at 3:04 PM, Ryan Leavengood leaveng...@gmail.comwrote:

 I personally would like to see WebCore
 evolve into being as self-contained as possible, with clear APIs for a
 platform to attach to.


I suspect the pain hasn't been big enough so far for any
person/organization to decide to address this.

You do sound enthusiastic about it though, and I suspect there would be
people willing to review these changes as long as they didn't slow down
WebKit or make it harder to maintain.

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


Re: [webkit-dev] Putting layout tests on a separate repository (was Supporting w3c ref tests and changing our convention)

2011-11-04 Thread Ryosuke Niwa
On Fri, Nov 4, 2011 at 3:09 PM, Ryan Leavengood leaveng...@gmail.comwrote:

 You make good points. There may be solutions to your objections, but
 they might not be much better than having a slow git status right now.

 Do other people who use WebKit with Git see this problem?  If so, what
 do you do to stay productive? If not then I'll just be sure to only
 develop WebKit on a faster machine (which I do have and look forward
 to testing soon.)


I use even slower svn and never had an issue with it except when I
revert/merge commits.

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


[webkit-dev] Removing Support for Python 2.5

2011-11-04 Thread Eric Seidel
Now that Apple has removed the Leopard build bot (and presumably
stopped supporting WebKit on Leopard), all webkit platforms I know of
have Python 2.6 or higher.

My plan is to remove all of our 2.5 supporting code in the next week,
requiring Python 2.6 or later for WebKit.

Let me know if this will be an issue for you.

Thanks!

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


Re: [webkit-dev] Removing Support for Python 2.5

2011-11-04 Thread Nico Weber
The chromium port still has a bot that runs tests (but doesn't build) on 10.5.

Nico

On Fri, Nov 4, 2011 at 3:20 PM, Eric Seidel e...@webkit.org wrote:
 Now that Apple has removed the Leopard build bot (and presumably
 stopped supporting WebKit on Leopard), all webkit platforms I know of
 have Python 2.6 or higher.

 My plan is to remove all of our 2.5 supporting code in the next week,
 requiring Python 2.6 or later for WebKit.

 Let me know if this will be an issue for you.

 Thanks!

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

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


Re: [webkit-dev] It's time to remove the Haiku port

2011-11-04 Thread Ryan Leavengood
On Fri, Nov 4, 2011 at 6:12 PM, David Levin le...@chromium.org wrote:

 I suspect the pain hasn't been big enough so far for any person/organization
 to decide to address this.

Well it may not really be worth the trouble, I just always found the
#ifdefs in WebCore/platform to be a little smelly. But they work.

 You do sound enthusiastic about it though, and I suspect there would be
 people willing to review these changes as long as they didn't slow down
 WebKit or make it harder to maintain.

That is good to know. There may be a time when I do this work, but I
have bigger fish to fry at the moment with updating the Haiku port in
our own repo, and my open source time is fairly limited currently (in
case it isn't obvious since it took a month and a half to notice our
port was removed from WebKit.)

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


Re: [webkit-dev] Putting layout tests on a separate repository (was Supporting w3c ref tests and changing our convention)

2011-11-04 Thread Alan Stearns
On 11/4/11 3:09 PM, Ryan Leavengood leaveng...@gmail.com wrote:

 On Fri, Nov 4, 2011 at 5:58 PM, Ryosuke Niwa rn...@webkit.org wrote:
 
 Indeed, I'm against this idea.
 
 You make good points. There may be solutions to your objections, but
 they might not be much better than having a slow git status right now.
 
 Do other people who use WebKit with Git see this problem?  If so, what
 do you do to stay productive? If not then I'll just be sure to only
 develop WebKit on a faster machine (which I do have and look forward
 to testing soon.)

Note that supporting reftests has the possibility of slowing LayoutTests
folder growth for WebKit-specific tests. If you have the choice of writing a
reftest with a single html reference as the expected result, you should not
get a proliferation of dumprendertree or png baselines in the platform
folder.

Once we figure out how to support imported reftests, we should be
encouraging people to use reftests internally (even for tests we have no
intention of pushing to the W3C) instead of dumprendertree or pixel tests
(where possible - I assume reftests won't always work for visual tests).

Alan

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


Re: [webkit-dev] Removing Support for Python 2.5

2011-11-04 Thread Ojan Vafai
I believe the chromium port always uses 2.6 though, no?

On Fri, Nov 4, 2011 at 3:23 PM, Nico Weber tha...@chromium.org wrote:

 The chromium port still has a bot that runs tests (but doesn't build) on
 10.5.

 Nico

 On Fri, Nov 4, 2011 at 3:20 PM, Eric Seidel e...@webkit.org wrote:
  Now that Apple has removed the Leopard build bot (and presumably
  stopped supporting WebKit on Leopard), all webkit platforms I know of
  have Python 2.6 or higher.
 
  My plan is to remove all of our 2.5 supporting code in the next week,
  requiring Python 2.6 or later for WebKit.
 
  Let me know if this will be an issue for you.
 
  Thanks!
 
  -eric
  ___
  webkit-dev mailing list
  webkit-dev@lists.webkit.org
  http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
 
 ___
 webkit-dev mailing list
 webkit-dev@lists.webkit.org
 http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev

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


Re: [webkit-dev] It's time to remove the Haiku port

2011-11-04 Thread David Levin
On Fri, Nov 4, 2011 at 3:24 PM, Ryan Leavengood leaveng...@gmail.comwrote:

 There may be a time when I do this work, but I have bigger fish to fry at
 the moment...


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


Re: [webkit-dev] Removing Support for Python 2.5

2011-11-04 Thread Adam Barth
Yes, Chromium versions its Python independently from the OS.

Adam


On Fri, Nov 4, 2011 at 3:25 PM, Ojan Vafai o...@chromium.org wrote:
 I believe the chromium port always uses 2.6 though, no?

 On Fri, Nov 4, 2011 at 3:23 PM, Nico Weber tha...@chromium.org wrote:

 The chromium port still has a bot that runs tests (but doesn't build) on
 10.5.

 Nico

 On Fri, Nov 4, 2011 at 3:20 PM, Eric Seidel e...@webkit.org wrote:
  Now that Apple has removed the Leopard build bot (and presumably
  stopped supporting WebKit on Leopard), all webkit platforms I know of
  have Python 2.6 or higher.
 
  My plan is to remove all of our 2.5 supporting code in the next week,
  requiring Python 2.6 or later for WebKit.
 
  Let me know if this will be an issue for you.
 
  Thanks!
 
  -eric
  ___
  webkit-dev mailing list
  webkit-dev@lists.webkit.org
  http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
 
 ___
 webkit-dev mailing list
 webkit-dev@lists.webkit.org
 http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


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


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


Re: [webkit-dev] It's time to remove the Haiku port

2011-11-04 Thread Ryan Leavengood
On Fri, Nov 4, 2011 at 6:37 PM, David Levin le...@chromium.org wrote:

 Exactly :)

What are you saying, the rest of the WebKit community doesn't want to
spend weeks perfecting the architecture to make my life easier? :)

When the need comes, it'll be done. Which may be never, but that's life.

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


Re: [webkit-dev] Removing Support for Python 2.5

2011-11-04 Thread Tony Chang
Are you sure?  This output has references
to System/Library/Frameworks/Python.framework/Versions/2.5.  I also thought
that's why NRWT was slow on the Leopard bots: python 2.5 doesn't have the
multiprocess module.

http://build.chromium.org/p/chromium.webkit/builders/Webkit%20Mac10.5%20%28dbg%29%281%29/builds/4090/steps/webkit_tests/logs/stdio

It may just be a bug that these bots aren't using python2.6.

On Fri, Nov 4, 2011 at 3:40 PM, Adam Barth aba...@webkit.org wrote:

 Yes, Chromium versions its Python independently from the OS.

 Adam


 On Fri, Nov 4, 2011 at 3:25 PM, Ojan Vafai o...@chromium.org wrote:
  I believe the chromium port always uses 2.6 though, no?
 
  On Fri, Nov 4, 2011 at 3:23 PM, Nico Weber tha...@chromium.org wrote:
 
  The chromium port still has a bot that runs tests (but doesn't build) on
  10.5.
 
  Nico
 
  On Fri, Nov 4, 2011 at 3:20 PM, Eric Seidel e...@webkit.org wrote:
   Now that Apple has removed the Leopard build bot (and presumably
   stopped supporting WebKit on Leopard), all webkit platforms I know of
   have Python 2.6 or higher.
  
   My plan is to remove all of our 2.5 supporting code in the next week,
   requiring Python 2.6 or later for WebKit.
  
   Let me know if this will be an issue for you.
  
   Thanks!
  
   -eric
   ___
   webkit-dev mailing list
   webkit-dev@lists.webkit.org
   http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
  
  ___
  webkit-dev mailing list
  webkit-dev@lists.webkit.org
  http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
 
 
  ___
  webkit-dev mailing list
  webkit-dev@lists.webkit.org
  http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
 
 
 ___
 webkit-dev mailing list
 webkit-dev@lists.webkit.org
 http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev

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


Re: [webkit-dev] Supporting w3c ref tests and changing our convention

2011-11-04 Thread Ojan Vafai
I don't see any need for manifest files. Needing to maintain information
about a test somewhere other than in the test itself or in the expected
result file is a significant maintenance burden. We should avoid it if we
can.

On Fri, Nov 4, 2011 at 2:00 PM, Ryosuke Niwa rn...@webkit.org wrote:

 On Fri, Nov 4, 2011 at 1:47 PM, Dirk Pranke dpra...@chromium.org wrote:

 It's unclear how much of a perf impact there would be but that's
 easy enough to determine - I would expect it to be minimal compared to
 the time of actually rendering a page.


 Since I expect w3c to end up having hundreds of thousands of tests, I see
 any performance implication to be a serious threat.


There is no inherent performance problem that I can see. We just need to
structure things in a way that avoids performance problems. This only
requires that we ensure that all reference files are either themselves
tests or have ref in the name and/or path. Even if the W3C and/or Mozilla
test suites don't end up enforcing this requirement we can check in a
script to Tools/Scripts that restructures the tests appropriately before we
commit them to our tree.

The performance benefits of the manifest files could be addressed by not
walking the tree before running the tests. We only do that now because that
was the expedient way to write the code. If walking the tree turns out to
be a performance problem down the road, we can run the tests as we walk the
tree. If that's still too slow, we can generate a transient manifest file
that goes in your output directory.

Separately, if we are throwing around numbers in the range of 100K

  for tests to run, we should consider when we actually want to run them
 - i.e., what will the cycle time be if we run them on every change,
 etc.? But that can be dealt with when we get there.


 We need separate bots in the long term for sure.


I don't see what's special about reftests that we'd run them on a separate
bot. We might decide to shard test running across different bots in some
way, but sharding by test type seems unhelpful.
___
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


Re: [webkit-dev] Removing Support for Python 2.5

2011-11-04 Thread Adam Barth
I misremembered.  Looking at depot_tools, it seems Chromium only does
this on Windows.

Looks like we might need to upgrade the Chromium bots to use 2.6.
Python 2.5 is super old at this point.

Adam


On Fri, Nov 4, 2011 at 4:01 PM, Tony Chang t...@chromium.org wrote:
 Are you sure?  This output has references
 to System/Library/Frameworks/Python.framework/Versions/2.5.  I also thought
 that's why NRWT was slow on the Leopard bots: python 2.5 doesn't have the
 multiprocess module.
 http://build.chromium.org/p/chromium.webkit/builders/Webkit%20Mac10.5%20%28dbg%29%281%29/builds/4090/steps/webkit_tests/logs/stdio

 It may just be a bug that these bots aren't using python2.6.

 On Fri, Nov 4, 2011 at 3:40 PM, Adam Barth aba...@webkit.org wrote:

 Yes, Chromium versions its Python independently from the OS.

 Adam


 On Fri, Nov 4, 2011 at 3:25 PM, Ojan Vafai o...@chromium.org wrote:
  I believe the chromium port always uses 2.6 though, no?
 
  On Fri, Nov 4, 2011 at 3:23 PM, Nico Weber tha...@chromium.org wrote:
 
  The chromium port still has a bot that runs tests (but doesn't build)
  on
  10.5.
 
  Nico
 
  On Fri, Nov 4, 2011 at 3:20 PM, Eric Seidel e...@webkit.org wrote:
   Now that Apple has removed the Leopard build bot (and presumably
   stopped supporting WebKit on Leopard), all webkit platforms I know of
   have Python 2.6 or higher.
  
   My plan is to remove all of our 2.5 supporting code in the next week,
   requiring Python 2.6 or later for WebKit.
  
   Let me know if this will be an issue for you.
  
   Thanks!
  
   -eric
   ___
   webkit-dev mailing list
   webkit-dev@lists.webkit.org
   http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
  
  ___
  webkit-dev mailing list
  webkit-dev@lists.webkit.org
  http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
 
 
  ___
  webkit-dev mailing list
  webkit-dev@lists.webkit.org
  http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
 
 
 ___
 webkit-dev mailing list
 webkit-dev@lists.webkit.org
 http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


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


Re: [webkit-dev] Removing Support for Python 2.5

2011-11-04 Thread Eric Seidel
For those wishing to follow along at home (or just to spectate at the
epic-hack that was python 2.5 support), the bug is
https://bugs.webkit.org/show_bug.cgi?id=71593.

On Fri, Nov 4, 2011 at 4:03 PM, Adam Barth aba...@webkit.org wrote:
 I misremembered.  Looking at depot_tools, it seems Chromium only does
 this on Windows.

 Looks like we might need to upgrade the Chromium bots to use 2.6.
 Python 2.5 is super old at this point.

 Adam


 On Fri, Nov 4, 2011 at 4:01 PM, Tony Chang t...@chromium.org wrote:
 Are you sure?  This output has references
 to System/Library/Frameworks/Python.framework/Versions/2.5.  I also thought
 that's why NRWT was slow on the Leopard bots: python 2.5 doesn't have the
 multiprocess module.
 http://build.chromium.org/p/chromium.webkit/builders/Webkit%20Mac10.5%20%28dbg%29%281%29/builds/4090/steps/webkit_tests/logs/stdio

 It may just be a bug that these bots aren't using python2.6.

 On Fri, Nov 4, 2011 at 3:40 PM, Adam Barth aba...@webkit.org wrote:

 Yes, Chromium versions its Python independently from the OS.

 Adam


 On Fri, Nov 4, 2011 at 3:25 PM, Ojan Vafai o...@chromium.org wrote:
  I believe the chromium port always uses 2.6 though, no?
 
  On Fri, Nov 4, 2011 at 3:23 PM, Nico Weber tha...@chromium.org wrote:
 
  The chromium port still has a bot that runs tests (but doesn't build)
  on
  10.5.
 
  Nico
 
  On Fri, Nov 4, 2011 at 3:20 PM, Eric Seidel e...@webkit.org wrote:
   Now that Apple has removed the Leopard build bot (and presumably
   stopped supporting WebKit on Leopard), all webkit platforms I know of
   have Python 2.6 or higher.
  
   My plan is to remove all of our 2.5 supporting code in the next week,
   requiring Python 2.6 or later for WebKit.
  
   Let me know if this will be an issue for you.
  
   Thanks!
  
   -eric
   ___
   webkit-dev mailing list
   webkit-dev@lists.webkit.org
   http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
  
  ___
  webkit-dev mailing list
  webkit-dev@lists.webkit.org
  http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
 
 
  ___
  webkit-dev mailing list
  webkit-dev@lists.webkit.org
  http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
 
 
 ___
 webkit-dev mailing list
 webkit-dev@lists.webkit.org
 http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


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

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


Re: [webkit-dev] Removing Support for Python 2.5

2011-11-04 Thread Eric Seidel
Tony: I would recommend upgrading to at least 2.7 on those machines.
http://www.python.org/download/releases/2.7.2/

I would love to switch us to require 2.7 but such would currently too
much of a burden on SnowLeopard-based developers.

-eric

On Fri, Nov 4, 2011 at 4:03 PM, Adam Barth aba...@webkit.org wrote:
 I misremembered.  Looking at depot_tools, it seems Chromium only does
 this on Windows.

 Looks like we might need to upgrade the Chromium bots to use 2.6.
 Python 2.5 is super old at this point.

 Adam


 On Fri, Nov 4, 2011 at 4:01 PM, Tony Chang t...@chromium.org wrote:
 Are you sure?  This output has references
 to System/Library/Frameworks/Python.framework/Versions/2.5.  I also thought
 that's why NRWT was slow on the Leopard bots: python 2.5 doesn't have the
 multiprocess module.
 http://build.chromium.org/p/chromium.webkit/builders/Webkit%20Mac10.5%20%28dbg%29%281%29/builds/4090/steps/webkit_tests/logs/stdio

 It may just be a bug that these bots aren't using python2.6.

 On Fri, Nov 4, 2011 at 3:40 PM, Adam Barth aba...@webkit.org wrote:

 Yes, Chromium versions its Python independently from the OS.

 Adam


 On Fri, Nov 4, 2011 at 3:25 PM, Ojan Vafai o...@chromium.org wrote:
  I believe the chromium port always uses 2.6 though, no?
 
  On Fri, Nov 4, 2011 at 3:23 PM, Nico Weber tha...@chromium.org wrote:
 
  The chromium port still has a bot that runs tests (but doesn't build)
  on
  10.5.
 
  Nico
 
  On Fri, Nov 4, 2011 at 3:20 PM, Eric Seidel e...@webkit.org wrote:
   Now that Apple has removed the Leopard build bot (and presumably
   stopped supporting WebKit on Leopard), all webkit platforms I know of
   have Python 2.6 or higher.
  
   My plan is to remove all of our 2.5 supporting code in the next week,
   requiring Python 2.6 or later for WebKit.
  
   Let me know if this will be an issue for you.
  
   Thanks!
  
   -eric
   ___
   webkit-dev mailing list
   webkit-dev@lists.webkit.org
   http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
  
  ___
  webkit-dev mailing list
  webkit-dev@lists.webkit.org
  http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
 
 
  ___
  webkit-dev mailing list
  webkit-dev@lists.webkit.org
  http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
 
 
 ___
 webkit-dev mailing list
 webkit-dev@lists.webkit.org
 http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


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

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


Re: [webkit-dev] Putting layout tests on a separate repository (was Supporting w3c ref tests and changing our convention)

2011-11-04 Thread Dirk Pranke
On Fri, Nov 4, 2011 at 3:21 PM, Alan Stearns stea...@adobe.com wrote:
 Once we figure out how to support imported reftests, we should be
 encouraging people to use reftests internally (even for tests we have no
 intention of pushing to the W3C) instead of dumprendertree or pixel tests
 (where possible - I assume reftests won't always work for visual tests).

Actually, we should be encouraging people to use reftests now, since
every port but two supports them, and we should be moving the last two
over ASAP.

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


Re: [webkit-dev] Supporting w3c ref tests and changing our convention

2011-11-04 Thread Ryosuke Niwa
On Fri, Nov 4, 2011 at 4:01 PM, Ojan Vafai o...@chromium.org wrote:

 I don't see any need for manifest files.


W3C's build step auto-generates them.

On Fri, Nov 4, 2011 at 2:00 PM, Ryosuke Niwa rn...@webkit.org wrote:

 On Fri, Nov 4, 2011 at 1:47 PM, Dirk Pranke dpra...@chromium.org wrote:

 It's unclear how much of a perf impact there would be but that's
 easy enough to determine - I would expect it to be minimal compared to
 the time of actually rendering a page.


 Since I expect w3c to end up having hundreds of thousands of tests, I see
 any performance implication to be a serious threat.


 There is no inherent performance problem that I can see. We just need to
 structure things in a way that avoids performance problems.


But we don't need to structure them. They're organized in W3C's repo, and
we're just going to import them in some directory; e.g. LayoutTests/w3c/.
If we're adding new tests that we intend to contribute back to W3C, then
those tests should live outside of this directory. The preferred approach,
however, is to add tests to W3C repo first, then import them back to WebKit.

This only requires that we ensure that all reference files are either
 themselves tests or have ref in the name and/or path. Even if the W3C
 and/or Mozilla test suites don't end up enforcing this requirement we can
 check in a script to Tools/Scripts that restructures the tests
 appropriately before we commit them to our tree.


That, to me, is a problem. We try not to modify external tests or
restructure them when we import them. Renaming files will also make it hard
to figure out the correspondence between tests in WebKit's repo and W3C's
repo. It's a significant cognitive stress if one is to contribute tests
back to W3C's test suite.

The performance benefits of the manifest files could be addressed by not
 walking the tree before running the tests. We only do that now because that
 was the expedient way to write the code. If walking the tree turns out to
 be a performance problem down the road, we can run the tests as we walk the
 tree. If that's still too slow, we can generate a transient manifest file
 that goes in your output directory.


Generating a transient manifest file may make sense for WebKit tests but
not for W3C tests although I don't see why generating a transient manifest
file should improve the performance.

Also, I don't see why we should be generating manifest files on demand when
W3C test suite's build step automatically does that for us. We can build 
check tests into the repo once and we'll have manifest files. Since we
shouldn't be modifying those tests anyway, I don't see why we need to
generate manifests on demand.

I don't see what's special about reftests that we'd run them on a separate
 bot. We might decide to shard test running across different bots in some
 way, but sharding by test type seems unhelpful.


I'm not talking about ref-tests. I'm talking about tests imported from the
W3C test suite.

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


Re: [webkit-dev] Supporting w3c ref tests and changing our convention

2011-11-04 Thread Ryosuke Niwa
On Fri, Nov 4, 2011 at 6:31 PM, Ojan Vafai o...@chromium.org wrote:

 On Fri, Nov 4, 2011 at 5:52 PM, Ryosuke Niwa rn...@webkit.org wrote:

 W3C's build step auto-generates them.


 I thought you were arguing that we should use manifest files for all
 reftests because having multiple ways to do things is confusing.


I am, but I'm particularly concerned about W3C tests. It'll be nice if we
had exactly one way of running / writing ref tests. I think we can easily
automate the process of generating manifest files.

The work flow will be as follows:

   1. Write new ref tests using link element
   2. Run some tool (maybe we can teach run-webkit-tests to do it
   automatically)
   3. Upload patch with auto-regenerated manifest file

But we don't need to structure them. They're organized in W3C's repo, and
 we're just going to import them in some directory; e.g. LayoutTests/w3c/.


 I'm reluctantly OK with doing this exclusively for test suites we import
 that come with a manifest file, since the maintenance cost is lower.
 Although, I'd prefer if we limited the number of ways you could mark a test
 as a reftest.


Yeah, I won't be particularly happy about having two ways to write ref
tests.

If we're adding new tests that we intend to contribute back to W3C, then
 those tests should live outside of this directory. The preferred
 approach, however, is to add tests to W3C repo first, then import them back
 to WebKit.


 I don't think this is realistic. For example, for the new flexbox tests,
 we're writing them against WebKit's code and they're changing as we go. In
 addition, all the properties are webkit prefixed. We're not writing test
 suites in isolation. We're writing them as we implement the feature or fix
 the appropriate bugs.


Right, but then you'll need to unprefix those tests and reformat them in
order to upstream the tests anyway.

 I don't see what's special about reftests that we'd run them on a separate
 bot. We might decide to shard test running across different bots in some
 way, but sharding by test type seems unhelpful.


 I'm not talking about ref-tests. I'm talking about tests imported from
 the W3C test suite.


 Even then, I don't see any benefit to not running them as part of our main
 test suite.


It all depends on the number of tests. CSS 2.1 test suite appear to contain
10,000+ tests (there are 10,000+ .xht files). If we're adding CSS3, and
other test suites from W3C, it can easily be in the order of 100,000s given
that W3C is trying to increase the number of tests significantly in the
coming years.

Given we spend 10+ minutes running 26,000+ layout tests on our bots, adding
100,000+ tests will result in quadrupling our bot cycle time (to 40-50+
minutes; or to 3-4 hours for any bots that run pixel tests). It's
definitely nice if we could run them all on the main waterfall with our
regression tests, but slowed cycle time may significantly hinder our
ability to catch new test failures on time.

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


Re: [webkit-dev] Supporting w3c ref tests and changing our convention

2011-11-04 Thread Ryosuke Niwa
On Fri, Nov 4, 2011 at 7:07 PM, Ojan Vafai o...@chromium.org wrote:

 On Fri, Nov 4, 2011 at 7:03 PM, Ryosuke Niwa rn...@webkit.org wrote:

 I am, but I'm particularly concerned about W3C tests. It'll be nice if we
 had exactly one way of running / writing ref tests. I think we can easily
 automate the process of generating manifest files.

 The work flow will be as follows:

1. Write new ref tests using link element
2. Run some tool (maybe we can teach run-webkit-tests to do it
automatically)
3. Upload patch with auto-regenerated manifest file

 It's mainly step 2 that I have a problem with, although I also don't like
 that the test is not self-contained.


Generating manifest file when we add a test is much more efficient than
generating it every time we run tests because we tend to do the latter much
more often than the former.

 If we're adding new tests that we intend to contribute back to W3C, then
 those tests should live outside of this directory. The preferred
 approach, however, is to add tests to W3C repo first, then import them back
 to WebKit.


 I don't think this is realistic. For example, for the new flexbox tests,
 we're writing them against WebKit's code and they're changing as we go. In
 addition, all the properties are webkit prefixed. We're not writing test
 suites in isolation. We're writing them as we implement the feature or fix
 the appropriate bugs.


 Right, but then you'll need to unprefix those tests and reformat them in
 order to upstream the tests anyway.


 Yes, but the point is that it doesn't work to write the tests in the W3C
 repo first because what goes in the W3C repo doesn't work for us until we
 unprefix our implementation.


Yeah, so those tests should be kept separate from W3C test suites.

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


Re: [webkit-dev] Supporting w3c ref tests and changing our convention

2011-11-04 Thread Ojan Vafai
On Fri, Nov 4, 2011 at 7:16 PM, Ryosuke Niwa rn...@webkit.org wrote:

 On Fri, Nov 4, 2011 at 7:07 PM, Ojan Vafai o...@chromium.org wrote:

 On Fri, Nov 4, 2011 at 7:03 PM, Ryosuke Niwa rn...@webkit.org wrote:

 I am, but I'm particularly concerned about W3C tests. It'll be nice if
 we had exactly one way of running / writing ref tests. I think we can
 easily automate the process of generating manifest files.

 The work flow will be as follows:

1. Write new ref tests using link element
2. Run some tool (maybe we can teach run-webkit-tests to do it
automatically)
3. Upload patch with auto-regenerated manifest file

 It's mainly step 2 that I have a problem with, although I also don't
 like that the test is not self-contained.


 Generating manifest file when we add a test is much more efficient than
 generating it every time we run tests because we tend to do the latter much
 more often than the former.


I think we're at an empass here. I don't see that further technical
arguments will sway either of us. I do, however, expect that the vast
majority of webkit developers would prefer to avoid a manifest file given
the way the project has been structured up to now.
___
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev