Skip to content

@ljharb ljharb released this May 12, 2016 · 51 commits to master since this release

Fixes (shim)

  • Functions are objects (#418)
  • use createDataPropertyOrThrow in Array.from, rather than [[Put]] (#415)

Refactors

  • Use iteratorResult internally for iterator result objects
  • Simplify logic for Math.tanh (#412)

Robustness

  • cache Math constants
  • cache Math.exp
  • don’t rely on a Math lookup inside Math.asinh
  • use cached Number.isNaN
  • cache Math.sign

Dev Deps

  • update es5-shim, eslint, @ljharb/eslint-config, jscs, uglify-js, grunt-contrib-connect, grunt-contrib-watch, evalmd, jshint

Tests

  • up to node v6.1, v5.10, v4.4
  • npm run --silent, use “pretest” for linting
  • RegExp#toString: Chrome Canary 51 produces /undefined/

Docs

  • update ES6 draft comment URLs to point to the published spec
Assets 2

@ljharb ljharb released this Mar 1, 2016 · 72 commits to master since this release

Breaking Changes

  • remove Reflect.enumerate (#405)

New Stuff (shim)

  • Add Array#indexOf from post-ES6 errata
  • Ensure RegExp#toString is compliant

New Stuff (sham)

  • Add Function#toString to es6-sham

Fixes

  • ensure that a non-object globals.Reflect doesn’t break the shim (#392)
  • In ES3 browsers (like Safari 4) Reflect.getPrototypeOf is undefined
  • Object.keys: handle regexes in ES3 browsers (#287)

Performance

  • Early exit from tanh for values outside of +-20 at limits of JS precision (#411)

Tests

  • Function#name on new Functions is empty string in v8
  • Function#name is non-configurable pre-ES6
  • Test up to node v5.7, v4.3
Assets 2

@ljharb ljharb released this Feb 9, 2016 · 86 commits to master since this release

Fixes (shim)

  • Fix 'Uncaught (in promise) TypeError' in Chrome 48 (#408, #407)
  • handle the obscure case where startsWith throws on the second parameter (#399)

Tests

  • silence a promise rejection error in Chrome
Assets 2

@ljharb ljharb released this Feb 9, 2016 · 90 commits to master since this release

Fixes (shim)

  • Suppress “uncaught rejection” warnings in Chrome 50 console (#403)
  • ensure ES3 Number constants don’t get lost in ES3 browsers (#402)

Dev Deps

  • update chai, es5-shim, jscs, mocha

Tests

  • up to node v5.5
Assets 2

@ljharb ljharb released this Jan 22, 2016 · 95 commits to master since this release

Fixes

  • JSON.stringify should ignore a replacer arg unless it’s an array or function.
  • Array#copyWithin: check for inherited properties as well
  • Array#copyWithin: should delete the target key if the source key is not present

Performance

  • Optimize Map/Set fast key path (#397)

Tests

  • fix Reflect.enumerate tests to not call next too many times

Dev Deps

  • update jscs, jshint

Docs

  • update license year to 2016 (#400)
Assets 2

@ljharb ljharb released this Jan 5, 2016 · 105 commits to master since this release

Fixes

  • RegExp#[Symbol.search] was broken with a regex argument (#394)
  • ensure that Set#clear works with both primitive and object values
  • static Promise methods have the wrong length in Firefox

Robustness

  • Cache Object.keys

Performance

  • Avoid accessing arguments array without length check
  • Optimize ES.TypeIsObject (#388)
  • Promises: lots of improvements (#383)
  • Only use slow implementation of ES.IsCallable where necessary (old browsers)
  • Promises: remove unnecessary .bind on setImmediate

Dev Deps

  • update s5-shim, @ljharb/eslint-config

Tests

  • Don’t npmignore tests
  • Fix a bug with “deep equal” wrt NaN
  • split up Map and Set test files
  • test up to node v5.3
Assets 2
You can’t perform that action at this time.