Web GL API safelisting: Web GL 1.0 vs. 2.0 #168

Open
domenic opened this Issue Feb 14, 2017 · 7 comments

Comments

Projects
None yet
4 participants
@domenic
Member

domenic commented Feb 14, 2017

My understanding is that several browsers have implemented or are implementing Web GL 2.0. Additionally, I would have to assume that the editors do not accept changes to Web GL 1.0, only 2.0. (Is that true?)

Should https://tc39.github.io/ecmascript_sharedmem/dom_shmem.html#webgl be updated to target Web GL 2.0?

@lars-t-hansen lars-t-hansen added the DOM label Feb 14, 2017

@lars-t-hansen

This comment has been minimized.

Show comment
Hide comment
@lars-t-hansen

lars-t-hansen Feb 14, 2017

Collaborator

Yeah, probably. See #38 (comment) et seq for an older discussion. Basically this is stalled on making progress on the WebIDL side, where (last time I looked) there was disagreement between you, Anne, and Boris about how to frame the types.

Collaborator

lars-t-hansen commented Feb 14, 2017

Yeah, probably. See #38 (comment) et seq for an older discussion. Basically this is stalled on making progress on the WebIDL side, where (last time I looked) there was disagreement between you, Anne, and Boris about how to frame the types.

@domenic

This comment has been minimized.

Show comment
Hide comment
@domenic

domenic Feb 14, 2017

Member

We're all good now :). The plan is to get heycam/webidl#286 merged and then we can define [AllowShared] to apply to the binary data types, and add [AllowShared] as appropriate.

Member

domenic commented Feb 14, 2017

We're all good now :). The plan is to get heycam/webidl#286 merged and then we can define [AllowShared] to apply to the binary data types, and add [AllowShared] as appropriate.

@lars-t-hansen

This comment has been minimized.

Show comment
Hide comment
@lars-t-hansen

lars-t-hansen Feb 16, 2017

Collaborator

Makes me happy :)

Collaborator

lars-t-hansen commented Feb 16, 2017

Makes me happy :)

@domenic

This comment has been minimized.

Show comment
Hide comment
@domenic

domenic May 1, 2017

Member

So we're getting [AllowShared] ready in heycam/webidl#353. But it's becoming more and more pressing to have some sort of comprehensive list of APIs that will use it, so that browsers can all be on the same page and we can write tests. /cc @binji

I'll work on a PR for the Web GL spec.

Member

domenic commented May 1, 2017

So we're getting [AllowShared] ready in heycam/webidl#353. But it's becoming more and more pressing to have some sort of comprehensive list of APIs that will use it, so that browsers can all be on the same page and we can write tests. /cc @binji

I'll work on a PR for the Web GL spec.

@binji

This comment has been minimized.

Show comment
Hide comment
@binji

binji May 1, 2017

I landed this a couple of weeks ago in Chrome, enabling WebGL 1 and 2 APIs. The tests I added were just surface-level -- ensuring that you could pass a SharedArrayBuffer view through to the API without it throwing an exception. Conveniently, all WebGL APIs set an error instead, so it wasn't necessary to have valid data passed to the functions (just valid types).

binji commented May 1, 2017

I landed this a couple of weeks ago in Chrome, enabling WebGL 1 and 2 APIs. The tests I added were just surface-level -- ensuring that you could pass a SharedArrayBuffer view through to the API without it throwing an exception. Conveniently, all WebGL APIs set an error instead, so it wasn't necessary to have valid data passed to the functions (just valid types).

@annevk

This comment has been minimized.

Show comment
Hide comment
@annevk

annevk May 2, 2017

What does it mean to set an error? Shouldn't we also have tests that demonstrate it actually works?

annevk commented May 2, 2017

What does it mean to set an error? Shouldn't we also have tests that demonstrate it actually works?

@lars-t-hansen

This comment has been minimized.

Show comment
Hide comment
@lars-t-hansen

lars-t-hansen May 2, 2017

Collaborator

As I noted over in the WebGL issue, KhronosGroup/WebGL#2387, aggressively (for the lack of a better word) annotating everything with [AllowShared] is maybe a little risky. What we had with the WebGL 1.0 changes was the minimum @juj was able to get away with needing for asm.js/wasm.

(I have zero WebGL chops so it's hard for me to say what is (a) desirable or (b) risky. I just want to advocate a go-slow approach backed by implementation experience in each case.)

Collaborator

lars-t-hansen commented May 2, 2017

As I noted over in the WebGL issue, KhronosGroup/WebGL#2387, aggressively (for the lack of a better word) annotating everything with [AllowShared] is maybe a little risky. What we had with the WebGL 1.0 changes was the minimum @juj was able to get away with needing for asm.js/wasm.

(I have zero WebGL chops so it's hard for me to say what is (a) desirable or (b) risky. I just want to advocate a go-slow approach backed by implementation experience in each case.)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment