ts-node
ts-node copied to clipboard
v11 beta
v11 beta has been published to npm.
https://www.npmjs.com/package/ts-node/v/11.0.0-beta.1
npm install ts-node
will not give you the beta by default.
You must do npm install ts-node@beta
to install the beta tag.
I haven't had time to prepare release notes yet. They will accompany the v11 stable release. Until then, the commit log will have to suffice. It links to PRs which describe their changes, though their descriptions will not be as easy to read as documentation.
https://github.com/TypeStrong/ts-node/compare/v10.9.1...v11.0.0-beta.1
I just tried the beta together with SWC and it works great, thank you!
What's new in this version?
I haven't had time to prepare release notes yet. They will accompany the v11 stable release. Until then, the commit log will have to suffice. It links to PRs which describe their changes, though their descriptions will not be as easy to read as documentation.
https://github.com/TypeStrong/ts-node/compare/v10.9.1...v11.0.0-beta.1
I just tried the beta together with SWC and it works great, thank you!
I generally hate adding "me too" type comments, but I think that with a beta they have some value. I'd also run into issue with incompatibilities caused by changing swc behavior, simply upgrading from 10.9.1 to the new beta was seamless and worked perfectly. Thank you.
Works good here with regards to #2000 as well.
Works great, however when I specify moduleTypes
to override files outside of the project, like this:
"ts-node": {
"swc": true,
"transpileOnly": true,
"experimentalSpecifierResolution": "node",
"moduleTypes": {
"../**/*": "mjs"
}
}
I'm getting this error:
TypeError [Error]: Cannot destructure property 'moduleType' of 'tsNodeService.moduleTypeClassifier.classifyModuleByModuleTypeOverrides(...)' as it is undefined.
at getFormat (node_modules/ts-node/src/esm.ts:360:15)
at async node_modules/ts-node/src/esm.ts:245:11
at async addShortCircuitFlag (node_modules/ts-node/src/esm.ts:409:15)
The solution for me was to patch-package ts-node, and add a fallback for when classifyModuleByModuleTypeOverrides
returns undefined, to return {moduleType: 'esm'}
instead.
@cspotcode Would it be worth doing a sweep through the repo and remove any dead code or tech debt for v11 release? Some examples that come to mind would be:
- Bump minimum supported node.js version
- Bump minimum supported TypeScript version
- Combine
ts-node/esm
andts-node/register
into a single--import
allowed for node 20 - Review any other hard to maintain features, such as the REPL?
- Clean up configuration into
package.json
? I see some issues around extends inheritance with TypeScript. - Is including SWC support too much overhead to maintain?
- Fix
exports
to only exported the expected pieces? Remove the proxying to./dist
ints-node/transpilers
.