New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implementation status? #63

Closed
benjamingr opened this Issue Nov 3, 2016 · 22 comments

Comments

Projects
None yet
@benjamingr
Copy link

benjamingr commented Nov 3, 2016

Given this is stage 3 (yay) - what browsers have expressed intent to start implementing this?

Are there any browsers where we can test the implementation under a flag/build already?

@domenic

This comment has been minimized.

Copy link
Member

domenic commented Nov 3, 2016

My understanding is that @caitp is implementing in V8, but that's fairly recent. She can give you a more accurate update, but I doubt it's under a flag yet.

Otherwise I haven't heard any stirrings, besides @bterlson saying he's hoping to convince the Chakra people to start soon.

@GabrielRatener

This comment has been minimized.

Copy link

GabrielRatener commented Nov 3, 2016

Any chance this will land in ES2017?

@domenic

This comment has been minimized.

Copy link
Member

domenic commented Nov 3, 2016

That depends entirely on implementations.

@warent

This comment has been minimized.

Copy link

warent commented Nov 24, 2016

I love this feature and hope to see it. Given that the current syntax is
await function then wouldn't it be more consistent to say await for? I hope we can use that rather than for await

@zenparsing

This comment has been minimized.

Copy link
Member

zenparsing commented Nov 24, 2016

@warent Thanks for the interest! See #24 for a discussion of the keyword choice.

@benjamingr

This comment has been minimized.

Copy link
Author

benjamingr commented Dec 9, 2016

Just following up with this PR to add support to TypeScript.

@caitp any update on the Chrome implementation status? We're all really looking forward to this feature.

@caitp

This comment has been minimized.

Copy link

caitp commented Dec 9, 2016

Prototype will probably be up for review before xmas, but landing and tuning will take longer

@benjamingr

This comment has been minimized.

Copy link
Author

benjamingr commented Dec 9, 2016

@caitp awesome! Thanks, once you have a prototype running I'd love to build and try it out. Really excited about this.

@DanielHerr

This comment has been minimized.

Copy link

DanielHerr commented Dec 19, 2016

Is there a Chromium/V8 issue?

@caitp

This comment has been minimized.

Copy link

caitp commented Dec 20, 2016

It's only been worked on downstream so far. Some dependencies have been attached to v8:5343

@benjamingr

This comment has been minimized.

Copy link
Author

benjamingr commented Dec 31, 2016

@caitp I have a question about implementation if that's ok.

I was wondering if it is possible for async iterators (not necessarily in the first version) that are consumed with for..await to avoid allocating a promise for each value (since no one actually ever observes it). If so - would you be able to estimate how hard that would be?

It might have significant implications on NodeJS usage, while promises are cheap allocating one for every packet when reading from a network stream might end up being expensive.

@caitp

This comment has been minimized.

Copy link

caitp commented Dec 31, 2016

Once TurboFan is able to inline promise resolution/rejection, it could probably decide to create a different microtask type when the resume location is known (ie in an AwaitExpression), and elide allocation of the Promise which is no longer escaped.

@schuay might already have plans to do something like this, not sure.

@benjamingr

This comment has been minimized.

Copy link
Author

benjamingr commented Jan 9, 2017

Hey, who do I bug in Safari/Edge/Firefox land to promote this?

@caitp

This comment has been minimized.

Copy link

caitp commented Jan 9, 2017

@benjamingr this has been started in WebKit by someone, https://bugs.webkit.org/show_bug.cgi?id=166695.

@benjamingr

This comment has been minimized.

Copy link
Author

benjamingr commented Jan 9, 2017

@gskachkov let me know if there is anything I/we can do to help push this in WebKit - and if you need testing etc.

@gskachkov

This comment has been minimized.

Copy link

gskachkov commented Jan 9, 2017

@benjamingr Yes sure, but I just started :-)

@domenic domenic referenced this issue Jan 9, 2017

Open

test262 tests #69

@arai-a

This comment has been minimized.

Copy link
Contributor

arai-a commented Jan 29, 2017

prototyping for Firefox here:
https://bugzilla.mozilla.org/show_bug.cgi?id=1331092

@DanielHerr

This comment has been minimized.

Copy link

DanielHerr commented Jan 30, 2017

Chrome/V8 Issue: https://crbug.com/v8/5855

@chicoxyzzy

This comment has been minimized.

Copy link

chicoxyzzy commented May 11, 2017

ChakraCore issue Microsoft/ChakraCore#2720

@vsemozhetbyt

This comment has been minimized.

Copy link

vsemozhetbyt commented Sep 18, 2017

Shipped just now in V8 6.3: https://bugs.chromium.org/p/v8/issues/detail?id=5855#c36

@gskachkov

This comment has been minimized.

Copy link

gskachkov commented Sep 20, 2017

Shipped in Safari Technical Preview 40. I hope it will be released in Safari 11.1

@zbraniecki

This comment has been minimized.

Copy link

zbraniecki commented Sep 20, 2017

SpiderMonkey enabled it around a month ago and will ship in 57: https://bugzilla.mozilla.org/show_bug.cgi?id=1352312

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