Bug 156061

Summary: [WebGL2] Turn the ENABLE_WEBGL2 flag on
Product: WebKit Reporter: Antoine Quint <graouts>
Component: WebGLAssignee: Antoine Quint <graouts>
Status: RESOLVED FIXED    
Severity: Normal CC: ap, buildbot, cdumez, commit-queue, dbates, dino, esprehn+autocc, graouts, gyuyoung.kim, jonlee, keith_miller, kondapallykalyan, mark.lam, msaboff, rniwa, roger_fong, saam, tonikitoo, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on: 156166    
Bug Blocks:    
Attachments:
Description Flags
Patch
none
Patch
none
Archive of layout-test-results from ews116 for mac-yosemite
none
Patch
none
Archive of layout-test-results from ews103 for mac-yosemite
none
Archive of layout-test-results from ews104 for mac-yosemite-wk2
none
Archive of layout-test-results from ews117 for mac-yosemite
none
Patch
none
Archive of layout-test-results from ews103 for mac-yosemite
none
Patch
none
Archive of layout-test-results from ews101 for mac-yosemite
none
Archive of layout-test-results from ews105 for mac-yosemite-wk2
none
Archive of layout-test-results from ews116 for mac-yosemite
none
Patch
none
Archive of layout-test-results from ews103 for mac-yosemite
none
Archive of layout-test-results from ews106 for mac-yosemite-wk2
none
Archive of layout-test-results from ews114 for mac-yosemite
none
Patch
none
Archive of layout-test-results from ews102 for mac-yosemite
none
Archive of layout-test-results from ews107 for mac-yosemite-wk2
none
Archive of layout-test-results from ews114 for mac-yosemite
none
Another try at making the bots happy
none
Patch none

Description Antoine Quint 2016-03-31 06:08:03 PDT
A first step towards supporting WebGL 2 is to turn on the ENABLE_WEBGL2 flag.
Comment 1 Radar WebKit Bug Importer 2016-03-31 06:08:29 PDT
<rdar://problem/25463193>
Comment 2 Antoine Quint 2016-03-31 07:19:22 PDT
Created attachment 275278 [details]
Patch
Comment 3 Antoine Quint 2016-03-31 08:34:48 PDT
Created attachment 275293 [details]
Patch
Comment 4 Build Bot 2016-03-31 09:50:22 PDT
Comment on attachment 275293 [details]
Patch

Attachment 275293 [details] did not pass mac-debug-ews (mac):
Output: http://webkit-queues.webkit.org/results/1076019

New failing tests:
js/dom/global-constructors-attributes.html
Comment 5 Build Bot 2016-03-31 09:50:26 PDT
Created attachment 275299 [details]
Archive of layout-test-results from ews116 for mac-yosemite

The attached test failures were seen while running run-webkit-tests on the mac-debug-ews.
Bot: ews116  Port: mac-yosemite  Platform: Mac OS X 10.10.5
Comment 6 Antoine Quint 2016-03-31 13:39:57 PDT
Created attachment 275319 [details]
Patch
Comment 7 Build Bot 2016-03-31 14:40:31 PDT
Comment on attachment 275319 [details]
Patch

Attachment 275319 [details] did not pass mac-ews (mac):
Output: http://webkit-queues.webkit.org/results/1077114

New failing tests:
js/dom/global-constructors-attributes.html
Comment 8 Build Bot 2016-03-31 14:40:35 PDT
Created attachment 275328 [details]
Archive of layout-test-results from ews103 for mac-yosemite

The attached test failures were seen while running run-webkit-tests on the mac-ews.
Bot: ews103  Port: mac-yosemite  Platform: Mac OS X 10.10.5
Comment 9 Build Bot 2016-03-31 14:43:51 PDT
Comment on attachment 275319 [details]
Patch

Attachment 275319 [details] did not pass mac-wk2-ews (mac-wk2):
Output: http://webkit-queues.webkit.org/results/1077118

New failing tests:
js/dom/global-constructors-attributes.html
Comment 10 Build Bot 2016-03-31 14:43:57 PDT
Created attachment 275330 [details]
Archive of layout-test-results from ews104 for mac-yosemite-wk2

The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews.
Bot: ews104  Port: mac-yosemite-wk2  Platform: Mac OS X 10.10.5
Comment 11 Build Bot 2016-03-31 14:55:27 PDT
Comment on attachment 275319 [details]
Patch

Attachment 275319 [details] did not pass mac-debug-ews (mac):
Output: http://webkit-queues.webkit.org/results/1077143

New failing tests:
js/dom/global-constructors-attributes.html
Comment 12 Build Bot 2016-03-31 14:55:31 PDT
Created attachment 275332 [details]
Archive of layout-test-results from ews117 for mac-yosemite

The attached test failures were seen while running run-webkit-tests on the mac-debug-ews.
Bot: ews117  Port: mac-yosemite  Platform: Mac OS X 10.10.5
Comment 13 Alex Christensen 2016-03-31 19:36:34 PDT
Comment on attachment 275319 [details]
Patch

Test failures seem unrelated, but please double check before landing.
r=me
Comment 14 Dean Jackson 2016-03-31 23:16:44 PDT
Comment on attachment 275319 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=275319&action=review

looks good.

> Source/WebCore/html/HTMLCanvasElement.cpp:300
>          || type == "experimental-webgl2"

We should get rid of this line.

> Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp:407
> -        if (type == "experimental-webgl2")
> +        if (type == "webgl2" || type == "experimental-webgl2")

Get rid of experimental-webgl2

> Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp:430
> -    if (type == "experimental-webgl2")
> +    if (type == "webgl2" || type == "experimental-webgl2")

Ditto.
Comment 15 Dean Jackson 2016-03-31 23:17:38 PDT
Comment on attachment 275319 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=275319&action=review

> Source/JavaScriptCore/ChangeLog:5
> +        https://bugs.webkit.org/show_bug.cgi?id=156061
> +

Add the <rdar://problem/25463193> on the line just under the bugzilla link.
Comment 16 Jon Lee 2016-04-01 00:41:40 PDT
(In reply to comment #13)
> Comment on attachment 275319 [details]
> Patch
> 
> Test failures seem unrelated, but please double check before landing.
> r=me

They are, and new baselines are needed:

--- /Volumes/Data/EWS/WebKit/WebKitBuild/Debug/layout-test-results/js/dom/global-constructors-attributes-expected.txt
+++ /Volumes/Data/EWS/WebKit/WebKitBuild/Debug/layout-test-results/js/dom/global-constructors-attributes-actual.txt
@@ -2113,6 +2113,11 @@
 PASS Object.getOwnPropertyDescriptor(global, 'WeakSet').hasOwnProperty('set') is false
 PASS Object.getOwnPropertyDescriptor(global, 'WeakSet').enumerable is false
 PASS Object.getOwnPropertyDescriptor(global, 'WeakSet').configurable is true
+PASS Object.getOwnPropertyDescriptor(global, 'WebGL2RenderingContext').value is WebGL2RenderingContext
+PASS Object.getOwnPropertyDescriptor(global, 'WebGL2RenderingContext').hasOwnProperty('get') is false
+PASS Object.getOwnPropertyDescriptor(global, 'WebGL2RenderingContext').hasOwnProperty('set') is false
+PASS Object.getOwnPropertyDescriptor(global, 'WebGL2RenderingContext').enumerable is false
+PASS Object.getOwnPropertyDescriptor(global, 'WebGL2RenderingContext').configurable is true
 PASS Object.getOwnPropertyDescriptor(global, 'WebGLActiveInfo').value is WebGLActiveInfo
 PASS Object.getOwnPropertyDescriptor(global, 'WebGLActiveInfo').hasOwnProperty('get') is false
 PASS Object.getOwnPropertyDescriptor(global, 'WebGLActiveInfo').hasOwnProperty('set') is false
@@ -2188,6 +2193,11 @@
 PASS Object.getOwnPropertyDescriptor(global, 'WebGLUniformLocation').hasOwnProperty('set') is false
 PASS Object.getOwnPropertyDescriptor(global, 'WebGLUniformLocation').enumerable is false
 PASS Object.getOwnPropertyDescriptor(global, 'WebGLUniformLocation').configurable is true
+PASS Object.getOwnPropertyDescriptor(global, 'WebGLVertexArrayObject').value is WebGLVertexArrayObject
+PASS Object.getOwnPropertyDescriptor(global, 'WebGLVertexArrayObject').hasOwnProperty('get') is false
+PASS Object.getOwnPropertyDescriptor(global, 'WebGLVertexArrayObject').hasOwnProperty('set') is false
+PASS Object.getOwnPropertyDescriptor(global, 'WebGLVertexArrayObject').enumerable is false
+PASS Object.getOwnPropertyDescriptor(global, 'WebGLVertexArrayObject').configurable is true
 PASS Object.getOwnPropertyDescriptor(global, 'WebKitAnimationEvent').value is WebKitAnimationEvent
 PASS Object.getOwnPropertyDescriptor(global, 'WebKitAnimationEvent').hasOwnProperty('get') is false
 PASS Object.getOwnPropertyDescriptor(global, 'WebKitAnimationEvent').hasOwnProperty('set') is false
Comment 17 Antoine Quint 2016-04-01 06:23:20 PDT
Created attachment 275402 [details]
Patch
Comment 18 Build Bot 2016-04-01 07:25:35 PDT
Comment on attachment 275402 [details]
Patch

Attachment 275402 [details] did not pass mac-ews (mac):
Output: http://webkit-queues.webkit.org/results/1081146

New failing tests:
js/dom/global-constructors-attributes.html
Comment 19 Build Bot 2016-04-01 07:25:41 PDT
Created attachment 275403 [details]
Archive of layout-test-results from ews103 for mac-yosemite

The attached test failures were seen while running run-webkit-tests on the mac-ews.
Bot: ews103  Port: mac-yosemite  Platform: Mac OS X 10.10.5
Comment 20 Antoine Quint 2016-04-01 07:27:44 PDT
Created attachment 275404 [details]
Patch
Comment 21 Build Bot 2016-04-01 08:30:32 PDT
Comment on attachment 275404 [details]
Patch

Attachment 275404 [details] did not pass mac-ews (mac):
Output: http://webkit-queues.webkit.org/results/1081382

New failing tests:
js/dom/global-constructors-attributes.html
Comment 22 Build Bot 2016-04-01 08:30:40 PDT
Created attachment 275407 [details]
Archive of layout-test-results from ews101 for mac-yosemite

The attached test failures were seen while running run-webkit-tests on the mac-ews.
Bot: ews101  Port: mac-yosemite  Platform: Mac OS X 10.10.5
Comment 23 Build Bot 2016-04-01 08:32:25 PDT
Comment on attachment 275404 [details]
Patch

Attachment 275404 [details] did not pass mac-wk2-ews (mac-wk2):
Output: http://webkit-queues.webkit.org/results/1081381

New failing tests:
js/dom/global-constructors-attributes.html
Comment 24 Build Bot 2016-04-01 08:32:31 PDT
Created attachment 275408 [details]
Archive of layout-test-results from ews105 for mac-yosemite-wk2

The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews.
Bot: ews105  Port: mac-yosemite-wk2  Platform: Mac OS X 10.10.5
Comment 25 Build Bot 2016-04-01 08:52:08 PDT
Comment on attachment 275404 [details]
Patch

Attachment 275404 [details] did not pass mac-debug-ews (mac):
Output: http://webkit-queues.webkit.org/results/1081393

New failing tests:
js/dom/global-constructors-attributes.html
Comment 26 Build Bot 2016-04-01 08:52:13 PDT
Created attachment 275409 [details]
Archive of layout-test-results from ews116 for mac-yosemite

The attached test failures were seen while running run-webkit-tests on the mac-debug-ews.
Bot: ews116  Port: mac-yosemite  Platform: Mac OS X 10.10.5
Comment 27 Antoine Quint 2016-04-01 09:22:29 PDT
Created attachment 275410 [details]
Patch
Comment 28 Build Bot 2016-04-01 10:24:33 PDT
Comment on attachment 275410 [details]
Patch

Attachment 275410 [details] did not pass mac-ews (mac):
Output: http://webkit-queues.webkit.org/results/1081955

New failing tests:
js/dom/global-constructors-attributes.html
Comment 29 Build Bot 2016-04-01 10:24:39 PDT
Created attachment 275412 [details]
Archive of layout-test-results from ews103 for mac-yosemite

The attached test failures were seen while running run-webkit-tests on the mac-ews.
Bot: ews103  Port: mac-yosemite  Platform: Mac OS X 10.10.5
Comment 30 Build Bot 2016-04-01 10:28:32 PDT
Comment on attachment 275410 [details]
Patch

Attachment 275410 [details] did not pass mac-wk2-ews (mac-wk2):
Output: http://webkit-queues.webkit.org/results/1081960

New failing tests:
js/dom/global-constructors-attributes.html
Comment 31 Build Bot 2016-04-01 10:28:36 PDT
Created attachment 275414 [details]
Archive of layout-test-results from ews106 for mac-yosemite-wk2

The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews.
Bot: ews106  Port: mac-yosemite-wk2  Platform: Mac OS X 10.10.5
Comment 32 Build Bot 2016-04-01 10:52:40 PDT
Comment on attachment 275410 [details]
Patch

Attachment 275410 [details] did not pass mac-debug-ews (mac):
Output: http://webkit-queues.webkit.org/results/1081998

New failing tests:
js/dom/global-constructors-attributes.html
transitions/default-timing-function.html
Comment 33 Build Bot 2016-04-01 10:52:45 PDT
Created attachment 275418 [details]
Archive of layout-test-results from ews114 for mac-yosemite

The attached test failures were seen while running run-webkit-tests on the mac-debug-ews.
Bot: ews114  Port: mac-yosemite  Platform: Mac OS X 10.10.5
Comment 34 Alexey Proskuryakov 2016-04-02 17:09:25 PDT
Comment on attachment 275410 [details]
Patch

Enabling an unimplemented feature is not right. All users of nightlies and Safari Tech Preview will get it.

The right way to do testing at early stages is to have a runtime option, enabled in WebKitTestRunner and DumpRenderTree.
Comment 35 Antoine Quint 2016-04-04 01:12:39 PDT
Created attachment 275533 [details]
Patch
Comment 36 Build Bot 2016-04-04 02:13:54 PDT
Comment on attachment 275533 [details]
Patch

Attachment 275533 [details] did not pass mac-ews (mac):
Output: http://webkit-queues.webkit.org/results/1096756

New failing tests:
js/dom/global-constructors-attributes.html
Comment 37 Build Bot 2016-04-04 02:14:00 PDT
Created attachment 275538 [details]
Archive of layout-test-results from ews102 for mac-yosemite

The attached test failures were seen while running run-webkit-tests on the mac-ews.
Bot: ews102  Port: mac-yosemite  Platform: Mac OS X 10.10.5
Comment 38 Build Bot 2016-04-04 02:17:33 PDT
Comment on attachment 275533 [details]
Patch

Attachment 275533 [details] did not pass mac-wk2-ews (mac-wk2):
Output: http://webkit-queues.webkit.org/results/1096759

New failing tests:
js/dom/global-constructors-attributes.html
Comment 39 Build Bot 2016-04-04 02:17:38 PDT
Created attachment 275539 [details]
Archive of layout-test-results from ews107 for mac-yosemite-wk2

The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews.
Bot: ews107  Port: mac-yosemite-wk2  Platform: Mac OS X 10.10.5
Comment 40 Build Bot 2016-04-04 02:26:46 PDT
Comment on attachment 275533 [details]
Patch

Attachment 275533 [details] did not pass mac-debug-ews (mac):
Output: http://webkit-queues.webkit.org/results/1096768

New failing tests:
js/dom/global-constructors-attributes.html
Comment 41 Build Bot 2016-04-04 02:26:51 PDT
Created attachment 275541 [details]
Archive of layout-test-results from ews114 for mac-yosemite

The attached test failures were seen while running run-webkit-tests on the mac-debug-ews.
Bot: ews114  Port: mac-yosemite  Platform: Mac OS X 10.10.5
Comment 42 Antoine Quint 2016-04-04 07:10:37 PDT
(In reply to comment #34)
> Comment on attachment 275410 [details]
> Patch
> 
> Enabling an unimplemented feature is not right. All users of nightlies and
> Safari Tech Preview will get it.
> 
> The right way to do testing at early stages is to have a runtime option,
> enabled in WebKitTestRunner and DumpRenderTree.

Good point. Will cover this in https://bugs.webkit.org/show_bug.cgi?id=156166 and ensure this is landed before this bug lands.
Comment 43 Antoine Quint 2016-04-04 07:56:33 PDT
Created attachment 275548 [details]
Another try at making the bots happy
Comment 44 Alexey Proskuryakov 2016-04-04 09:40:34 PDT
Comment on attachment 275548 [details]
Another try at making the bots happy

View in context: https://bugs.webkit.org/attachment.cgi?id=275548&action=review

cq- because this can't land before a runtime option is added.

> Source/WebCore/html/canvas/WebGL2RenderingContext.cpp:58
> +#include <JavaScriptCore/GenericTypedArrayViewInlines.h>
> +#include <JavaScriptCore/JSGenericTypedArrayViewInlines.h>

I think that this works for Cocoa builds, but for Linux builds, the files should have wrappers in ForwardingHeaders, and should be includes as "runtime/GenericTypedArrayViewInlines.h". Windows may have a different yet way to do forwarding headers.
Comment 45 Alexey Proskuryakov 2016-04-04 09:41:30 PDT
Comment on attachment 275548 [details]
Another try at making the bots happy

View in context: https://bugs.webkit.org/attachment.cgi?id=275548&action=review

> LayoutTests/webgl/webgl2-context.html:7
> +if (typeof WebGL2RenderingContext === "undefined" || !(document.createElement("canvas").getContext("webgl2") instanceof WebGL2RenderingContext))
> +    document.getElementById("result").innerHTML = "FAIL";

It would be nice to have this as two separate sub-tests, to make it easier to know which part failed.
Comment 46 Antoine Quint 2016-04-04 11:30:58 PDT
(In reply to comment #45)
> Comment on attachment 275548 [details]
> Another try at making the bots happy
> 
> View in context:
> https://bugs.webkit.org/attachment.cgi?id=275548&action=review
> 
> > LayoutTests/webgl/webgl2-context.html:7
> > +if (typeof WebGL2RenderingContext === "undefined" || !(document.createElement("canvas").getContext("webgl2") instanceof WebGL2RenderingContext))
> > +    document.getElementById("result").innerHTML = "FAIL";
> 
> It would be nice to have this as two separate sub-tests, to make it easier
> to know which part failed.

I'll do this when I land the patch.
Comment 47 Antoine Quint 2016-04-05 07:03:49 PDT
Created attachment 275660 [details]
Patch
Comment 48 WebKit Commit Bot 2016-04-05 09:54:12 PDT
Comment on attachment 275660 [details]
Patch

Clearing flags on attachment: 275660

Committed r199062: <http://trac.webkit.org/changeset/199062>
Comment 49 WebKit Commit Bot 2016-04-05 09:54:20 PDT
All reviewed patches have been landed.  Closing bug.