更新日志
2015年10月11日小于 1 分钟
更新日志
提示
由于经常更新且内容较多,故不作翻译
Unreleased
- Use strict mode in some missed cases, #1269
3.31.1 - 2023.07.06
- Fixed a
structuredClonebug with cloning views of transferred buffers, #1265 - Fixed the order of arguments validation in
DataViewmethods - Allowed cloning of
Float16ArrayinstructuredClone - Compat data improvements:
Setmethods proposal marked as supported from Safari 17.0- New
URLfeatures:URL.canParse,URLSearchParams.prototype.sizeandvalueargument ofURLSearchParams.prototype.{ has, delete }marked as supported from Safari 17.0 valueargument ofURLSearchParams.prototype.{ has, delete }marked as supported from Deno 1.35AggregateErrorand well-formedJSON.stringifymarked as supported React Native 0.72 Hermes- Added Deno 1.35 compat data mapping
- Added Quest Browser 28 compat data mapping
- Added missing NodeJS 12.16-12.22 compat data mapping
- Updated Opera Android 76 compat data mapping
3.31.0 - 2023.06.12
- Well-formed unicode strings proposal:
- Methods:
String.prototype.isWellFormedmethodString.prototype.toWellFormedmethod
- Moved to stable ES, May 2023 TC39 meeting
- Added
es.namespace modules,/es/and/stable/namespaces entries
- Methods:
Arraygrouping proposal, May 2023 TC39 meeting updates:- Because of the web compat issue, moved from prototype to static methods. Added:
Object.groupBymethodMap.groupBymethod (with the actual semantic - with a minor difference it was present in the collections methods stage 1 proposal)
- Demoted to stage 2
- Because of the web compat issue, moved from prototype to static methods. Added:
- Decorator Metadata proposal, May 2023 TC39 meeting updates:
- Moved to stage 3
- Added
Function.prototype[Symbol.metadata](=== null) - Added
/actual/entries
- Iterator Helpers stage 3 proposal:
- Changed
Symbol.iteratorfallback from callable check toundefined/nullcheck, May 2023 TC39 meeting, proposal-iterator-helpers/272 - Removed
IsCallablecheck onNextMethod, deferring errors toCallsite, May 2023 TC39 meeting, proposal-iterator-helpers/274
- Changed
- Added
Promise.withResolversstage 2 proposal:Promise.withResolversmethod
Symbolpredicates stage 2 proposal:- The methods renamed to end with
Symbol, May 2023 TC39 meeting:Symbol.isRegistered->Symbol.isRegisteredSymbolmethodSymbol.isWellKnown->Symbol.isWellKnownSymbolmethod
- The methods renamed to end with
- Added
valueargument ofURLSearchParams.prototype.{ has, delete }, url/735 - Fixed some cases of increasing buffer size in
ArrayBuffer.prototype.{ transfer, transferToFixedLength }polyfills - Fixed awaiting async
AsyncDisposableStack.prototype.adoptcallback, #1258 - Fixed
URLSearchParams#sizein ES3 engines (IE8-) - Added a workaround in
Object.{ entries, values }for some IE versions bug with invisible integer keys onnull-prototype objects - Added TypeScript definitions to
core-js-compat, #1235, thanks @susnux - Compat data improvements:
Set.prototype.differencethat was missed in Bun because of a bug added in 0.6.0Array.prototype.{ group, groupToMap }marked as no longer supported in WebKit runtimes because of the mentioned above web compat issue. For example, it's disabled from Bun 0.6.2- Methods from the change
Arrayby copy proposal marked as supported from FF115 Array.fromAsyncmarked as supported from FF115URL.canParsemarked as supported from FF115valueargument ofURLSearchParams.prototype.{ has, delete }marked as supported from NodeJS 20.2.0 and FF115- Added Deno 1.34 compat data mapping
- Added Electron 26 compat data mapping
- Added Samsung Internet 22 compat data mapping
- Added Opera Android 75 and 76 compat data mapping
- Added Quest Browser 27 compat data mapping
3.30.2 - 2023.05.07
- Added a fix for a NodeJS 20.0.0 bug with cloning
FileviastructuredClone - Added protection from Terser unsafe
Stringoptimization, #1242 - Added a workaround for getting proper global object in Figma plugins, #1231
- Compat data improvements:
- Added NodeJS 20.0 compat data mapping
- Added Deno 1.33 compat data mapping
URL.canParsemarked as supported (fixed) from NodeJS 20.1.0 and Deno 1.33.2
3.30.1 - 2023.04.14
- Added a fix for a NodeJS 19.9.0
URL.canParsebug - Compat data improvements:
JSON.parsesource text access proposal features marked as supported from V8 ~ Chrome 114ArrayBuffer.prototype.transferand friends proposal features marked as supported from V8 ~ Chrome 114URLSearchParams.prototype.sizemarked as supported from V8 ~ Chrome 113
3.30.0 - 2023.04.04
- Added
URL.canParsemethod, url/763 Setmethods proposal:- Removed sort from
Set.prototype.intersection, March 2023 TC39 meeting, proposal-set-methods/94
- Removed sort from
- Iterator Helpers proposals (sync, async):
- Validate arguments before opening iterator, March 2023 TC39 meeting, proposal-iterator-helpers/265
- Explicit Resource Management proposals (sync, async):
(Async)DisposableStack.prototype.movemarks the original stack as disposed, #1226- Some simplifications like proposal-explicit-resource-management/150
Iterator.rangeproposal:- Moved to Stage 2, March 2023 TC39 meeting
- Decorator Metadata proposal:
- Returned to usage
Symbol.metadata, March 2023 TC39 meeting, proposal-decorator-metadata/12
- Returned to usage
- Compat data improvements:
URLSearchParams.prototype.sizemarked as supported from FF112, NodeJS 19.8 and Deno 1.32- Added Safari 16.4 compat data
- Added Deno 1.32 compat data mapping
- Added Electron 25 and updated 24 compat data mapping
- Added Samsung Internet 21 compat data mapping
- Added Quest Browser 26 compat data mapping
- Updated Opera Android 74 compat data
3.29.1 - 2023.03.13
- Fixed dependencies of some entries
- Fixed
ToStringconversion / built-ins nature of some accessors String.prototype.{ isWellFormed, toWellFormed }marked as supported from V8 ~ Chrome 111- Added Opera Android 74 compat data mapping
3.29.0 - 2023.02.27
- Added
URLSearchParams.prototype.sizegetter, url/734 - Allowed cloning resizable
ArrayBuffers in thestructuredClonepolyfill - Fixed wrong export in
/(stable|actual|full)/instance/unshiftentries, #1207 - Compat data improvements:
Setmethods proposal marked as supported from Bun 0.5.7String.prototype.toWellFormedmarked as fixed from Bun 0.5.7- Added Deno 1.31 compat data mapping
3.28.0 - 2023.02.14
I highly recommend reading this: So, what's next?
- Change
Arrayby copy proposal:- Methods:
Array.prototype.toReversedArray.prototype.toSortedArray.prototype.toSplicedArray.prototype.with%TypedArray%.prototype.toReversed%TypedArray%.prototype.toSorted%TypedArray%.prototype.with
- Moved to stable ES, January 2023 TC39 meeting
- Added
es.namespace modules,/es/and/stable/namespaces entries
- Methods:
- Added
JSON.parsesource text access Stage 3 proposal- Methods:
JSON.parsepatched for supportsourceinreviverfunction argumentsJSON.rawJSONJSON.isRawJSONJSON.stringifypatched for supportJSON.rawJSON
- Methods:
- Added
ArrayBuffer.prototype.transferand friends Stage 3 proposal:- Built-ins:
ArrayBuffer.prototype.detachedArrayBuffer.prototype.transfer(only in runtimes with nativestructuredClonewithArrayBuffertransfer support)ArrayBuffer.prototype.transferToFixedLength(only in runtimes with nativestructuredClonewithArrayBuffertransfer support)
- In backwards, in runtimes with native
ArrayBuffer.prototype.transfer, but without properstructuredClone, addedArrayBuffertransfer support tostructuredClonepolyfill
- Built-ins:
- Iterator Helpers proposal:
- Splitted into 2 (sync and async) proposals, async version moved back to Stage 2, January 2023 TC39 meeting
- Allowed interleaved mapping in
AsyncIteratorhelpers, proposal-iterator-helpers/262
- Explicit Resource Management Stage 3 and Async Explicit Resource Management Stage 2 proposals:
InstallErrorCauseremoved fromSuppressedError, January 2023 TC39 meeting, proposal-explicit-resource-management/145- Simplified internal behaviour of
{ AsyncDisposableStack, DisposableStack }.prototype.use, proposal-explicit-resource-management/143
- Added
Symbolpredicates Stage 2 proposal- Methods:
Symbol.isRegisteredSymbol.isWellKnown
- Methods:
Number.rangeStage 1 proposal and method renamed toIterator.rangeFunction.prototype.unThisStage 0 proposal and method renamed toFunction.prototype.demethodize- Fixed Safari
String.prototype.toWellFormedToStringconversion bug - Improved some cases handling of array-replacer in
JSON.stringifysymbols handling fix - Fixed many other old
JSON.{ parse, stringify }bugs (numbers instead of strings as keys in replacer, handling negative zeroes, spaces, some more handling symbols cases, etc.) - Fixed configurability and
ToStringconversion of some accessors - Added throwing proper errors on an incorrect context in some
ArrayBufferandDataViewmethods - Some minor
DataViewand%TypedArray%polyfills optimizations - Added proper error on the excess number of trailing
=in theatobpolyfill - Fixed theoretically possible ReDoS vulnerabilities in
String.prototype.{ trim, trimEnd, trimRight },parse(Int|Float),Number,atob, andURLpolyfills in some ancient engines - Compat data improvements:
RegExp.prototype.flagsmarked as fixed from V8 ~ Chrome 111- Added Opera Android 73 compat data mapping
- Added TypeScript definitions to
core-js-builder
3.27.2 - 2023.01.19
Setmethods proposal updates:- Closing of iterators of
Set-like objects on early exit, proposal-set-methods/85 - Some other minor internal changes
- Closing of iterators of
- Added one more workaround of a
webpackdev server bug on IE global methods, #1161 - Fixed possible
String.{ raw, cooked }error with empty template array - Used non-standard V8
Error.captureStackTraceinstead of stack parsing in new error classes / wrappers where it's possible - Added detection correctness of iteration to
Promise.{ allSettled, any }feature detection, Hermes issue - Compat data improvements:
- Change
Arrayby copy proposal marked as supported from V8 ~ Chrome 110 - Added Samsung Internet 20 compat data mapping
- Added Quest Browser 25 compat data mapping
- Added React Native 0.71 Hermes compat data
- Added Electron 23 and 24 compat data mapping
selfmarked as fixed in Deno 1.29.3, deno/17362
- Change
- Minor tweaks of minification settings for
core-js-bundle - Refactoring, some minor fixes, improvements, optimizations
3.27.1 - 2022.12.30
- Fixed a Chakra-based MS Edge (18-) bug that unfreeze (O_o) frozen arrays used as
WeakMapkeys - Fixing of the previous bug also fixes some cases of
String.dedentin MS Edge - Fixed dependencies of some entries
3.27.0 - 2022.12.26
- Iterator Helpers proposal:
- Built-ins:
IteratorIterator.fromIterator.prototype.dropIterator.prototype.everyIterator.prototype.filterIterator.prototype.findIterator.prototype.flatMapIterator.prototype.forEachIterator.prototype.mapIterator.prototype.reduceIterator.prototype.someIterator.prototype.takeIterator.prototype.toArrayIterator.prototype.toAsyncIterator.prototype[@@toStringTag]
AsyncIteratorAsyncIterator.fromAsyncIterator.prototype.dropAsyncIterator.prototype.everyAsyncIterator.prototype.filterAsyncIterator.prototype.findAsyncIterator.prototype.flatMapAsyncIterator.prototype.forEachAsyncIterator.prototype.mapAsyncIterator.prototype.reduceAsyncIterator.prototype.someAsyncIterator.prototype.takeAsyncIterator.prototype.toArrayAsyncIterator.prototype[@@toStringTag]
- Moved to Stage 3, November 2022 TC39 meeting
- Added
/actual/entries, unconditional forced replacement disabled for features that survived to Stage 3 .fromaccept strings,.flatMapthrows on strings returned from the callback, proposal-iterator-helpers/244, proposal-iterator-helpers/250.fromand.flatMapthrows on non-object iterators, proposal-iterator-helpers/253
- Built-ins:
Setmethods proposal:- Built-ins:
Set.prototype.intersectionSet.prototype.unionSet.prototype.differenceSet.prototype.symmetricDifferenceSet.prototype.isSubsetOfSet.prototype.isSupersetOfSet.prototype.isDisjointFrom
- Moved to Stage 3, November 2022 TC39 meeting
- Reimplemented with new semantics:
- Optimized performance (iteration over lowest set)
- Accepted only
Set-like objects as an argument, not all iterables - Accepted only
Sets asthis, no@@speciessupport, and other minor changes
- Added
/actual/entries, unconditional forced replacement changed to feature detection - For avoiding breaking changes:
- New versions of methods are implemented as new modules and available in new entries or entries where old versions of methods were not available before (like
/actual/namespace) - In entries where they were available before (like
/full/namespace), those methods are available with fallbacks to old semantics (in addition toSet-like, they accept iterable objects). This behavior will be removed from the next major release
- New versions of methods are implemented as new modules and available in new entries or entries where old versions of methods were not available before (like
- Built-ins:
- Well-Formed Unicode Strings proposal:
- Methods:
String.prototype.isWellFormedString.prototype.toWellFormed
- Moved to Stage 3, November 2022 TC39 meeting
- Added
/actual/entries, disabled unconditional forced replacement
- Methods:
- Explicit resource management Stage 3 and Async explicit resource management Stage 2 proposals:
- Renamed from "
usingstatement" and splitted into 2 (sync and async) proposals - In addition to already present well-known symbols, added new built-ins:
Symbol.disposeSymbol.asyncDisposeSuppressedErrorDisposableStackDisposableStack.prototype.disposeDisposableStack.prototype.useDisposableStack.prototype.adoptDisposableStack.prototype.deferDisposableStack.prototype.moveDisposableStack.prototype[@@dispose]
AsyncDisposableStackAsyncDisposableStack.prototype.disposeAsyncAsyncDisposableStack.prototype.useAsyncDisposableStack.prototype.adoptAsyncDisposableStack.prototype.deferAsyncDisposableStack.prototype.moveAsyncDisposableStack.prototype[@@asyncDispose]
Iterator.prototype[@@dispose]AsyncIterator.prototype[@@asyncDispose]
- Sync version of this proposal moved to Stage 3, November 2022 TC39 meeting
- Added
/actual/namespace entries for Stage 3 proposal
- Renamed from "
- Added
String.dedentstage 2 proposal- Method
String.dedent - Throws an error on non-frozen raw templates for avoiding possible breaking changes in the future, proposal-string-dedent/75
- Method
- Compat data targets improvements:
- React Native from 0.70 shipped with Hermes as the default engine. However, bundled Hermes versions differ from standalone Hermes releases. So added
react-nativetarget for React Native with bundled Hermes. - According to the documentation, Oculus Browser was renamed to Meta Quest Browser, so
oculustarget was renamed toquest. opera_mobiletarget name is confusing since it contains data for the Chromium-based Android version, but iOS Opera is Safari-based. Soopera_mobiletarget was renamed toopera-android.androidtarget name is also confusing for someone - that means Android WebView, some think thinks that it's Chrome for Android, but they have some differences. For avoiding confusion, addedchrome-androidtarget.- For consistency with two previous cases, added
firefox-androidtarget. - For avoiding breaking changes, the
oculusandopera_mobilefields are available in the compat data till the next major release.
- React Native from 0.70 shipped with Hermes as the default engine. However, bundled Hermes versions differ from standalone Hermes releases. So added
- Compat data improvements:
Array.fromAsyncmarked as supported from Bun 0.3.0String.prototype.{ isWellFormed, toWellFormed }marked as supported from Bun 0.4.0- Change
Arrayby copy proposal marked as supported from Deno 1.27, deno/16429 - Added Deno 1.28 / 1.29 compat data mapping
- Added NodeJS 19.2 compat data mapping
- Added Samsung Internet 19.0 compat data mapping
- Added Quest Browser 24.0 compat data mapping
- Fixed the first version in the Chromium-based Edge compat data mapping
{ Map, WeakMap }.prototype.emplacebecame stricter by the spec draft- Smoothed behavior of some conflicting proposals
- Removed some generic behavior (like
@@speciespattern) of some.prototypemethods from the new collections methods proposal and theArraydeduplication proposal that most likely will not be implemented since it contradicts the current TC39 policy - Added pure version of the
Numberconstructor, #1154, #1155, thanks @trosos - Added
set(Timeout|Interval|Immediate)extra arguments fix for Bun 0.3.0- (similarly to IE9-), bun/1633 - Fixed handling of sparse arrays in
structuredClone, #1156 - Fixed a theoretically possible future conflict of polyfills definitions in the pure version
- Some refactoring and optimization
3.26.1 - 2022.11.14
- Disabled forced replacing of
Array.fromAsyncsince it's on Stage 3 - Avoiding a check of the target in the internal
function-uncurry-thishelper where it's not required - minor optimization and preventing problems in some broken environments, a workaround of #1141 - V8 will not ship
Array.prototype.{ group, groupToMap }in V8 ~ Chromium 108, proposal-array-grouping/44
3.26.0 - 2022.10.24
Array.fromAsyncproposal:- Moved to Stage 3, September TC39 meeting
- Avoid observable side effects of
%Array.prototype.values%usage in array-like branch, proposal-array-from-async/30
- Added well-formed unicode strings stage 2 proposal:
String.prototype.isWellFormedString.prototype.toWellFormed
- Recent updates of the iterator helpers proposal:
- Added a counter parameter to helpers, proposal-iterator-helpers/211
- Don't await non-objects returned from functions passed to
AsyncIteratorhelpers, proposal-iterator-helpers/239 { Iterator, AsyncIterator }.prototype.flatMapsupports returning both - iterables and iterators, proposal-iterator-helpers/233- Early exit on broken
.nextin missed cases of{ Iterator, AsyncIterator }.from, proposal-iterator-helpers/232
- Added
selfpolyfill as a part of The Minimum Common Web Platform API, specification, #1118 - Added
inverseoption tocore-js-compat, #1119 - Added
formatoption tocore-js-builder, #1120 - Added NodeJS 19.0 compat data
- Added Deno 1.26 and 1.27 compat data
- Added Opera Android 72 compat data mapping
- Updated Electron 22 compat data mapping
3.25.5 - 2022.10.04
- Fixed regression with an error on reuse of some built-in methods from another realm, #1133
3.25.4 - 2022.10.03
- Added a workaround of a Nashorn bug with
Function.prototype.{ call, apply, bind }on string methods, #1128 - Updated lists of
[Serializable]and[Transferable]objects in thestructuredClonepolyfill. Mainly, for better error messages if polyfilling of cloning such types is impossible Array.prototype.{ group, groupToMap }marked as supported from V8 ~ Chromium 108- Added Electron 22 compat data mapping
3.25.3 - 2022.09.26
- Forced polyfilling of
Array.prototype.groupToMapin the pure version for returning wrappedMapinstances - Fixed existence of
Array.prototype.{ findLast, findLastIndex }in/stage/4entry - Added Opera Android 71 compat data mapping
- Some stylistic changes
3.25.2 - 2022.09.19
- Considering
document.allas a callable in some missed cases - Added Safari 16.0 compat data
- Added iOS Safari 16.0 compat data mapping
- Fixed some ancient iOS Safari versions compat data mapping
3.25.1 - 2022.09.08
- Added some fixes and workarounds of FF30- typed arrays bug that does not properly convert objects to numbers
- Added
sideEffectsfield tocore-js-purepackage.jsonfor better tree shaking, #1117 - Dropped
semverdependency fromcore-js-compatsemverpackage (ironically) added a breaking change and dropped NodeJS 8 support in the minor7.1version, after thatsemverincore-js-compatwas pinned to7.0since for avoiding breaking changes it should support NodeJS 8. However, sincecore-js-compatis usually used with other packages that usesemverdependency, it causes multiple duplication ofsemverin dependencies. So I decided to removesemverdependency and replace it with a couple of simple helpers.
- Added Bun 0.1.6-0.1.11 compat data
- Added Deno 1.25 compat data mapping
- Updated Electron 21 compat data mapping
- Some stylistic changes, minor fixes, and improvements
3.25.0 - 2022.08.25
- Added
Object.prototype.__proto__polyfill- It's optional, legacy, and in some cases (mainly because of developers' mistakes) can cause problems, but some libraries depend on it, and most code can't work without the proper libraries' ecosystem
- Only for modern engines where this feature is missed (like Deno), it's not installed in IE10- since here we have no proper way setting of the prototype
- Without fixes of early implementations where it's not an accessor since those fixes are impossible
- Only for the global version
- Considering
document.allas an object in some missed cases, see ECMAScript Annex B 3.6 - Avoiding unnecessary promise creation and validation result in
%WrapForValid(Async)IteratorPrototype%.return, proposal-iterator-helpers/215 - Fixed omitting the result of proxing
.returnin%IteratorHelperPrototype%.return, #1116 - Fixed the order creation of properties of iteration result object of some iterators (
valueshould be created beforedone) - Fixed some cases of Safari < 13 bug - silent on non-writable array
.lengthsetting - Fixed
ArrayBuffer.lengthin V8 ~ Chrome 27- - Relaxed condition of re-usage native
WeakMapfor internal states with multiplecore-jscopies - Availability cloning of
FileListin thestructuredClonepolyfill extended to some more old engines versions - Some stylistic changes and minor fixes
- Throwing a
TypeErrorincore-js-compat/core-js-builderin case of passing invalid module names / filters for avoiding unexpected result, related to #1115 - Added missed NodeJS 13.2 to
esmodulescore-js-compat/core-js-buildertarget - Added Electron 21 compat data mapping
- Added Oculus Browser 23.0 compat data mapping
3.24.1 - 2022.07.30
- NodeJS is ignored in
IS_BROWSERdetection to avoid a false positive withjsdom, #1110 - Fixed detection of
@@speciessupport inPromisein some old engines { Array, %TypedArray% }.prototype.{ findLast, findLastIndex }marked as shipped in FF104- Added iOS Safari 15.6 compat data mapping
- Fixed Opera 15 compat data mapping
3.24.0 - 2022.07.25
- Recent updates of the iterator helpers proposal, #1101:
.asIndexedPairsrenamed to.indexed, proposal-iterator-helpers/183:Iterator.prototype.asIndexedPairs->Iterator.prototype.indexedAsyncIterator.prototype.asIndexedPairs->AsyncIterator.prototype.indexed
- Avoid exposing spec fiction
%AsyncFromSyncIteratorPrototype%inAsyncIterator.fromandIterator.prototype.toAsync, proposal-iterator-helpers/182, proposal-iterator-helpers/202 - Avoid unnecessary promise creation in
%WrapForValidAsyncIteratorPrototype%.next, proposal-iterator-helpers/197 - Do not validate value in
%WrapForValid(Async)IteratorPrototype%.next, proposal-iterator-helpers/197 and proposal-iterator-helpers/205 - Do not forward the parameter of
.next/.returnto an underlying iterator by the extended iterator protocol, a part of proposal-iterator-helpers/194 .throwmethods removed from all wrappers / helpers prototypes, a part of proposal-iterator-helpers/194- Close inner iterators of
{ Iterator, AsyncIterator }.prototype.flatMapproxy iterators on.return, proposal-iterator-helpers/195 - Throw
RangeErroronNaNin{ Iterator, AsyncIterator }.prototype.{ drop, take }, proposal-iterator-helpers/181 - Many other updates and fixes of this proposal
%TypedArray%.prototype.toSplicedmethod removed from the change array by copy proposal and marked as obsolete incore-js, proposal-change-array-by-copy/88- Polyfill
Promisewithunhandledrejectionevent support (browser style) in Deno < 1.24 - Available new targets in
core-js-compat/core-js-builderand added compat data for them: - Added Samsung Internet 18.0 compat data mapping
3.23.5 - 2022.07.18
- Fixed a typo in the
structuredClonefeature detection, #1106 - Added Opera Android 70 compat data mapping
3.23.4 - 2022.07.10
- Added a workaround of the Bun ~ 0.1.1 bug that define some globals with incorrect property descriptors and that causes a crash of
core-js - Added a fix of the FF103+
structuredClonebugs (1774866 (fixed in FF104) and 1777321 (still not fixed)) that now can clone errors, but.stackof the clone is an empty string - Fixed
{ Map, WeakMap }.prototype.emplacelogic, #1102 - Fixed order of errors throwing on iterator helpers
3.23.3 - 2022.06.26
- Changed the order of operations in
%TypedArray%.prototype.toSplicedfollowing proposal-change-array-by-copy/89 - Fixed regression of some IE8- issues
3.23.2 - 2022.06.21
- Avoided creation of extra properties for the handling of
%TypedArray%constructors in new methods, #1092 (comment) - Added Deno 1.23 compat data mapping
3.23.1 - 2022.06.14
- Fixed possible error on multiple
core-jscopies, #1091 - Added
vflag toRegExp.prototype.flagsimplementation in case if current V8 bugs will not be fixed before this flag implementation
3.23.0 - 2022.06.14
Arrayfind from last moved to the stable ES, according to June 2022 TC39 meeting:Array.prototype.findLastArray.prototype.findLastIndex%TypedArray%.prototype.findLast%TypedArray%.prototype.findLastIndex
- Methods from the
Arraygrouping proposal renamed, according to June 2022 TC39 meeting:Array.prototype.groupBy->Array.prototype.groupArray.prototype.groupByToMap->Array.prototype.groupToMap
- Changed the order of operations in
%TypedArray%.prototype.withfollowing proposal-change-array-by-copy/86, according to June 2022 TC39 meeting - Decorator Metadata proposal extracted from Decorators proposal as a separate stage 2 proposal, according to March 2022 TC39 meeting,
Symbol.metadataKeyreplacesSymbol.metadata - Added
Array.prototype.pushpolyfill with some fixes for modern engines - Added
Array.prototype.unshiftpolyfill with some fixes for modern engines - Fixed a bug in the order of getting flags in
RegExp.prototype.flagsin the actual version of V8 - Fixed property descriptors of some
MathandNumberconstants - Added a workaround of V8
ArrayBufferDetachingprotector cell invalidation and performance degradation onstructuredClonefeature detection, one more case of #679 - Added detection of NodeJS bug in
structuredClonethat can not cloneDOMException(just in case for future versions that will fix other issues) - Compat data:
- Added NodeJS 18.3 compat data mapping
- Added and fixed Deno 1.22 and 1.21 compat data mapping
- Added Opera Android 69 compat data mapping
- Updated Electron 20.0 compat data mapping
3.22.8 - 2022.06.02
- Fixed possible multiple call of
ToBigInt/ToNumberconversion of the argument passed to%TypedArray%.prototype.fillin V8 ~ Chrome < 59, Safari < 14.1, FF < 55, Edge <=18 - Fixed some cases of
DeletePropertyOrThrowin IE9- - Fixed the kind of error (
TypeErrorinstead ofError) on incorrectexecresult inRegExp.prototype.testpolyfill - Fixed dependencies of
{ actual, full, features }/typed-array/atentries - Added Electron 20.0 compat data mapping
- Added iOS Safari 15.5 compat data mapping
- Refactoring
3.22.7 - 2022.05.24
- Added a workaround for V8 ~ Chrome 53 bug with non-writable prototype of some methods, #1083
3.22.6 - 2022.05.23
- Fixed possible double call of
ToNumberconversion on arguments ofMath.{ fround, trunc }polyfills Array.prototype.includesmarked as fixed in FF102
3.22.5 - 2022.05.10
- Ensured that polyfilled constructors
.prototypeis non-writable - Ensured that polyfilled methods
.prototypeis not defined - Added detection and fix of a V8 ~ Chrome <103 bug of
struturedClonethat returnsnullif cloned object contains multiple references to one error
3.22.4 - 2022.05.03
- Ensured proper
.lengthof polyfilled functions even in compressed code (excepting some ancient engines) - Ensured proper
.nameof polyfilled accessors (excepting some ancient engines) - Ensured proper source /
ToStringconversion of polyfilled accessors - Actualized Rhino compat data
- Refactoring
3.22.3 - 2022.04.28
- Added a fix for FF99+
Array.prototype.includesbroken on sparse arrays
3.22.2 - 2022.04.21
- Fixed
URLSearchParamsin IE8- that was broken in the previous release - Fixed
__lookupGetter__entries
3.22.1 - 2022.04.20
- Improved some cases of
RegExpflags handling - Prevented experimental warning in NodeJS ~ 18.0 on detection
fetchAPI - Added NodeJS 18.0 compat data
3.22.0 - 2022.04.15
- Change
Arrayby copy proposal:- Moved to Stage 3, March TC39 meeting
- Disabled forced replacement and added
/actual/entry points for methods from this proposal Array.prototype.toSplicedthrows aTypeErrorinstead ofRangeErrorif the result length is more thanMAX_SAFE_INTEGER, proposal-change-array-by-copy/70
- Added some more
atob/btoafixes:- NodeJS <17.9
atobdoes not ignore spaces, node/42530 - Actual NodeJS
atobdoes not validate encoding, node/42646 - FF26- implementation does not properly convert argument to string
- IE / Edge <16 implementation have wrong arity
- NodeJS <17.9
- Added
/full/namespace as the replacement for/features/since it's more descriptive in context of the rest namespaces (/es/⊆/stable/⊆/actual/⊆/full/) - Avoided propagation of removed parts of proposals to upper stages. For example,
%TypedArray%.prototype.groupBywas removed from theArraygrouping proposal a long time ago. We can't completely remove this method since it's a breaking change. But this proposal has been promoted to stage 3 - so the proposal should be promoted without this method, this method should not be available in/actual/entries - but it should be available in early-stage entries to avoid breakage. - Significant internal refactoring and splitting of modules (but without exposing to public API since it will be a breaking change - it will be exposed in the next major version)
- Bug fixes:
- Tooling:
- Stabilized proposals are filtered out from the
core-js-compat->core-js-builder->core-js-bundleoutput. That mean that if the output contains, for example,es.object.has-own, the legacy reference to it,esnext.object.has-own, no longer added. - Aligned modules filters of
core-js-builderandcore-js-compat, now it'smodulesandexcludeoptions - Added support of entry points, modules, regexes, and arrays of them to those filters
- Missed
targetsoption ofcore-js-compatmeans that thetargetsfilter just will not be applied, so the result will contain modules required for all possible engines
- Stabilized proposals are filtered out from the
- Compat data:
.stackproperty onDOMExceptionmarked as supported from Deno 1.15- Added Deno 1.21 compat data mapping
- Added Electron 19.0 and updated 18.0 compat data mapping
- Added Samsung Internet 17.0 compat data mapping
- Added Opera Android 68 compat data mapping
3.21.1 - 2022.02.17
- Added a bugfix for the WebKit
Array.prototype.{ groupBy, groupByToMap }implementation core-js-compattargets parser transforms engine names to lower caseatob/btoamarked as fixed in NodeJS 17.5- Added Electron 18.0 compat data mapping
- Added Deno 1.20 compat data mapping
3.21.0 - 2022.02.02
- Added Base64 utility methods:
atobbtoa
- Added the proper validation of arguments to some methods from web standards
- Forced replacement of all features from early-stage proposals for avoiding possible web compatibility issues in the future
- Added Rhino 1.7.14 compat data
- Added Deno 1.19 compat data mapping
- Added Opera Android 66 and 67 compat data mapping
- Added iOS Safari 15.3 and 15.4 compat data mapping
3.20.3 - 2022.01.15
- Detects and replaces broken third-party
Function#bindpolyfills, uses only nativeFunction#bindin the internals structuredCloneshould throw an error if no arguments passed- Changed the structure of notes in
__core-js_shared__
3.20.2 - 2022.01.02
- Added a fix of a V8 ~ Chrome 36-
Object.{ defineProperty, defineProperties }bug, Babel issue - Added fixes of some different
%TypedArray%.prototype.setbugs, affects modern engines (like Chrome < 95 or Safari < 14.1)
3.20.1 - 2021.12.23
- Fixed the order of calling reactions of already fulfilled / rejected promises in
Promise.prototype.then, #1026 - Fixed possible memory leak in specific promise chains
- Fixed some missed dependencies of entries
- Added Deno 1.18 compat data mapping
3.20.0 - 2021.12.16
- Added
structuredClonemethod from the HTML spec, see MDN- Includes all cases of cloning and transferring of required ECMAScript and platform types that can be polyfilled, for the details see the caveats
- Uses native structured cloning algorithm implementations where it's possible
- Includes the new semantic of errors cloning from
html/5749
- Added
DOMExceptionpolyfill, the Web IDL spec, see MDN- Includes
DOMExceptionand its attributes polyfills with fixes of many different engines bugs - Includes
DOMException#stackproperty polyfill in engines that should have it - Reuses native
DOMExceptionimplementations where it's possible (for example, in old NodeJS where it's not exposed as global)
- Includes
- Added support of
causeon all Error types - Added
Error.prototype.toStringmethod polyfill with fixes of many different bugs of JS engines - Added
Number.prototype.toExponentialmethod polyfill with fixes of many different bugs of JS engines Arraygrouping proposal:- Moved to stage 3
- Added
Array.prototype.groupByToMapmethod - Removed
@@speciessupport
- Added change
Arrayby copy stage 2 proposal:Array.prototype.toReversedArray.prototype.toSortedArray.prototype.toSplicedArray.prototype.with%TypedArray%.prototype.toReversed%TypedArray%.prototype.toSorted%TypedArray%.prototype.toSpliced%TypedArray%.prototype.with
- Added
Iterator.prototype.toAsyncmethod from the iterator helpers stage 2 proposal Array.fromAsyncproposal moved to stage 2- Added
String.cookedstage 1 proposal - Added
Function.prototype.unThisstage 0 proposal - Added
Function.{ isCallable, isConstructor }stage 0 proposal:Function.isCallableFunction.isConstructor
- Added a workaround of most cases breakage modern
String#atafter loading obsoleteString#atproposal module, #1019 - Fixed
Array.prototype.{ values, @@iterator }.namein V8 ~ Chrome 45- - Fixed validation of typed arrays in typed arrays iteration methods in V8 ~ Chrome 50-
- Extension of the API, #1012
- Added a new
core-js/actual/**namespace - Added entry points for each finished post-ES6 proposal
- Added a new
3.19.3 - 2021.12.06
- Fixed internal slots check in methods of some built-in types, #1017
- Fixed
URLSearchParamsiterator.nextthat should be enumerable by the spec - Refactored
Subscription - Added NodeJS 17.2 compat data mapping
3.19.2 - 2021.11.29
- Added a workaround for a UC Browser specific version bug with unobservable
RegExp#stickyflag, #1008, #1015 - Added handling of comments and specific spaces to
Function#namepolyfill, #1010, thanks @ildar-shaimordanov - Prevented some theoretical cases of breaking / observing the internal state by patching
Array.prototype[@@species] - Refactored
URLandURLSearchParams - Added iOS Safari 15.2 compat data mapping
- Added Electron 17.0 compat data mapping
- Updated Deno compat data mapping
3.19.1 - 2021.11.03
- Added a workaround for FF26- bug where
ArrayBuffers are non-extensible, butObject.isExtensibledoes not report it:- Fixed in
Object.{ isExtensible, isSealed, isFrozen }andReflect.isExtensible - Fixed handling of
ArrayBuffers as collections keys
- Fixed in
- Fixed
Object#toStringonAggregateErrorin IE10- - Fixed possible lack of dependencies of
WeakMapin IE8- .findLastmethods family marked as supported from Chrome 97- Fixed inheritance of Electron compat data
web.modules - Fixed Safari 15.1 compat data (some features were not added)
- Added iOS Safari 15.1 compat data mapping
3.19.0 - 2021.10.25
- Most built-ins are encapsulated in
core-jsfor preventing possible cases of breaking / observing the internal state by patching / deleting of them- Avoid
.call/.applyprototype methods that could be patched - Avoid
instanceofoperator - implicit.prototype/@@hasInstanceaccess that could be patched - Avoid
RegExp#test,String#matchand some over methods - implicit.execandRegExpwell-known symbols access that could be patched
- Avoid
- Clearing of
Errorstack from extra entries experimentally added toAggregateError, #996, in case lack of problems it will be extended to other cases - In engines with native
Symbolsupport, new well-known symbols created with usageSymbol.forfor ensuring the same keys in different realms, #998 - Added a workaround of a BrowserFS NodeJS
processpolyfill bug that incorrectly reports V8 version that's used in some cases ofcore-jsfeature detection - Fixed normalization of
messageAggregateErrorargument - Fixed order of arguments conversion in
Math.scale, a spec draft bug - Fixed
core-js-builderwork in NodeJS 17, added a workaround ofwebpack+ NodeJS 17 issue - Added NodeJS 17.0 compat data mapping
- Added Opera Android 65 compat data mapping
- Updated Electron 16.0 compat data mapping
- Many other minor fixes and improvements
3.18.3 - 2021.10.13
- Fixed the prototype chain of
AggregateErrorconstructor that should containErrorconstructor - Fixed incorrect
AggregateError.prototypeproperties descriptors - Fixed
InstallErrorCauseinternal operation - Added NodeJS 16.11 compat data mapping
- Added Deno 1.16 compat data mapping
Object.hasOwnmarked as supported from Safari 15.1
3.18.2 - 2021.10.06
- Early
{ Array, %TypedArray% }.fromAsyncerrors moved to the promise, per the latest changes of the spec draft - Internal
ToInteger(OrInfinity)operation returns+0for-0argument, ES2020+ update - Fixed theoretical problems with handling bigint in
Numberconstructor wrapper - Fixed
String.rawwith extra arguments - Fixed some missed dependencies in entry points
- Some other minor fixes and improvements
- Refactoring
3.18.1 - 2021.09.27
- Fixed
String.prototype.substrfeature detection and compat data - Removed mistakenly added
.forEachfrom prototypes of some DOM collections where it shouldn't be, #988, #987, thanks @moorejs - Added
causetoAggregateErrorconstructor implementation (still without adding to the feature detection) - Families of
.atand.findLastmethods marked as supported in Safari TP - Added Electron 16.0 compat data mapping
3.18.0 - 2021.09.20
- Added
Array.fromAsyncstage 1 proposal:Array.fromAsync%TypedArray%.fromAsync
.nameand.toString()on polyfilled functions improved in many different cases- Improved internal
IsConstructorandIsCallablechecks - Fixed some internal cases of
GetMethodoperation - Fixed a bug of MS Edge 18-
parseInt/parseFloatwith boxed symbols - Fixed
es.array.{ index-of, last-index-of }compat data - Added Deno 1.15 compat data mapping
- Some other minor fixes and optimizations
3.17.3 - 2021.09.09
- Fixed some possible problems related to possible extension of
%IteratorPrototype%and%AsyncIteratorPrototype%in the future - Fixed
DOMTokenList.prototype.{ forEach, @@iterator, keys, values, entries }in old WebKit versions whereelement.classListis not an instance of globalDOMTokenList - Added NodeJS 16.9 compat data mapping
- Added Samsung Internet 16.0 compat data mapping
3.17.2 - 2021.09.03
- Fixed missed cases of ES3 reserved words usage, related to #980
- Fixed dependencies in one missed entry point
- Some other minor fixes and optimizations
3.17.1 - 2021.09.02
- Fixed missed
modules-by-versionsdata
3.17.0 - 2021.09.02
- Accessible
Object.prototype.hasOwnProperty(Object.hasOwn) proposal moved to the stable ES, per August 2021 TC39 meeting - Relative indexing method (
.at) proposal moved to the stable ES, per August 2021 TC39 meeting - Exposed by default the stable version of
String.prototype.at. It was not exposed because of the conflict with the alternative obsolete proposal (that will be completely removed in the next major version). For the backward compatibility, in the case of loading this proposal, it will be overwritten. - Some more iteration closing fixes
- Fixed an ES3 reserved words usage, #980
3.16.4 - 2021.08.29
AsyncFromSyncIteratormade stricter, related mainly toAsyncIterator.fromandAsyncIterator.prototype.flatMap- Handling of optional
.nextarguments in(Async)Iteratormethods is aligned with the current spec draft (mainly - ignoring the first passed to.nextargument in built-in generators) - Behavior of
.next,.return,.throwmethods onAsyncIteratorhelpers proxy iterators aligned with the current spec draft (built-in async generators) (mainly - some early errors moved to returned promises) - Fixed some cases of safe iteration closing
- Fixed dependencies of some entry points
3.16.3 - 2021.08.25
- Fixed
CreateAsyncFromSyncIteratorsemantic inAsyncIterator.from, related to #765 - Added a workaround of a specific case of broken
Object.prototype, #973
3.16.2 - 2021.08.17
- Added a workaround of a Closure Compiler unsafe optimization, #972
- One more fix crashing of
Object.create(null)on WSH, #970 - Added Deno 1.14 compat data mapping
3.16.1 - 2021.08.09
- Fixed microtask implementation on iOS Pebble, #967
- Fixed some entry points
- Improved old Safari compat data
3.16.0 - 2021.07.30
Arrayfind from last proposal moved to the stage 3, July 2021 TC39 meetingArrayfiltering stage 1 proposal:Array.prototype.filterRejectreplacesArray.prototype.filterOut%TypedArray%.prototype.filterRejectreplaces%TypedArray%.prototype.filterOut
- Added
Arraygrouping stage 1 proposal:Array.prototype.groupBy%TypedArray%.prototype.groupBy
- Work with symbols made stricter: some missed before cases of methods that should throw an error on symbols now works as they should
- Handling
@@toPrimitivein some cases ofToPrimitiveinternal logic made stricter - Fixed work of
Requestwith polyfilledURLSearchParams, #965 - Fixed possible exposing of collections elements metadata in some cases, #427
- Fixed crashing of
Object.create(null)on WSH, #966 - Fixed some cases of typed arrays subclassing logic
- Fixed a minor bug related to string conversion in
RegExp#exec - Fixed
Date.prototype.getYearfeature detection - Fixed content of some entry points
- Some minor optimizations and refactoring
- Deno:
- Added Deno support (sure, after bundling since Deno does not support CommonJS)
- Allowed
denotarget incore-js-compat/core-js-builder - A bundle for Deno published on deno.land/x/corejs
- Added / updated compat data / mapping:
- Added
summaryoption tocore-js-builder, see more info in theREADME, #910
3.15.2 - 2021.06.29
- Worked around breakage related to
zone.jsloaded beforecore-js, #953 - Added NodeJS 16.4 -> Chrome 91 compat data mapping
3.15.1 - 2021.06.23
- Fixed cloning of regex through
RegExpconstructor, #948
3.15.0 - 2021.06.21
- Added
RegExpnamed capture groups polyfill, #521, #944 - Added
RegExpdotAllflag polyfill, #792, #944 - Added missed polyfills of Annex B features (required mainly for some non-browser engines), #336, #945:
escapeunescapeString.prototype.substrDate.prototype.getYearDate.prototype.setYearDate.prototype.toGMTString
- Fixed detection of forbidden host code points in
URLpolyfill - Allowed
rhinotarget incore-js-compat/core-js-builder, added compat data forrhino1.7.13, #942, thanks @gausie .atmarked as supported from FF90
3.14.0 - 2021.06.05
- Added polyfill of stable sort in
{ Array, %TypedArray% }.prototype.sort, #769, #941 - Fixed
Safari14.0-%TypedArray%.prototype.sortvalidation of arguments bug .atmarked as supported from V8 9.2
3.13.1 - 2021.05.29
- Overwrites
get-own-property-symbolsthird-partySymbolpolyfill if it's used since it causes a stack overflow, #774 - Added a workaround of possible browser crash on
Object.prototypeaccessors methods in WebKit ~ Android 4.0, #232
3.13.0 - 2021.05.26
- Accessible
Object#hasOwnProperty(Object.hasOwn) proposal moved to the stage 3, May 2021 TC39 meeting
3.12.1 - 2021.05.09
- Fixed some cases of
Function#toStringwith multiplecore-jsinstances - Fixed some possible
String#splitpolyfill problems in V8 5.1
3.12.0 - 2021.05.06
- Added well-known symbol
Symbol.metadatafor decorators stage 2 proposal - Added well-known symbol
Symbol.matcherfor pattern matching stage 1 proposal - Fixed regression of V8 ~ Node 0.12
String(Symbol())bug, #933
3.11.3 - 2021.05.05
- Native promise-based APIs
Promise#{ catch, finally }returns polyfilledPromiseinstances when it's required
3.11.2 - 2021.05.03
- Added a workaround of WebKit ~ iOS 10.3 Safari
Promisebug, #932 Promise#thenof incorrect nativePromiseimplementations with correct subclassing no longer wrapped- Changed the order of
Promisefeature detection, removed unhandled rejection tracking check in non-browser non-node platforms
3.11.1 - 2021.04.28
- Made
instanceof Promiseand.constructor === Promisework with polyfilledPromisefor all native promise-based APIs - Added a workaround for some buggy V8 versions ~4.5 related to fixing of
%TypedArray%static methods, #564
3.11.0 - 2021.04.22
- Added accessible
Object#hasOwnPropertystage 2 proposalObject.hasOwnmethod
- Fixed a possible
RegExpconstructor problem with multiple globalcore-jsinstances
3.10.2 - 2021.04.19
URLandURLSearchParamsmarked as supported from Safari 14.0- Polyfilled built-in constructors protected from calling on instances
3.10.1 - 2021.04.08
- Prevented possible
RegExp#splitproblems in old engines, #751, #919 - Detection of Safari 10 string padding bug extended to some Safari-based browsers
3.10.0 - 2021.03.31
Arrayfind from last proposal moved to the stage 2, March TC39 meeting- Prevented possible
RegExp#execproblems in some old engines, #920 - Updated compat data mapping:
- NodeJS up to 16.0
- Electron up to 13.0
- Samsung Internet up to 14.0
- Opera Android up to 62
- The rest automatically
3.9.1 - 2021.03.01
- Added a workaround for Chrome 38-40 bug which does not allow to inherit symbols (incl. well-known) from DOM collections prototypes to instances, #37
- Used
NumericRangeIteratoras toStringTag instead ofRangeIteratorin{ Number, BigInt }.rangeiterator, per this PR - TypedArray constructors marked as supported from Safari 14.0
- Updated compat data mapping for iOS Safari and Opera for Android
3.9.0 - 2021.02.19
- Added
Arrayfind from last stage 1 proposalArray#findLastArray#findLastIndex%TypedArray%#findLast%TypedArray%#findLastIndex
- Added
%TypedArray%#uniqueBymethod for array deduplication stage 1 proposal%TypedArray%#uniqueBy
- Dropped
ToLengthdetection from array methods feature detection which could cause hanging FF11-21 and some versions of old WebKit, #764 - Minified bundle from
core-js-bundleusesterserinstead ofuglify-js
3.8.3 - 2021.01.19
- Fixed some more issues related to FF44- legacy
Iterator, #906
3.8.2 - 2021.01.03
- Fixed handling of special replacements patterns in
String#replaceAll, #900 - Fixed iterators dependencies of
Promise.anyandPromise.allSettledentries - Fixed microtask implementation on WebOS, #898, #901
3.8.1 - 2020.12.06
- Fixed work of new
%TypedArray%methods onBigIntarrays - Added ESNext methods to ES3 workaround for
Numberconstructor wrapper
3.8.0 - 2020.11.26
- Added relative indexing method stage 3 proposal
Array#at%TypedArray%#at
- Added
Number.rangestage 1 proposalNumber.rangeBigInt.range
- Added array filtering stage 1 proposal
Array#filterOut%TypedArray%#filterOut
- Added array deduplication stage 1 proposal
Array#uniqueBy
- Added code points / code units explicit feature detection in
String#atfor preventing breakage code which use obsoleteString#atproposal polyfill - Added the missed
(es|stable)/instance/replace-allentries - Updated compat data mapping for Opera - from Opera 69, the difference with Chrome versions increased to 14
- Compat data mapping for modern Android WebView to Chrome moved from targets parser directly to compat data
- Deprecate
core-js-builderblacklistoption in favor ofexclude
2.6.12 [LEGACY] - 2020.11.26
- Added code points / code units explicit feature detection in
String#atfor preventing breakage code which use obsoleteString#atproposal polyfill - Added
OPEN_SOURCE_CONTRIBUTORdetection inpostinstall - Added Drone CI detection in
postinstall
3.7.0 - 2020.11.06
String#replaceAllmoved to the stable ES, per June TC39 meetingPromise.anyandAggregateErrormoved to the stable ES, per July TC39 meeting- Added
Reflect[@@toStringTag], per July TC39 meeting - Forced replacement of
Array#{ reduce, reduceRight }in Chrome 80-82 because of a bug, #766 - Following the changes in the
upsertproposal,{ Map, WeakMap }#emplacereplace{ Map, WeakMap }#upsert, these obsolete methods will be removed in the next major release - By the current spec,
AggregateError#errorsis own data property - Added correct iteration closing in the iteration helpers according to the current version of the proposal
process.nextTickhave a less priority thanPromisein the microtask implementation, #855- Fixed microtask implementation in engines with
MutationObserver, but withoutdocument, #865, #866 - Fixed
core-js-builderwith an empty (after the targets engines or another filtration) modules list, #822 - Fixed possible twice call of
window.onunhandledrejection, #760 - Fixed some possible problems related multiple global copies of
core-js, #880 - Added a workaround for 3rd party
Reflect.setpolyfill bug, #847 - Updated compat data:
- Chrome up to 86
- FF up to 82
- Safari up to 14
- Updated compat data mapping:
- iOS up to 14
- NodeJS up to 15.0
- Electron up to 11.0
- Samsung Internet up to 13.0
- Opera Android up to 60
- The rest automatically
- Updated all required dependencies
3.6.5 - 2020.04.09
- Updated Browserslist #755
- Fixed
setImmediatein Safari #770, thanks @dtinth - Fixed some regexp, thanks @scottarc
- Added OPEN_SOURCE_CONTRIBUTOR detection in
postinstall, thanks @scottarc - Added Drone CI in
postinstallCI detection #781
3.6.4 - 2020.01.14
- Prevented a possible almost infinite loop in non-standard implementations of some backward iteration array methods
3.6.3 - 2020.01.11
- Fixed replacement of substitutes of undefined capture groups in
.replacein Safari 13.0-, #471, #745, thanks @mattclough1 - Improved compat data for old engines
3.6.2 - 2020.01.07
- Fixed early implementations of
Array#{ every, forEach, includes, indexOf, lastIndexOf, reduce, reduceRight, slice, some, splice }for the usage ofToLength - Added
RegExp#execdependency to methods which depends on the correctness of logic of this method (3.6.0-3.6.1issue), #741 - Refactored some internals
3.6.1 - 2019.12.25
- Fixed a bug related
Symbolwith multiple copies ofcore-js(for3.4.2-3.6.0), #736 - Refactored some tools
3.6.0 - 2019.12.19
- Added support of sticky (
y)RegExpflag, #372, #732, #492, thanks @cvle and @nicolo-ribaudo - Added
RegExp#testdelegation toRegExp#exec, #732, thanks @cvle - Fixed some cases of
Object.create(null)in IE8-, #727, #728, thanks @aleen42 - Allowed object of minimum environment versions as
core-js-compatandcore-js-buildertargetsargument - Allowed corresponding to Babel
targets.esmodules,targets.browsers,targets.nodeoptions incore-js-compatandcore-js-builder - Engines in compat data and results of targets parsing sorted alphabetically
- Fixed
features/instance/match-allentry compat data - Fixed
Array.prototype[@@unscopables]descriptor (was writable) - Added Samsung Internet 11 compat data mapping
3.5.0 - 2019.12.12
- Added object iteratoration stage 1 proposal:
Object.iterateKeysObject.iterateValuesObject.iterateEntries
3.4.8 - 2019.12.09
- Added one more workaround for broken in previous versions
inspectSourcehelper, #719 - Added Opera Mobile compat data
- Updated Samsung Internet, iOS, old Node and Android compat data mapping
es.string.match-allmarked as completely supported in FF73- Generate
core-js-compat/modulessince often we need just the list ofcore-jsmodules
2.6.11 [LEGACY] - 2019.12.09
- Returned usage of
node -ein thepostinstallscripts for better cross-platform compatibility, #582 - Improved CI detection in the
postinstallscript, #707
3.4.7 - 2019.12.03
- Fixed an NPM publishing issue
3.4.6 - 2019.12.03
- Improved iOS compat data - added missed mapping iOS 12.2 -> Safari 12.1, added bug fixes from patch releases
- Added Safari 13.1 compat data
- Added missed in
core-js-compathelpersie_mobnormalization - Normalize the result of
getModulesListForTargetVersioncore-js-compathelper - Improved CI detection in the
postinstallscript, #707
3.4.5 - 2019.11.28
- Detect incorrect order of operations in
Object.assign, MS Edge bug - Detect usage of
ToLengthinArray#{ filter, map }, FF48-49 and MS Edge 14- issues - Detect incorrect MS Edge 17-18
Reflect.setwhich allows setting the property to object with non-writable property on the prototype - Fixed
inspectSourcehelper with multiplecore-jscopies and some related features like some edge cases ofPromisefeature detection
3.4.4 - 2019.11.27
- Added feature detection for Safari non-generic
Promise#finallybug (critical forcore-js-pure) - Fixed missed
esnext.string.code-pointsincore-js/features/stringentry point - Updated
Iteratorproposal feature detection for the case of non-standardIteratorin FF44-
3.4.3 - 2019.11.26
- Fixed missed
es.json.stringifyand some modules from iteration helpers proposal in some entry points (includes the root entry point) - Added a workaround of
String#{ endsWith, startsWith }MDN polyfills bugs, #702 - Fixed
.sizeproperty descriptor ofMap/Setin the pure version - Refactoring, some internal improvements
3.4.2 - 2019.11.22
- Don't use polyfilled symbols as internal uids, a workaround for some incorrect use cases
String#replaceAllis available only in nightly FF builds- Improved
Promisefeature detection for the case of V8 6.6 with multiplecore-jscopies - Some internals optimizations
- Added Node 13.2 -> V8 7.9 compat data mapping
- Returned usage of
node -einpostinstallscripts
3.4.1 - 2019.11.12
- Throw when
(Async)Iterator#flatMapmapper returns a non-iterable, per tc39/proposal-iterator-helpers/55 and tc39/proposal-iterator-helpers/59 - Removed own
AggregateError#toString, per tc39/proposal-promise-any/49 - Global
core-jsPromisepolyfill passes feature detection in the pure versions - Fixed indexes in
String#replaceAllcallbacks String#replaceAllmarked as supported by FF72
3.4.0 - 2019.11.07
- Added well-formed
JSON.stringify, ES2019 feature, thanks @ExE-Boss and @WebReflection for the idea - Fixed
Math.signbit, #687, thanks @chicoxyzzy
3.3.6 - 2019.11.01
- Don't detect Chakra-based Edge as Chrome in the
userAgentparsing - Fixed inheritance in typed array constructors wrappers, #683
- Added one more workaround for correct work of early
fetchimplementations with polyfilledURLSearchParams, #680
3.3.5 - 2019.10.29
- Added a workaround of V8 deoptimization which causes serious performance degradation (~4x in my tests) of
Array#concat, #679 - Added a workaround of V8 deoptimization which causes slightly performance degradation of
Promise, #679 - Added
(Async)Iterator.prototype.constructor -> (Async)Iteratorper this issue - Added compat data for Chromium-based Edge
3.3.4 - 2019.10.25
- Added a workaround of V8 deoptimization which causes serious performance degradation (~20x in my tests) of some
RegExp-related methods likeString#split, #306 - Added a workaround of V8 deoptimization which causes serious performance degradation (up to 100x in my tests) of
Array#spliceand slightlyArray#{ filter, map }, #677 - Fixed work of
fetchwith polyfilledURLSearchParams, #674 - Fixed an edge case of
String#replaceAllwith an empty search value - Added compat data for Chrome 80
package-lock.jsonno longer generated in libraries
3.3.3 - 2019.10.22
gopherremoved fromURLspecial cases per this issue and this PR- Added compat data for iOS 13 and Node 13.0
3.3.2 - 2019.10.14
- Fixed compatibility of
core-js-compatwith Node 6 and Yarn, #669
3.3.1 - 2019.10.13
- Fixed an NPM publishing issue
3.3.0 - 2019.10.13
String#{ matchAll, replaceAll }throws an error on non-global regex argument per the decision from TC39 meetings (+ this PR). It's a breaking change, but since it's a breaking change in the ES spec, it's added at the minor releaseglobalThismoved to stable ES, per October TC39 meetingPromise.anymoved to stage 3, some minor internal changes, per October TC39 meetingString#replaceAllmoved to stage 3, per October TC39 meeting- Added iterator helpers stage 2 proposal:
IteratorIterator.fromIterator#asIndexedPairsIterator#dropIterator#everyIterator#filterIterator#findIterator#flatMapIterator#forEachIterator#mapIterator#reduceIterator#someIterator#takeIterator#toArrayIterator#@@toStringTag
AsyncIteratorAsyncIterator.fromAsyncIterator#asIndexedPairsAsyncIterator#dropAsyncIterator#everyAsyncIterator#filterAsyncIterator#findAsyncIterator#flatMapAsyncIterator#forEachAsyncIterator#mapAsyncIterator#reduceAsyncIterator#someAsyncIterator#takeAsyncIterator#toArrayAsyncIterator#@@toStringTag
- Updated
Map#upsert(Map#updateOrInsertbefore) proposal- Moved to stage 2, per October TC39 meeting
Map#updateOrInsertrenamed toMap#upsert- Added
WeakMap#upsert - You can don't pass one of the callbacks
- Added a workaround for iOS Safari MessageChannel + bfcache bug, #624
- Added a workaround for Chrome 33 / Android 4.4.4
Promisebug, #640 - Replaced broken
URLconstructor in Safari andURLSearchParamsin Chrome 66-, #656 - Added compat data for Node up to 12.11, FF 69, Samsung up to 10.2 and Phantom 1.9
Math.hypotmarked as not supported in Chrome 77 since a bug in this method was not fixed before the stable Chrome 77 release- Fixed unnecessary exposing on
Symbol.matchAllinesnext.string.match-all, #626 - Fixed missed cases access the
.nextmethod once, at the beginning, of the iteration protocol - Show similar
postinstallmessages only once pernpm i, #597, thanks @remy
2.6.10 [LEGACY] - 2019.10.13
- Show similar
postinstallmessages only once pernpm i, #597
3.2.1 - 2019.08.12
- Added a workaround for possible recursion in microtasks caused by conflicts with other
Promisepolyfills, #615
3.2.0 - 2019.08.09
Promise.allSettledmoved to stable ES, per July TC39 meetingPromise.anymoved to stage 2,.errorsproperty ofAggregateErrorinstances maked non-enumerable, per July TC39 meetingusingstatement proposal moved to stage 2, addedSymbol.asyncDispose, per July TC39 meeting- Added
Array.isTemplateObjectstage 2 proposal, per June TC39 meeting - Added
Map#updateOrInsertstage 1 proposal, per July TC39 meeting - Added a fix for
Math.hypotV8 7.7 bug, since it's still not stable without adding results tocore-js-compat - Added a workaround for APIs where not possible to replace broken native
Promise, #579 - added.finallyand patched.thento / on nativePromiseprototype - Fixed crashing of Opera Presto, #595
- Fixed incorrect early breaking of
{ Map, Set, WeakMap, WeakSet }.deleteAll - Fixed some missed dependencies in entry points
- Added compat data for Node 12.5, FF 67, Safari 13
- Added support of
DISABLE_OPENCOLLECTIVEenv variable topostinstallscript - Removed
core-js-puredependency fromcore-js-compat, #590 - Fixed generation of
core-js-compaton Windows, #606
3.1.4 - 2019.06.15
- Refactoring. Many minor internal improvements and fixes like:
- Improved
Symbol.keyForcomplexity toO(1) - Fixed the order of arguments validation in
String.prototype.{ endsWith, includes, startsWith } - Internal implementation of
RegExp#flagshelper now respectdotAllflag (mainly related to thepureversion) - Performance optimizations related old V8
- Etc.
- Improved
3.1.3 - 2019.05.27
- Fixed
core-js/features/reflect/delete-metadataentry point - Some fixes and improvements of the
postinstallscript like supportnpmcolor config (#556) or adding support ofADBLOCKenv variable - Refactoring and some minor fixes
2.6.9 [LEGACY] - 2019.05.27
- Some fixes and improvements of the
postinstallscript like supportnpmcolor config (#556) or adding support ofADBLOCKenv variable
3.1.2 - 2019.05.22
- Added a workaround of a strange
npxbug onpostinstall, #551
2.6.8 [LEGACY] - 2019.05.22
- Added a workaround of a strange
npxbug onpostinstall, #551
3.1.1 - 2019.05.21
- Added one more workaround of alternative not completely correct
Symbolpolyfills, #550, #554 - Reverted
esnext.string.match-allin some entry points for fix autogeneration ofcore-js-compat/entriesand backward@babel/preset-envcompatibility
2.6.7 [LEGACY] - 2019.05.21
3.1.0 - 2019.05.20
String#matchAllmoved to stable ES, exposedSymbol.matchAll, #516Promise.allSettledmoved to stage 3, #515String#replaceAllmoved to stage 2, behavior updated by the spec draft, #524Promise.anymoved to stage 1, #517- Removed
es.regexp.flagsdependency fromes.regexp.to-string, #536, #537 - Fixed IE8- non-enumerable properties support in
Object.{ assign, entries, values }, #541 - Fixed support of primitives in
Object.getOwnPropertySymbolsin Chrome 38 / 39, #539 window.postMessage-based task implementation uses location origin over'*', #542- Lookup
PromiseConstructor.resolveonly once inPromisecombinators, tc39/ecma262#1506 - Temporarily removed
core-jsdependency fromcore-js-compatsince it's required for missed at this moment feature - Show a message on
postinstall - Added compat data for Chrome 76, FF 67, Node 12
2.6.6 [LEGACY] - 2019.05.20
- Fixed IE8- non-enumerable properties support in
Object.{ assign, entries, values }, #541 - Fixed support of primitives in
Object.getOwnPropertySymbolsin Chrome 38 / 39, #539 - Show a message on
postinstall
3.0.1 - 2019.04.06
- Fixed some cases of work with malformed URI sequences in
URLSearchParams, #525 - Added a workaround for a rollup issue, #513
3.0.0 - 2019.03.19
- Features
- Add new features:
Object.fromEntries(ECMAScript 2019)Symbol#description(ECMAScript 2019)- New
Setmethods (stage 2 proposal)Set#differenceSet#intersectionSet#isDisjointFromSet#isSubsetOfSet#isSupersetOfSet#symmetricDifferenceSet#union
Promise.allSettled(stage 2 proposal)- Getting last item from
Array(stage 1 proposal)Array#lastItemArray#lastIndex
String#replaceAll(stage 1 proposal)String#codePoints(stage 1 proposal)- New collections methods (stage 1 proposal)
Map.groupByMap.keyByMap#deleteAllMap#everyMap#filterMap#findMap#findKeyMap#includesMap#keyOfMap#mapKeysMap#mapValuesMap#mergeMap#reduceMap#someMap#updateSet#addAllSet#deleteAllSet#everySet#filterSet#findSet#joinSet#mapSet#reduceSet#someWeakMap#deleteAllWeakSet#addAllWeakSet#deleteAll
compositeKeyandcompositeSymbolmethods (stage 1 proposal)Number.fromString(stage 1 proposal)Math.seededPRNG(stage 1 proposal)Symbol.patternMatch(for stage 1 pattern matching proposal)Symbol.dispose(for stage 1usingstatement proposal)Promise.any(withAggregateError) (stage 0 proposal)URLandURLSearchParamfromURLstandard, also stage 0 proposal to ECMAScriptURLURL#hrefURL#originURL#protocolURL#usernameURL#passwordURL#hostURL#hostnameURL#portURL#pathnameURL#searchURL#searchParamsURL#hashURL#toStringURL#toJSON
URLSearchParamsURLSearchParams#appendURLSearchParams#deleteURLSearchParams#getURLSearchParams#getAllURLSearchParams#hasURLSearchParams#setURLSearchParams#sortURLSearchParams#toStringURLSearchParams#keysURLSearchParams#valuesURLSearchParams#entriesURLSearchParams#@@iterator
.forEachmethod on iterable DOM collections (#329)
- Improve existing features:
- Add triggering unhandled
Promiserejection events (instead of only global handlers), #205. - Wrap
fetchfor correct with polyfilledPromiseand preventing problems like #178, #332, #371. - Add support of
@@isConcatSpreadabletoArray#concat. - Add support of
@@speciestoArray#{concat, filter, map, slice, splice}. - Add direct
.execcalling toRegExp#{@@replace, @@split, @@match, @@search}. Also, added fixes forRegExp#execmethod. #411, #434, #453, thanks @nicolo-ribaudo. - Correct iterators prototypes chain, related #261.
- Correct Typed Arrays prototypes chain, related #378.
- Make the internal state of polyfilled features completely unobservable, #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#toStringdoes not support@@toStringTag, add to wrapped prototypes owntoStringmethod with@@toStringTaglogic, see #199.
- Add triggering unhandled
- Update standard features and proposals:
asap(old stage 0 proposal) replaced byqueueMicrotask(a part of HTML spec)- Update
Observable(#257, #276, etc.) - Update
Array#flatten->Array#flatandArray#flatMap - Update
globalstage 3 proposal - renameglobaltoglobalThis - Update
String#matchAll(proposal-string-matchall#17, proposal-string-matchall#38, proposal-string-matchall#41, etc.) and move to the stage 3 - Update
.nameproperties ofString#{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% }#includesObject.{ values, entries}Object.getOwnPropertyDescriptorsString#{ padStart, padEnd }String#{ trimStart, trimEnd, trimLeft, trimRight }Promise#finallySymbol.asyncIteratorObject#__(define|lookup)[GS]etter__
- Remove obsolete features:
Error.isError(withdrawn)System.globalandglobal(replaced byglobalThis)Map#toJSONandSet#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:
DictObject.{classof, isObject, define, make}Function#partNumber#@@iteratorString#{escapeHTML, unescapeHTML}delay
- Add
.shamflag to features which can't be properly polyfilled and / or not recommended for usage:Symbolconstructor - we can't add new primitives.Object.prototypeaccessors too expensive.Object.{create, defineProperty, defineProperties, getOwnPropertyDescriptor, getOwnPropertyDescriptors},Reflect.{defineProperty, getOwnPropertyDescriptor}can't be properly polyfilled without descriptors support.Object.{freeze, seal, preventExtensions},Reflect.preventExtensionscan't be properly polyfilled in ES3 environment.Object.getPrototypeOfcan be deceived in ES3 environment.Reflect.constructcan't be polyfilled for a correct work withnewTargetargument on built-ins.- Typed Array constructors polyfill is quite correct but too expensive.
URLconstructor in engines without descriptors support.
- Add new features:
- Bug and compatibility fixes:
- Fix deoptimisation of iterators in V8, #377.
- Fix import of property before constructor which should contain this property, #262.
- Fix some cases of IE11
WeakMapfrozen keys fallback, #384. - Fix non-enumerable integer keys issue because of Nashorn ~ JDK8 bug, #389.
- Fix Safari 12.0
Array#reversebug. - One more fix for microtasks in iOS related #339.
- Added a fallback for Rhino bug, #440.
- Many other internal fixes and improvements.
- Repository:
- Change
core-jsrepository structure to monorepo with packages in/packages/directory. - Clean-up it, remove all possible duplicates, generated files, etc.
- Change
- Packages:
- Extract a version without global namespace pollution to a separate
core-js-purepackage (replacement forcore-js/library). - Leave only one pair of bundles (global, with all polyfills) and move it to
core-js-bundlepackage. - Remove bundling logic from
core-jspackage, leave it only incore-js-builderpackage. - Clean-up packages.
- Because of all approaches, reduce size of packages from ~2mb for
core-js@2to:- ~500kb for
core-jspackage - ~440kb for
core-js-purepackage
- ~500kb for
- Finally remove
bower.json
- Extract a version without global namespace pollution to a separate
- CommonJS API, namespaces:
- Add availability configuration of aggressiveness.
- Move
core-js/libraryto separatecore-js-purepackage. - Because of removing all non-standard features, we no longer need
core-js/shimentry point, replace it just withcore-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 inmodulesfolder hases.prefix. - Change prefix for ES proposals from
es7.toesnext., they no longer available incore-js/es7, usecore-js/stage/*instead of that. - Rename
core-js(/library)/fntocore-js(-pure)/featuresfor 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 likebabel-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.symbolmodule for loading only required features, for example, in MS Edge. - Rename
web.domnamespace toweb.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}. coreobject no longer available in the global version, entry points which previously returned it now returnsglobalThisobject. Also, don't set globalcoreproperty.- Add some missing entry points.
- Tools, tests, code quality:
- Added
core-js-compatpackage with:- Data about the necessity of
core-jsmodules and API for getting a list of requiredcore-jsmodules bybrowserslistquery, #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).
- Data about the necessity of
core-js-builderpackage:- Added
targetsoption withbrowserslistquery. - 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.
- Added
- 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.
- Added
2.6.5 - 2019.02.15
- Fixed buggy
String#padStartandString#padEndmobile Safari implementations, #414.
2.6.4 - 2019.02.07
- Added a workaround against crushing an old IE11.0.9600.16384 build, #485.
2.6.3 - 2019.01.22
- Added a workaround for
babel-minifybug, #479
2.6.2 - 2019.01.10
- Fixed handling of
$inString#replace, #471
2.6.1 - 2018.12.18
2.6.0 - 2018.12.05
- Add direct
.execcalling toRegExp#{@@replace, @@split, @@match, @@search}. Also, added fixes forRegExp#execmethod. #428, #435, #458, thanks @nicolo-ribaudo.
2.5.7 - 2018.05.26
- Get rid of reserved variable name
final, related #400
2.5.6 - 2018.05.07
- Forced replace native
Promisein V8 6.6 (Node 10 and Chrome 66) because of a bug with resolving custom thenables - Added a workaround for usage buggy native LG WebOS 2
Promisein microtask implementation, #396 - Added modern version internal debugging information about used versions
2.5.5 - 2018.04.08
2.5.4 - 2018.03.27
- Fixed one case of deoptimization built-in iterators in V8, related #377
- Fixed some cases of iterators feature detection, #368
- Fixed manually entered NodeJS domains issue in
Promise, #367 - Fixed
Number.{parseInt, parseFloat}entry points - Fixed
__(define|lookup)[GS]etter__export in thelibraryversion
2.5.3 - 2017.12.12
- Fixed calling
onunhandledrejectionhandlermultiple times for onePromisechain, #318 - Forced replacement of
String#{padStart, padEnd}in Safari 10 because of a bug, #280 - Fixed
Array#@@iteratorin a very rare version ofWebKit, #236 and #237 - One more #345-related fix
2.5.2 - 2017.12.09
MutationObserverno longer used for microtask implementation in iOS Safari because of bug with scrolling, #339- Fixed
JSON.stringify(undefined, replacer)case in the wrapper from theSymbolpolyfill, #345 Array()calls changed tonew Array()for V8 optimisation
2.5.1 - 2017.09.01
- Updated
Promise#finallyper tc39/proposal-promise-finally#37 - Optimized usage of some internal helpers for reducing size of
shimversion - Fixed some entry points for virtual methods
2.5.0 - 2017.08.05
- Added
Promise#finallystage 3 proposal, #225 - Added
Promise.trystage 1 proposal - Added
Array#flattenandArray#flatMapstage 1 proposal - Added
.ofand.frommethods on collection constructors stage 1 proposal:Map.ofSet.ofWeakSet.ofWeakMap.ofMap.fromSet.fromWeakSet.fromWeakMap.from
- Added
Mathextensions stage 1 proposal, #226:Math.clampMath.DEG_PER_RADMath.degreesMath.fscaleMath.RAD_PER_DEGMath.radiansMath.scale
- Added
Math.signbitstage 1 proposal - Updated
globalstage 3 proposal - addedglobalglobal object,System.globaldeprecated - Updated
Object.getOwnPropertyDescriptorsto the final version - it should not create properties if descriptors areundefined - Updated the list of iterable DOM collections, #249, added:
CSSStyleDeclaration#@@iteratorCSSValueList#@@iteratorClientRectList#@@iteratorDOMRectList#@@iteratorDOMStringList#@@iteratorDataTransferItemList#@@iteratorFileList#@@iteratorHTMLAllCollection#@@iteratorHTMLCollection#@@iteratorHTMLFormElement#@@iteratorHTMLSelectElement#@@iteratorMimeTypeArray#@@iteratorNamedNodeMap#@@iteratorPaintRequestList#@@iteratorPlugin#@@iteratorPluginArray#@@iteratorSVGLengthList#@@iteratorSVGNumberList#@@iteratorSVGPathSegList#@@iteratorSVGPointList#@@iteratorSVGStringList#@@iteratorSVGTransformList#@@iteratorSourceBufferList#@@iteratorTextTrackCueList#@@iteratorTextTrackList#@@iteratorTouchList#@@iterator
- Updated stages of proposals:
- Updated typed arrays to the modern (ES2016+) arguments validation, #293
- Fixed
%TypedArray%.fromSafari bug, #285 - Fixed compatibility with old version of Prototype.js, #278, #289
Function#nameno longer cache the result for correct behaviour with inherited constructors, #296- Added errors on incorrect context of collection methods, #272
- Fixed conversion typed array constructors to string, fix #300
- Fixed
Set#sizewith debugger ReactNative for Android, #297 - Fixed an issue with Electron-based debugger, #230
- Fixed compatibility with incomplete third-party
WeakMappolyfills, #252 - Added a fallback for
Date#toJSONin engines without nativeDate#toISOString, #220 - Added support for Sphere Dispatch API, #286
- Seriously changed the coding style and the ESLint config
- Updated many dev dependencies (
webpack,uglify, etc) - Some other minor fixes and optimizations
2.4.1 - 2016.07.18
- Fixed
scripttag for some parsers, #204, #216 - Removed some unused variables, #217, #218
- Fixed MS Edge
Reflect.constructandReflect.apply- they should not allow primitive asargumentsListargument
1.2.7 [LEGACY] - 2016.07.18
2.4.0 - 2016.05.08
- Added
Observable, stage 1 proposal - Fixed behavior
Object.{getOwnPropertySymbols, getOwnPropertyDescriptor}andObject#propertyIsEnumerableonObject.prototype Reflect.constructandReflect.applyshould throw an error ifargumentsListargument is not an object, #194
2.3.0 - 2016.04.24
- Added
asapfor enqueuing microtasks, stage 0 proposal - Added well-known symbol
Symbol.asyncIteratorfor stage 2 async iteration proposal - Added well-known symbol
Symbol.observablefor stage 1 observables proposal String#{padStart, padEnd}returns original string if filler is empty string, TC39 meeting notesObject.valuesandObject.entriesmoved to stage 4 from 3, TC39 meeting notesSystem.globalmoved to stage 2 from 1, TC39 meeting notesMap#toJSONandSet#toJSONrejected and will be removed from the next major release, TC39 meeting notesError.isErrorwithdrawn and will be removed from the next major release, TC39 meeting notes- Added fallback for
Function#nameon non-extensible functions and functions with brokentoStringconversion, #193
2.2.2 - 2016.04.06
- Added conversion
-0to+0toArray#{indexOf, lastIndexOf}, ES2016 fix - Added fixes for some
Mathmethods in Tor Browser Array.{from, of}no longer calls prototype setters- Added workaround over Chrome DevTools strange behavior, #186
2.2.1 - 2016.03.19
- Fixed
Object.getOwnPropertyNames(window)2.1+versions bug, #181
2.2.0 - 2016.03.15
- Added
String#matchAll, proposal - Added
Object#__(define|lookup)[GS]etter__, annex B ES2017 - Added
@@toPrimitivemethods toDateandSymbol - Fixed
%TypedArray%#slicein Edge ~ 13 (throws with@@speciesand wrapped / inherited constructor) - Some other minor fixes
2.1.5 - 2016.03.12
- Improved support NodeJS domains in
Promise#then, #180 - Added fallback for
Date#toJSONbug in Qt Script, #173
2.1.4 - 2016.03.08
- Added fallback for
Symbolpolyfill in Qt Script, #173 - Added one more fallback for IE11
Script Access Deniederror with iframes, #165
2.1.3 - 2016.02.29
- Added fallback for
es6-promisepackage bug, #176
2.1.2 - 2016.02.29
- Some minor
Promisefixes:- Browsers
rejectionhandledevent better HTML spec complaint - Errors in unhandled rejection handlers should not cause any problems
- Fixed typo in feature detection
- Browsers
2.1.1 - 2016.02.22
- Some
Promiseimprovements:- Feature detection:
- Added detection unhandled rejection tracking support - now it's available everywhere, #140
- Added detection
@@speciespattern support for completely correct subclassing - Removed usage
Object.setPrototypeOffrom feature detection and noisy console message about it in FF
Promise.allfixed for some very specific cases
- Feature detection:
2.1.0 - 2016.02.09
- 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:
Objectstatics - should accept primitives, new whitespaces lists inString#trim,parse(Int|float),RegExp#toStringlogic,String#split, etc - Should be changed in the future:
@@speciesandToLengthlogic inArraymethods,Dateparsing,Function#bind, etc - Should not be changed only several features like
Array.isArrayandDate.now
- Already added changes for:
- Some ES5 polyfills required for modern engines
- Mainly, for prevent duplication features in different namespaces - logic of most required ES5 polyfills changed in ES6+:
- All old entry points should work fine, but in the next major release API can be changed
- All entry point works in ES3 environment like IE8- without
Object.getOwnPropertyDescriptorsmoved to the stage 3, January TC39 meeting- Added
umdoption for custom build process, #169 - Returned entry points for
Arraystatics, removed in2.0, for compatibility withbabel6and for future fixes
- ES5 polyfills are split and logic, used in other polyfills, moved to internal modules
- Deprecated:
Reflect.enumeratedeprecated and will be removed from the next major release, January TC39 meeting
- New Features:
- Added
Reflectmetadata API as a pre-strawman feature, #152:Reflect.defineMetadataReflect.deleteMetadataReflect.getMetadataReflect.getMetadataKeysReflect.getOwnMetadataReflect.getOwnMetadataKeysReflect.hasMetadataReflect.hasOwnMetadataReflect.metadata
- Implementation / fixes
Date#toJSON - Fixes for
parseIntandNumber.parseInt - Fixes for
parseFloatandNumber.parseFloat - Fixes for
RegExp#toString - Fixes for
Array#sort - Fixes for
Number#toFixed - Fixes for
Number#toPrecision - Additional fixes for
String#split(RegExp#@@split)
- Added
- Improvements:
- Correct subclassing wrapped collections,
NumberandRegExpconstructors with native class syntax - Correct support
SharedArrayBufferand buffers from other realms in typed arrays wrappers - Additional validations for
Object.{defineProperty, getOwnPropertyDescriptor}andReflect.defineProperty
- Correct subclassing wrapped collections,
- Bug Fixes:
- Fixed some cases
Array#lastIndexOfwith negative second argument
- Fixed some cases
2.0.3 - 2016.01.11
- Added fallback for V8 ~ Chrome 49
Promisesubclassing bug causes unhandled rejection on feature detection, #159 - Added fix for very specific environments with global
window === null
2.0.2 - 2016.01.04
- Temporarily removed
lengthvalidation fromUint8Arrayconstructor wrapper. Reason - bug inwsmodule (->socket.io) which passes toBufferconstructor ->Uint8Arrayfloat and uses theV8bug for conversion to int (by the spec should be thrown an error). It creates problems for many people. I hope, it will be returned after fixing this bug inV8.
2.0.1 - 2015.12.31
- Forced usage
Promise.resolvepolyfill in thelibraryversion for correct work with wrapper Object.assignshould be defined in the strict mode -> throw an error on extension non-extensible objects, #154
2.0.0 - 2015.12.24
- Added implementations and fixes Typed Arrays-related features
ArrayBuffer,ArrayBuffer.isView,ArrayBuffer#sliceDataViewwith all getter / setter methodsInt8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32ArrayandFloat64Arrayconstructors%TypedArray%.{for, of},%TypedArray%#{copyWithin, every, fill, filter, find, findIndex, forEach, indexOf, includes, join, lastIndexOf, map, reduce, reduceRight, reverse, set, slice, some, sort, subarray, values, keys, entries, @@iterator, ...}
- Added
System.global, proposal, November TC39 meeting - Added
Error.isError, proposal, November TC39 meeting - Added
Math.{iaddh, isubh, imulh, umulh}, proposal RegExp.escapemoved from thees7to the non-standardcorenamespace, July TC39 meeting - too slow, but it's condition of stability, #116Promise- Some performance optimisations
- Added basic support
rejectionHandledevent /onrejectionhandledhandler to the polyfill - Removed usage
@@speciesfromPromise.{all, race}, November TC39 meeting
- Some improvements collections polyfills
O(1)and preventing possible leaks with frozen keys, #134- Correct observable state object keys
- Renamed
String#{padLeft, padRight}->String#{padStart, padEnd}, proposal, November TC39 meeting (they want to rename it on each meeting?O_o), #132 - Added
String#{trimStart, trimEnd}as aliases forString#{trimLeft, trimRight}, proposal, November TC39 meeting - Added annex B HTML methods - ugly, but also the part of the spec
- Added little fix for
Date#toString-new Date(NaN).toString()should be'Invalid Date' - Added
{keys, values, entries, @@iterator}methods to DOM collections which should have iterable interface or should be inherited fromArray-NodeList,DOMTokenList,MediaList,StyleSheetList,CSSRuleList. - Removed Mozilla
Arraygenerics - deprecated and will be removed from FF, looks like strawman is dead, available alternative shim - Removed
core.logmodule - CommonJS API
- Added entry points for virtual methods
- Added entry points for stages proposals
- Some other minor changes
- Custom build from external scripts moved to the separate package for preventing problems with dependencies
- Changed
$prefix for internal modules file names because Team Foundation Server does not support it, #129 - Additional fix for
SameValueZeroin V8 ~ Chromium 39-42 collections - Additional fix for FF27
Arrayiterator - Removed usage shortcuts for
argumentsobject - old WebKit bug, #150 {Map, Set}#forEachnon-generic, #144- Many other improvements
1.2.6 - 2015.11.09
- Reject with
TypeErroron attempt resolve promise itself - Correct behavior with broken
Promisesubclass constructors / methods - Added
Promise-based fallback for microtask - Fixed V8 and FF
Array#{values, @@iterator}.name - Fixed IE7-
[1, 2].join(undefined) -> '1,2' - Some other fixes / improvements / optimizations
1.2.5 - 2015.11.02
- Some more
Numberconstructor fixes:- Fixed V8 ~ Node 0.8 bug:
Number('+0x1')should beNaN - Fixed
Number(' 0b1\n')case, should be1 - Fixed
Number()case, should be0
- Fixed V8 ~ Node 0.8 bug:
1.2.4 - 2015.11.01
- Fixed
Number('0b12') -> NaNcase in the shim - Fixed V8 ~ Chromium 40- bug -
Weak(Map|Set)#{delete, get, has}should not throw errors #124 - Some other fixes and optimizations
1.2.3 - 2015.10.23
- Fixed some problems related old V8 bug
Object('a').propertyIsEnumerable(0) // => false, for example,Object.assign({}, 'qwe')from the last release - Fixed
.nameproperty andFunction#toStringconversion some polyfilled methods - Fixed
Math.imularity in Safari 8-
1.2.2 - 2015.10.18
- Improved optimisations for V8
- Fixed build process from external packages, #120
- One more
Object.{assign, values, entries}fix for very specific case
1.2.1 - 2015.10.02
- Replaced fix
JSON.stringify+Symbolbehavior from.toJSONmethod to wrappingJSON.stringify- little more correct, compat-table/642 - Fixed typo which broke tasks scheduler in WebWorkers in old FF, #114
1.2.0 - 2015.09.27
- Added browser
Promiserejection hook, #106 - Added correct
IsRegExplogic toString#{includes, startsWith, endsWith}andRegExpconstructor,@@matchcase, example - Updated
String#leftPadwith proposal: string filler truncated from the right side - Replaced V8
Object.assign- its properties order not only incorrect, it is non-deterministic and it causes some problems - Fixed behavior with deleted in getters properties for
Object.{assign,entries, values}, example - Fixed
Math.sinhwith very small numbers in V8 near Chromium 38 - Some other fixes and optimizations
1.1.4 - 2015.09.05
- Fixed support symbols in FF34-35
Object.assign - Fixed collections iterators in FF25-26
- Fixed non-generic WebKit
Array.of - Some other fixes and optimizations
1.1.3 - 2015.08.29
1.1.2 - 2015.08.28
- Added
toJSONmethod toSymbolpolyfill and to MS Edge implementation for expectedJSON.stringifyresult w/o patching this method - Replaced
Reflect.constructimplementations w/o correct support third argument - Fixed
globaldetection with changeddocument.domainin ~IE8, #100
1.1.1 - 2015.08.20
- Added more correct microtask implementation for
Promise
1.1.0 - 2015.08.17
- Updated string padding to actual proposal - renamed, minor internal changes:
String#lpad->String#padLeftString#rpad->String#padRight
- Added string trim functions - proposal, defacto standard - required only for IE11- and fixed for some old engines:
String#trimLeftString#trimRight
String#trimfixed for some engines by es6 spec and moved fromes5to singlees6module- Splitted
es6.object.statics-accept-primitives - Caps for
freeze-familyObjectmethods moved fromes5toes6namespace and joined with es6 wrappers es5namespace also includes modules, moved toes6namespace - you can use it as before- Increased
MessageChannelpriority in$.task, #95 - Does not get
global.Symbolon each getting iterator, if you wanna use alternativeSymbolshim - add it beforecore-js Reflect.constructoptimized and fixed for some cases- Simplified
Reflect.enumerate, see this question - Some corrections in
Math.acosh - Fixed
Math.imulfor old WebKit - Some fixes in string / RegExp well-known symbols logic
- Some other fixes and optimizations
1.0.1 - 2015.07.31
- Some fixes for final MS Edge, replaced broken native
Reflect.defineProperty - Some minor fixes and optimizations
- Changed compression
client/*.min.jsoptions for safeFunction#nameandFunction#length, should be fixed #92
1.0.0 - 2015.07.22
- Added logic for well-known symbols:
Symbol.matchSymbol.replaceSymbol.splitSymbol.search
- Actualized and optimized work with iterables:
- Optimized
Map,Set,WeakMap,WeakSetconstructors,Promise.all,Promise.racefor defaultArray Iterator - Optimized
Array.fromfor defaultArray Iterator - Added
core.getIteratorMethodhelper
- Optimized
- Uses enumerable properties in shimmed instances - collections, iterators, etc for optimize performance
- Added support native constructors to
Reflect.constructwith 2 arguments - Added support native constructors to
Function#bindshim withnew - Removed obsolete
.clearmethods nativeWeak-collections - Maximum modularity, reduced minimal custom build size, separated into submodules:
es6.reflectes6.regexpes6.mathes6.numberes7.object.to-arraycore.objectcore.stringcore.iter-helpers- Internal modules (
$,$.iter, etc)
- Many other optimizations
- Final cleaning non-standard features
- Moved
$forto separate library. This work for syntax -for-ofloop and comprehensions - Moved
Date#{format, formatUTC}to separate library. Standard way for this -ECMA-402 - Removed
Mathmethods fromNumber.prototype. Slight sugar for simpleMathmethods calling - Removed
{Array#, Array, Dict}.turn - Removed
core.global
- Moved
- Uses
ToNumberinstead ofToLengthinNumber Iterator,Array.from(2.5)will be[0, 1, 2]instead of[0, 1] - Fixed #85 - invalid
Promiseunhandled rejection message in nestedsetTimeout - Fixed #86 - support FF extensions
- Fixed #89 - behavior
Numberconstructor in strange case
0.9.18 - 2015.06.17
- Removed
/fromRegExp.escapeescaped characters
0.9.17 - 2015.06.14
- Updated
RegExp.escapeto the latest proposal - Fixed conflict with webpack dev server + IE buggy behavior
0.9.16 - 2015.06.11
- More correct order resolving thenable in
Promisepolyfill - Uses polyfill instead of buggy V8
Promise
0.9.15 - 2015.06.09
- Collections from
libraryversion return wrapped native instances - Fixed collections prototype methods in
libraryversion - Optimized
Math.hypot
0.9.14 - 2015.06.04
- Updated
Promise.resolvebehavior - Added fallback for IE11 buggy
Object.getOwnPropertyNames+ iframe - Some other fixes
0.9.13 - 2015.05.25
- Added fallback for
Symbolpolyfill for old Android - Some other fixes
0.9.12 - 2015.05.24
- Different instances
core-jsshould use / recognize the same symbols - Some fixes
0.9.11 - 2015.05.18
- Simplified custom build
- Added custom build js api
- Added
grunt-clitodevDependenciesfornpm run grunt
- Some fixes
0.9.10 - 2015.05.16
- Wrapped
Function#toStringfor correct work wrapped methods / constructors with methods similar to thelodashisNative - Added proto versions of methods to export object in
defaultversion for consistency withlibraryversion
0.9.9 - 2015.05.14
- Wrapped
Object#propertyIsEnumerableforSymbolpolyfill - Added proto versions of methods to
libraryfor ES7 bind syntax - Some other fixes
0.9.8 - 2015.05.12
- Fixed
Math.hypotwith negative arguments - Added
Object#toString.toStringas fallback forlodashisNative
0.9.7 - 2015.05.07
- Added support DOM collections to IE8-
Array#slice
0.9.6 - 2015.05.01
- Added
String#lpad,String#rpad
0.9.5 - 2015.04.30
- Added cap for
Function#@@hasInstance - Some fixes and optimizations
0.9.4 - 2015.04.27
- Fixed
RegExpconstructor
0.9.3 - 2015.04.26
- Some fixes and optimizations
0.9.2 - 2015.04.25
- More correct
Promiseunhandled rejection tracking and resolving / rejection priority
0.9.1 - 2015.04.25
- Fixed
__proto__-basedPromisesubclassing in some environments
0.9.0 - 2015.04.24
- Added correct symbols descriptors
- Fixed behavior
Object.{assign, create, defineProperty, defineProperties, getOwnPropertyDescriptor, getOwnPropertyDescriptors}with symbols - Added single entry points for
Object.{create, defineProperty, defineProperties}
- Fixed behavior
- Added
Map#toJSON - Removed non-standard methods
Object#[_]andFunction#only- they solves syntax problems, but now in compilers available arrows andin near future will be availableavailable bind syntax - Removed non-standard undocumented methods
Symbol.{pure, set} - Some fixes and internal changes
0.8.4 - 2015.04.18
- Uses
webpackinstead ofbrowserifyfor browser builds - more compression-friendly result
0.8.3 - 2015.04.14
- Fixed
Arraystatics with single entry points
0.8.2 - 2015.04.13
Math.froundnow also works in IE9-- Added
Set#toJSON - Some optimizations and fixes
0.8.1 - 2015.04.03
- Fixed
Symbol.keyFor
0.8.0 - 2015.04.02
- Changed CommonJS API
- Splitted and renamed some modules
- Added support ES3 environment (ES5 polyfill) to all default versions - size increases slightly (+ ~4kb w/o gzip), many issues disappear, if you don't need it - simply include only required namespaces / features / modules
- Removed abstract references support - proposal has been superseded =\
$for.isIterable->core.isIterable,$for.getIterator->core.getIterator, temporary available in old namespace- Fixed iterators support in v8
Promise.allandPromise.race - Many other fixes
0.7.2 - 2015.03.09
- Some fixes
0.7.1 - 2015.03.07
- Some fixes
0.7.0 - 2015.03.06
- Rewritten and splitted into CommonJS modules
0.6.1 - 2015.02.24
- Fixed support
Object.definePropertywith accessors on DOM elements on IE8
0.6.0 - 2015.02.23
- Added support safe closing iteration - calling
iterator.returnon abort iteration, if it exists - Added basic support
Promiseunhandled rejection tracking in shim - Added
Object.getOwnPropertyDescriptors - Removed
consolecap - creates too many problems - Restructuring namespaces
- Some fixes
0.5.4 - 2015.02.15
- Some fixes
0.5.3 - 2015.02.14
- Added support binary and octal literals to
Numberconstructor - Added
Date#toISOString
0.5.2 - 2015.02.10
- Some fixes
0.5.1 - 2015.02.09
- Some fixes
0.5.0 - 2015.02.08
- Systematization of modules
- Splitted
es6module - Splitted
consolemodule:web.console- only cap for missing methods,core.log- bound methods & additional features - Added
delaymethod - Some fixes
0.4.10 - 2015.01.28
Object.getOwnPropertySymbolspolyfill returns array of wrapped keys
0.4.9 - 2015.01.27
- FF20-24 fix
0.4.8 - 2015.01.25
- Some collections fixes
0.4.7 - 2015.01.25
- Added support frozen objects as collections keys
0.4.6 - 2015.01.21
- Added
Object.getOwnPropertySymbols - Added
NodeList.prototype[@@iterator] - Added basic
@@specieslogic - getter in native constructors - Removed
Function#by - Some fixes
0.4.5 - 2015.01.16
- Some fixes
0.4.4 - 2015.01.11
- Enabled CSP support
0.4.3 - 2015.01.10
- Added
Functioninstancesnameproperty for IE9+
0.4.2 - 2015.01.10
Objectstatic methods accept primitivesRegExpconstructor can alter flags (IE9+)- Added
Array.prototype[Symbol.unscopables]
0.4.1 - 2015.01.05
- Some fixes
0.4.0 - 2015.01.03
- Added
es6.reflectmodule:- Added
Reflect.apply - Added
Reflect.construct - Added
Reflect.defineProperty - Added
Reflect.deleteProperty - Added
Reflect.enumerate - Added
Reflect.get - Added
Reflect.getOwnPropertyDescriptor - Added
Reflect.getPrototypeOf - Added
Reflect.has - Added
Reflect.isExtensible - Added
Reflect.preventExtensions - Added
Reflect.set - Added
Reflect.setPrototypeOf
- Added
core-jsmethods now can use externalSymbol.iteratorpolyfill- Some fixes
0.3.3 - 2014.12.28
- Console cap excluded from node.js default builds
0.3.2 - 2014.12.25
- Added cap for ES5 freeze-family methods
- Fixed
consolebug
0.3.1 - 2014.12.23
- Some fixes
0.3.0 - 2014.12.23
- Optimize
Map&Set:- Use entries chain on hash table
- Fast & correct iteration
- Iterators moved to
es6andes6.collectionsmodules
0.2.5 - 2014.12.20
consoleno longer shortcut forconsole.log(compatibility problems)- Some fixes
0.2.4 - 2014.12.17
- Better compliance of ES6
- Added
Math.fround(IE10+) - Some fixes
0.2.3 - 2014.12.15
- Symbols:
- Added option to disable addition setter to
Object.prototypefor Symbol polyfill:- Added
Symbol.useSimple - Added
Symbol.useSetter
- Added
- Added cap for well-known Symbols:
- Added
Symbol.hasInstance - Added
Symbol.isConcatSpreadable - Added
Symbol.match - Added
Symbol.replace - Added
Symbol.search - Added
Symbol.species - Added
Symbol.split - Added
Symbol.toPrimitive - Added
Symbol.unscopables
- Added
- Added option to disable addition setter to
0.2.2 - 2014.12.13
- Added
RegExp#flags(December 2014 Draft Rev 29) - Added
String.raw
0.2.1 - 2014.12.12
- Repair converting -0 to +0 in native collections
0.2.0 - 2014.12.06
- Added
es7.proposalsandes7.abstract-refsmodules - Added
String#at - Added real
String Iterator, older versions used Array Iterator - Added abstract references support:
- Added
Symbol.referenceGet - Added
Symbol.referenceSet - Added
Symbol.referenceDelete - Added
Function#@@referenceGet - Added
Map#@@referenceGet - Added
Map#@@referenceSet - Added
Map#@@referenceDelete - Added
WeakMap#@@referenceGet - Added
WeakMap#@@referenceSet - Added
WeakMap#@@referenceDelete - Added
Dict.{...methods}[@@referenceGet]
- Added
- Removed deprecated
.containsmethods - Some fixes
0.1.5 - 2014.12.01
- Added
Array#copyWithin - Added
String#codePointAt - Added
String.fromCodePoint
0.1.4 - 2014.11.27
- Added
Dict.mapPairs
0.1.3 - 2014.11.20
- TC39 November meeting:
.contains->.includesString#contains->String#includesArray#contains->Array#includesDict.contains->Dict.includes
- Removed
WeakMap#clear - Removed
WeakSet#clear
0.1.2 - 2014.11.19
Map&Setbug fix
0.1.1 - 2014.11.18
- Public release