-
-
Notifications
You must be signed in to change notification settings - Fork 5.7k
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
Add createImportExpressions
parser option
#15682
Add createImportExpressions
parser option
#15682
Conversation
Build successful! You can test your changes in the REPL here: https://babeljs.io/repl/build/55000/ |
this.next(); // eat tt.parenL | ||
node.source = this.parseMaybeAssignAllowIn(); | ||
if (this.eat(tt.comma)) { | ||
this.expectPlugin("importAttributes"); |
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.
Should we also accept importAssertions
? We are going to remove it anyway in Babel 8, but I see no harm in maximizing internal compatibility here.
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.
Agreed. As for compatibility, we can expect importAttributes
when importAssertions
is not enabled, so new users will be referred to the latest proposal plugin.
b0f9302
to
682e32d
Compare
this.raise(Errors.ImportCallNotNewExpression, { at: node.callee }); | ||
const callee = this.parseNoCallExpr(); | ||
node.callee = callee; | ||
if (callee.type === "Import" || callee.type === "ImportExpression") { |
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.
This is valid syntax, do we parse it correctly? new (import(a))
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.
Good catch, currently it does not work with the import expression AST. I will add a test and fix it.
@@ -424,6 +424,9 @@ export default (superClass: typeof Parser) => | |||
this.hasPlugin("importAttributes") || | |||
this.hasPlugin("importAssertions") | |||
) { | |||
(node as N.Node as N.EstreeImportExpression).options = | |||
node.arguments[1] ?? null; | |||
// compatibility with previous ESTree AST | |||
(node as N.Node as N.EstreeImportExpression).attributes = |
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.
Can we maybe avoid this in BABEL_8_BREAKING
? (in a separate PR)
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.
Agreed, it was added for prettier compatibility only.
4050d88
to
a179ce9
Compare
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.
Let's add typings in packages\babel-parser\typings\babel-parser.source.d.ts
. :)
if (path.isCallExpression() && !t.isImport(path.node.callee)) return; | ||
if (path.isCallExpression()) { |
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 (path.isCallExpression()) {
if (!t.isImport(path.node.callee)) return;
xxx
}
Would this be better?
createParenthesizedExpressions?: boolean; | ||
|
||
/** | ||
* By default, `import(foo)` is parsed as `CallExpression(Import, [Identifier(foo)])`. | ||
* Set this to true to parse it as an `ImportExpression` node. | ||
*/ | ||
createImportExpression?: boolean; |
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.
Unrelated to the PR: both Expressions
and Expression
are used here, maybe we can unify them?
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.
Agreed, in that case I tend to name it as createImportExpressions
, to be consistent with the one of parenthesized expression.
3d7ebd5
to
a3548f4
Compare
createImportExpression
parser optioncreateImportExpressions
parser option
@JLHwung Did you forget to push? I see that you updated the title to |
You are right! Oops, I am sorry, how did I miss that. |
I'm struggling to reproduce the CI error locally EDIT: I just had to rebase |
Co-authored-by: Nicolò Ribaudo <[email protected]>
Co-authored-by: Nicolò Ribaudo <[email protected]>
4d4cced
to
588fb39
Compare
Co-authored-by: Nicolò Ribaudo <[email protected]> Co-authored-by: liuxingbaoyu <[email protected]>
Co-authored-by: Nicolò Ribaudo <[email protected]> Co-authored-by: liuxingbaoyu <[email protected]>
Co-authored-by: Nicolò Ribaudo <[email protected]> Co-authored-by: liuxingbaoyu <[email protected]>
Co-authored-by: Nicolò Ribaudo <[email protected]> Co-authored-by: liuxingbaoyu <[email protected]>
Co-authored-by: Nicolò Ribaudo <[email protected]> Co-authored-by: liuxingbaoyu <[email protected]>
Co-authored-by: Nicolò Ribaudo <[email protected]> Co-authored-by: liuxingbaoyu <[email protected]>
Co-authored-by: Nicolò Ribaudo <[email protected]> Co-authored-by: liuxingbaoyu <[email protected]>
<p>This PR was automatically created by Snyk using the credentials of a real user.</p><br /><h3>Snyk has created this PR to upgrade multiple dependencies.</h3> 👯♂ The following dependencies are linked and will therefore be updated together. </br></br> :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. </br></br> Name | Versions | Released on :-------------|:-------------|:------------- **@babel/parser**</br>from 7.22.16 to 7.23.0 | **1 version** ahead of your current version | **22 days ago**</br>on 2023-09-25 **@babel/types**</br>from 7.22.19 to 7.23.0 | **1 version** ahead of your current version | **22 days ago**</br>on 2023-09-25 <details> <summary><b>Release notes</b></summary> <br/> <details> <summary>Package name: <b>@babel/parser</b></summary> <ul> <li> <b>7.23.0</b> - <a href="https://snyk.io/redirect/github/babel/babel/releases/tag/v7.23.0">2023-09-25</a></br><h2>v7.23.0 (2023-09-25)</h2> <p>Thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/lorenzoferre/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/lorenzoferre">@ lorenzoferre</a> and <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/RajShukla1/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/RajShukla1">@ RajShukla1</a> for your first PRs!</p> <h4>🚀 New Feature</h4> <ul> <li><code>babel-plugin-proposal-import-wasm-source</code>, <code>babel-plugin-syntax-import-source</code>, <code>babel-plugin-transform-dynamic-import</code> <ul> <li><a href="https://snyk.io/redirect/github/babel/babel/pull/15870" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/15870/hovercard">#15870</a> Support transforming <code>import source</code> for wasm (<a href="https://snyk.io/redirect/github/nicolo-ribaudo">@ nicolo-ribaudo</a>)</li> </ul> </li> <li><code>babel-helper-module-transforms</code>, <code>babel-helpers</code>, <code>babel-plugin-proposal-import-defer</code>, <code>babel-plugin-syntax-import-defer</code>, <code>babel-plugin-transform-modules-commonjs</code>, <code>babel-runtime-corejs2</code>, <code>babel-runtime-corejs3</code>, <code>babel-runtime</code>, <code>babel-standalone</code> <ul> <li><a href="https://snyk.io/redirect/github/babel/babel/pull/15878" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/15878/hovercard">#15878</a> Implement <code>import defer</code> proposal transform support (<a href="https://snyk.io/redirect/github/nicolo-ribaudo">@ nicolo-ribaudo</a>)</li> </ul> </li> <li><code>babel-generator</code>, <code>babel-parser</code>, <code>babel-types</code> <ul> <li><a href="https://snyk.io/redirect/github/babel/babel/pull/15845" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/15845/hovercard">#15845</a> Implement <code>import defer</code> parsing support (<a href="https://snyk.io/redirect/github/nicolo-ribaudo">@ nicolo-ribaudo</a>)</li> <li><a href="https://snyk.io/redirect/github/babel/babel/pull/15829" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/15829/hovercard">#15829</a> Add parsing support for the "source phase imports" proposal (<a href="https://snyk.io/redirect/github/nicolo-ribaudo">@ nicolo-ribaudo</a>)</li> </ul> </li> <li><code>babel-generator</code>, <code>babel-helper-module-transforms</code>, <code>babel-parser</code>, <code>babel-plugin-transform-dynamic-import</code>, <code>babel-plugin-transform-modules-amd</code>, <code>babel-plugin-transform-modules-commonjs</code>, <code>babel-plugin-transform-modules-systemjs</code>, <code>babel-traverse</code>, <code>babel-types</code> <ul> <li><a href="https://snyk.io/redirect/github/babel/babel/pull/15682" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/15682/hovercard">#15682</a> Add <code>createImportExpressions</code> parser option (<a href="https://snyk.io/redirect/github/JLHwung">@ JLHwung</a>)</li> </ul> </li> <li><code>babel-standalone</code> <ul> <li><a href="https://snyk.io/redirect/github/babel/babel/pull/15671" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/15671/hovercard">#15671</a> Pass through nonce to the transformed script element (<a href="https://snyk.io/redirect/github/JLHwung">@ JLHwung</a>)</li> </ul> </li> <li><code>babel-helper-function-name</code>, <code>babel-helper-member-expression-to-functions</code>, <code>babel-helpers</code>, <code>babel-parser</code>, <code>babel-plugin-proposal-destructuring-private</code>, <code>babel-plugin-proposal-optional-chaining-assign</code>, <code>babel-plugin-syntax-optional-chaining-assign</code>, <code>babel-plugin-transform-destructuring</code>, <code>babel-plugin-transform-optional-chaining</code>, <code>babel-runtime-corejs2</code>, <code>babel-runtime-corejs3</code>, <code>babel-runtime</code>, <code>babel-standalone</code>, <code>babel-types</code> <ul> <li><a href="https://snyk.io/redirect/github/babel/babel/pull/15751" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/15751/hovercard">#15751</a> Add support for optional chain in assignments (<a href="https://snyk.io/redirect/github/nicolo-ribaudo">@ nicolo-ribaudo</a>)</li> </ul> </li> <li><code>babel-helpers</code>, <code>babel-plugin-proposal-decorators</code> <ul> <li><a href="https://snyk.io/redirect/github/babel/babel/pull/15895" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/15895/hovercard">#15895</a> Implement the "decorator metadata" proposal (<a href="https://snyk.io/redirect/github/nicolo-ribaudo">@ nicolo-ribaudo</a>)</li> </ul> </li> <li><code>babel-traverse</code>, <code>babel-types</code> <ul> <li><a href="https://snyk.io/redirect/github/babel/babel/pull/15893" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/15893/hovercard">#15893</a> Add <code>t.buildUndefinedNode</code> (<a href="https://snyk.io/redirect/github/liuxingbaoyu">@ liuxingbaoyu</a>)</li> </ul> </li> <li><code>babel-preset-typescript</code> <ul> <li><a href="https://snyk.io/redirect/github/babel/babel/pull/15913" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/15913/hovercard">#15913</a> Add <code>rewriteImportExtensions</code> option to TS preset (<a href="https://snyk.io/redirect/github/nicolo-ribaudo">@ nicolo-ribaudo</a>)</li> </ul> </li> <li><code>babel-parser</code> <ul> <li><a href="https://snyk.io/redirect/github/babel/babel/pull/15896" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/15896/hovercard">#15896</a> Allow TS tuples to have both labeled and unlabeled elements (<a href="https://snyk.io/redirect/github/yukukotani">@ yukukotani</a>)</li> </ul> </li> </ul> <h4>🐛 Bug Fix</h4> <ul> <li><code>babel-plugin-transform-block-scoping</code> <ul> <li><a href="https://snyk.io/redirect/github/babel/babel/pull/15962" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/15962/hovercard">#15962</a> fix: <code>transform-block-scoping</code> captures the variables of the method in the loop (<a href="https://snyk.io/redirect/github/liuxingbaoyu">@ liuxingbaoyu</a>)</li> </ul> </li> </ul> <h4>💅 Polish</h4> <ul> <li><code>babel-traverse</code> <ul> <li><a href="https://snyk.io/redirect/github/babel/babel/pull/15797" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/15797/hovercard">#15797</a> Expand evaluation of global built-ins in <code>@ babel/traverse</code> (<a href="https://snyk.io/redirect/github/lorenzoferre">@ lorenzoferre</a>)</li> </ul> </li> <li><code>babel-plugin-proposal-explicit-resource-management</code> <ul> <li><a href="https://snyk.io/redirect/github/babel/babel/pull/15985" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/15985/hovercard">#15985</a> Improve source maps for blocks with <code>using</code> declarations (<a href="https://snyk.io/redirect/github/nicolo-ribaudo">@ nicolo-ribaudo</a>)</li> </ul> </li> </ul> <h4>🔬 Output optimization</h4> <ul> <li><code>babel-core</code>, <code>babel-helper-module-transforms</code>, <code>babel-plugin-transform-async-to-generator</code>, <code>babel-plugin-transform-classes</code>, <code>babel-plugin-transform-dynamic-import</code>, <code>babel-plugin-transform-function-name</code>, <code>babel-plugin-transform-modules-amd</code>, <code>babel-plugin-transform-modules-commonjs</code>, <code>babel-plugin-transform-modules-umd</code>, <code>babel-plugin-transform-parameters</code>, <code>babel-plugin-transform-react-constant-elements</code>, <code>babel-plugin-transform-react-inline-elements</code>, <code>babel-plugin-transform-runtime</code>, <code>babel-plugin-transform-typescript</code>, <code>babel-preset-env</code> <ul> <li><a href="https://snyk.io/redirect/github/babel/babel/pull/15984" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/15984/hovercard">#15984</a> Inline <code>exports.XXX =</code> update in simple variable declarations (<a href="https://snyk.io/redirect/github/nicolo-ribaudo">@ nicolo-ribaudo</a>)</li> </ul> </li> </ul> <h4>Committers: 7</h4> <ul> <li>Babel Bot (<a href="https://snyk.io/redirect/github/babel-bot">@ babel-bot</a>)</li> <li>Huáng Jùnliàng (<a href="https://snyk.io/redirect/github/JLHwung">@ JLHwung</a>)</li> <li>Lorenzo Ferretti (<a href="https://snyk.io/redirect/github/lorenzoferre">@ lorenzoferre</a>)</li> <li>Nicolò Ribaudo (<a href="https://snyk.io/redirect/github/nicolo-ribaudo">@ nicolo-ribaudo</a>)</li> <li>Raj Pawan Shukla (<a href="https://snyk.io/redirect/github/RajShukla1">@ RajShukla1</a>)</li> <li>Yuku Kotani (<a href="https://snyk.io/redirect/github/yukukotani">@ yukukotani</a>)</li> <li><a href="https://snyk.io/redirect/github/liuxingbaoyu">@ liuxingbaoyu</a></li> </ul> </li> <li> <b>7.22.16</b> - <a href="https://snyk.io/redirect/github/babel/babel/releases/tag/v7.22.16">2023-09-06</a></br><h2>v7.22.16 (2023-09-06)</h2> <h4>🐛 Bug Fix</h4> <ul> <li><code>babel-parser</code> <ul> <li><a href="https://snyk.io/redirect/github/babel/babel/pull/15935" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/15935/hovercard">#15935</a> fix: <code>__esModule</code> is missing from published <code>@ babel/parser</code> (<a href="https://snyk.io/redirect/github/liuxingbaoyu">@ liuxingbaoyu</a>)</li> </ul> </li> </ul> <h4>🏠 Internal</h4> <ul> <li><code>babel-traverse</code> <ul> <li><a href="https://snyk.io/redirect/github/babel/babel/pull/15936" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/15936/hovercard">#15936</a> Skip deprecation warning tests when in a folder named <code>@ babel</code> (<a href="https://snyk.io/redirect/github/nicolo-ribaudo">@ nicolo-ribaudo</a>)</li> </ul> </li> </ul> <h4>Committers: 3</h4> <ul> <li>Huáng Jùnliàng (<a href="https://snyk.io/redirect/github/JLHwung">@ JLHwung</a>)</li> <li>Nicolò Ribaudo (<a href="https://snyk.io/redirect/github/nicolo-ribaudo">@ nicolo-ribaudo</a>)</li> <li><a href="https://snyk.io/redirect/github/liuxingbaoyu">@ liuxingbaoyu</a></li> </ul> </li> </ul> from <a href="https://snyk.io/redirect/github/babel/babel/releases">@babel/parser GitHub release notes</a> </details> <details> <summary>Package name: <b>@babel/types</b></summary> <ul> <li> <b>7.23.0</b> - <a href="https://snyk.io/redirect/github/babel/babel/releases/tag/v7.23.0">2023-09-25</a></br><h2>v7.23.0 (2023-09-25)</h2> <p>Thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/lorenzoferre/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/lorenzoferre">@ lorenzoferre</a> and <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/RajShukla1/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/RajShukla1">@ RajShukla1</a> for your first PRs!</p> <h4>🚀 New Feature</h4> <ul> <li><code>babel-plugin-proposal-import-wasm-source</code>, <code>babel-plugin-syntax-import-source</code>, <code>babel-plugin-transform-dynamic-import</code> <ul> <li><a href="https://snyk.io/redirect/github/babel/babel/pull/15870" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/15870/hovercard">#15870</a> Support transforming <code>import source</code> for wasm (<a href="https://snyk.io/redirect/github/nicolo-ribaudo">@ nicolo-ribaudo</a>)</li> </ul> </li> <li><code>babel-helper-module-transforms</code>, <code>babel-helpers</code>, <code>babel-plugin-proposal-import-defer</code>, <code>babel-plugin-syntax-import-defer</code>, <code>babel-plugin-transform-modules-commonjs</code>, <code>babel-runtime-corejs2</code>, <code>babel-runtime-corejs3</code>, <code>babel-runtime</code>, <code>babel-standalone</code> <ul> <li><a href="https://snyk.io/redirect/github/babel/babel/pull/15878" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/15878/hovercard">#15878</a> Implement <code>import defer</code> proposal transform support (<a href="https://snyk.io/redirect/github/nicolo-ribaudo">@ nicolo-ribaudo</a>)</li> </ul> </li> <li><code>babel-generator</code>, <code>babel-parser</code>, <code>babel-types</code> <ul> <li><a href="https://snyk.io/redirect/github/babel/babel/pull/15845" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/15845/hovercard">#15845</a> Implement <code>import defer</code> parsing support (<a href="https://snyk.io/redirect/github/nicolo-ribaudo">@ nicolo-ribaudo</a>)</li> <li><a href="https://snyk.io/redirect/github/babel/babel/pull/15829" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/15829/hovercard">#15829</a> Add parsing support for the "source phase imports" proposal (<a href="https://snyk.io/redirect/github/nicolo-ribaudo">@ nicolo-ribaudo</a>)</li> </ul> </li> <li><code>babel-generator</code>, <code>babel-helper-module-transforms</code>, <code>babel-parser</code>, <code>babel-plugin-transform-dynamic-import</code>, <code>babel-plugin-transform-modules-amd</code>, <code>babel-plugin-transform-modules-commonjs</code>, <code>babel-plugin-transform-modules-systemjs</code>, <code>babel-traverse</code>, <code>babel-types</code> <ul> <li><a href="https://snyk.io/redirect/github/babel/babel/pull/15682" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/15682/hovercard">#15682</a> Add <code>createImportExpressions</code> parser option (<a href="https://snyk.io/redirect/github/JLHwung">@ JLHwung</a>)</li> </ul> </li> <li><code>babel-standalone</code> <ul> <li><a href="https://snyk.io/redirect/github/babel/babel/pull/15671" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/15671/hovercard">#15671</a> Pass through nonce to the transformed script element (<a href="https://snyk.io/redirect/github/JLHwung">@ JLHwung</a>)</li> </ul> </li> <li><code>babel-helper-function-name</code>, <code>babel-helper-member-expression-to-functions</code>, <code>babel-helpers</code>, <code>babel-parser</code>, <code>babel-plugin-proposal-destructuring-private</code>, <code>babel-plugin-proposal-optional-chaining-assign</code>, <code>babel-plugin-syntax-optional-chaining-assign</code>, <code>babel-plugin-transform-destructuring</code>, <code>babel-plugin-transform-optional-chaining</code>, <code>babel-runtime-corejs2</code>, <code>babel-runtime-corejs3</code>, <code>babel-runtime</code>, <code>babel-standalone</code>, <code>babel-types</code> <ul> <li><a href="https://snyk.io/redirect/github/babel/babel/pull/15751" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/15751/hovercard">#15751</a> Add support for optional chain in assignments (<a href="https://snyk.io/redirect/github/nicolo-ribaudo">@ nicolo-ribaudo</a>)</li> </ul> </li> <li><code>babel-helpers</code>, <code>babel-plugin-proposal-decorators</code> <ul> <li><a href="https://snyk.io/redirect/github/babel/babel/pull/15895" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/15895/hovercard">#15895</a> Implement the "decorator metadata" proposal (<a href="https://snyk.io/redirect/github/nicolo-ribaudo">@ nicolo-ribaudo</a>)</li> </ul> </li> <li><code>babel-traverse</code>, <code>babel-types</code> <ul> <li><a href="https://snyk.io/redirect/github/babel/babel/pull/15893" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/15893/hovercard">#15893</a> Add <code>t.buildUndefinedNode</code> (<a href="https://snyk.io/redirect/github/liuxingbaoyu">@ liuxingbaoyu</a>)</li> </ul> </li> <li><code>babel-preset-typescript</code> <ul> <li><a href="https://snyk.io/redirect/github/babel/babel/pull/15913" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/15913/hovercard">#15913</a> Add <code>rewriteImportExtensions</code> option to TS preset (<a href="https://snyk.io/redirect/github/nicolo-ribaudo">@ nicolo-ribaudo</a>)</li> </ul> </li> <li><code>babel-parser</code> <ul> <li><a href="https://snyk.io/redirect/github/babel/babel/pull/15896" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/15896/hovercard">#15896</a> Allow TS tuples to have both labeled and unlabeled elements (<a href="https://snyk.io/redirect/github/yukukotani">@ yukukotani</a>)</li> </ul> </li> </ul> <h4>🐛 Bug Fix</h4> <ul> <li><code>babel-plugin-transform-block-scoping</code> <ul> <li><a href="https://snyk.io/redirect/github/babel/babel/pull/15962" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/15962/hovercard">#15962</a> fix: <code>transform-block-scoping</code> captures the variables of the method in the loop (<a href="https://snyk.io/redirect/github/liuxingbaoyu">@ liuxingbaoyu</a>)</li> </ul> </li> </ul> <h4>💅 Polish</h4> <ul> <li><code>babel-traverse</code> <ul> <li><a href="https://snyk.io/redirect/github/babel/babel/pull/15797" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/15797/hovercard">#15797</a> Expand evaluation of global built-ins in <code>@ babel/traverse</code> (<a href="https://snyk.io/redirect/github/lorenzoferre">@ lorenzoferre</a>)</li> </ul> </li> <li><code>babel-plugin-proposal-explicit-resource-management</code> <ul> <li><a href="https://snyk.io/redirect/github/babel/babel/pull/15985" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/15985/hovercard">#15985</a> Improve source maps for blocks with <code>using</code> declarations (<a href="https://snyk.io/redirect/github/nicolo-ribaudo">@ nicolo-ribaudo</a>)</li> </ul> </li> </ul> <h4>🔬 Output optimization</h4> <ul> <li><code>babel-core</code>, <code>babel-helper-module-transforms</code>, <code>babel-plugin-transform-async-to-generator</code>, <code>babel-plugin-transform-classes</code>, <code>babel-plugin-transform-dynamic-import</code>, <code>babel-plugin-transform-function-name</code>, <code>babel-plugin-transform-modules-amd</code>, <code>babel-plugin-transform-modules-commonjs</code>, <code>babel-plugin-transform-modules-umd</code>, <code>babel-plugin-transform-parameters</code>, <code>babel-plugin-transform-react-constant-elements</code>, <code>babel-plugin-transform-react-inline-elements</code>, <code>babel-plugin-transform-runtime</code>, <code>babel-plugin-transform-typescript</code>, <code>babel-preset-env</code> <ul> <li><a href="https://snyk.io/redirect/github/babel/babel/pull/15984" data-hovercard-type="pull_request" data-hovercard-url="/babel/babel/pull/15984/hovercard">#15984</a> Inline <code>exports.XXX =</code> update in simple variable declarations (<a href="https://snyk.io/redirect/github/nicolo-ribaudo">@ nicolo-ribaudo</a>)</li> </ul> </li> </ul> <h4>Committers: 7</h4> <ul> <li>Babel Bot (<a href="https://snyk.io/redirect/github/babel-bot">@ babel-bot</a>)</li> <li>Huáng Jùnliàng (<a href="https://snyk.io/redirect/github/JLHwung">@ JLHwung</a>)</li> <li>Lorenzo Ferretti (<a href="https://snyk.io/redirect/github/lorenzoferre">@ lorenzoferre</a>)</li> <li>Nicolò Ribaudo (<a href="https://snyk.io/redirect/github/nicolo-ribaudo">@ nicolo-ribaudo</a>)</li> <li>Raj Pawan Shukla (<a href="https://snyk.io/redirect/github/RajShukla1">@ RajShukla1</a>)</li> <li>Yuku Kotani (<a href="https://snyk.io/redirect/github/yukukotani">@ yukukotani</a>)</li> <li><a href="https://snyk.io/redirect/github/liuxingbaoyu">@ liuxingbaoyu</a></li> </ul> </li> <li> <b>7.22.19</b> - <a href="https://snyk.io/redirect/github/babel/babel/releases/tag/v7.22.19">2023-09-14</a></br><h2>v7.22.19 (2023-09-14)</h2> <p>Re-published 7.22.18, due to a releasing error.</p> </li> </ul> from <a href="https://snyk.io/redirect/github/babel/babel/releases">@babel/types GitHub release notes</a> </details> </details> <hr/> **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=eyJ3cml0ZUtleSI6InJyWmxZcEdHY2RyTHZsb0lYd0dUcVg4WkFRTnNCOUEwIiwiYW5vbnltb3VzSWQiOiJkYTdkYzgwNS0xMDczLTQxMWEtYWM1OC1mYTZjMTcyNTJjNzgiLCJldmVudCI6IlBSIHZpZXdlZCIsInByb3BlcnRpZXMiOnsicHJJZCI6ImRhN2RjODA1LTEwNzMtNDExYS1hYzU4LWZhNmMxNzI1MmM3OCJ9fQ==" width="0" height="0"/> 🧐 [View latest project report](https://app.snyk.io/org/woodpile37/project/e5e31077-489f-44c1-b24d-4af9a1a8d603?utm_source=github&utm_medium=referral&page=upgrade-pr) 🛠 [Adjust upgrade PR settings](https://app.snyk.io/org/woodpile37/project/e5e31077-489f-44c1-b24d-4af9a1a8d603/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/woodpile37/project/e5e31077-489f-44c1-b24d-4af9a1a8d603/settings/integration?pkg=@babel/parser&pkg=@babel/types&utm_source=github&utm_medium=referral&page=upgrade-pr#auto-dep-upgrades) <!--- (snyk:metadata:{"prId":"da7dc805-1073-411a-ac58-fa6c17252c78","prPublicId":"da7dc805-1073-411a-ac58-fa6c17252c78","dependencies":[{"name":"@babel/parser","from":"7.22.16","to":"7.23.0"},{"name":"@babel/types","from":"7.22.19","to":"7.23.0"}],"packageManager":"npm","type":"auto","projectUrl":"https://app.snyk.io/org/woodpile37/project/e5e31077-489f-44c1-b24d-4af9a1a8d603?utm_source=github&utm_medium=referral&page=upgrade-pr","projectPublicId":"e5e31077-489f-44c1-b24d-4af9a1a8d603","env":"prod","prType":"upgrade","vulns":[],"issuesToFix":[],"upgrade":[],"upgradeInfo":{"versionsDiff":1,"publishedDate":"2023-09-25T08:10:31.822Z"},"templateVariants":[],"hasFixes":false,"isMajorUpgrade":false,"isBreakingChange":false,"priorityScoreList":[]}) --->
Added a new parser option
createImportExpression
. When this option istrue
, the dynamic importimport(foo, options)
will be parsed asThe option defaults to
false
in Babel 7. In Babel 8 we can consider default it totrue
or materialize the option.ImportExpression
in current module transforms