-
-
Notifications
You must be signed in to change notification settings - Fork 532
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
remove swc experimental options #2057
Conversation
This removes support for keeping import assertions, which were broken in swc at some point, and unconditionally transpiled into import attributes. (Ie, `import/with` instead of `import/assert`.) No version of node supports import attributes with this syntax yet, so anyone using swc to import json in ESM is out of luck no matter what. And swc 1.3.83 broke the option that ts-node was using. The position of the swc project is that experimental features are not supported, and may change in patch versions without warning, making them unsafe to rely on (as evidenced here, and the reason why this behavior changed unexpectedly in the first place). Better to just not use experimental swc features, and let it remove import assertions rather than transpile them into something that node can't run. Fix: TypeStrong#2056
Codecov Report
... and 3 files with indirect coverage changes 📢 Have feedback on the report? Share it here. |
#2009 is rebased onto this, so landing that would close this as well. Happy to separate them if that's easier. |
>=`1.3.83` breaks ts-node until until TypeStrong/ts-node#2057 is merged and published. [ci skip]
>=`1.3.83` breaks ts-node until until TypeStrong/ts-node#2057 is merged and published.
This fixes a problem with running `ts-node`, turns out swc broke something and is pending a fix in TypeStrong/ts-node#2057.
This fixes a problem with running `ts-node`, turns out swc broke something and is pending a fix in TypeStrong/ts-node#2057.
This fixes a problem with running `ts-node`, turns out swc broke something and is pending a fix in TypeStrong/ts-node#2057. [ci skip]
@isaacs would it be possible to move this forward soon? |
@meabed ready to land, as far as I'm concerned. I'm not the one who needs to say yes, though. |
@wololodev - hope you well, could this get merged soon? Thank you 😄 |
This is resolved via #2062 Node mandates import assertions for json imports. |
@cspotcode The least official release of |
@cspotcode Thank you fixing and merging this fix - would it be released soon? |
This fixes a problem with running `ts-node`, turns out swc broke something and is pending a fix in TypeStrong/ts-node#2057. [ci skip]
This fixes a problem with running `ts-node`, turns out swc broke something and is pending a fix in TypeStrong/ts-node#2057. [ci skip]
This removes support for keeping import assertions, which were broken in swc at some point, and unconditionally transpiled into import attributes. (Ie,
import/with
instead ofimport/assert
.)No version of node supports import attributes with this syntax yet, so anyone using swc to import json in ESM is out of luck no matter what.
And swc 1.3.83 broke the option that ts-node was using. The position of the swc project is that experimental features are not supported, and may change in patch versions without warning, making them unsafe to rely on (as evidenced here, and the reason why this behavior changed unexpectedly in the first place).
Better to just not use experimental swc features, and let it remove import assertions rather than transpile them into something that node can't run.
Fix: #2056