Releases: zloirock/core-js
Releases Β· zloirock/core-js
3.38.1 - 2024.08.20
- Changes v3.38.0...v3.38.1
- Fixed some cases of
URLSearchParamspercent decoding, #1357, #1361, thanks @slowcheetah - Some stylistic changes and minor optimizations
- Compat data improvements:
Iteratorhelpers proposal methods marked as shipped from FF131Math.f16roundandDataView.prototype.{ getFloat16, setFloat16 }marked as shipped from Bun 1.1.23RegExp.escapemarked as shipped from Bun 1.1.22Promise.trymarked as shipped from Bun 1.1.22Uint8Arrayto / from base64 and hex proposal methods marked as shipped from Bun 1.1.22- Added Hermes 0.13 compat data, similar to React Native 0.75 Hermes
- Added Opera Android 84 compat data mapping
3.38.0 - 2024.08.05
- Changes v3.37.1...v3.38.0
RegExp.escapeproposal:- Built-ins:
RegExp.escape
- Moved to stage 3, June 2024 and July 2024 TC39 meetings
- Updated the way of escaping, regex-escaping/77
- Throw an error on non-strings, regex-escaping/58
- Added
/actual/namespace entries, unconditional forced replacement changed to feature detection
- Built-ins:
Promise.tryproposal:- Built-ins:
Promise.try
- Moved to stage 3, June 2024 TC39 meeting
- Added
/actual/namespace entries, unconditional forced replacement changed to feature detection
- Built-ins:
Uint8Arrayto / from base64 and hex stage 3 proposal:- Built-ins:
Uint8Array.fromBase64Uint8Array.fromHexUint8Array.prototype.setFromBase64Uint8Array.prototype.setFromHexUint8Array.prototype.toBase64Uint8Array.prototype.toHex
- Added
Uint8Array.prototype.{ setFromBase64, setFromHex }methods - Added
Uint8Array.fromBase64andUint8Array.prototype.setFromBase64lastChunkHandlingoption, proposal-arraybuffer-base64/33 - Added
Uint8Array.prototype.toBase64omitPaddingoption, proposal-arraybuffer-base64/60 - Added throwing a
TypeErroron arrays backed by detached buffers - Unconditional forced replacement changed to feature detection
- Built-ins:
- Fixed
RegExpnamed capture groups polyfill in combination with non-capturing groups, #1352, thanks @Ulop - Improved some cases of environment detection
- Uses
process.getBuiltinModulefor getting built-in NodeJS modules where it's available - Uses
httpsinstead ofhttpinURLconstructor feature detection to avoid extra notifications from some overly vigilant security scanners, #1345 - Some minor optimizations
- Updated
browserslistincore-js-compatdependencies that fixes an upstream issue with incorrect interpretation of somebrowserslistqueries, #1344, browserslist/829, browserslist/836 - Compat data improvements:
- Added Safari 18.0 compat data:
- Fixed
Object.groupByandMap.groupByto work for non-objects - Fixed throwing a
RangeErrorifSetmethods are called on an object with negative size property - Fixed
Set.prototype.symmetricDifferenceto callthis.hasin each iteration - Fixed
Array.fromAsyncto not call theArrayconstructor twice - Added
URL.parse
- Fixed
Math.f16roundandDataView.prototype.{ getFloat16, setFloat16 }marked as shipped from FF129Symbol.asyncDisposeadded and marked as supported from V8 ~ Chromium 127Promise.tryadded and marked as supported from V8 ~ Chromium 128- Added Deno 1.44 and 1.45 compat data mapping
selfdescriptor is broken in Deno 1.45.3 (again)- Added Electron 32 and 33 compat data mapping
- Added Opera Android 83 compat data mapping
- Added Samsung Internet 27 compat data mapping
- Added Oculus Quest Browser 34 compat data mapping
- Added Safari 18.0 compat data:
3.37.1 - 2024.05.14
- Changes v3.37.0...v3.37.1
- Fixed
URL.parsefeature detection for some specific cases - Compat data improvements:
Setmethods proposal added and marked as supported from FF 127Symbol.disposeadded and marked as supported from V8 ~ Chromium 125Math.f16roundandDataView.prototype.{ getFloat16, setFloat16 }added and marked as supported from Deno 1.43URL.parseadded and marked as supported from Chromium 126URL.parseadded and marked as supported from NodeJS 22.0URL.parseadded and marked as supported from Deno 1.43- Added Rhino 1.7.15 compat data, many features marked as supported
- Added NodeJS 22.0 compat data mapping
- Added Deno 1.43 compat data mapping
- Added Electron 31 compat data mapping
- Updated Opera Android 82 compat data mapping
- Added Samsung Internet 26 compat data mapping
- Added Oculus Quest Browser 33 compat data mapping
3.37.0 - 2024.04.17
- Changes v3.36.1...v3.37.0
- New
Setmethods proposal:- Built-ins:
Set.prototype.intersectionSet.prototype.unionSet.prototype.differenceSet.prototype.symmetricDifferenceSet.prototype.isSubsetOfSet.prototype.isSupersetOfSet.prototype.isDisjointFrom
- Moved to stable ES, April 2024 TC39 meeting
- Added
es.namespace modules,/es/and/stable/namespaces entries
- Built-ins:
- Explicit Resource Management stage 3 proposal
- Some minor updates like explicit-resource-management/217
- Added
Math.sumPrecisestage 2.7 proposal:- Built-ins:
Math.sumPrecise
- Built-ins:
Promise.tryproposal:- Built-ins:
Promise.try
- Added optional arguments support, promise-try/16
- Moved to stage 2.7, April 2024 TC39 meeting
- Built-ins:
RegExp.escapestage 2 proposal:- Moved to hex-escape semantics, regex-escaping/67
- It's not the final change of the way of escaping, waiting for regex-escaping/77 soon
- Moved to hex-escape semantics, regex-escaping/67
- Pattern matching stage 1 proposal:
- Built-ins:
Symbol.customMatcher
- Once again, the used well-known symbol was renamed
- Added new entries for that
- Built-ins:
- Added Extractors stage 1 proposal:
- Built-ins:
Symbol.customMatcher
- Since the
Symbol.customMatcherwell-known symbol from the pattern matching proposal is also used in the exactors proposal, added an entry also for this proposal
- Built-ins:
- Added
URL.parse, url/825 - Engines bugs fixes:
- Compat data improvements:
URL.parseadded and marked as supported from FF 126URL.parseadded and marked as supported from Bun 1.1.4URL.canParsefixed and marked as supported from Bun 1.1.0- New
Setmethods fixed in JavaScriptCore and marked as supported from Bun 1.1.1 - Added Opera Android 82 compat data mapping
3.36.1 - 2024.03.19
- Changes v3.36.0...v3.36.1
- Fixed some validation cases in
Object.setPrototypeOf, #1329, thanks @minseok-choe - Fixed the order of validations in
Array.from, #1331, thanks @minseok-choe - Added a fix of Bun
queueMicrotaskarity - Added a fix of Bun
URL.canParsearity - Added a fix of Bun
SuppressedErrorextra arguments support and arity - Compat data improvements:
valueargument ofURLSearchParams.prototype.{ has, delete }marked as supported from Bun 1.0.31- Added React Native 0.74 Hermes compat data,
Array.prototype.{ toSpliced, toReversed, with }andatobmarked as supported - Added Deno 1.41.3 compat data mapping
- Added Opera Android 81 compat data mapping
- Added Samsung Internet 25 compat data mapping
- Added Oculus Quest Browser 32 compat data mapping
- Updated Electron 30 compat data mapping
3.36.0 - 2024.02.14
ArrayBuffer.prototype.transferand friends proposal:- Built-ins:
ArrayBuffer.prototype.detachedArrayBuffer.prototype.transferArrayBuffer.prototype.transferToFixedLength
- Moved to stable ES, Febrary 2024 TC39 meeting
- Added
es.namespace modules,/es/and/stable/namespaces entries
- Built-ins:
Uint8Arrayto / from base64 and hex proposal:- Methods:
Uint8Array.fromBase64Uint8Array.fromHexUint8Array.prototype.toBase64Uint8Array.prototype.toHex
- Moved to stage 3, Febrary 2024 TC39 meeting
- Added
/actual/namespace entries - Skipped adding new methods of writing to existing arrays to clarification some moments
- Methods:
Promise.tryproposal has been resurrected and moved to stage 2, Febrary 2024 TC39 meeting- Added an entry point for the new TC39 proposals stage -
core-js/stage/2.7- still empty - Fixed regression in
Set.prototype.intersectionfeature detection - Fixed a missed check in
Array.prototype.{ indexOf, lastIndexOf, includes }, #1325, thanks @minseok-choe - Fixed a missed check in
Array.prototype.{ reduce, reduceRight }, #1327, thanks @minseok-choe - Fixed
Array.fromand some other methods with proxy targets, #1322, thanks @minseok-choe - Fixed dependencies loading for modules from
ArrayBuffer.prototype.transferand friends proposal in some specific cases in IE10- - Dropped context workaround from collection static methods entries since with current methods semantic it's no longer required
- Added instance methods polyfills to entries of collections static methods that produce collection instances
- Added missed
Date.prototype.toJSONtoJSON.stringifyentries dependencies - Added debugging info in some missed cases
- Compat data improvements:
{ Map, Object }.groupBy,Promise.withResolvers,ArrayBuffer.prototype.transferand friends marked as supported from Safari 17.4- New
Setmethods fixed and marked as supported from V8 ~ Chrome 123 - Added Deno 1.40 compat data mapping
Symbol.metadatamarked as supported from Deno 1.40.4- Updated Electron 30 compat data mapping
4.0.0-alpha.0 - 2024.02.13
Early release for testing some conceptions.
NOT FOR USAGE IN REAL PROJECTS.
See more info here: #1310
3.35.1 - 2024.01.21
- Fixed internal
ToLengthoperation with bigints, #1318 - Removed significant redundant code from
String#splitpolyfill - Fixed setting names of methods with symbol keys in some old engines
- Minor fix of prototype methods export logic in the pure version
- Compat data improvements:
Iteratorhelpers proposal methods marked as supported from V8 ~ Chrome 122- Note that V8 ~ Chrome 122 add
Setmethods, but they have a bug similar to Safari selfmarked as fixed from Bun 1.0.22SuppressedErrorandSymbol.{ dispose, asyncDispose }marked as supported from Bun 1.0.23- Added Oculus Quest Browser 31 compat data mapping
- Updated Electron 29 and added Electron 30 compat data mapping
3.35.0 - 2023.12.29
{ Map, Set, WeakMap, WeakSet }.{ from, of }became non-generic, following this and some other notes. Now they can be invoked withoutthis, but no longer return subclass instances- Fixed handling some cases of non-enumerable symbol keys from
Symbolpolyfill - Removed unneeded NodeJS domains-related logic from
queueMicrotaskpolyfill - Fixed subclassing of wrapped
ArrayBuffer - Refactoring, many different minor optimizations
- Compat data improvements:
Array.fromAsyncmarked as supported from V8 ~ Chrome 121- It seems that the ancient
Array.prototype.pushbug is fixed in V8 ~ Chrome 122 (Hallelujah!) ArrayBuffer.prototype.transferand friends proposal features marked as supported from FF 122 and Bun 1.0.19Object.groupByandMap.groupBymarked as supported from Bun 1.0.19- Since
Iteratorhelpers proposal methods are still not disabled in Deno, the web compatibility issue why it was disabled in Chromium makes no sense for Deno and fixed in the spec, they marked as supported from Deno 1.37 - Added Opera Android 80 and updated Opera Android 79 compat data mapping
- Added Samsung Internet 24 compat data mapping
3.34.0 - 2023.12.06
Arraygrouping proposal:- Methods:
Object.groupByMap.groupBy
- Moved to stable ES, November 2023 TC39 meeting
- Added
es.namespace modules,/es/and/stable/namespaces entries
- Methods:
Promise.withResolversproposal:- Method:
Promise.withResolvers
- Moved to stable ES, November 2023 TC39 meeting
- Added
es.namespace module,/es/and/stable/namespaces entries
- Method:
- Fixed a web incompatibility issue of
Iteratorhelpers proposal, proposal-iterator-helpers/287 and some following changes, November 2023 TC39 meeting - Added
Uint8Arrayto / from base64 and hex stage 2 proposal:- Methods:
Uint8Array.fromBase64Uint8Array.fromHexUint8Array.prototype.toBase64Uint8Array.prototype.toHex
- Methods:
- Relaxed some specific cases of
Number.fromStringvalidation before clarification of proposal-number-fromstring/24 - Fixed
@@toStringTagproperty descriptors on DOM collections, #1312 - Fixed the order of arguments validation in
Arrayiteration methods, #1313 - Some minor
atob/btoaimprovements - Compat data improvements:
Promise.withResolversmarked as shipped from FF121