Description
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

388 lines
17 KiB

4 years ago
1.18.0-next.1 / 2020-09-30
=================
* [Fix] `ES2020`: `ToInteger`: `-0` should always be normalized to `+0` (#116)
* [patch] `GetIntrinsic`: Adapt to override-mistake-fix pattern (#115)
* [Fix] `callBind`: ensure compatibility with SES
* [Deps] update `is-callable`, `object.assign`
* [Dev Deps] update `eslint`, `@ljharb/eslint-config`
* [eslint] fix warning
* [Tests] temporarily allow SES tests to fail (#115)
* [Tests] ses-compat - initialize module after ses lockdown (#113)
* [Tests] [Refactor] use defineProperty helper rather than assignment
* [Tests] [Refactor] clean up defineProperty test helper
1.18.0-next.0 / 2020-08-14
=================
* [New] add `ES2020`
* [New] `GetIntrinsic`: add `%AggregateError%`, `%FinalizationRegistry%`, and `%WeakRef%`
* [New] `ES5`+: add `abs`, `floor`; use `modulo` consistently
* [New] `GetIntrinsic`: Cache accessed intrinsics (#98)
* [New] `GetIntrinsic`: Add ES201x function intrinsics (#97)
* [New] `ES2015`+: add `QuoteJSONString`, `OrdinaryCreateFromConstructor`
* [New] `ES2017`+: add `StringGetOwnProperty`
* [New] `ES2016`+: add `UTF16Encoding`
* [New] `ES2018`+: add `SetFunctionLength`, `UnicodeEscape`
* [New] add `isLeadingSurrogate`/`isTrailingSurrogate` helpers
* [Fix] `ES5`+: `ToPropertyDescriptor`: use intrinsic TypeError
* [Fix] `ES2018+`: `CopyDataProperties`/`NumberToString`: use intrinsic TypeError
* [Deps] update `is-regex`, `object-inspect`
* [Dev Deps] update `eslint`
1.17.6 / 2020-06-13
=================
* [Fix] `helpers/getSymbolDescription`: use the global Symbol registry when available (#92)
* [Fix] `ES2015+`: `IsConstructor`: when `Reflect.construct` is available, be spec-accurate (#93)
* [Fix] `ES2015+`: `Set`: Always return boolean value (#101)
* [Fix] `ES2015+`: `Set`: ensure exceptions are thrown in IE 9 when requested
* [Fix] Use `Reflect.apply(…)` if available (#99)
* [Fix] `helpers/floor`: module-cache `Math.floor`
* [Fix] `helpers/getSymbolDescription`: Prefer bound `description` getter when present
* [Fix] `2016`: Use `getIteratorMethod` in `IterableToArrayLike` (#94)
* [Fix] `helpers/OwnPropertyKeys`: Use `Reflect.ownKeys(…)` if available (#91)
* [Fix] `2018+`: Fix `CopyDataProperties` depending on `this` (#95)
* [meta] mark spackled files as autogenerated
* [meta] `Type`: fix spec URL
* [meta] `ES2015`: complete ops list
* [Deps] update `is‑callable`, `is‑regex`
* [Deps] switch from `string.prototype.trimleft`/`string.prototype.trimright` to `string.prototype.trimstart`/`string.prototype.trimend`
* [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `in-publish`, `object-is`, `tape`; add `aud`
* [eslint] `helpers/isPropertyDescriptor`: fix indentation
* [Tests] `helpers/getSymbolDescription`: add test cases; some envs have `Symbol.for` but can not infer a name (#92)
* [Tests] try out CodeQL analysis
* [Tests] reformat expected missing ops
* [Tests] Run tests with `undefined` this (#96)
1.17.5 / 2020-03-22
=================
* [Fix] `CreateDataProperty`: update an existing property
* [Fix] run missing spackle from cd7504701879ddea0f5981e99cbcf93bfea9171d
* [Dev Deps] update `make-arrow-function`, `tape`, `@ljharb/eslint-config`
1.17.4 / 2020-01-21
=================
* [Fix] `2015+`: add code to handle IE 8’s problems
* [Tests] fix tests for IE 8
1.17.3 / 2020-01-19
=================
* [Fix] `ObjectCreate` `2015+`: Fall back to `__proto__` and normal `new` in older browsers
* [Fix] `GetIntrinsic`: ensure the `allowMissing` property actually works on dotted intrinsics
1.17.2 / 2020-01-14
=================
* [Fix] `helpers/OwnPropertyKeys`: include non-enumerables too
1.17.1 / 2020-01-14
=================
* [Refactor] add `OwnPropertyKeys` helper, use it in `CopyDataProperties`
* [Refactor] `IteratorClose`: remove useless assignment
* [Dev Deps] update `eslint`, `tape`, `diff`
1.17.0 / 2019-12-20
=================
* [New] Split up each operation into its own file (prereleased)
* [Fix] `GetIntrinsic`: IE 8 has a broken `Object.getOwnPropertyDescriptor`
* [Fix] `object.assign` is a runtime dep (prereleased)
* [Refactor] `GetIntrinsic`: remove the internal property salts, since % already handles that
* [Refactor] `GetIntrinsic`: further simplification
* [Deps] update `is-callable`, `string.prototype.trimleft`, `string.prototype.trimright`, `is-regex`
* [Dev Deps] update `@ljharb/eslint-config`, `object-is`, `object.fromentries`, `tape`
* [Tests] add `.eslintignore`
* [meta] remove unused Makefile and associated utils
* [meta] only run spackle script in publish (#78) (prereleased)
1.17.0-next.1 / 2019-12-11
=================
* [Fix] `object.assign` is a runtime dep
* [meta] only run spackle script in publish (#78)
1.17.0-next.0 / 2019-12-11
=================
* [New] Split up each operation into its own file
1.16.3 / 2019-12-04
=================
* [Fix] `GetIntrinsic`: when given a path to a getter, return the actual getter
* [Dev Deps] update `eslint`
1.16.2 / 2019-11-24
=================
* [Fix] IE 6-7 lack JSON
* [Fix] IE 6-8 strings can’t use array slice, they need string slice
* [Dev Deps] update `eslint`
1.16.1 / 2019-11-24
=================
* [Fix] `GetIntrinsics`: turns out IE 8 throws when `Object.getOwnPropertyDescriptor(arguments);`, and does not throw on `callee` anyways
* [Deps] update `es-to-primitive`, `has-symbols`, `object-inspect`
* [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `safe-publish-latest`
* [meta] re-include year files inside `operations`
* [meta] add `funding` field
* [actions] add Automatic Rebase github action
* [Tests] use shared travis-ci config
* [Tests] disable `check-coverage`, and let codecov do it
1.16.0 / 2019-10-18
=================
* [New] `ES2015+`: add `SetFunctionName`
* [New] `ES2015+`: add `GetPrototypeFromConstructor`, with caveats
* [New] `ES2015+`: add `CreateListFromArrayLike`
* [New] `ES2016+`: add `OrdinarySetPrototypeOf`
* [New] `ES2016+`: add `OrdinaryGetPrototypeOf`
* [New] add `getSymbolDescription` and `getInferredName` helpers
* [Fix] `GetIterator`: add fallback for pre-Symbol environments, tests
* [Dev Deps] update `object.fromentries`
* [Tests] add `node` `v12.2`
1.15.0 / 2019-10-02
=================
* [New] `ES2018`+: add `DateString`, `TimeString`
* [New] `ES2015`+: add `ToDateString`
* [New] `ES5`+: add `msFromTime`, `SecFromTime`, `MinFromTime`, `HourFromTime`, `TimeWithinDay`, `Day`, `DayFromYear`, `TimeFromYear`, `YearFromTime`, `WeekDay`, `DaysInYear`, `InLeapYear`, `DayWithinYear`, `MonthFromTime`, `DateFromTime`, `MakeDay`, `MakeDate`, `MakeTime`, `TimeClip`, `modulo`
* [New] add `regexTester` helper
* [New] add `callBound` helper
* [New] add ES2020’s intrinsic dot notation
* [New] add `isPrefixOf` helper
* [New] add `maxSafeInteger` helper
* [Deps] update `string.prototype.trimleft`, `string.prototype.trimright`
* [Dev Deps] update `eslint`
* [Tests] on `node` `v12.11`
* [meta] npmignore operations scripts; add "deltas"
1.14.2 / 2019-09-08
=================
* [Fix] `ES2016`: `IterableToArrayLike`: add proper fallback for strings, pre-Symbols
* [Tests] on `node` `v12.10`
1.14.1 / 2019-09-03
=================
* [meta] republish with some extra files removed
1.14.0 / 2019-09-02
=================
* [New] add ES2019
* [New] `ES2017+`: add `IterableToList`
* [New] `ES2016`: add `IterableToArrayLike`
* [New] `ES2015+`: add `ArrayCreate`, `ArraySetLength`, `OrdinaryDefineOwnProperty`, `OrdinaryGetOwnProperty`, `OrdinaryHasProperty`, `CreateHTML`, `GetOwnPropertyKeys`, `InstanceofOperator`, `SymbolDescriptiveString`, `GetSubstitution`, `ValidateAndApplyPropertyDescriptor`, `IsPromise`, `OrdinaryHasInstance`, `TestIntegrityLevel`, `SetIntegrityLevel`
* [New] add `callBind` helper, and use it
* [New] add helpers: `isPropertyDescriptor`, `every`
* [New] ES5+: add `Abstract Relational Comparison`
* [New] ES5+: add `Abstract Equality Comparison`, `Strict Equality Comparison`
* [Fix] `ES2015+`: `GetIterator`: only require native Symbols when `method` is omitted
* [Fix] `ES2015`: `Call`: error message now properly displays Symbols using `object-inspect`
* [Fix] `ES2015+`: `ValidateAndApplyPropertyDescriptor`: use ES2017 logic to bypass spec bugs
* [Fix] `ES2015+`: `CreateDataProperty`, `DefinePropertyOrThrow`, `ValidateAndApplyPropertyDescriptor`: add fallbacks for ES3
* [Fix] `ES2015+`: `FromPropertyDescriptor`: no longer requires a fully complete Property Descriptor
* [Fix] `ES5`: `IsPropertyDescriptor`: call into `IsDataDescriptor` and `IsAccessorDescriptor`
* [Refactor] use `has-symbols` for Symbol detection
* [Fix] `helpers/assertRecord`: remove `console.log`
* [Deps] update `object-keys`
* [readme] add security note
* [meta] change http URLs to https
* [meta] linter cleanup
* [meta] fix getOps script
* [meta] add FUNDING.yml
* [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `safe-publish-latest`, `semver`, `replace`, `cheerio`, `tape`
* [Tests] up to `node` `v12.9`, `v11.15`, `v10.16`, `v8.16`, `v6.17`
* [Tests] temporarily allow node 0.6 to fail; segfaulting in travis
* [Tests] use the values helper more in es5 tests
* [Tests] fix linting to apply to all files
* [Tests] run `npx aud` only on prod deps
* [Tests] add v.descriptors helpers
* [Tests] use `npx aud` instead of `npm audit` with hoops
* [Tests] use `eclint` instead of `editorconfig-tools`
* [Tests] some intrinsic cleanup
* [Tests] migrate es5 tests to use values helper
* [Tests] add some missing ES2015 ops
1.13.0 / 2019-01-02
=================
* [New] add ES2018
* [New] add ES2015/ES2016: EnumerableOwnNames; ES2017: EnumerableOwnProperties
* [New] `ES2015+`: add `thisBooleanValue`, `thisNumberValue`, `thisStringValue`, `thisTimeValue`
* [New] `ES2015+`: add `DefinePropertyOrThrow`, `DeletePropertyOrThrow`, `CreateMethodProperty`
* [New] add `assertRecord` helper
* [Deps] update `is-callable`, `has`, `object-keys`, `es-to-primitive`
* [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `tape`, `semver`, `safe-publish-latest`, `replace`
* [Tests] use `npm audit` instead of `nsp`
* [Tests] remove `jscs`
* [Tests] up to `node` `v11.6`, `v10.15`, `v8.15`, `v6.16`
* [Tests] move descriptor factories to `values` helper
* [Tests] add `getOps` to programmatically fetch abstract operation names
1.12.0 / 2018-05-31
=================
* [New] add `GetIntrinsic` entry point
* [New] `ES2015`+: add `ObjectCreate`
* [Robustness]: `ES2015+`: ensure `Math.{abs,floor}` and `Function.call` are cached
1.11.0 / 2018-03-21
=================
* [New] `ES2015+`: add iterator abstract ops
* [Dev Deps] update `eslint`, `nsp`, `object.assign`, `semver`, `tape`
* [Tests] up to `node` `v9.8`, `v8.10`, `v6.13`
1.10.0 / 2017-11-24
=================
* [New] ES2015+: `AdvanceStringIndex`
* [Dev Deps] update `eslint`, `nsp`
* [Tests] require node 0.6 to pass again
* [Tests] up to `node` `v9.2`, `v8.9`, `v6.12`; use `nvm install-latest-npm`; pin included builds to LTS
1.9.0 / 2017-09-30
=================
* [New] `es2015+`: add `ArraySpeciesCreate`
* [New] ES2015+: add `CreateDataProperty` and `CreateDataPropertyOrThrow`
* [Tests] consolidate duplicated tests
* [Tests] increase coverage
* [Dev Deps] update `nsp`, `eslint`
1.8.2 / 2017-09-03
=================
* [Fix] `es2015`+: `ToNumber`: provide the proper hint for Date objects (#27)
* [Dev Deps] update `eslint`
1.8.1 / 2017-08-30
=================
* [Fix] ES2015+: `ToPropertyKey`: should return a symbol for Symbols (#26)
* [Deps] update `function-bind`
* [Dev Deps] update `eslint`, `@ljharb/eslint-config`
* [Docs] github broke markdown parsing
1.8.0 / 2017-08-04
=================
* [New] add ES2017
* [New] move es6+ to es2015+; leave es6/es7 as aliases
* [New] ES5+: add `IsPropertyDescriptor`, `IsAccessorDescriptor`, `IsDataDescriptor`, `IsGenericDescriptor`, `FromPropertyDescriptor`, `ToPropertyDescriptor`
* [New] ES2015+: add `CompletePropertyDescriptor`, `Set`, `HasOwnProperty`, `HasProperty`, `IsConcatSpreadable`, `Invoke`, `CreateIterResultObject`, `RegExpExec`
* [Fix] es7/es2016: do not mutate ES6
* [Fix] assign helper only supports one source
* [Deps] update `is-regex`
* [Dev Deps] update `nsp`, `eslint`, `@ljharb/eslint-config`
* [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `nsp`, `semver`, `tape`
* [Tests] add tests for missing and excess operations
* [Tests] add codecov for coverage
* [Tests] up to `node` `v8.2`, `v7.10`, `v6.11`, `v4.8`; newer npm breaks on older node
* [Tests] use same lists of value types across tests; ensure tests are the same when ops are the same
* [Tests] ES2015: add ToNumber symbol tests
* [Tests] switch to `nyc` for code coverage
* [Tests] make IsRegExp tests consistent across editions
1.7.0 / 2017-01-22
=================
* [New] ES6: Add `GetMethod` (#16)
* [New] ES6: Add `GetV` (#16)
* [New] ES6: Add `Get` (#17)
* [Tests] up to `node` `v7.4`, `v6.9`, `v4.6`; improve test matrix
* [Dev Deps] update `tape`, `nsp`, `eslint`, `@ljharb/eslint-config`, `safe-publish-latest`
1.6.1 / 2016-08-21
=================
* [Fix] ES6: IsConstructor should return true for `class` constructors.
1.6.0 / 2016-08-20
=================
* [New] ES5 / ES6: add `Type`
* [New] ES6: `SpeciesConstructor`
* [Dev Deps] update `jscs`, `nsp`, `eslint`, `@ljharb/eslint-config`, `semver`; add `safe-publish-latest`
* [Tests] up to `node` `v6.4`, `v5.12`, `v4.5`
1.5.1 / 2016-05-30
=================
* [Fix] `ES.IsRegExp`: actually look up `Symbol.match` on the argument
* [Refactor] create `isNaN` helper
* [Deps] update `is-callable`, `function-bind`
* [Deps] update `es-to-primitive`, fix ES5 tests
* [Dev Deps] update `jscs`, `eslint`, `@ljharb/eslint-config`, `tape`, `nsp`
* [Tests] up to `node` `v6.2`, `v5.11`, `v4.4`
* [Tests] use pretest/posttest for linting/security
1.5.0 / 2015-12-27
=================
* [New] adds `Symbol.toPrimitive` support via `es-to-primitive`
* [Deps] update `is-callable`, `es-to-primitive`
* [Dev Deps] update `jscs`, `nsp`, `eslint`, `@ljharb/eslint-config`, `semver`, `tape`
* [Tests] up to `node` `v5.3`
1.4.3 / 2015-11-04
=================
* [Fix] `ES6.ToNumber`: should give `NaN` for explicitly signed hex strings (#4)
* [Refactor] `ES6.ToNumber`: No need to double-trim
* [Refactor] group tests better
* [Tests] should still pass on `node` `v0.8`
1.4.2 / 2015-11-02
=================
* [Fix] ensure `ES.ToNumber` trims whitespace, and does not trim non-whitespace (#3)
1.4.1 / 2015-10-31
=================
* [Fix] ensure only 0-1 are valid binary and 0-7 are valid octal digits (#2)
* [Dev Deps] update `tape`, `jscs`, `nsp`, `eslint`, `@ljharb/eslint-config`
* [Tests] on `node` `v5.0`
* [Tests] fix npm upgrades for older node versions
* package.json: use object form of "authors", add "contributors"
1.4.0 / 2015-09-26
=================
* [Deps] update `is-callable`
* [Dev Deps] update `tape`, `jscs`, `eslint`, `@ljharb/eslint-config`
* [Tests] on `node` `v4.2`
* [New] Add `SameValueNonNumber` to ES7
1.3.2 / 2015-09-26
=================
* [Fix] Fix `ES6.IsRegExp` to properly handle `Symbol.match`, per spec.
* [Tests] up to `io.js` `v3.3`, `node` `v4.1`
* [Dev Deps] update `tape`, `jscs`, `nsp`, `eslint`, `@ljharb/eslint-config`, `semver`
1.3.1 / 2015-08-15
=================
* [Fix] Ensure that objects that `toString` to a binary or octal literal also convert properly
1.3.0 / 2015-08-15
=================
* [New] ES6’s ToNumber now supports binary and octal literals.
* [Dev Deps] update `jscs`, `eslint`, `@ljharb/eslint-config`, `tape`
* [Docs] Switch from vb.teelaun.ch to versionbadg.es for the npm version badge SVG
* [Tests] up to `io.js` `v3.0`
1.2.2 / 2015-07-28
=================
* [Fix] Both `ES5.CheckObjectCoercible` and `ES6.RequireObjectCoercible` return the value if they don't throw.
* [Tests] Test on latest `io.js` versions.
* [Dev Deps] Update `eslint`, `jscs`, `tape`, `semver`, `covert`, `nsp`
1.2.1 / 2015-03-20
=================
* Fix `isFinite` helper.
1.2.0 / 2015-03-19
=================
* Use `es-to-primitive` for ToPrimitive methods.
* Test on latest `io.js` versions; allow failures on all but 2 latest `node`/`io.js` versions.
1.1.2 / 2015-03-20
=================
* Fix isFinite helper.
1.1.1 / 2015-03-19
=================
* Fix isPrimitive check for functions
* Update `eslint`, `editorconfig-tools`, `semver`, `nsp`
1.1.0 / 2015-02-17
=================
* Add ES7 export (non-default).
* All grade A-supported `node`/`iojs` versions now ship with an `npm` that understands `^`.
* Test on `iojs-v1.2`.
1.0.1 / 2015-01-30
=================
* Use `is-callable` instead of an internal function.
* Update `tape`, `jscs`, `nsp`, `eslint`
1.0.0 / 2015-01-10
=================
* v1.0.0