Releases: zloirock/core-js
Releases Β· zloirock/core-js
3.22.5 - 2022.05.10
- Ensured that polyfilled constructors
.prototype
is non-writable - Ensured that polyfilled methods
.prototype
is not defined - Added detection and fix of a V8 ~ Chrome <103 bug of
struturedClone
that returnsnull
if cloned object contains multiple references to one error
3.22.4 - 2022.05.03
- Ensured proper
.length
of polyfilled functions even in compressed code (excepting some ancient engines) - Ensured proper
.name
of polyfilled accessors (excepting some ancient engines) - Ensured proper source /
ToString
conversion of polyfilled accessors - Actualized Rhino compat data
- Refactoring
3.22.3 - 2022.04.28
- Added a fix for FF99+
Array.prototype.includes
broken on sparse arrays
3.22.2 - 2022.04.21
- Fixed
URLSearchParams
in IE8- that was broken in the previous release - Fixed
__lookupGetter__
entries
3.22.1 - 2022.04.20
- Improved some cases of
RegExp
flags handling - Prevented experimental warning in NodeJS ~ 18.0 on detection
fetch
API - Added NodeJS 18.0 compat data
3.22.0 - 2022.04.15
- Change
Array
by copy proposal:- Moved to Stage 3, March TC39 meeting
- Disabled forced replacement and added
/actual/
entry points for methods from this proposal Array.prototype.toSpliced
throws aTypeError
instead ofRangeError
if the result length is more thanMAX_SAFE_INTEGER
, proposal-change-array-by-copy/70
- Added some more
atob
/btoa
fixes:- NodeJS <17.9
atob
does not ignore spaces, node/42530 - Actual NodeJS
atob
does 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.groupBy
was removed from theArray
grouping 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-bundle
output. 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-builder
andcore-js-compat
, now it'smodules
andexclude
options - Added support of entry points, modules, regexes, and arrays of them to those filters
- Missed
targets
option ofcore-js-compat
means that thetargets
filter 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:
.stack
property onDOMException
marked 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
3.21.0 - 2022.02.02
- Added Base64 utility methods:
atob
btoa
- 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#bind
polyfills, uses only nativeFunction#bind
in the internals structuredClone
should 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.set
bugs, affects modern engines (like Chrome < 95 or Safari < 14.1)