-
-
Notifications
You must be signed in to change notification settings - Fork 5.8k
[static blocks] Do not inject new static fields after static code #17443
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
Build successful! You can test your changes in the REPL here: https://babeljs.io/repl/build/59753 |
e125f58 to
cc22426
Compare
JLHwung
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Interleaving with other static field initializers is a nice trick!
| /* static */ true, | ||
| ), | ||
| classBody.parentPath.insertAfter( | ||
| t.expressionStatement(t.callExpression(t.cloneNode(tmp), [])), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If the class is anonymous and the staticBlock closure is appended, should we also run the namedEvaluationVisitor and prepend the setFunctionName helper call to the static block statements?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
BTW, if the class is decorated and there are extra class initializers. Does the staticBlock closure now run before the class initializers?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
BTW, if the class is decorated and there are extra class initializers. Does the staticBlock closure now run before the class initializers?
The decorators plugin will run before the static blocks plugin (because it visits Class, while this one visits ClassBody) and will inject a static block to run the initializers. Then, this plugin will transform the static block.
|
commit: |
|
@JLHwung Updated to preserve the name by injecting, when needed, a static block at the beginning of the class that calls the helper. Please take a look again! |
gibson042
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Cool!
|
The Next.js 10 integration error is legit. We have to import the latest |
![snyk-io[bot]](https://badgen.net/badge/icon/snyk-io%5Bbot%5D/green?label=)  [<img width="16" alt="Powered by Pull Request Badge" src="https://user-images.githubusercontent.com/1393946/111216524-d2bb8e00-85d4-11eb-821b-ed4c00989c02.png">](https://pullrequestbadge.com/?utm_medium=github&utm_source=reisene&utm_campaign=badge_info)<!-- PR-BADGE: PLEASE DO NOT REMOVE THIS COMMENT -->  <h3>Snyk has created this PR to upgrade @babel/core from 7.28.0 to 7.28.3.</h3> :information_source: Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project. <hr/> - The recommended version is **1 version** ahead of your current version. - The recommended version was released **a month ago**. #### Issues fixed by the recommended upgrade: | | Issue | Score | Exploit Maturity | :-------------------------:|:-------------------------|:-------------------------|:-------------------------  | Regular Expression Denial of Service (ReDoS)<br/>[SNYK-JS-BRACEEXPANSION-9789073](https://snyk.io/vuln/SNYK-JS-BRACEEXPANSION-9789073) | **57** | Proof of Concept  | Regular Expression Denial of Service (ReDoS)<br/>[SNYK-JS-BRACEEXPANSION-9789073](https://snyk.io/vuln/SNYK-JS-BRACEEXPANSION-9789073) | **57** | Proof of Concept <details> <summary><b>Release notes</b></summary> <br/> <details> <summary>Package name: <b>@babel/core</b></summary> <ul> <li> <b>7.28.3</b> - <a href="https://redirect.github.com/babel/babel/releases/tag/v7.28.3">2025-08-14</a></br><h2>v7.28.3 (2025-08-14)</h2> <h4>👓 Spec Compliance</h4> <ul> <li><code>babel-helper-create-class-features-plugin</code>, <code>babel-plugin-proposal-decorators</code>, <code>babel-plugin-transform-class-static-block</code>, <code>babel-preset-env</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/17443" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/17443/hovercard">#17443</a> [static blocks] Do not inject new static fields after static code (<a href="https://redirect.github.com/nicolo-ribaudo">@ nicolo-ribaudo</a>)</li> </ul> </li> </ul> <h4>🐛 Bug Fix</h4> <ul> <li><code>babel-parser</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/17465" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/17465/hovercard">#17465</a> fix(parser/typescript): parse <code>import("./a", {with:{},})</code> (<a href="https://redirect.github.com/easrng">@ easrng</a>)</li> <li><a href="https://redirect.github.com/babel/babel/pull/17478" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/17478/hovercard">#17478</a> fix(parser): stop subscript parsing on async arrow (<a href="https://redirect.github.com/JLHwung">@ JLHwung</a>)</li> </ul> </li> </ul> <h4>💅 Polish</h4> <ul> <li><code>babel-plugin-transform-regenerator</code>, <code>babel-plugin-transform-runtime</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/17363" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/17363/hovercard">#17363</a> Do not save last yield in call in temp var (<a href="https://redirect.github.com/nicolo-ribaudo">@ nicolo-ribaudo</a>)</li> </ul> </li> </ul> <h4>📝 Documentation</h4> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/17448" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/17448/hovercard">#17448</a> move eslint-{parser,plugin} docs to the website (<a href="https://redirect.github.com/JLHwung">@ JLHwung</a>)</li> </ul> <h4>🏠 Internal</h4> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/17454" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/17454/hovercard">#17454</a> Enable type checking for <code>scripts</code> and <code>babel-worker.cjs</code> (<a href="https://redirect.github.com/JLHwung">@ JLHwung</a>)</li> </ul> <h4>🔬 Output optimization</h4> <ul> <li><code>babel-plugin-proposal-destructuring-private</code>, <code>babel-plugin-proposal-do-expressions</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/17444" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/17444/hovercard">#17444</a> Optimize do expression output (<a href="https://redirect.github.com/JLHwung">@ JLHwung</a>)</li> </ul> </li> </ul> <h4>Committers: 5</h4> <ul> <li>Babel Bot (<a href="https://redirect.github.com/babel-bot">@ babel-bot</a>)</li> <li>Huáng Jùnliàng (<a href="https://redirect.github.com/JLHwung">@ JLHwung</a>)</li> <li>Jam Balaya (<a href="https://redirect.github.com/JamBalaya56562">@ JamBalaya56562</a>)</li> <li>Nicolò Ribaudo (<a href="https://redirect.github.com/nicolo-ribaudo">@ nicolo-ribaudo</a>)</li> <li>easrng (<a href="https://redirect.github.com/easrng">@ easrng</a>)</li> </ul> </li> <li> <b>7.28.0</b> - <a href="https://redirect.github.com/babel/babel/releases/tag/v7.28.0">2025-07-02</a></br><h2>v7.28.0 (2025-07-02)</h2> <h4>🚀 New Feature</h4> <ul> <li><code>babel-node</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/17147" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/17147/hovercard">#17147</a> Support top level await in node repl (<a href="https://redirect.github.com/liuxingbaoyu">@ liuxingbaoyu</a>)</li> </ul> </li> <li><code>babel-types</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/17258" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/17258/hovercard">#17258</a> feat(matchesPattern): support super/private/meta (<a href="https://redirect.github.com/JLHwung">@ JLHwung</a>)</li> </ul> </li> <li><code>babel-compat-data</code>, <code>babel-preset-env</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/17355" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/17355/hovercard">#17355</a> Add explicit resource management to preset-env (<a href="https://redirect.github.com/JLHwung">@ JLHwung</a>)</li> </ul> </li> <li><code>babel-core</code>, <code>babel-parser</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/17390" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/17390/hovercard">#17390</a> Support <code>sourceType: "commonjs"</code> (<a href="https://redirect.github.com/JLHwung">@ JLHwung</a>)</li> </ul> </li> <li><code>babel-generator</code>, <code>babel-parser</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/17346" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/17346/hovercard">#17346</a> Materialize <code>explicitResourceManagement</code> parser plugin (<a href="https://redirect.github.com/JLHwung">@ JLHwung</a>)</li> </ul> </li> <li><code>babel-plugin-proposal-destructuring-private</code>, <code>babel-plugin-proposal-do-expressions</code>, <code>babel-plugin-transform-object-rest-spread</code>, <code>babel-traverse</code>, <code>babel-types</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/17391" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/17391/hovercard">#17391</a> LVal coverage updates (Part 2) (<a href="https://redirect.github.com/JLHwung">@ JLHwung</a>)</li> </ul> </li> <li><code>babel-parser</code>, <code>babel-traverse</code>, <code>babel-types</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/17378" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/17378/hovercard">#17378</a> Accept bigints in <code>t.bigIntLiteral</code> factory (<a href="https://redirect.github.com/JLHwung">@ JLHwung</a>)</li> </ul> </li> <li><code>babel-generator</code>, <code>babel-plugin-proposal-destructuring-private</code>, <code>babel-plugin-proposal-discard-binding</code>, <code>babel-plugin-transform-destructuring</code>, <code>babel-plugin-transform-explicit-resource-management</code>, <code>babel-plugin-transform-react-display-name</code>, <code>babel-types</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/17277" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/17277/hovercard">#17277</a> Transform discard binding (<a href="https://redirect.github.com/JLHwung">@ JLHwung</a>)</li> </ul> </li> <li><code>babel-generator</code>, <code>babel-parser</code>, <code>babel-plugin-proposal-destructuring-private</code>, <code>babel-plugin-transform-block-scoping</code>, <code>babel-plugin-transform-object-rest-spread</code>, <code>babel-plugin-transform-typescript</code>, <code>babel-traverse</code>, <code>babel-types</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/17163" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/17163/hovercard">#17163</a> Parse discard binding (<a href="https://redirect.github.com/JLHwung">@ JLHwung</a>)</li> </ul> </li> </ul> <h4>🐛 Bug Fix</h4> <ul> <li><code>babel-helper-globals</code>, <code>babel-plugin-transform-classes</code>, <code>babel-traverse</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/17297" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/17297/hovercard">#17297</a> Create babel-helper-globals (<a href="https://redirect.github.com/JLHwung">@ JLHwung</a>)</li> </ul> </li> <li><code>babel-types</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/17009" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/17009/hovercard">#17009</a> feature: TSTypeOperator: keyof (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2502652054" data-permission-text="Title is private" data-url="babel/babel#16799" data-hovercard-type="issue" data-hovercard-url="/babel/babel/issues/16799/hovercard" href="https://redirect.github.com/babel/babel/issues/16799">#16799</a>) (<a href="https://redirect.github.com/coderaiser">@ coderaiser</a>)</li> </ul> </li> </ul> <h4>🏠 Internal</h4> <ul> <li><code>babel-compat-data</code>, <code>babel-plugin-proposal-decorators</code>, <code>babel-plugin-transform-async-generator-functions</code>, <code>babel-plugin-transform-json-modules</code>, <code>babel-plugin-transform-regenerator</code>, <code>babel-plugin-transform-runtime</code>, <code>babel-preset-env</code>, <code>babel-runtime-corejs3</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/17403" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/17403/hovercard">#17403</a> Update <code>babel-polyfill</code> packages (<a href="https://redirect.github.com/nicolo-ribaudo">@ nicolo-ribaudo</a>)</li> </ul> </li> </ul> <h4>Committers: 5</h4> <ul> <li>Babel Bot (<a href="https://redirect.github.com/babel-bot">@ babel-bot</a>)</li> <li>Huáng Jùnliàng (<a href="https://redirect.github.com/JLHwung">@ JLHwung</a>)</li> <li>Nicolò Ribaudo (<a href="https://redirect.github.com/nicolo-ribaudo">@ nicolo-ribaudo</a>)</li> <li><a href="https://redirect.github.com/liuxingbaoyu">@ liuxingbaoyu</a></li> <li>coderaiser (<a href="https://redirect.github.com/coderaiser">@ coderaiser</a>)</li> </ul> </li> </ul> from <a href="https://redirect.github.com/babel/babel/releases">@babel/core GitHub release notes</a> </details> </details> --- > [!IMPORTANT] > > - Check the changes in this PR to ensure they won't cause issues with your project. > - This PR was automatically created by Snyk using the credentials of a real user. > - Max score is 1000. Note that the real score may have changed since the PR was raised. --- **Note:** _You are seeing this because you or someone else with access to this repository has authorized Snyk to open upgrade PRs._ **For more information:** <img src="https://api.segment.io/v1/pixel/track?data=eyJ3cml0ZUtleSI6InJyWmxZcEdHY2RyTHZsb0lYd0dUcVg4WkFRTnNCOUEwIiwiYW5vbnltb3VzSWQiOiI3NWI5ZGJmMC02NDhhLTQ0NTYtOWEzMy05ZmE4ZjdjMjk1NTMiLCJldmVudCI6IlBSIHZpZXdlZCIsInByb3BlcnRpZXMiOnsicHJJZCI6Ijc1YjlkYmYwLTY0OGEtNDQ1Ni05YTMzLTlmYThmN2MyOTU1MyJ9fQ==" width="0" height="0"/> > - 🧐 [View latest project report](https://app.snyk.io/org/reisene/project/55e114f8-489e-4f14-b900-20574b041e59?utm_source=github-cloud-app&utm_medium=referral&page=upgrade-pr) > - 📜 [Customise PR templates](https://docs.snyk.io/scan-using-snyk/pull-requests/snyk-fix-pull-or-merge-requests/customize-pr-templates?utm_source=&utm_content=fix-pr-template) > - 🛠 [Adjust upgrade PR settings](https://app.snyk.io/org/reisene/project/55e114f8-489e-4f14-b900-20574b041e59/settings/integration?utm_source=github-cloud-app&utm_medium=referral&page=upgrade-pr) > - 🔕 [Ignore this dependency or unsubscribe from future upgrade PRs](https://app.snyk.io/org/reisene/project/55e114f8-489e-4f14-b900-20574b041e59/settings/integration?pkg=@babel/core&utm_source=github-cloud-app&utm_medium=referral&page=upgrade-pr#auto-dep-upgrades) [//]: # 'snyk:metadata:{"customTemplate":{"variablesUsed":[],"fieldsUsed":[]},"dependencies":[{"name":"@babel/core","from":"7.28.0","to":"7.28.3"}],"env":"prod","hasFixes":true,"isBreakingChange":false,"isMajorUpgrade":false,"issuesToFix":["SNYK-JS-BRACEEXPANSION-9789073","SNYK-JS-BRACEEXPANSION-9789073"],"prId":"75b9dbf0-648a-4456-9a33-9fa8f7c29553","prPublicId":"75b9dbf0-648a-4456-9a33-9fa8f7c29553","packageManager":"npm","priorityScoreList":[57],"projectPublicId":"55e114f8-489e-4f14-b900-20574b041e59","projectUrl":"https://app.snyk.io/org/reisene/project/55e114f8-489e-4f14-b900-20574b041e59?utm_source=github-cloud-app&utm_medium=referral&page=upgrade-pr","prType":"upgrade","templateFieldSources":{"branchName":"default","commitMessage":"default","description":"default","title":"default"},"templateVariants":["priorityScore"],"type":"auto","upgrade":["SNYK-JS-BRACEEXPANSION-9789073","SNYK-JS-BRACEEXPANSION-9789073"],"upgradeInfo":{"versionsDiff":1,"publishedDate":"2025-08-14T12:36:21.762Z"},"vulns":["SNYK-JS-BRACEEXPANSION-9789073","SNYK-JS-BRACEEXPANSION-9789073"]}'
 <h3>Snyk has created this PR to upgrade @babel/runtime from 7.28.3 to 7.28.4.</h3> :information_source: Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project. <hr/> - The recommended version is **1 version** ahead of your current version. - The recommended version was released **22 days ago**. <details> <summary><b>Release notes</b></summary> <br/> <details> <summary>Package name: <b>@babel/runtime</b></summary> <ul> <li> <b>7.28.4</b> - <a href="https://redirect.github.com/babel/babel/releases/tag/v7.28.4">2025-09-05</a></br><h2>v7.28.4 (2025-09-05)</h2> <p>Thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/gwillen/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://redirect.github.com/gwillen">@ gwillen</a> and <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mrginglymus/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://redirect.github.com/mrginglymus">@ mrginglymus</a> for your first PRs!</p> <h4>🏠 Internal</h4> <ul> <li><code>babel-core</code>, <code>babel-helper-check-duplicate-nodes</code>, <code>babel-traverse</code>, <code>babel-types</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/17493" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/17493/hovercard">#17493</a> Update Jest to v30.1.1 (<a href="https://redirect.github.com/JLHwung">@ JLHwung</a>)</li> </ul> </li> <li><code>babel-plugin-transform-regenerator</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/17455" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/17455/hovercard">#17455</a> chore: Clean up <code>transform-regenerator</code> (<a href="https://redirect.github.com/liuxingbaoyu">@ liuxingbaoyu</a>)</li> </ul> </li> <li><code>babel-core</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/17474" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/17474/hovercard">#17474</a> Switch to @ jridgewell/remapping (<a href="https://redirect.github.com/mrginglymus">@ mrginglymus</a>)</li> </ul> </li> </ul> <h4>Committers: 5</h4> <ul> <li>Babel Bot (<a href="https://redirect.github.com/babel-bot">@ babel-bot</a>)</li> <li>Bill Collins (<a href="https://redirect.github.com/mrginglymus">@ mrginglymus</a>)</li> <li>Glenn Willen (<a href="https://redirect.github.com/gwillen">@ gwillen</a>)</li> <li>Huáng Jùnliàng (<a href="https://redirect.github.com/JLHwung">@ JLHwung</a>)</li> <li><a href="https://redirect.github.com/liuxingbaoyu">@ liuxingbaoyu</a></li> </ul> </li> <li> <b>7.28.3</b> - <a href="https://redirect.github.com/babel/babel/releases/tag/v7.28.3">2025-08-14</a></br><h2>v7.28.3 (2025-08-14)</h2> <h4>👓 Spec Compliance</h4> <ul> <li><code>babel-helper-create-class-features-plugin</code>, <code>babel-plugin-proposal-decorators</code>, <code>babel-plugin-transform-class-static-block</code>, <code>babel-preset-env</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/17443" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/17443/hovercard">#17443</a> [static blocks] Do not inject new static fields after static code (<a href="https://redirect.github.com/nicolo-ribaudo">@ nicolo-ribaudo</a>)</li> </ul> </li> </ul> <h4>🐛 Bug Fix</h4> <ul> <li><code>babel-parser</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/17465" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/17465/hovercard">#17465</a> fix(parser/typescript): parse <code>import("./a", {with:{},})</code> (<a href="https://redirect.github.com/easrng">@ easrng</a>)</li> <li><a href="https://redirect.github.com/babel/babel/pull/17478" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/17478/hovercard">#17478</a> fix(parser): stop subscript parsing on async arrow (<a href="https://redirect.github.com/JLHwung">@ JLHwung</a>)</li> </ul> </li> </ul> <h4>💅 Polish</h4> <ul> <li><code>babel-plugin-transform-regenerator</code>, <code>babel-plugin-transform-runtime</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/17363" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/17363/hovercard">#17363</a> Do not save last yield in call in temp var (<a href="https://redirect.github.com/nicolo-ribaudo">@ nicolo-ribaudo</a>)</li> </ul> </li> </ul> <h4>📝 Documentation</h4> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/17448" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/17448/hovercard">#17448</a> move eslint-{parser,plugin} docs to the website (<a href="https://redirect.github.com/JLHwung">@ JLHwung</a>)</li> </ul> <h4>🏠 Internal</h4> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/17454" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/17454/hovercard">#17454</a> Enable type checking for <code>scripts</code> and <code>babel-worker.cjs</code> (<a href="https://redirect.github.com/JLHwung">@ JLHwung</a>)</li> </ul> <h4>🔬 Output optimization</h4> <ul> <li><code>babel-plugin-proposal-destructuring-private</code>, <code>babel-plugin-proposal-do-expressions</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/17444" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/17444/hovercard">#17444</a> Optimize do expression output (<a href="https://redirect.github.com/JLHwung">@ JLHwung</a>)</li> </ul> </li> </ul> <h4>Committers: 5</h4> <ul> <li>Babel Bot (<a href="https://redirect.github.com/babel-bot">@ babel-bot</a>)</li> <li>Huáng Jùnliàng (<a href="https://redirect.github.com/JLHwung">@ JLHwung</a>)</li> <li>Jam Balaya (<a href="https://redirect.github.com/JamBalaya56562">@ JamBalaya56562</a>)</li> <li>Nicolò Ribaudo (<a href="https://redirect.github.com/nicolo-ribaudo">@ nicolo-ribaudo</a>)</li> <li>easrng (<a href="https://redirect.github.com/easrng">@ easrng</a>)</li> </ul> </li> </ul> from <a href="https://redirect.github.com/babel/babel/releases">@babel/runtime GitHub release notes</a> </details> </details> --- > [!IMPORTANT] > > - Check the changes in this PR to ensure they won't cause issues with your project. > - This PR was automatically created by Snyk using the credentials of a real user. --- **Note:** _You are seeing this because you or someone else with access to this repository has authorized Snyk to open upgrade PRs._ **For more information:** <img src="https://api.segment.io/v1/pixel/track?data=eyJ3cml0ZUtleSI6InJyWmxZcEdHY2RyTHZsb0lYd0dUcVg4WkFRTnNCOUEwIiwiYW5vbnltb3VzSWQiOiJmOTY5NTNlMS1jOTM2LTRiMDYtOTFkMi1hN2I1YjNjMjMwOTgiLCJldmVudCI6IlBSIHZpZXdlZCIsInByb3BlcnRpZXMiOnsicHJJZCI6ImY5Njk1M2UxLWM5MzYtNGIwNi05MWQyLWE3YjViM2MyMzA5OCJ9fQ==" width="0" height="0"/> > - 🧐 [View latest project report](https://app.snyk.io/org/alanplatt/project/ff50773c-5262-40d8-b38d-68f56510f59a?utm_source=github&utm_medium=referral&page=upgrade-pr) > - 📜 [Customise PR templates](https://docs.snyk.io/scan-using-snyk/pull-requests/snyk-fix-pull-or-merge-requests/customize-pr-templates?utm_source=&utm_content=fix-pr-template) > - 🛠 [Adjust upgrade PR settings](https://app.snyk.io/org/alanplatt/project/ff50773c-5262-40d8-b38d-68f56510f59a/settings/integration?utm_source=github&utm_medium=referral&page=upgrade-pr) > - 🔕 [Ignore this dependency or unsubscribe from future upgrade PRs](https://app.snyk.io/org/alanplatt/project/ff50773c-5262-40d8-b38d-68f56510f59a/settings/integration?pkg=@babel/runtime&utm_source=github&utm_medium=referral&page=upgrade-pr#auto-dep-upgrades) [//]: # 'snyk:metadata:{"breakingChangeRiskLevel":null,"FF_showPullRequestBreakingChanges":null,"FF_showPullRequestBreakingChangesWebSearch":null,"customTemplate":{"variablesUsed":[],"fieldsUsed":[]},"dependencies":[{"name":"@babel/runtime","from":"7.28.3","to":"7.28.4"}],"env":"prod","hasFixes":false,"isBreakingChange":false,"isMajorUpgrade":false,"issuesToFix":[],"prId":"f96953e1-c936-4b06-91d2-a7b5b3c23098","prPublicId":"f96953e1-c936-4b06-91d2-a7b5b3c23098","packageManager":"npm","priorityScoreList":[],"projectPublicId":"ff50773c-5262-40d8-b38d-68f56510f59a","projectUrl":"https://app.snyk.io/org/alanplatt/project/ff50773c-5262-40d8-b38d-68f56510f59a?utm_source=github&utm_medium=referral&page=upgrade-pr","prType":"upgrade","templateFieldSources":{"branchName":"default","commitMessage":"default","description":"default","title":"default"},"templateVariants":[],"type":"auto","upgrade":[],"upgradeInfo":{"versionsDiff":1,"publishedDate":"2025-09-05T14:53:08.958Z"},"vulns":[]}'
Fixes #1, Fixes #2This is to make our transform compatible with https://github.com/tc39/proposal-nonextensible-applies-to-private. See tc39/proposal-nonextensible-applies-to-private#1 for more details.
(cc @gibson042, if you are curious to see the approach)