Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: zloirock/core-js
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v3.23.3
Choose a base ref
...
head repository: zloirock/core-js
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v3.23.4
Choose a head ref

Commits on Jun 26, 2022

  1. update dependencies

    zloirock committed Jun 26, 2022
    Copy the full SHA
    bbbf416 View commit details

Commits on Jun 27, 2022

  1. fix a multiple copies test

    zloirock committed Jun 27, 2022
    Copy the full SHA
    eefaa76 View commit details
  2. Copy the full SHA
    85603a0 View commit details
  3. extract bundle-deno

    zloirock committed Jun 27, 2022
    Copy the full SHA
    24c7ca5 View commit details

Commits on Jun 28, 2022

  1. update dependencies

    zloirock committed Jun 28, 2022
    Copy the full SHA
    11e024a View commit details
  2. bump version in SECURITY.md

    Reason:
    
    3.21.0 - 3.23.0: web compatibility issue - attempt to rewrite some non-writable non-configurable `Number` constants from proposals
    3.20.0 - 3.22.8: invalidation of V8 `ArrayBufferDetaching` protector on `structuredClone` feature detection and performance degradation
    3.22.4 - 3.23.2: broken some cases of IE8- support
    zloirock committed Jun 28, 2022
    Copy the full SHA
    08d8143 View commit details

Commits on Jun 29, 2022

  1. update dependencies

    zloirock committed Jun 29, 2022
    Copy the full SHA
    569ee6c View commit details

Commits on Jun 30, 2022

  1. update dependencies

    zloirock committed Jun 30, 2022
    Copy the full SHA
    7bbe874 View commit details

Commits on Jul 2, 2022

  1. update dependencies

    zloirock committed Jul 2, 2022
    Copy the full SHA
    7510ecd View commit details
  2. Copy the full SHA
    ac364f5 View commit details

Commits on Jul 3, 2022

  1. some stylistic changes

    zloirock committed Jul 3, 2022
    Copy the full SHA
    f33766c View commit details
  2. update dependencies

    zloirock committed Jul 3, 2022
    Copy the full SHA
    f8e29e6 View commit details

Commits on Jul 4, 2022

  1. fix(*): Typo

    Gao Sheng committed Jul 4, 2022
    Copy the full SHA
    f6582da View commit details
  2. fix(*): change all backticks to '

    Gao Sheng committed Jul 4, 2022
    Copy the full SHA
    f2e6605 View commit details
  3. Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    5d42952 View commit details
  4. update dependencies

    zloirock committed Jul 4, 2022
    Copy the full SHA
    595227c View commit details

Commits on Jul 5, 2022

  1. Copy the full SHA
    bc63ebd View commit details
  2. some stylistic changes

    zloirock committed Jul 5, 2022
    Copy the full SHA
    cd4c263 View commit details

Commits on Jul 7, 2022

  1. Copy the full SHA
    aeb28b6 View commit details

Commits on Jul 8, 2022

  1. Copy the full SHA
    cb8d8e0 View commit details
  2. Copy the full SHA
    e41db12 View commit details
  3. update a comment

    zloirock committed Jul 8, 2022
    Copy the full SHA
    0342bfa View commit details
  4. add a little more info

    zloirock committed Jul 8, 2022
    Copy the full SHA
    87bf578 View commit details
  5. clarify links to FF bugs

    zloirock committed Jul 8, 2022
    Copy the full SHA
    e245f94 View commit details
  6. improve a note

    zloirock committed Jul 8, 2022
    Copy the full SHA
    0134fd1 View commit details
  7. fix .emplace logic, #1102

    zloirock committed Jul 8, 2022
    Copy the full SHA
    0b5d53d View commit details
  8. minor refactoring

    zloirock committed Jul 8, 2022
    Copy the full SHA
    369786c View commit details

Commits on Jul 9, 2022

  1. 3.23.4

    zloirock committed Jul 9, 2022
    Copy the full SHA
    fe00e9c View commit details
Showing with 7,015 additions and 705 deletions.
  1. +1 −0 .eslintignore
  2. +7 −1 .eslintrc.js
  3. +6 −0 CHANGELOG.md
  4. +1 −1 CONTRIBUTING.md
  5. +4 −4 README.md
  6. +4 −4 SECURITY.md
  7. +1 −1 deno/corejs/README.md
  8. +557 −510 deno/corejs/index.js
  9. +64 −0 docs/compat/browsers-runner.js
  10. +4,229 −0 docs/compat/compat-data.js
  11. +37 −0 docs/compat/index.html
  12. +1,869 −0 docs/compat/tests.js
  13. +44 −44 package.json
  14. +3 −3 packages/core-js-builder/package.json
  15. +1 −1 packages/core-js-bundle/package.json
  16. +2 −2 packages/core-js-compat/package.json
  17. +1 −1 packages/core-js-pure/package.json
  18. +5 −3 packages/core-js/internals/async-iterator-create-proxy.js
  19. +5 −3 packages/core-js/internals/async-iterator-iteration.js
  20. +9 −0 packages/core-js/internals/get-iterator-direct.js
  21. +5 −2 packages/core-js/internals/iterate.js
  22. +5 −3 packages/core-js/internals/iterator-create-proxy.js
  23. +11 −5 packages/core-js/internals/map-emplace.js
  24. +1 −1 packages/core-js/internals/regexp-exec.js
  25. +2 −2 packages/core-js/internals/shared.js
  26. +1 −1 packages/core-js/modules/es.regexp.constructor.js
  27. +1 −1 packages/core-js/modules/es.typed-array.reduce-right.js
  28. +2 −2 packages/core-js/modules/esnext.async-iterator.as-indexed-pairs.js
  29. +2 −2 packages/core-js/modules/esnext.async-iterator.drop.js
  30. +2 −2 packages/core-js/modules/esnext.async-iterator.filter.js
  31. +2 −2 packages/core-js/modules/esnext.async-iterator.flat-map.js
  32. +2 −1 packages/core-js/modules/esnext.async-iterator.from.js
  33. +2 −2 packages/core-js/modules/esnext.async-iterator.map.js
  34. +4 −2 packages/core-js/modules/esnext.async-iterator.reduce.js
  35. +2 −3 packages/core-js/modules/esnext.async-iterator.take.js
  36. +2 −2 packages/core-js/modules/esnext.iterator.as-indexed-pairs.js
  37. +2 −2 packages/core-js/modules/esnext.iterator.drop.js
  38. +4 −4 packages/core-js/modules/esnext.iterator.every.js
  39. +2 −2 packages/core-js/modules/esnext.iterator.filter.js
  40. +4 −4 packages/core-js/modules/esnext.iterator.find.js
  41. +2 −2 packages/core-js/modules/esnext.iterator.flat-map.js
  42. +2 −2 packages/core-js/modules/esnext.iterator.for-each.js
  43. +2 −1 packages/core-js/modules/esnext.iterator.from.js
  44. +2 −2 packages/core-js/modules/esnext.iterator.map.js
  45. +4 −4 packages/core-js/modules/esnext.iterator.reduce.js
  46. +4 −4 packages/core-js/modules/esnext.iterator.some.js
  47. +2 −2 packages/core-js/modules/esnext.iterator.take.js
  48. +2 −2 packages/core-js/modules/esnext.iterator.to-array.js
  49. +11 −1 packages/core-js/modules/web.dom-exception.stack.js
  50. +8 −4 packages/core-js/modules/web.structured-clone.js
  51. +1 −1 packages/core-js/package.json
  52. +10 −0 scripts/copy-compat-table.mjs
  53. +1 −1 scripts/usage.mjs
  54. +1 −1 tests/compat/browsers-runner.js
  55. +1 −1 tests/compat/index.html
  56. +1 −1 tests/compat/tests.js
  57. +1 −1 tests/pure/es.array.from.js
  58. +1 −1 tests/pure/es.map.js
  59. +1 −1 tests/pure/es.number.epsilon.js
  60. +2 −2 tests/pure/es.object.is.js
  61. +1 −1 tests/pure/es.set.js
  62. +1 −1 tests/pure/es.string.replace-all.js
  63. +2 −2 tests/pure/es.weak-map.js
  64. +3 −3 tests/pure/es.weak-set.js
  65. +1 −1 tests/pure/esnext.async-iterator.reduce.js
  66. +8 −8 tests/pure/web.url.js
  67. +1 −1 tests/tests/es.aggregate-error.js
  68. +1 −1 tests/tests/es.array.flat-map.js
  69. +1 −1 tests/tests/es.array.from.js
  70. +1 −1 tests/tests/es.error.cause.js
  71. +1 −1 tests/tests/es.map.js
  72. +1 −1 tests/tests/es.number.epsilon.js
  73. +2 −2 tests/tests/es.object.is.js
  74. +3 −3 tests/tests/es.regexp.constructor.js
  75. +3 −3 tests/tests/es.regexp.exec.js
  76. +1 −1 tests/tests/es.set.js
  77. +1 −1 tests/tests/es.string.replace-all.js
  78. +1 −1 tests/tests/es.string.replace.js
  79. +1 −1 tests/tests/es.typed-array.iterator.js
  80. +2 −2 tests/tests/es.weak-map.js
  81. +3 −3 tests/tests/es.weak-set.js
  82. +1 −1 tests/tests/esnext.async-iterator.reduce.js
  83. +8 −8 tests/tests/web.url.js
1 change: 1 addition & 0 deletions .eslintignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
node_modules/
/deno/corejs/
/docs/
/packages/core-js-bundle/
/packages/core-js-compat/*.json
/packages/core-js-pure/override/
8 changes: 7 additions & 1 deletion .eslintrc.js
Original file line number Diff line number Diff line change
@@ -270,7 +270,7 @@ const base = {
// enforce padding within blocks
'padded-blocks': [ERROR, NEVER],
// specify whether double or single quotes should be used
quotes: [ERROR, 'single', 'avoid-escape'],
quotes: [ERROR, 'single', { avoidEscape: true }],
// require or disallow use of quotes around object literal property names
'quote-props': [ERROR, 'as-needed', { keywords: false }],
// require or disallow use of semicolons instead of ASI
@@ -468,8 +468,12 @@ const base = {
'unicorn/prefer-code-point': ERROR,
// prefer default parameters over reassignment
'unicorn/prefer-default-parameters': ERROR,
// prefer `EventTarget` over `EventEmitter`
'unicorn/prefer-event-target': ERROR,
// prefer reading a `JSON` file as a buffer
'unicorn/prefer-json-parse-buffer': ERROR,
// prefer using a logical operator over a ternary
'unicorn/prefer-logical-operator-over-ternary': ERROR,
// prefer modern `Math`` APIs over legacy patterns
'unicorn/prefer-modern-math-apis': ERROR,
// prefer `String#slice` over `String#{ substr, substring }`
@@ -707,6 +711,8 @@ const es3 = {
'unicorn/prefer-code-point': OFF,
// prefer default parameters over reassignment
'unicorn/prefer-default-parameters': OFF,
// prefer using a logical operator over a ternary
'unicorn/prefer-logical-operator-over-ternary': OFF,
};

const forbidESAnnexBBuiltIns = {
6 changes: 6 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -2,6 +2,12 @@
##### Unreleased
- Nothing

##### [3.23.4 - 2022.07.10](https://github.com/zloirock/core-js/releases/tag/v3.23.4)
- Added a workaround of the Bun ~ 0.1.1 [bug](https://github.com/Jarred-Sumner/bun/issues/399) that define some globals with incorrect property descriptors and that causes a crash of `core-js`
- Added a fix of the FF103+ `structuredClone` bugs ([1774866](https://bugzilla.mozilla.org/show_bug.cgi?id=1774866) (fixed in FF104) and [1777321](https://bugzilla.mozilla.org/show_bug.cgi?id=1777321) (still not fixed)) that now can clone errors, but `.stack` of the clone is an empty string
- Fixed `{ Map, WeakMap }.prototype.emplace` logic, [#1102](https://github.com/zloirock/core-js/issues/1102)
- Fixed order of errors throwing on iterator helpers

##### [3.23.3 - 2022.06.26](https://github.com/zloirock/core-js/releases/tag/v3.23.3)
- Changed the order of operations in `%TypedArray%.prototype.toSpliced` following [proposal-change-array-by-copy/89](https://github.com/tc39/proposal-change-array-by-copy/issues/89)
- Fixed regression of some IE8- issues
2 changes: 1 addition & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -19,7 +19,7 @@ Contributions are always welcome. If you don't know how you can help, you can ch

For updating `core-js-compat` data:

- If you want to add new data for a browser, run in this browser [`tests/compat/index.html`](http://es6.zloirock.ru/compat/) and you will see what `core-js` modules are required for this browser.
- If you want to add a new data for a browser, run in this browser `tests/compat/index.html` (tests and results for the actual release are available at [`http://zloirock.github.io/core-js/compat/`](http://zloirock.github.io/core-js/compat/)) and you will see what `core-js` modules are required for this browser.

![compat-table](https://user-images.githubusercontent.com/2213682/173199354-1f3aeb83-7231-46b2-8a14-a9d47ce3ae45.png)

8 changes: 4 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
@@ -176,11 +176,11 @@ queueMicrotask(() => console.log('called as microtask'));
### Installation:[](#index)
```
// global version
npm install --save core-js@3.23.3
npm install --save core-js@3.23.4
// version without global namespace pollution
npm install --save core-js-pure@3.23.3
npm install --save core-js-pure@3.23.4
// bundled global version
npm install --save core-js-bundle@3.23.3
npm install --save core-js-bundle@3.23.4
```

Or you can use `core-js` [from CDN](https://www.jsdelivr.com/package/npm/core-js-bundle).
@@ -405,7 +405,7 @@ For some cases could be useful to exclude some `core-js` features or generate a

## Compatibility data[](#index)

`core-js` project provides (as [`core-js-compat`](/packages/core-js-compat) package) all required data about the necessity of `core-js` modules, entry points, and tools for work with it - it's useful for integration with tools like `babel` or `swc`. If you wanna help, you could take a look at the related section of [`CONTRIBUTING.md`](/CONTRIBUTING.md#how-to-update-core-js-compat-data). The visualization of compatibility data and the browser tests runner is available [here](http://es6.zloirock.ru/compat/), the example:
`core-js` project provides (as [`core-js-compat`](/packages/core-js-compat) package) all required data about the necessity of `core-js` modules, entry points, and tools for work with it - it's useful for integration with tools like `babel` or `swc`. If you wanna help, you could take a look at the related section of [`CONTRIBUTING.md`](/CONTRIBUTING.md#how-to-update-core-js-compat-data). The visualization of compatibility data and the browser tests runner is available [here](http://zloirock.github.io/core-js/compat/), the example:

![compat-table](https://user-images.githubusercontent.com/2213682/173199354-1f3aeb83-7231-46b2-8a14-a9d47ce3ae45.png)

8 changes: 4 additions & 4 deletions SECURITY.md
Original file line number Diff line number Diff line change
@@ -5,10 +5,10 @@
This is the list of versions of `core-js` which are
currently being supported with security updates.

| Version | Supported |
| -------- | ------------------ |
| >= 3.4 | :white_check_mark: |
| < 3.4 | :x: |
| Version | Supported |
| --------- | ------------------ |
| >= 3.23.3 | :white_check_mark: |
| < 3.23.3 | :x: |

## Reporting a Vulnerability

2 changes: 1 addition & 1 deletion deno/corejs/README.md
Original file line number Diff line number Diff line change
@@ -24,7 +24,7 @@

*Example*:
```js
import 'https://deno.land/x/corejs@v3.23.3/index.js'; // <- at the top of your entry point
import 'https://deno.land/x/corejs@v3.23.4/index.js'; // <- at the top of your entry point

Object.hasOwn({ foo: 42 }, 'foo'); // => true

Loading