Safari 8 ES6-ish implementation.

# C. Scott Ananian (10 years ago)

So... Safari 8's betas were just released. It contains a partial ES6 implementation -- but one which fails many of es6-shims test cases. See paulmillr/es6-shim#252

Is anyone on es6-discuss in contact with the Safari team? Can we get Safari 8 made spec-compliant before release, so that es6-shim doesn't have to shim around a broken implementation?

In particular:

  • ArrayIterator is exposed as a global
  • Array#find and Array#findIndex don't work right on sparse arrays or array-like objects
  • Possibly some bugs in Array#keys / Array#values / Array#entries (haven't looked into this yet)
  • Promise#all seems to be following the "old" version of the ES6 spec, before it was made robust against tampering.
  • Subclassing Promise appears to be unsupported (quel surprise). [I don't really expect them to fix this one, although I've posted earlier how it is possible.]
# Oliver Hunt (10 years ago)

All these bugs can be filed at bugs.webkit.org (which is a much better place than a mailing list), anyway:

On Jun 4, 2014, at 1:08 PM, C. Scott Ananian <ecmascript at cscott.net> wrote:

So... Safari 8's betas were just released. It contains a partial ES6 implementation -- but one which fails many of es6-shims test cases. See paulmillr/es6-shim#252

Is anyone on es6-discuss in contact with the Safari team? Can we get Safari 8 made spec-compliant before release, so that es6-shim doesn't have to shim around a broken implementation?

In particular:

  • ArrayIterator is exposed as a global

bugs.webkit.org/show_bug.cgi?id=133494

  • Array#find and Array#findIndex don't work right on sparse arrays or array-like objects

Fixed in trunk

File bugs on anything you encounter - we can’t fix bugs if we don’t know that they’re there.

—Oliver

# Brendan Eich (10 years ago)

Just FYI, Kangax's table now includes echo-js which is doing great!

kangax.github.io/compat-table/es6