zloirock/core-js
### [`v3.1.2`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#312---20190522)
[Compare Source](https://togithub.com/zloirock/core-js/compare/v3.1.1...v3.1.2)
- Added a workaround of a strange `npx` bug on `postinstall`, [#551](https://togithub.com/zloirock/core-js/issues/551)
### [`v3.1.1`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#311---20190521)
[Compare Source](https://togithub.com/zloirock/core-js/compare/v3.1.0...v3.1.1)
- Added one more workaround of alternative not completely correct `Symbol` polyfills, [#550](https://togithub.com/zloirock/core-js/issues/550), [#554](https://togithub.com/zloirock/core-js/issues/554)
- Reverted `esnext.string.match-all` in some entry points for fix autogeneration of `core-js-compat/entries` and backward `@babel/preset-env` compatibility
### [`v3.1.0`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#310---20190520)
[Compare Source](https://togithub.com/zloirock/core-js/compare/v3.0.1...v3.1.0)
- `String#matchAll` moved to stable ES, exposed `Symbol.matchAll`, [#516](https://togithub.com/zloirock/core-js/issues/516)
- `Promise.allSettled` moved to stage 3, [#515](https://togithub.com/zloirock/core-js/issues/515)
- `String#replaceAll` moved to stage 2, behavior updated by the spec draft, [#524](https://togithub.com/zloirock/core-js/issues/524)
- `Promise.any` moved to stage 1, [#517](https://togithub.com/zloirock/core-js/issues/517)
- Removed `es.regexp.flags` dependency from `es.regexp.to-string`, [#536](https://togithub.com/zloirock/core-js/issues/536), [#537](https://togithub.com/zloirock/core-js/issues/537)
- Fixed IE8- non-enumerable properties support in `Object.{ assign, entries, values }`, [#541](https://togithub.com/zloirock/core-js/issues/541)
- Fixed support of primitives in `Object.getOwnPropertySymbols` in Chrome 38 / 39, [#539](https://togithub.com/zloirock/core-js/issues/539)
- `window.postMessage`-based task implementation uses location origin over `'*'`, [#542](https://togithub.com/zloirock/core-js/issues/542)
- Lookup `PromiseConstructor.resolve` only once in `Promise` combinators, [tc39/ecma262#1506](https://togithub.com/tc39/ecma262/pull/1506)
- Temporarily removed `core-js` dependency from `core-js-compat` since it's required for missed at this moment feature
- Show a message on `postinstall`
- Added compat data for Chrome 76, FF 67, Node 12
### [`v3.0.1`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#301---20190406)
[Compare Source](https://togithub.com/zloirock/core-js/compare/v3.0.0...v3.0.1)
- Fixed some cases of work with malformed URI sequences in `URLSearchParams`, [#525](https://togithub.com/zloirock/core-js/issues/525)
- Added a workaround for a rollup issue, [#513](https://togithub.com/zloirock/core-js/issues/513)
### [`v3.0.0`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#300---20190319)
[Compare Source](https://togithub.com/zloirock/core-js/compare/v2.6.8...v3.0.0)
- Features
- Add new features:
- `Object.fromEntries` ([ECMAScript 2019](https://togithub.com/tc39/proposal-object-from-entries))
- `Symbol#description` ([ECMAScript 2019](https://tc39.github.io/ecma262/#sec-symbol.prototype.description))
- New `Set` methods ([stage 2 proposal](https://togithub.com/tc39/proposal-set-methods))
- `Set#difference`
- `Set#intersection`
- `Set#isDisjointFrom`
- `Set#isSubsetOf`
- `Set#isSupersetOf`
- `Set#symmetricDifference`
- `Set#union`
- `Promise.allSettled` ([stage 2 proposal](https://togithub.com/tc39/proposal-promise-allSettled))
- Getting last item from `Array` ([stage 1 proposal](https://togithub.com/keithamus/proposal-array-last))
- `Array#lastItem`
- `Array#lastIndex`
- `String#replaceAll` ([stage 1 proposal](https://togithub.com/tc39/proposal-string-replace-all))
- `String#codePoints` ([stage 1 proposal](https://togithub.com/tc39/proposal-string-prototype-codepoints))
- New collections methods ([stage 1 proposal](https://togithub.com/tc39/collection-methods))
- `Map.groupBy`
- `Map.keyBy`
- `Map#deleteAll`
- `Map#every`
- `Map#filter`
- `Map#find`
- `Map#findKey`
- `Map#includes`
- `Map#keyOf`
- `Map#mapKeys`
- `Map#mapValues`
- `Map#merge`
- `Map#reduce`
- `Map#some`
- `Map#update`
- `Set#addAll`
- `Set#deleteAll`
- `Set#every`
- `Set#filter`
- `Set#find`
- `Set#join`
- `Set#map`
- `Set#reduce`
- `Set#some`
- `WeakMap#deleteAll`
- `WeakSet#addAll`
- `WeakSet#deleteAll`
- `compositeKey` and `compositeSymbol` methods ([stage 1 proposal](https://togithub.com/tc39/proposal-richer-keys/tree/master/compositeKey))
- `Number.fromString` ([stage 1 proposal](https://togithub.com/tc39/proposal-number-fromstring))
- `Math.seededPRNG` ([stage 1 proposal](https://togithub.com/tc39/proposal-seeded-random))
- `Symbol.patternMatch` ([for stage 1 pattern matching proposal](https://togithub.com/tc39/proposal-pattern-matching))
- `Symbol.dispose` ([for stage 1 `using` statement proposal](https://togithub.com/tc39/proposal-using-statement))
- `Promise.any` (with `AggregateError`) ([stage 0 proposal](https://togithub.com/tc39/proposal-promise-any))
- `URL` and `URLSearchParam` [from `URL` standard](https://url.spec.whatwg.org/), also [stage 0 proposal to ECMAScript](https://togithub.com/jasnell/proposal-url)
- `URL`
- `URL#href`
- `URL#origin`
- `URL#protocol`
- `URL#username`
- `URL#password`
- `URL#host`
- `URL#hostname`
- `URL#port`
- `URL#pathname`
- `URL#search`
- `URL#searchParams`
- `URL#hash`
- `URL#toString`
- `URL#toJSON`
- `URLSearchParams`
- `URLSearchParams#append`
- `URLSearchParams#delete`
- `URLSearchParams#get`
- `URLSearchParams#getAll`
- `URLSearchParams#has`
- `URLSearchParams#set`
- `URLSearchParams#sort`
- `URLSearchParams#toString`
- `URLSearchParams#keys`
- `URLSearchParams#values`
- `URLSearchParams#entries`
- `URLSearchParams#@@iterator`
- `.forEach` method on iterable DOM collections ([#329](https://togithub.com/zloirock/core-js/issues/329))
- Improve existing features:
- Add triggering unhandled `Promise` rejection events (instead of only global handlers), [#205](https://togithub.com/zloirock/core-js/issues/205).
- Wrap `fetch` for correct with polyfilled `Promise` and preventing problems like [#178](https://togithub.com/zloirock/core-js/issues/178), [#332](https://togithub.com/zloirock/core-js/issues/332), [#371](https://togithub.com/zloirock/core-js/issues/371).
- Add support of `@@isConcatSpreadable` to `Array#concat`.
- Add support of `@@species` to `Array#{concat, filter, map, slice, splice}`.
- Add direct `.exec` calling to `RegExp#{@@replace, @@split, @@match, @@search}`. Also, added fixes for `RegExp#exec` method. [#411](https://togithub.com/zloirock/core-js/issues/411), [#434](https://togithub.com/zloirock/core-js/issues/434), [#453](https://togithub.com/zloirock/core-js/issues/453), thanks [**@nicolo-ribaudo**](https://togithub.com/nicolo-ribaudo).
- Correct iterators prototypes chain, related [#261](https://togithub.com/zloirock/core-js/issues/261).
- Correct Typed Arrays prototypes chain, related [#378](https://togithub.com/zloirock/core-js/issues/378).
- Make the internal state of polyfilled features completely unobservable, [#146](https://togithub.com/zloirock/core-js/issues/146).
- Add validation of receiver's internal class to missed non-generic methods.
- Fix descriptors of global properties.
- In the version without global pollution, if `Object#toString` does not support `@@toStringTag`, add to wrapped prototypes own `toString` method with `@@toStringTag` logic, see [#199](https://togithub.com/zloirock/core-js/issues/199).
- Update standard features and proposals:
- `asap` (old stage 0 proposal) replaced by `queueMicrotask` ([a part of HTML spec](https://html.spec.whatwg.org/multipage/timers-and-user-prompts.html#dom-queuemicrotask))
- Update [`Observable`](https://togithub.com/tc39/proposal-observable) ([#257](https://togithub.com/zloirock/core-js/issues/257), [#276](https://togithub.com/zloirock/core-js/issues/276), etc.)
- Update `Array#flatten` -> `Array#flat` and `Array#flatMap`
- Update `global` [stage 3 proposal](https://togithub.com/tc39/proposal-global) - rename `global` to `globalThis`
- Update `String#matchAll` ([proposal-string-matchall#17](https://togithub.com/tc39/proposal-string-matchall/pull/17), [proposal-string-matchall#38](https://togithub.com/tc39/proposal-string-matchall/pull/38), [proposal-string-matchall#41](https://togithub.com/tc39/proposal-string-matchall/pull/41), etc.) and move to the stage 3
- Update `.name` properties of `String#{trimStart, trimEnd , trimLeft, trimRight}`, move to the stage 3
- Remove mongolian vowel separator (U+180E) from the list of whitespaces for methods like `String#trim` (ES6 -> ES7)
- Mark ES2016, ES2017, ES2018, ES2019 features as stable:
- `Array#{ flat, flatMap }`
- `{ Array, %TypedArray% }#includes`
- `Object.{ values, entries}`
- `Object.getOwnPropertyDescriptors`
- `String#{ padStart, padEnd }`
- `String#{ trimStart, trimEnd, trimLeft, trimRight }`
- `Promise#finally`
- `Symbol.asyncIterator`
- `Object#__(define|lookup)[GS]etter__`
- Remove obsolete features:
- `Error.isError` (withdrawn)
- `System.global` and `global` (replaced by `globalThis`)
- `Map#toJSON` and `Set#toJSON` (rejected)
- `RegExp.escape` (rejected)
- `Reflect.enumerate` (removed from the spec)
- Unnecessary iteration methods from `CSSRuleList`, `MediaList`, `StyleSheetList`
- **No more non-standard features**, finally removed:
- `Dict`
- `Object.{classof, isObject, define, make}`
- `Function#part`
- `Number#@@iterator`
- `String#{escapeHTML, unescapeHTML}`
- `delay`
- Add `.sham` flag to features which can't be properly polyfilled and / or not recommended for usage:
- `Symbol` constructor - we can't add new primitives. `Object.prototype` accessors too expensive.
- `Object.{create, defineProperty, defineProperties, getOwnPropertyDescriptor, getOwnPropertyDescriptos}`, `Reflect.{defineProperty, getOwnPropertyDescriptor}` can't be properly polyfilled without descriptors support.
- `Object.{freeze, seal, preventExtensions}`, `Reflect.preventExtensions` can't be properly polyfilled in ES3 environment.
- `Object.getPrototypeOf` can be deceived in ES3 environment.
- `Reflect.construct` can't be polyfilled for a correct work with `newTarget` argument on built-ins.
- Typed Array constructors polyfill is quite correct but too expensive.
- `URL` constructor in engines without descriptors support.
- Bug and compatibility fixes:
- Fix deoptimisation of iterators in V8, [#377](https://togithub.com/zloirock/core-js/issues/377).
- Fix import of property before constructor which should contain this property, [#262](https://togithub.com/zloirock/core-js/issues/262).
- Fix some cases of IE11 `WeakMap` frozen keys fallback, [#384](https://togithub.com/zloirock/core-js/issues/384).
- Fix non-enumerable integer keys issue because of Nashorn ~ JDK8 bug, [#389](https://togithub.com/zloirock/core-js/issues/389).
- Fix [Safari 12.0 `Array#reverse` bug](https://bugs.webkit.org/show_bug.cgi?id=188794).
- One more fix for microtasks in iOS related [#339](https://togithub.com/zloirock/core-js/issues/339).
- Added a fallback for [Rhino bug](https://togithub.com/mozilla/rhino/issues/346), [#440](https://togithub.com/zloirock/core-js/issues/440).
- Many other internal fixes and improvements.
- Repository:
- Change `core-js` repository structure to monorepo with packages in `/packages/` directory.
- Clean-up it, remove all possible duplicates, generated files, etc.
- Packages:
- **Extract a version without global namespace pollution to a separate `core-js-pure` package (replacement for `core-js/library`).**
- **Leave only one pair of bundles (global, with all polyfills) and move it to `core-js-bundle` package.**
- Remove bundling logic from `core-js` package, leave it only in `core-js-builder` package.
- Clean-up packages.
- Because of all approaches, **reduce size of packages from ~2mb for `core-js@2` to**:
- **~500kb for `core-js` package**
- **~440kb for `core-js-pure` package**
- Finally remove `bower.json`
- CommonJS API, namespaces:
- Add availability [configuration of aggressiveness](https://togithub.com/zloirock/core-js/blob/master/README.md#configurable-level-of-aggressiveness).
- Move `core-js/library` to separate `core-js-pure` package.
- Because of removing all non-standard features, we no longer need `core-js/shim` entry point, replace it just with `core-js`.
- Move all features from ES5, ES2015, ES2016, ES2017, ES2018 and ES2019 to one namespace for stable ES - it's available as `core-js/es`, all those features in `modules` folder has `es.` prefix.
- Change prefix for ES proposals from `es7.` to `esnext.`, they no longer available in `core-js/es7`, use `core-js/stage/*` instead of that.
- Rename `core-js(/library)/fn` to `core-js(-pure)/features` for improve readability.
- Allow more granular inclusion of features from `/es/` path (for example, `core-js/es/array/from`).
- Add `/stable/` entry points as an equal of `/features/` for stable features, without proposals.
- Add `/proposals/` entry points for allow include all features from one proposal (for example, `core-js/proposals/reflect-metadata`).
- Add `/es|stable|features/instance/` entry points for getting polyfill of the related method for passed instance (could be used in cases like `babel-runtime`).
- Split typed arrays polyfills. Now you can, for example, load only required method (for example, `core-js/es/typed-array/from`).
- Extract well-known symbols definition from `es.symbol` module for loading only required features, for example, in MS Edge.
- Rename `web.dom` namespace to `web.dom-collections`.
- Rename `es6.regexp.{match, replace, search, split}` -> `es.string.{match, replace, search, split}` - mainly it's fixes / adding support of well-known symbols to string methods, only in second place adding related methods to regexp prototype.
- Relax `/modules/` directory by moving internal modules to `/internals/` directory.
- Remove deprecated array entry points: `core-js(/library)/fn/array/{pop, push, reverse, shift, unshift}`.
- `core` object no longer available in the global version, entry points which previously returned it now returns `globalThis` object. Also, don't set global `core` property.
- Add some missing entry points.
- Tools, tests, code quality:
- Added `core-js-compat` package with:
- Data about the necessity of `core-js` modules and API for getting a list of required `core-js` modules by `browserslist` query, [#466](https://togithub.com/zloirock/core-js/issues/466).
- Data which modules load by each entry point (mainly useful for tools like `@babel/preset-env`).
- Data which modules added in minor versions (mainly useful for tools like `@babel/preset-env`).
- `core-js-builder` package:
- Added `targets` option with `browserslist` query.
- Removed an option for generation bundle of a version without global namespace pollution - now it's an odd use case.
- Removed UMD wrapper from a generated code of bundles - we don't need it for a global polyfill.
- **Getting rid of LiveScript**, usage another language in JS standard library looks strange and impedes usage of tools like ESLint:
- Tests are rewritten to JS.
- Scripts are rewritten to JS.
- Babel with minimalistic config (which should work anywhere) used on tests.
- ESLint used on tests and tools.
- Source code refactored for improving readability.
### [`v2.6.8`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#268-LEGACY---20190522)
[Compare Source](https://togithub.com/zloirock/core-js/compare/v2.6.7...v2.6.8)
- Added a workaround of a strange `npx` bug on `postinstall`, [#551](https://togithub.com/zloirock/core-js/issues/551)
### [`v2.6.7`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#267-LEGACY---20190521)
[Compare Source](https://togithub.com/zloirock/core-js/compare/v2.6.6...v2.6.7)
- Added one more workaround of alternative not completely correct `Symbol` polyfills, [#550](https://togithub.com/zloirock/core-js/issues/550), [#554](https://togithub.com/zloirock/core-js/issues/554)
### [`v2.6.6`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#266-LEGACY---20190520)
[Compare Source](https://togithub.com/zloirock/core-js/compare/v2.6.5...v2.6.6)
- Fixed IE8- non-enumerable properties support in `Object.{ assign, entries, values }`, [#541](https://togithub.com/zloirock/core-js/issues/541)
- Fixed support of primitives in `Object.getOwnPropertySymbols` in Chrome 38 / 39, [#539](https://togithub.com/zloirock/core-js/issues/539)
- Show a message on `postinstall`
### [`v2.6.5`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#265---20190215)
[Compare Source](https://togithub.com/zloirock/core-js/compare/v2.6.4...v2.6.5)
- Fixed buggy `String#padStart` and `String#padEnd` mobile Safari implementations, [#414](https://togithub.com/zloirock/core-js/issues/414).
### [`v2.6.4`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#264---20190207)
[Compare Source](https://togithub.com/zloirock/core-js/compare/v2.6.3...v2.6.4)
- Added a workaround against crushing an old IE11.0.9600.16384 build, [#485](https://togithub.com/zloirock/core-js/issues/485).
### [`v2.6.3`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#263---20190122)
[Compare Source](https://togithub.com/zloirock/core-js/compare/v2.6.2...v2.6.3)
- Added a workaround for `babel-minify` bug, [#479](https://togithub.com/zloirock/core-js/issues/479)
### [`v2.6.2`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#262---20190110)
[Compare Source](https://togithub.com/zloirock/core-js/compare/v2.6.1...v2.6.2)
- Fixed handling of `$` in `String#replace`, [#471](https://togithub.com/zloirock/core-js/issues/471)
### [`v2.6.1`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#261---20181218)
[Compare Source](https://togithub.com/zloirock/core-js/compare/v2.6.0...v2.6.1)
- Fixed an issue with minified version, [#463](https://togithub.com/zloirock/core-js/issues/463), [#465](https://togithub.com/zloirock/core-js/issues/465)
### [`v2.6.0`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#260---20181205)
[Compare Source](https://togithub.com/zloirock/core-js/compare/v2.5.7...v2.6.0)
- Add direct `.exec` calling to `RegExp#{@@replace, @@split, @@match, @@search}`. Also, added fixes for `RegExp#exec` method. [#428](https://togithub.com/zloirock/core-js/issues/428), [#435](https://togithub.com/zloirock/core-js/issues/435), [#458](https://togithub.com/zloirock/core-js/issues/458), thanks [**@nicolo-ribaudo**](https://togithub.com/nicolo-ribaudo).
### [`v2.5.7`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#257---20180526)
[Compare Source](https://togithub.com/zloirock/core-js/compare/v2.5.6...v2.5.7)
- Get rid of reserved variable name `final`, related [#400](https://togithub.com/zloirock/core-js/issues/400)
### [`v2.5.6`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#256---20180507)
[Compare Source](https://togithub.com/zloirock/core-js/compare/v2.5.5...v2.5.6)
- Forced replace native `Promise` in V8 6.6 (Node 10 and Chrome 66) because of [a bug with resolving custom thenables](https://bugs.chromium.org/p/chromium/issues/detail?id=830565)
- Added a workaround for usage buggy native LG WebOS 2 `Promise` in microtask implementation, [#396](https://togithub.com/zloirock/core-js/issues/396)
- Added modern version internal debugging information about used versions
### [`v2.5.5`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#255---20180408)
[Compare Source](https://togithub.com/zloirock/core-js/compare/v2.5.4...v2.5.5)
- Fix some edge cases of `Reflect.set`, [#392](https://togithub.com/zloirock/core-js/issues/392) and [#393](https://togithub.com/zloirock/core-js/issues/393)
### [`v2.5.4`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#254---20180327)
[Compare Source](https://togithub.com/zloirock/core-js/compare/v2.5.3...v2.5.4)
- Fixed one case of deoptimization built-in iterators in V8, related [#377](https://togithub.com/zloirock/core-js/issues/377)
- Fixed some cases of iterators feature detection, [#368](https://togithub.com/zloirock/core-js/issues/368)
- Fixed manually entered NodeJS domains issue in `Promise`, [#367](https://togithub.com/zloirock/core-js/issues/367)
- Fixed `Number.{parseInt, parseFloat}` entry points
- Fixed `__(define|lookup)[GS]etter__` export in the `library` version
### [`v2.5.3`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#253---20171212)
[Compare Source](https://togithub.com/zloirock/core-js/compare/v2.5.2...v2.5.3)
- Fixed calling `onunhandledrejectionhandler` multiple times for one `Promise` chain, [#318](https://togithub.com/zloirock/core-js/issues/318)
- Forced replacement of `String#{padStart, padEnd}` in Safari 10 because of [a bug](https://bugs.webkit.org/show_bug.cgi?id=161944), [#280](https://togithub.com/zloirock/core-js/issues/280)
- Fixed `Array#@@iterator` in a very rare version of `WebKit`, [#236](https://togithub.com/zloirock/core-js/issues/236) and [#237](https://togithub.com/zloirock/core-js/issues/237)
- One more [#345](https://togithub.com/zloirock/core-js/issues/345)-related fix
### [`v2.5.2`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#252---20171209)
[Compare Source](https://togithub.com/zloirock/core-js/compare/v2.5.1...v2.5.2)
- `MutationObserver` no longer used for microtask implementation in iOS Safari because of bug with scrolling, [#339](https://togithub.com/zloirock/core-js/issues/339)
- Fixed `JSON.stringify(undefined, replacer)` case in the wrapper from the `Symbol` polyfill, [#345](https://togithub.com/zloirock/core-js/issues/345)
- `Array()` calls changed to `new Array()` for V8 optimisation
### [`v2.5.1`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#251---20170901)
[Compare Source](https://togithub.com/zloirock/core-js/compare/v2.5.0...v2.5.1)
- Updated `Promise#finally` per [tc39/proposal-promise-finally#37](https://togithub.com/tc39/proposal-promise-finally/issues/37)
- Optimized usage of some internal helpers for reducing size of `shim` version
- Fixed some entry points for virtual methods
### [`v2.5.0`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#250---20170805)
[Compare Source](https://togithub.com/zloirock/core-js/compare/v2.4.1...v2.5.0)
- Added `Promise#finally` [stage 3 proposal](https://togithub.com/tc39/proposal-promise-finally), [#225](https://togithub.com/zloirock/core-js/issues/225)
- Added `Promise.try` [stage 1 proposal](https://togithub.com/tc39/proposal-promise-try)
- Added `Array#flatten` and `Array#flatMap` [stage 1 proposal](https://tc39.github.io/proposal-flatMap)
- Added `.of` and `.from` methods on collection constructors [stage 1 proposal](https://togithub.com/tc39/proposal-setmap-offrom):
- `Map.of`
- `Set.of`
- `WeakSet.of`
- `WeakMap.of`
- `Map.from`
- `Set.from`
- `WeakSet.from`
- `WeakMap.from`
- Added `Math` extensions [stage 1 proposal](https://togithub.com/rwaldron/proposal-math-extensions), [#226](https://togithub.com/zloirock/core-js/issues/226):
- `Math.clamp`
- `Math.DEG_PER_RAD`
- `Math.degrees`
- `Math.fscale`
- `Math.RAD_PER_DEG`
- `Math.radians`
- `Math.scale`
- Added `Math.signbit` [stage 1 proposal](http://jfbastien.github.io/papers/Math.signbit.html)
- Updated `global` [stage 3 proposal](https://togithub.com/tc39/proposal-global) - added `global` global object, `System.global` deprecated
- Updated `Object.getOwnPropertyDescriptors` to the [final version](https://tc39.github.io/ecma262/2017/#sec-object.getownpropertydescriptors) - it should not create properties if descriptors are `undefined`
- Updated the list of iterable DOM collections, [#249](https://togithub.com/zloirock/core-js/issues/249), added:
- `CSSStyleDeclaration#@@iterator`
- `CSSValueList#@@iterator`
- `ClientRectList#@@iterator`
- `DOMRectList#@@iterator`
- `DOMStringList#@@iterator`
- `DataTransferItemList#@@iterator`
- `FileList#@@iterator`
- `HTMLAllCollection#@@iterator`
- `HTMLCollection#@@iterator`
- `HTMLFormElement#@@iterator`
- `HTMLSelectElement#@@iterator`
- `MimeTypeArray#@@iterator`
- `NamedNodeMap#@@iterator`
- `PaintRequestList#@@iterator`
- `Plugin#@@iterator`
- `PluginArray#@@iterator`
- `SVGLengthList#@@iterator`
- `SVGNumberList#@@iterator`
- `SVGPathSegList#@@iterator`
- `SVGPointList#@@iterator`
- `SVGStringList#@@iterator`
- `SVGTransformList#@@iterator`
- `SourceBufferList#@@iterator`
- `TextTrackCueList#@@iterator`
- `TextTrackList#@@iterator`
- `TouchList#@@iterator`
- Updated stages of proposals:
- [`Object.getOwnPropertyDescriptors`](https://togithub.com/tc39/proposal-object-getownpropertydescriptors) to [stage 4 (ES2017)](https://tc39.github.io/ecma262/2017/#sec-object.getownpropertydescriptors)
- [String padding](https://togithub.com/tc39/proposal-string-pad-start-end) to [stage 4 (ES2017)](https://tc39.github.io/ecma262/2017/#sec-string.prototype.padend)
- [`global`](https://togithub.com/tc39/proposal-global) to [stage 3](https://togithub.com/rwaldron/tc39-notes/blob/master/es7/2016-09/sept-28.md#revisit-systemglobal--global)
- [String trimming](https://togithub.com/tc39/proposal-string-left-right-trim) to [stage 2](https://togithub.com/rwaldron/tc39-notes/blob/master/es7/2016-07/jul-27.md#10iic-trimstarttrimend)
- Updated typed arrays to the modern (ES2016+) arguments validation,
[#293](https://togithub.com/zloirock/core-js/pull/293)
- Fixed `%TypedArray%.from` Safari bug, [#285](https://togithub.com/zloirock/core-js/issues/285)
- Fixed compatibility with old version of Prototype.js, [#278](https://togithub.com/zloirock/core-js/issues/278), [#289](https://togithub.com/zloirock/core-js/issues/289)
- `Function#name` no longer cache the result for correct behaviour with inherited constructors, [#296](https://togithub.com/zloirock/core-js/issues/296)
- Added errors on incorrect context of collection methods, [#272](https://togithub.com/zloirock/core-js/issues/272)
- Fixed conversion typed array constructors to string, fix [#300](https://togithub.com/zloirock/core-js/issues/300)
- Fixed `Set#size` with debugger ReactNative for Android, [#297](https://togithub.com/zloirock/core-js/issues/297)
- Fixed an issue with Electron-based debugger, [#230](https://togithub.com/zloirock/core-js/issues/230)
- Fixed compatibility with incomplete third-party `WeakMap` polyfills, [#252](https://togithub.com/zloirock/core-js/pull/252)
- Added a fallback for `Date#toJSON` in engines without native `Date#toISOString`, [#220](https://togithub.com/zloirock/core-js/issues/220)
- Added support for Sphere Dispatch API, [#286](https://togithub.com/zloirock/core-js/pull/286)
- Seriously changed the coding style and the [ESLint config](https://togithub.com/zloirock/core-js/blob/master/.eslintrc.js)
- Updated many dev dependencies (`webpack`, `uglify`, etc)
- Some other minor fixes and optimizations
### [`v2.4.1`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#241---20160718)
[Compare Source](https://togithub.com/zloirock/core-js/compare/v2.4.0...v2.4.1)
- Fixed `script` tag for some parsers, [#204](https://togithub.com/zloirock/core-js/issues/204), [#216](https://togithub.com/zloirock/core-js/issues/216)
- Removed some unused variables, [#217](https://togithub.com/zloirock/core-js/issues/217), [#218](https://togithub.com/zloirock/core-js/issues/218)
- Fixed MS Edge `Reflect.construct` and `Reflect.apply` - they should not allow primitive as `argumentsList` argument
### [`v2.4.0`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#240---20160508)
[Compare Source](https://togithub.com/zloirock/core-js/compare/v2.3.0...v2.4.0)
- Added `Observable`, [stage 1 proposal](https://togithub.com/zenparsing/es-observable)
- Fixed behavior `Object.{getOwnPropertySymbols, getOwnPropertyDescriptor}` and `Object#propertyIsEnumerable` on `Object.prototype`
- `Reflect.construct` and `Reflect.apply` should throw an error if `argumentsList` argument is not an object, [#194](https://togithub.com/zloirock/core-js/issues/194)
### [`v2.3.0`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#230---20160424)
[Compare Source](https://togithub.com/zloirock/core-js/compare/v2.2.2...v2.3.0)
- Added `asap` for enqueuing microtasks, [stage 0 proposal](https://togithub.com/rwaldron/tc39-notes/blob/master/es6/2014-09/sept-25.md#510-globalasap-for-enqueuing-a-microtask)
- Added well-known symbol `Symbol.asyncIterator` for [stage 2 async iteration proposal](https://togithub.com/tc39/proposal-async-iteration)
- Added well-known symbol `Symbol.observable` for [stage 1 observables proposal](https://togithub.com/zenparsing/es-observable)
- `String#{padStart, padEnd}` returns original string if filler is empty string, [TC39 meeting notes](https://togithub.com/rwaldron/tc39-notes/blob/master/es7/2016-03/march-29.md#stringprototypepadstartpadend)
- `Object.values` and `Object.entries` moved to stage 4 from 3, [TC39 meeting notes](https://togithub.com/rwaldron/tc39-notes/blob/master/es7/2016-03/march-29.md#objectvalues--objectentries)
- `System.global` moved to stage 2 from 1, [TC39 meeting notes](https://togithub.com/rwaldron/tc39-notes/blob/master/es7/2016-03/march-29.md#systemglobal)
- `Map#toJSON` and `Set#toJSON` rejected and will be removed from the next major release, [TC39 meeting notes](https://togithub.com/rwaldron/tc39-notes/blob/master/es7/2016-03/march-31.md#mapprototypetojsonsetprototypetojson)
- `Error.isError` withdrawn and will be removed from the next major release, [TC39 meeting notes](https://togithub.com/rwaldron/tc39-notes/blob/master/es7/2016-03/march-29.md#erroriserror)
- Added fallback for `Function#name` on non-extensible functions and functions with broken `toString` conversion, [#193](https://togithub.com/zloirock/core-js/issues/193)
### [`v2.2.2`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#222---20160406)
[Compare Source](https://togithub.com/zloirock/core-js/compare/v2.2.1...v2.2.2)
- Added conversion `-0` to `+0` to `Array#{indexOf, lastIndexOf}`, [ES2016 fix](https://togithub.com/tc39/ecma262/pull/316)
- Added fixes for some `Math` methods in Tor Browser
- `Array.{from, of}` no longer calls prototype setters
- Added workaround over Chrome DevTools strange behavior, [#186](https://togithub.com/zloirock/core-js/issues/186)
### [`v2.2.1`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#221---20160319)
[Compare Source](https://togithub.com/zloirock/core-js/compare/v2.2.0...v2.2.1)
- Fixed `Object.getOwnPropertyNames(window)` `2.1+` versions bug, [#181](https://togithub.com/zloirock/core-js/issues/181)
### [`v2.2.0`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#220---20160315)
[Compare Source](https://togithub.com/zloirock/core-js/compare/v2.1.5...v2.2.0)
- Added `String#matchAll`, [proposal](https://togithub.com/tc39/String.prototype.matchAll)
- Added `Object#__(define|lookup)[GS]etter__`, [annex B ES2017](https://togithub.com/tc39/ecma262/pull/381)
- Added `@@toPrimitive` methods to `Date` and `Symbol`
- Fixed `%TypedArray%#slice` in Edge ~ 13 (throws with `@@species` and wrapped / inherited constructor)
- Some other minor fixes
### [`v2.1.5`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#215---20160312)
[Compare Source](https://togithub.com/zloirock/core-js/compare/v2.1.4...v2.1.5)
- Improved support NodeJS domains in `Promise#then`, [#180](https://togithub.com/zloirock/core-js/issues/180)
- Added fallback for `Date#toJSON` bug in Qt Script, [#173](https://togithub.com/zloirock/core-js/issues/173#issuecomment-193972502)
### [`v2.1.4`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#214---20160308)
[Compare Source](https://togithub.com/zloirock/core-js/compare/v2.1.3...v2.1.4)
- Added fallback for `Symbol` polyfill in Qt Script, [#173](https://togithub.com/zloirock/core-js/issues/173)
- Added one more fallback for IE11 `Script Access Denied` error with iframes, [#165](https://togithub.com/zloirock/core-js/issues/165)
### [`v2.1.3`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#213---20160229)
[Compare Source](https://togithub.com/zloirock/core-js/compare/v2.1.2...v2.1.3)
- Added fallback for [`es6-promise` package bug](https://togithub.com/stefanpenner/es6-promise/issues/169), [#176](https://togithub.com/zloirock/core-js/issues/176)
### [`v2.1.2`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#212---20160229)
[Compare Source](https://togithub.com/zloirock/core-js/compare/v2.1.1...v2.1.2)
- Some minor `Promise` fixes:
- Browsers `rejectionhandled` event better HTML spec complaint
- Errors in unhandled rejection handlers should not cause any problems
- Fixed typo in feature detection
### [`v2.1.1`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#211---20160222)
[Compare Source](https://togithub.com/zloirock/core-js/compare/v2.1.0...v2.1.1)
- Some `Promise` improvements:
- Feature detection:
- **Added detection unhandled rejection tracking support - now it's available everywhere**, [#140](https://togithub.com/zloirock/core-js/issues/140)
- Added detection `@@species` pattern support for completely correct subclassing
- Removed usage `Object.setPrototypeOf` from feature detection and noisy console message about it in FF
- `Promise.all` fixed for some very specific cases
### [`v2.1.0`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#210---20160209)
[Compare Source](https://togithub.com/zloirock/core-js/compare/v2.0.3...v2.1.0)
- **API**:
- ES5 polyfills are split and logic, used in other polyfills, moved to internal modules
- **All entry point works in ES3 environment like IE8- without `core-js/(library/)es5`**
- **Added all missed single entry points for ES5 polyfills**
- Separated ES5 polyfills moved to the ES6 namespace. Why?
- Mainly, for prevent duplication features in different namespaces - logic of most required ES5 polyfills changed in ES6+:
- Already added changes for: `Object` statics - should accept primitives, new whitespaces lists in `String#trim`, `parse(Int|float)`, `RegExp#toString` logic, `String#split`, etc
- Should be changed in the future: `@@species` and `ToLength` logic in `Array` methods, `Date` parsing, `Function#bind`, etc
- Should not be changed only several features like `Array.isArray` and `Date.now`
- Some ES5 polyfills required for modern engines
- All old entry points should work fine, but in the next major release API can be changed
- `Object.getOwnPropertyDescriptors` moved to the stage 3, [January TC39 meeting](https://togithub.com/rwaldron/tc39-notes/blob/master/es7/2016-01/2016-01-28.md#objectgetownpropertydescriptors-to-stage-3-jordan-harband-low-priority-but-super-quick)
- Added `umd` option for [custom build process](https://togithub.com/zloirock/core-js#custom-build-from-external-scripts), [#169](https://togithub.com/zloirock/core-js/issues/169)
- Returned entry points for `Array` statics, removed in `2.0`, for compatibility with `babel` `6` and for future fixes
- **Deprecated**:
- `Reflect.enumerate` deprecated and will be removed from the next major release, [January TC39 meeting](https://togithub.com/rwaldron/tc39-notes/blob/master/es7/2016-01/2016-01-28.md#5xix-revisit-proxy-enumerate---revisit-decision-to-exhaust-iterator)
- **New Features**:
- Added [`Reflect` metadata API](https://togithub.com/jonathandturner/decorators/blob/master/specs/metadata.md) as a pre-strawman feature, [#152](https://togithub.com/zloirock/core-js/issues/152):
- `Reflect.defineMetadata`
- `Reflect.deleteMetadata`
- `Reflect.getMetadata`
- `Reflect.getMetadataKeys`
- `Reflect.getOwnMetadata`
- `Reflect.getOwnMetadataKeys`
- `Reflect.hasMetadata`
- `Reflect.hasOwnMetadata`
- `Reflect.metadata`
- Implementation / fixes `Date#toJSON`
- Fixes for `parseInt` and `Number.parseInt`
- Fixes for `parseFloat` and `Number.parseFloat`
- Fixes for `RegExp#toString`
- Fixes for `Array#sort`
- Fixes for `Number#toFixed`
- Fixes for `Number#toPrecision`
- Additional fixes for `String#split` (`RegExp#@@split`)
- **Improvements**:
- Correct subclassing wrapped collections, `Number` and `RegExp` constructors with native class syntax
- Correct support `SharedArrayBuffer` and buffers from other realms in typed arrays wrappers
- Additional validations for `Object.{defineProperty, getOwnPropertyDescriptor}` and `Reflect.defineProperty`
- **Bug Fixes**:
- Fixed some cases `Array#lastIndexOf` with negative second argument
### [`v2.0.3`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#203---20160111)
[Compare Source](https://togithub.com/zloirock/core-js/compare/v2.0.2...v2.0.3)
- Added fallback for V8 ~ Chrome 49 `Promise` subclassing bug causes unhandled rejection on feature detection, [#159](https://togithub.com/zloirock/core-js/issues/159)
- Added fix for very specific environments with global `window === null`
### [`v2.0.2`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#202---20160104)
[Compare Source](https://togithub.com/zloirock/core-js/compare/v2.0.1...v2.0.2)
- Temporarily removed `length` validation from `Uint8Array` constructor wrapper. Reason - [bug in `ws` module](https://togithub.com/websockets/ws/pull/645) (-> `socket.io`) which passes to `Buffer` constructor -> `Uint8Array` float and uses [the `V8` bug](https://code.google.com/p/v8/issues/detail?id=4552) for conversion to int (by the spec should be thrown an error). [It creates problems for many people.](https://togithub.com/karma-runner/karma/issues/1768) I hope, it will be returned after fixing this bug in `V8`.
### [`v2.0.1`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#201---20151231)
[Compare Source](https://togithub.com/zloirock/core-js/compare/v2.0.0...v2.0.1)
- Forced usage `Promise.resolve` polyfill in the `library` version for correct work with wrapper
- `Object.assign` should be defined in the strict mode -> throw an error on extension non-extensible objects, [#154](https://togithub.com/zloirock/core-js/issues/154)
Renovate configuration
:date: Schedule: At any time (no schedule defined).
:vertical_traffic_light: Automerge: Disabled by config. Please merge this manually once you are satisfied.
:recycle: Rebasing: Whenever PR becomes conflicted, or if you modify the PR title to begin with "rebase!".
:no_bell: Ignore: Close this PR and you won't be reminded about this update again.
[ ] If you want to rebase/retry this PR, check this box
This PR has been generated by Renovate Bot. View repository job log here.
This PR contains the following updates:
2
->3
Release Notes
zloirock/core-js
### [`v3.1.2`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#312---20190522) [Compare Source](https://togithub.com/zloirock/core-js/compare/v3.1.1...v3.1.2) - Added a workaround of a strange `npx` bug on `postinstall`, [#551](https://togithub.com/zloirock/core-js/issues/551) ### [`v3.1.1`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#311---20190521) [Compare Source](https://togithub.com/zloirock/core-js/compare/v3.1.0...v3.1.1) - Added one more workaround of alternative not completely correct `Symbol` polyfills, [#550](https://togithub.com/zloirock/core-js/issues/550), [#554](https://togithub.com/zloirock/core-js/issues/554) - Reverted `esnext.string.match-all` in some entry points for fix autogeneration of `core-js-compat/entries` and backward `@babel/preset-env` compatibility ### [`v3.1.0`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#310---20190520) [Compare Source](https://togithub.com/zloirock/core-js/compare/v3.0.1...v3.1.0) - `String#matchAll` moved to stable ES, exposed `Symbol.matchAll`, [#516](https://togithub.com/zloirock/core-js/issues/516) - `Promise.allSettled` moved to stage 3, [#515](https://togithub.com/zloirock/core-js/issues/515) - `String#replaceAll` moved to stage 2, behavior updated by the spec draft, [#524](https://togithub.com/zloirock/core-js/issues/524) - `Promise.any` moved to stage 1, [#517](https://togithub.com/zloirock/core-js/issues/517) - Removed `es.regexp.flags` dependency from `es.regexp.to-string`, [#536](https://togithub.com/zloirock/core-js/issues/536), [#537](https://togithub.com/zloirock/core-js/issues/537) - Fixed IE8- non-enumerable properties support in `Object.{ assign, entries, values }`, [#541](https://togithub.com/zloirock/core-js/issues/541) - Fixed support of primitives in `Object.getOwnPropertySymbols` in Chrome 38 / 39, [#539](https://togithub.com/zloirock/core-js/issues/539) - `window.postMessage`-based task implementation uses location origin over `'*'`, [#542](https://togithub.com/zloirock/core-js/issues/542) - Lookup `PromiseConstructor.resolve` only once in `Promise` combinators, [tc39/ecma262#1506](https://togithub.com/tc39/ecma262/pull/1506) - Temporarily removed `core-js` dependency from `core-js-compat` since it's required for missed at this moment feature - Show a message on `postinstall` - Added compat data for Chrome 76, FF 67, Node 12 ### [`v3.0.1`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#301---20190406) [Compare Source](https://togithub.com/zloirock/core-js/compare/v3.0.0...v3.0.1) - Fixed some cases of work with malformed URI sequences in `URLSearchParams`, [#525](https://togithub.com/zloirock/core-js/issues/525) - Added a workaround for a rollup issue, [#513](https://togithub.com/zloirock/core-js/issues/513) ### [`v3.0.0`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#300---20190319) [Compare Source](https://togithub.com/zloirock/core-js/compare/v2.6.8...v3.0.0) - Features - Add new features: - `Object.fromEntries` ([ECMAScript 2019](https://togithub.com/tc39/proposal-object-from-entries)) - `Symbol#description` ([ECMAScript 2019](https://tc39.github.io/ecma262/#sec-symbol.prototype.description)) - New `Set` methods ([stage 2 proposal](https://togithub.com/tc39/proposal-set-methods)) - `Set#difference` - `Set#intersection` - `Set#isDisjointFrom` - `Set#isSubsetOf` - `Set#isSupersetOf` - `Set#symmetricDifference` - `Set#union` - `Promise.allSettled` ([stage 2 proposal](https://togithub.com/tc39/proposal-promise-allSettled)) - Getting last item from `Array` ([stage 1 proposal](https://togithub.com/keithamus/proposal-array-last)) - `Array#lastItem` - `Array#lastIndex` - `String#replaceAll` ([stage 1 proposal](https://togithub.com/tc39/proposal-string-replace-all)) - `String#codePoints` ([stage 1 proposal](https://togithub.com/tc39/proposal-string-prototype-codepoints)) - New collections methods ([stage 1 proposal](https://togithub.com/tc39/collection-methods)) - `Map.groupBy` - `Map.keyBy` - `Map#deleteAll` - `Map#every` - `Map#filter` - `Map#find` - `Map#findKey` - `Map#includes` - `Map#keyOf` - `Map#mapKeys` - `Map#mapValues` - `Map#merge` - `Map#reduce` - `Map#some` - `Map#update` - `Set#addAll` - `Set#deleteAll` - `Set#every` - `Set#filter` - `Set#find` - `Set#join` - `Set#map` - `Set#reduce` - `Set#some` - `WeakMap#deleteAll` - `WeakSet#addAll` - `WeakSet#deleteAll` - `compositeKey` and `compositeSymbol` methods ([stage 1 proposal](https://togithub.com/tc39/proposal-richer-keys/tree/master/compositeKey)) - `Number.fromString` ([stage 1 proposal](https://togithub.com/tc39/proposal-number-fromstring)) - `Math.seededPRNG` ([stage 1 proposal](https://togithub.com/tc39/proposal-seeded-random)) - `Symbol.patternMatch` ([for stage 1 pattern matching proposal](https://togithub.com/tc39/proposal-pattern-matching)) - `Symbol.dispose` ([for stage 1 `using` statement proposal](https://togithub.com/tc39/proposal-using-statement)) - `Promise.any` (with `AggregateError`) ([stage 0 proposal](https://togithub.com/tc39/proposal-promise-any)) - `URL` and `URLSearchParam` [from `URL` standard](https://url.spec.whatwg.org/), also [stage 0 proposal to ECMAScript](https://togithub.com/jasnell/proposal-url) - `URL` - `URL#href` - `URL#origin` - `URL#protocol` - `URL#username` - `URL#password` - `URL#host` - `URL#hostname` - `URL#port` - `URL#pathname` - `URL#search` - `URL#searchParams` - `URL#hash` - `URL#toString` - `URL#toJSON` - `URLSearchParams` - `URLSearchParams#append` - `URLSearchParams#delete` - `URLSearchParams#get` - `URLSearchParams#getAll` - `URLSearchParams#has` - `URLSearchParams#set` - `URLSearchParams#sort` - `URLSearchParams#toString` - `URLSearchParams#keys` - `URLSearchParams#values` - `URLSearchParams#entries` - `URLSearchParams#@@iterator` - `.forEach` method on iterable DOM collections ([#329](https://togithub.com/zloirock/core-js/issues/329)) - Improve existing features: - Add triggering unhandled `Promise` rejection events (instead of only global handlers), [#205](https://togithub.com/zloirock/core-js/issues/205). - Wrap `fetch` for correct with polyfilled `Promise` and preventing problems like [#178](https://togithub.com/zloirock/core-js/issues/178), [#332](https://togithub.com/zloirock/core-js/issues/332), [#371](https://togithub.com/zloirock/core-js/issues/371). - Add support of `@@isConcatSpreadable` to `Array#concat`. - Add support of `@@species` to `Array#{concat, filter, map, slice, splice}`. - Add direct `.exec` calling to `RegExp#{@@replace, @@split, @@match, @@search}`. Also, added fixes for `RegExp#exec` method. [#411](https://togithub.com/zloirock/core-js/issues/411), [#434](https://togithub.com/zloirock/core-js/issues/434), [#453](https://togithub.com/zloirock/core-js/issues/453), thanks [**@nicolo-ribaudo**](https://togithub.com/nicolo-ribaudo). - Correct iterators prototypes chain, related [#261](https://togithub.com/zloirock/core-js/issues/261). - Correct Typed Arrays prototypes chain, related [#378](https://togithub.com/zloirock/core-js/issues/378). - Make the internal state of polyfilled features completely unobservable, [#146](https://togithub.com/zloirock/core-js/issues/146). - Add validation of receiver's internal class to missed non-generic methods. - Fix descriptors of global properties. - In the version without global pollution, if `Object#toString` does not support `@@toStringTag`, add to wrapped prototypes own `toString` method with `@@toStringTag` logic, see [#199](https://togithub.com/zloirock/core-js/issues/199). - Update standard features and proposals: - `asap` (old stage 0 proposal) replaced by `queueMicrotask` ([a part of HTML spec](https://html.spec.whatwg.org/multipage/timers-and-user-prompts.html#dom-queuemicrotask)) - Update [`Observable`](https://togithub.com/tc39/proposal-observable) ([#257](https://togithub.com/zloirock/core-js/issues/257), [#276](https://togithub.com/zloirock/core-js/issues/276), etc.) - Update `Array#flatten` -> `Array#flat` and `Array#flatMap` - Update `global` [stage 3 proposal](https://togithub.com/tc39/proposal-global) - rename `global` to `globalThis` - Update `String#matchAll` ([proposal-string-matchall#17](https://togithub.com/tc39/proposal-string-matchall/pull/17), [proposal-string-matchall#38](https://togithub.com/tc39/proposal-string-matchall/pull/38), [proposal-string-matchall#41](https://togithub.com/tc39/proposal-string-matchall/pull/41), etc.) and move to the stage 3 - Update `.name` properties of `String#{trimStart, trimEnd , trimLeft, trimRight}`, move to the stage 3 - Remove mongolian vowel separator (U+180E) from the list of whitespaces for methods like `String#trim` (ES6 -> ES7) - Mark ES2016, ES2017, ES2018, ES2019 features as stable: - `Array#{ flat, flatMap }` - `{ Array, %TypedArray% }#includes` - `Object.{ values, entries}` - `Object.getOwnPropertyDescriptors` - `String#{ padStart, padEnd }` - `String#{ trimStart, trimEnd, trimLeft, trimRight }` - `Promise#finally` - `Symbol.asyncIterator` - `Object#__(define|lookup)[GS]etter__` - Remove obsolete features: - `Error.isError` (withdrawn) - `System.global` and `global` (replaced by `globalThis`) - `Map#toJSON` and `Set#toJSON` (rejected) - `RegExp.escape` (rejected) - `Reflect.enumerate` (removed from the spec) - Unnecessary iteration methods from `CSSRuleList`, `MediaList`, `StyleSheetList` - **No more non-standard features**, finally removed: - `Dict` - `Object.{classof, isObject, define, make}` - `Function#part` - `Number#@@iterator` - `String#{escapeHTML, unescapeHTML}` - `delay` - Add `.sham` flag to features which can't be properly polyfilled and / or not recommended for usage: - `Symbol` constructor - we can't add new primitives. `Object.prototype` accessors too expensive. - `Object.{create, defineProperty, defineProperties, getOwnPropertyDescriptor, getOwnPropertyDescriptos}`, `Reflect.{defineProperty, getOwnPropertyDescriptor}` can't be properly polyfilled without descriptors support. - `Object.{freeze, seal, preventExtensions}`, `Reflect.preventExtensions` can't be properly polyfilled in ES3 environment. - `Object.getPrototypeOf` can be deceived in ES3 environment. - `Reflect.construct` can't be polyfilled for a correct work with `newTarget` argument on built-ins. - Typed Array constructors polyfill is quite correct but too expensive. - `URL` constructor in engines without descriptors support. - Bug and compatibility fixes: - Fix deoptimisation of iterators in V8, [#377](https://togithub.com/zloirock/core-js/issues/377). - Fix import of property before constructor which should contain this property, [#262](https://togithub.com/zloirock/core-js/issues/262). - Fix some cases of IE11 `WeakMap` frozen keys fallback, [#384](https://togithub.com/zloirock/core-js/issues/384). - Fix non-enumerable integer keys issue because of Nashorn ~ JDK8 bug, [#389](https://togithub.com/zloirock/core-js/issues/389). - Fix [Safari 12.0 `Array#reverse` bug](https://bugs.webkit.org/show_bug.cgi?id=188794). - One more fix for microtasks in iOS related [#339](https://togithub.com/zloirock/core-js/issues/339). - Added a fallback for [Rhino bug](https://togithub.com/mozilla/rhino/issues/346), [#440](https://togithub.com/zloirock/core-js/issues/440). - Many other internal fixes and improvements. - Repository: - Change `core-js` repository structure to monorepo with packages in `/packages/` directory. - Clean-up it, remove all possible duplicates, generated files, etc. - Packages: - **Extract a version without global namespace pollution to a separate `core-js-pure` package (replacement for `core-js/library`).** - **Leave only one pair of bundles (global, with all polyfills) and move it to `core-js-bundle` package.** - Remove bundling logic from `core-js` package, leave it only in `core-js-builder` package. - Clean-up packages. - Because of all approaches, **reduce size of packages from ~2mb for `core-js@2` to**: - **~500kb for `core-js` package** - **~440kb for `core-js-pure` package** - Finally remove `bower.json` - CommonJS API, namespaces: - Add availability [configuration of aggressiveness](https://togithub.com/zloirock/core-js/blob/master/README.md#configurable-level-of-aggressiveness). - Move `core-js/library` to separate `core-js-pure` package. - Because of removing all non-standard features, we no longer need `core-js/shim` entry point, replace it just with `core-js`. - Move all features from ES5, ES2015, ES2016, ES2017, ES2018 and ES2019 to one namespace for stable ES - it's available as `core-js/es`, all those features in `modules` folder has `es.` prefix. - Change prefix for ES proposals from `es7.` to `esnext.`, they no longer available in `core-js/es7`, use `core-js/stage/*` instead of that. - Rename `core-js(/library)/fn` to `core-js(-pure)/features` for improve readability. - Allow more granular inclusion of features from `/es/` path (for example, `core-js/es/array/from`). - Add `/stable/` entry points as an equal of `/features/` for stable features, without proposals. - Add `/proposals/` entry points for allow include all features from one proposal (for example, `core-js/proposals/reflect-metadata`). - Add `/es|stable|features/instance/` entry points for getting polyfill of the related method for passed instance (could be used in cases like `babel-runtime`). - Split typed arrays polyfills. Now you can, for example, load only required method (for example, `core-js/es/typed-array/from`). - Extract well-known symbols definition from `es.symbol` module for loading only required features, for example, in MS Edge. - Rename `web.dom` namespace to `web.dom-collections`. - Rename `es6.regexp.{match, replace, search, split}` -> `es.string.{match, replace, search, split}` - mainly it's fixes / adding support of well-known symbols to string methods, only in second place adding related methods to regexp prototype. - Relax `/modules/` directory by moving internal modules to `/internals/` directory. - Remove deprecated array entry points: `core-js(/library)/fn/array/{pop, push, reverse, shift, unshift}`. - `core` object no longer available in the global version, entry points which previously returned it now returns `globalThis` object. Also, don't set global `core` property. - Add some missing entry points. - Tools, tests, code quality: - Added `core-js-compat` package with: - Data about the necessity of `core-js` modules and API for getting a list of required `core-js` modules by `browserslist` query, [#466](https://togithub.com/zloirock/core-js/issues/466). - Data which modules load by each entry point (mainly useful for tools like `@babel/preset-env`). - Data which modules added in minor versions (mainly useful for tools like `@babel/preset-env`). - `core-js-builder` package: - Added `targets` option with `browserslist` query. - Removed an option for generation bundle of a version without global namespace pollution - now it's an odd use case. - Removed UMD wrapper from a generated code of bundles - we don't need it for a global polyfill. - **Getting rid of LiveScript**, usage another language in JS standard library looks strange and impedes usage of tools like ESLint: - Tests are rewritten to JS. - Scripts are rewritten to JS. - Babel with minimalistic config (which should work anywhere) used on tests. - ESLint used on tests and tools. - Source code refactored for improving readability. ### [`v2.6.8`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#268-LEGACY---20190522) [Compare Source](https://togithub.com/zloirock/core-js/compare/v2.6.7...v2.6.8) - Added a workaround of a strange `npx` bug on `postinstall`, [#551](https://togithub.com/zloirock/core-js/issues/551) ### [`v2.6.7`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#267-LEGACY---20190521) [Compare Source](https://togithub.com/zloirock/core-js/compare/v2.6.6...v2.6.7) - Added one more workaround of alternative not completely correct `Symbol` polyfills, [#550](https://togithub.com/zloirock/core-js/issues/550), [#554](https://togithub.com/zloirock/core-js/issues/554) ### [`v2.6.6`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#266-LEGACY---20190520) [Compare Source](https://togithub.com/zloirock/core-js/compare/v2.6.5...v2.6.6) - Fixed IE8- non-enumerable properties support in `Object.{ assign, entries, values }`, [#541](https://togithub.com/zloirock/core-js/issues/541) - Fixed support of primitives in `Object.getOwnPropertySymbols` in Chrome 38 / 39, [#539](https://togithub.com/zloirock/core-js/issues/539) - Show a message on `postinstall` ### [`v2.6.5`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#265---20190215) [Compare Source](https://togithub.com/zloirock/core-js/compare/v2.6.4...v2.6.5) - Fixed buggy `String#padStart` and `String#padEnd` mobile Safari implementations, [#414](https://togithub.com/zloirock/core-js/issues/414). ### [`v2.6.4`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#264---20190207) [Compare Source](https://togithub.com/zloirock/core-js/compare/v2.6.3...v2.6.4) - Added a workaround against crushing an old IE11.0.9600.16384 build, [#485](https://togithub.com/zloirock/core-js/issues/485). ### [`v2.6.3`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#263---20190122) [Compare Source](https://togithub.com/zloirock/core-js/compare/v2.6.2...v2.6.3) - Added a workaround for `babel-minify` bug, [#479](https://togithub.com/zloirock/core-js/issues/479) ### [`v2.6.2`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#262---20190110) [Compare Source](https://togithub.com/zloirock/core-js/compare/v2.6.1...v2.6.2) - Fixed handling of `$` in `String#replace`, [#471](https://togithub.com/zloirock/core-js/issues/471) ### [`v2.6.1`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#261---20181218) [Compare Source](https://togithub.com/zloirock/core-js/compare/v2.6.0...v2.6.1) - Fixed an issue with minified version, [#463](https://togithub.com/zloirock/core-js/issues/463), [#465](https://togithub.com/zloirock/core-js/issues/465) ### [`v2.6.0`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#260---20181205) [Compare Source](https://togithub.com/zloirock/core-js/compare/v2.5.7...v2.6.0) - Add direct `.exec` calling to `RegExp#{@@replace, @@split, @@match, @@search}`. Also, added fixes for `RegExp#exec` method. [#428](https://togithub.com/zloirock/core-js/issues/428), [#435](https://togithub.com/zloirock/core-js/issues/435), [#458](https://togithub.com/zloirock/core-js/issues/458), thanks [**@nicolo-ribaudo**](https://togithub.com/nicolo-ribaudo). ### [`v2.5.7`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#257---20180526) [Compare Source](https://togithub.com/zloirock/core-js/compare/v2.5.6...v2.5.7) - Get rid of reserved variable name `final`, related [#400](https://togithub.com/zloirock/core-js/issues/400) ### [`v2.5.6`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#256---20180507) [Compare Source](https://togithub.com/zloirock/core-js/compare/v2.5.5...v2.5.6) - Forced replace native `Promise` in V8 6.6 (Node 10 and Chrome 66) because of [a bug with resolving custom thenables](https://bugs.chromium.org/p/chromium/issues/detail?id=830565) - Added a workaround for usage buggy native LG WebOS 2 `Promise` in microtask implementation, [#396](https://togithub.com/zloirock/core-js/issues/396) - Added modern version internal debugging information about used versions ### [`v2.5.5`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#255---20180408) [Compare Source](https://togithub.com/zloirock/core-js/compare/v2.5.4...v2.5.5) - Fix some edge cases of `Reflect.set`, [#392](https://togithub.com/zloirock/core-js/issues/392) and [#393](https://togithub.com/zloirock/core-js/issues/393) ### [`v2.5.4`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#254---20180327) [Compare Source](https://togithub.com/zloirock/core-js/compare/v2.5.3...v2.5.4) - Fixed one case of deoptimization built-in iterators in V8, related [#377](https://togithub.com/zloirock/core-js/issues/377) - Fixed some cases of iterators feature detection, [#368](https://togithub.com/zloirock/core-js/issues/368) - Fixed manually entered NodeJS domains issue in `Promise`, [#367](https://togithub.com/zloirock/core-js/issues/367) - Fixed `Number.{parseInt, parseFloat}` entry points - Fixed `__(define|lookup)[GS]etter__` export in the `library` version ### [`v2.5.3`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#253---20171212) [Compare Source](https://togithub.com/zloirock/core-js/compare/v2.5.2...v2.5.3) - Fixed calling `onunhandledrejectionhandler` multiple times for one `Promise` chain, [#318](https://togithub.com/zloirock/core-js/issues/318) - Forced replacement of `String#{padStart, padEnd}` in Safari 10 because of [a bug](https://bugs.webkit.org/show_bug.cgi?id=161944), [#280](https://togithub.com/zloirock/core-js/issues/280) - Fixed `Array#@@iterator` in a very rare version of `WebKit`, [#236](https://togithub.com/zloirock/core-js/issues/236) and [#237](https://togithub.com/zloirock/core-js/issues/237) - One more [#345](https://togithub.com/zloirock/core-js/issues/345)-related fix ### [`v2.5.2`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#252---20171209) [Compare Source](https://togithub.com/zloirock/core-js/compare/v2.5.1...v2.5.2) - `MutationObserver` no longer used for microtask implementation in iOS Safari because of bug with scrolling, [#339](https://togithub.com/zloirock/core-js/issues/339) - Fixed `JSON.stringify(undefined, replacer)` case in the wrapper from the `Symbol` polyfill, [#345](https://togithub.com/zloirock/core-js/issues/345) - `Array()` calls changed to `new Array()` for V8 optimisation ### [`v2.5.1`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#251---20170901) [Compare Source](https://togithub.com/zloirock/core-js/compare/v2.5.0...v2.5.1) - Updated `Promise#finally` per [tc39/proposal-promise-finally#37](https://togithub.com/tc39/proposal-promise-finally/issues/37) - Optimized usage of some internal helpers for reducing size of `shim` version - Fixed some entry points for virtual methods ### [`v2.5.0`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#250---20170805) [Compare Source](https://togithub.com/zloirock/core-js/compare/v2.4.1...v2.5.0) - Added `Promise#finally` [stage 3 proposal](https://togithub.com/tc39/proposal-promise-finally), [#225](https://togithub.com/zloirock/core-js/issues/225) - Added `Promise.try` [stage 1 proposal](https://togithub.com/tc39/proposal-promise-try) - Added `Array#flatten` and `Array#flatMap` [stage 1 proposal](https://tc39.github.io/proposal-flatMap) - Added `.of` and `.from` methods on collection constructors [stage 1 proposal](https://togithub.com/tc39/proposal-setmap-offrom): - `Map.of` - `Set.of` - `WeakSet.of` - `WeakMap.of` - `Map.from` - `Set.from` - `WeakSet.from` - `WeakMap.from` - Added `Math` extensions [stage 1 proposal](https://togithub.com/rwaldron/proposal-math-extensions), [#226](https://togithub.com/zloirock/core-js/issues/226): - `Math.clamp` - `Math.DEG_PER_RAD` - `Math.degrees` - `Math.fscale` - `Math.RAD_PER_DEG` - `Math.radians` - `Math.scale` - Added `Math.signbit` [stage 1 proposal](http://jfbastien.github.io/papers/Math.signbit.html) - Updated `global` [stage 3 proposal](https://togithub.com/tc39/proposal-global) - added `global` global object, `System.global` deprecated - Updated `Object.getOwnPropertyDescriptors` to the [final version](https://tc39.github.io/ecma262/2017/#sec-object.getownpropertydescriptors) - it should not create properties if descriptors are `undefined` - Updated the list of iterable DOM collections, [#249](https://togithub.com/zloirock/core-js/issues/249), added: - `CSSStyleDeclaration#@@iterator` - `CSSValueList#@@iterator` - `ClientRectList#@@iterator` - `DOMRectList#@@iterator` - `DOMStringList#@@iterator` - `DataTransferItemList#@@iterator` - `FileList#@@iterator` - `HTMLAllCollection#@@iterator` - `HTMLCollection#@@iterator` - `HTMLFormElement#@@iterator` - `HTMLSelectElement#@@iterator` - `MimeTypeArray#@@iterator` - `NamedNodeMap#@@iterator` - `PaintRequestList#@@iterator` - `Plugin#@@iterator` - `PluginArray#@@iterator` - `SVGLengthList#@@iterator` - `SVGNumberList#@@iterator` - `SVGPathSegList#@@iterator` - `SVGPointList#@@iterator` - `SVGStringList#@@iterator` - `SVGTransformList#@@iterator` - `SourceBufferList#@@iterator` - `TextTrackCueList#@@iterator` - `TextTrackList#@@iterator` - `TouchList#@@iterator` - Updated stages of proposals: - [`Object.getOwnPropertyDescriptors`](https://togithub.com/tc39/proposal-object-getownpropertydescriptors) to [stage 4 (ES2017)](https://tc39.github.io/ecma262/2017/#sec-object.getownpropertydescriptors) - [String padding](https://togithub.com/tc39/proposal-string-pad-start-end) to [stage 4 (ES2017)](https://tc39.github.io/ecma262/2017/#sec-string.prototype.padend) - [`global`](https://togithub.com/tc39/proposal-global) to [stage 3](https://togithub.com/rwaldron/tc39-notes/blob/master/es7/2016-09/sept-28.md#revisit-systemglobal--global) - [String trimming](https://togithub.com/tc39/proposal-string-left-right-trim) to [stage 2](https://togithub.com/rwaldron/tc39-notes/blob/master/es7/2016-07/jul-27.md#10iic-trimstarttrimend) - Updated typed arrays to the modern (ES2016+) arguments validation, [#293](https://togithub.com/zloirock/core-js/pull/293) - Fixed `%TypedArray%.from` Safari bug, [#285](https://togithub.com/zloirock/core-js/issues/285) - Fixed compatibility with old version of Prototype.js, [#278](https://togithub.com/zloirock/core-js/issues/278), [#289](https://togithub.com/zloirock/core-js/issues/289) - `Function#name` no longer cache the result for correct behaviour with inherited constructors, [#296](https://togithub.com/zloirock/core-js/issues/296) - Added errors on incorrect context of collection methods, [#272](https://togithub.com/zloirock/core-js/issues/272) - Fixed conversion typed array constructors to string, fix [#300](https://togithub.com/zloirock/core-js/issues/300) - Fixed `Set#size` with debugger ReactNative for Android, [#297](https://togithub.com/zloirock/core-js/issues/297) - Fixed an issue with Electron-based debugger, [#230](https://togithub.com/zloirock/core-js/issues/230) - Fixed compatibility with incomplete third-party `WeakMap` polyfills, [#252](https://togithub.com/zloirock/core-js/pull/252) - Added a fallback for `Date#toJSON` in engines without native `Date#toISOString`, [#220](https://togithub.com/zloirock/core-js/issues/220) - Added support for Sphere Dispatch API, [#286](https://togithub.com/zloirock/core-js/pull/286) - Seriously changed the coding style and the [ESLint config](https://togithub.com/zloirock/core-js/blob/master/.eslintrc.js) - Updated many dev dependencies (`webpack`, `uglify`, etc) - Some other minor fixes and optimizations ### [`v2.4.1`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#241---20160718) [Compare Source](https://togithub.com/zloirock/core-js/compare/v2.4.0...v2.4.1) - Fixed `script` tag for some parsers, [#204](https://togithub.com/zloirock/core-js/issues/204), [#216](https://togithub.com/zloirock/core-js/issues/216) - Removed some unused variables, [#217](https://togithub.com/zloirock/core-js/issues/217), [#218](https://togithub.com/zloirock/core-js/issues/218) - Fixed MS Edge `Reflect.construct` and `Reflect.apply` - they should not allow primitive as `argumentsList` argument ### [`v2.4.0`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#240---20160508) [Compare Source](https://togithub.com/zloirock/core-js/compare/v2.3.0...v2.4.0) - Added `Observable`, [stage 1 proposal](https://togithub.com/zenparsing/es-observable) - Fixed behavior `Object.{getOwnPropertySymbols, getOwnPropertyDescriptor}` and `Object#propertyIsEnumerable` on `Object.prototype` - `Reflect.construct` and `Reflect.apply` should throw an error if `argumentsList` argument is not an object, [#194](https://togithub.com/zloirock/core-js/issues/194) ### [`v2.3.0`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#230---20160424) [Compare Source](https://togithub.com/zloirock/core-js/compare/v2.2.2...v2.3.0) - Added `asap` for enqueuing microtasks, [stage 0 proposal](https://togithub.com/rwaldron/tc39-notes/blob/master/es6/2014-09/sept-25.md#510-globalasap-for-enqueuing-a-microtask) - Added well-known symbol `Symbol.asyncIterator` for [stage 2 async iteration proposal](https://togithub.com/tc39/proposal-async-iteration) - Added well-known symbol `Symbol.observable` for [stage 1 observables proposal](https://togithub.com/zenparsing/es-observable) - `String#{padStart, padEnd}` returns original string if filler is empty string, [TC39 meeting notes](https://togithub.com/rwaldron/tc39-notes/blob/master/es7/2016-03/march-29.md#stringprototypepadstartpadend) - `Object.values` and `Object.entries` moved to stage 4 from 3, [TC39 meeting notes](https://togithub.com/rwaldron/tc39-notes/blob/master/es7/2016-03/march-29.md#objectvalues--objectentries) - `System.global` moved to stage 2 from 1, [TC39 meeting notes](https://togithub.com/rwaldron/tc39-notes/blob/master/es7/2016-03/march-29.md#systemglobal) - `Map#toJSON` and `Set#toJSON` rejected and will be removed from the next major release, [TC39 meeting notes](https://togithub.com/rwaldron/tc39-notes/blob/master/es7/2016-03/march-31.md#mapprototypetojsonsetprototypetojson) - `Error.isError` withdrawn and will be removed from the next major release, [TC39 meeting notes](https://togithub.com/rwaldron/tc39-notes/blob/master/es7/2016-03/march-29.md#erroriserror) - Added fallback for `Function#name` on non-extensible functions and functions with broken `toString` conversion, [#193](https://togithub.com/zloirock/core-js/issues/193) ### [`v2.2.2`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#222---20160406) [Compare Source](https://togithub.com/zloirock/core-js/compare/v2.2.1...v2.2.2) - Added conversion `-0` to `+0` to `Array#{indexOf, lastIndexOf}`, [ES2016 fix](https://togithub.com/tc39/ecma262/pull/316) - Added fixes for some `Math` methods in Tor Browser - `Array.{from, of}` no longer calls prototype setters - Added workaround over Chrome DevTools strange behavior, [#186](https://togithub.com/zloirock/core-js/issues/186) ### [`v2.2.1`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#221---20160319) [Compare Source](https://togithub.com/zloirock/core-js/compare/v2.2.0...v2.2.1) - Fixed `Object.getOwnPropertyNames(window)` `2.1+` versions bug, [#181](https://togithub.com/zloirock/core-js/issues/181) ### [`v2.2.0`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#220---20160315) [Compare Source](https://togithub.com/zloirock/core-js/compare/v2.1.5...v2.2.0) - Added `String#matchAll`, [proposal](https://togithub.com/tc39/String.prototype.matchAll) - Added `Object#__(define|lookup)[GS]etter__`, [annex B ES2017](https://togithub.com/tc39/ecma262/pull/381) - Added `@@toPrimitive` methods to `Date` and `Symbol` - Fixed `%TypedArray%#slice` in Edge ~ 13 (throws with `@@species` and wrapped / inherited constructor) - Some other minor fixes ### [`v2.1.5`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#215---20160312) [Compare Source](https://togithub.com/zloirock/core-js/compare/v2.1.4...v2.1.5) - Improved support NodeJS domains in `Promise#then`, [#180](https://togithub.com/zloirock/core-js/issues/180) - Added fallback for `Date#toJSON` bug in Qt Script, [#173](https://togithub.com/zloirock/core-js/issues/173#issuecomment-193972502) ### [`v2.1.4`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#214---20160308) [Compare Source](https://togithub.com/zloirock/core-js/compare/v2.1.3...v2.1.4) - Added fallback for `Symbol` polyfill in Qt Script, [#173](https://togithub.com/zloirock/core-js/issues/173) - Added one more fallback for IE11 `Script Access Denied` error with iframes, [#165](https://togithub.com/zloirock/core-js/issues/165) ### [`v2.1.3`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#213---20160229) [Compare Source](https://togithub.com/zloirock/core-js/compare/v2.1.2...v2.1.3) - Added fallback for [`es6-promise` package bug](https://togithub.com/stefanpenner/es6-promise/issues/169), [#176](https://togithub.com/zloirock/core-js/issues/176) ### [`v2.1.2`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#212---20160229) [Compare Source](https://togithub.com/zloirock/core-js/compare/v2.1.1...v2.1.2) - Some minor `Promise` fixes: - Browsers `rejectionhandled` event better HTML spec complaint - Errors in unhandled rejection handlers should not cause any problems - Fixed typo in feature detection ### [`v2.1.1`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#211---20160222) [Compare Source](https://togithub.com/zloirock/core-js/compare/v2.1.0...v2.1.1) - Some `Promise` improvements: - Feature detection: - **Added detection unhandled rejection tracking support - now it's available everywhere**, [#140](https://togithub.com/zloirock/core-js/issues/140) - Added detection `@@species` pattern support for completely correct subclassing - Removed usage `Object.setPrototypeOf` from feature detection and noisy console message about it in FF - `Promise.all` fixed for some very specific cases ### [`v2.1.0`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#210---20160209) [Compare Source](https://togithub.com/zloirock/core-js/compare/v2.0.3...v2.1.0) - **API**: - ES5 polyfills are split and logic, used in other polyfills, moved to internal modules - **All entry point works in ES3 environment like IE8- without `core-js/(library/)es5`** - **Added all missed single entry points for ES5 polyfills** - Separated ES5 polyfills moved to the ES6 namespace. Why? - Mainly, for prevent duplication features in different namespaces - logic of most required ES5 polyfills changed in ES6+: - Already added changes for: `Object` statics - should accept primitives, new whitespaces lists in `String#trim`, `parse(Int|float)`, `RegExp#toString` logic, `String#split`, etc - Should be changed in the future: `@@species` and `ToLength` logic in `Array` methods, `Date` parsing, `Function#bind`, etc - Should not be changed only several features like `Array.isArray` and `Date.now` - Some ES5 polyfills required for modern engines - All old entry points should work fine, but in the next major release API can be changed - `Object.getOwnPropertyDescriptors` moved to the stage 3, [January TC39 meeting](https://togithub.com/rwaldron/tc39-notes/blob/master/es7/2016-01/2016-01-28.md#objectgetownpropertydescriptors-to-stage-3-jordan-harband-low-priority-but-super-quick) - Added `umd` option for [custom build process](https://togithub.com/zloirock/core-js#custom-build-from-external-scripts), [#169](https://togithub.com/zloirock/core-js/issues/169) - Returned entry points for `Array` statics, removed in `2.0`, for compatibility with `babel` `6` and for future fixes - **Deprecated**: - `Reflect.enumerate` deprecated and will be removed from the next major release, [January TC39 meeting](https://togithub.com/rwaldron/tc39-notes/blob/master/es7/2016-01/2016-01-28.md#5xix-revisit-proxy-enumerate---revisit-decision-to-exhaust-iterator) - **New Features**: - Added [`Reflect` metadata API](https://togithub.com/jonathandturner/decorators/blob/master/specs/metadata.md) as a pre-strawman feature, [#152](https://togithub.com/zloirock/core-js/issues/152): - `Reflect.defineMetadata` - `Reflect.deleteMetadata` - `Reflect.getMetadata` - `Reflect.getMetadataKeys` - `Reflect.getOwnMetadata` - `Reflect.getOwnMetadataKeys` - `Reflect.hasMetadata` - `Reflect.hasOwnMetadata` - `Reflect.metadata` - Implementation / fixes `Date#toJSON` - Fixes for `parseInt` and `Number.parseInt` - Fixes for `parseFloat` and `Number.parseFloat` - Fixes for `RegExp#toString` - Fixes for `Array#sort` - Fixes for `Number#toFixed` - Fixes for `Number#toPrecision` - Additional fixes for `String#split` (`RegExp#@@split`) - **Improvements**: - Correct subclassing wrapped collections, `Number` and `RegExp` constructors with native class syntax - Correct support `SharedArrayBuffer` and buffers from other realms in typed arrays wrappers - Additional validations for `Object.{defineProperty, getOwnPropertyDescriptor}` and `Reflect.defineProperty` - **Bug Fixes**: - Fixed some cases `Array#lastIndexOf` with negative second argument ### [`v2.0.3`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#203---20160111) [Compare Source](https://togithub.com/zloirock/core-js/compare/v2.0.2...v2.0.3) - Added fallback for V8 ~ Chrome 49 `Promise` subclassing bug causes unhandled rejection on feature detection, [#159](https://togithub.com/zloirock/core-js/issues/159) - Added fix for very specific environments with global `window === null` ### [`v2.0.2`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#202---20160104) [Compare Source](https://togithub.com/zloirock/core-js/compare/v2.0.1...v2.0.2) - Temporarily removed `length` validation from `Uint8Array` constructor wrapper. Reason - [bug in `ws` module](https://togithub.com/websockets/ws/pull/645) (-> `socket.io`) which passes to `Buffer` constructor -> `Uint8Array` float and uses [the `V8` bug](https://code.google.com/p/v8/issues/detail?id=4552) for conversion to int (by the spec should be thrown an error). [It creates problems for many people.](https://togithub.com/karma-runner/karma/issues/1768) I hope, it will be returned after fixing this bug in `V8`. ### [`v2.0.1`](https://togithub.com/zloirock/core-js/blob/master/CHANGELOG.md#201---20151231) [Compare Source](https://togithub.com/zloirock/core-js/compare/v2.0.0...v2.0.1) - Forced usage `Promise.resolve` polyfill in the `library` version for correct work with wrapper - `Object.assign` should be defined in the strict mode -> throw an error on extension non-extensible objects, [#154](https://togithub.com/zloirock/core-js/issues/154)Renovate configuration
:date: Schedule: At any time (no schedule defined).
:vertical_traffic_light: Automerge: Disabled by config. Please merge this manually once you are satisfied.
:recycle: Rebasing: Whenever PR becomes conflicted, or if you modify the PR title to begin with "
rebase!
".:no_bell: Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Renovate Bot. View repository job log here.