-
Notifications
You must be signed in to change notification settings - Fork 30.6k
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
[v18.20.5 / next v20.x LTS version] NodeJS should provide some kind of warning when using import assertions as they are non-standard #55869
Comments
Adding a warning is a breaking change, and LTS lines are meant to be non-breaking. |
@redyetidev I should have clarified v18.20.4 (previous v18.x release) and v20.18.0 have a warning for both import assertions and import attributes v18.20.5 removes this warning for both cases, I believe the import assertion warning should still be around |
Oh, okay. The removal / addition of a warning is typically semver major, I wonder why it was backported. |
This is probably the cause #55333 |
Yes, likely. |
This is a bit difficult to fix, because V8 doesn't tell us which syntax is being used. Does any of the maintainers have any suggestion? |
We need to reconsider #51631 |
@aduh95 thanks for the PR, just letting you know that a v20.x version will be needed |
@alexsch01 I'm not sure why you ping me to repeat an information that's already in the OP. If you need a 20.x backport, make the PR yourself, or pay someone to do it for you (you can find support links in the README). |
my apologies |
Fixed in v20.18.3 thank you aduh95! [data.json] {"abc":"def"} [script_with.mjs] import data from './data.json' with {type: 'json'}
console.log(process.version)
console.log(data) running in node v20.18.3
{ abc: 'def' } [script_assert.mjs] import data from './data.json' assert {type: 'json'}
console.log(process.version)
console.log(data) running in node (node:1092) V8: file:///somelocation/script_assert.mjs:1 'assert' is deprecated in import statements and support will be removed in a future version; use 'with' instead
(Use `node --trace-warnings ...` to show where the warning was created)
v20.18.3
{ abc: 'def' } |
PR-URL: nodejs#55873 Fixes: nodejs#55869 Reviewed-By: Richard Lau <[email protected]>
Original commit message: [import-attributes] Deprecate 'assert' for removal in 12.6 See https://groups.google.com/a/chromium.org/g/blink-dev/c/ZHvzLaJZRvo/m/FgNDBjrtBQAJ Bug: v8:10958 Change-Id: I4d21c9f7aad1024b198b4a1cdfb4792a011da464 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5055681 Reviewed-by: Rezvan Mahdavi Hezaveh <[email protected]> Auto-Submit: Shu-yu Guo <[email protected]> Commit-Queue: Shu-yu Guo <[email protected]> Cr-Commit-Position: refs/heads/main@{#92044} Refs: v8/v8@ae5a4db Co-authored-by: Antoine du Hamel <[email protected]> PR-URL: nodejs#55873 Fixes: nodejs#55869 Reviewed-By: Richard Lau <[email protected]>
Original commit message: [import-attributes] Deprecate 'assert' for dynamic import as well Bug: v8:10958 Change-Id: I7847bdb5d2c79f057f4e1df99f8f5889788f09cb Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5249778 Commit-Queue: Shu-yu Guo <[email protected]> Reviewed-by: Leszek Swirski <[email protected]> Cr-Commit-Position: refs/heads/main@{#92123} Refs: v8/v8@26fd1df Co-authored-by: Antoine du Hamel <[email protected]> PR-URL: nodejs#55873 Fixes: nodejs#55869 Reviewed-By: Richard Lau <[email protected]>
PR-URL: #55873 Fixes: #55869 Reviewed-By: Richard Lau <[email protected]>
Original commit message: [import-attributes] Deprecate 'assert' for removal in 12.6 See https://groups.google.com/a/chromium.org/g/blink-dev/c/ZHvzLaJZRvo/m/FgNDBjrtBQAJ Bug: v8:10958 Change-Id: I4d21c9f7aad1024b198b4a1cdfb4792a011da464 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5055681 Reviewed-by: Rezvan Mahdavi Hezaveh <[email protected]> Auto-Submit: Shu-yu Guo <[email protected]> Commit-Queue: Shu-yu Guo <[email protected]> Cr-Commit-Position: refs/heads/main@{#92044} Refs: v8/v8@ae5a4db Co-authored-by: Antoine du Hamel <[email protected]> PR-URL: #55873 Fixes: #55869 Reviewed-By: Richard Lau <[email protected]>
Original commit message: [import-attributes] Deprecate 'assert' for dynamic import as well Bug: v8:10958 Change-Id: I7847bdb5d2c79f057f4e1df99f8f5889788f09cb Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5249778 Commit-Queue: Shu-yu Guo <[email protected]> Reviewed-by: Leszek Swirski <[email protected]> Cr-Commit-Position: refs/heads/main@{#92123} Refs: v8/v8@26fd1df Co-authored-by: Antoine du Hamel <[email protected]> PR-URL: #55873 Fixes: #55869 Reviewed-By: Richard Lau <[email protected]>
Clarification
v18.20.4 (previous v18.x release) and v20.18.0 have a warning for both import assertions and import attributes
v18.20.5 removes this warning for both cases, I believe the import assertion warning should still be around
Seems to be caused by #55333
Version
v18.20.5
Platform
All
Subsystem
No response
What steps will reproduce the bug?
node --input-type=module -e 'import "data:application/json,{}" assert { type: "json" }'
How often does it reproduce? Is there a required condition?
Every time
What is the expected behavior? Why is that the expected behavior?
Regarding [What steps will reproduce the bug?]
It should provide some kind of warning since import assertions (not import attributes) are non-standard
Additional information
This also applies to the next v20.x LTS version
The text was updated successfully, but these errors were encountered: