v10.1.0
Questions about this release? Ask in the official discussion thread: #1390
Added
- Add
"moduleType"option to override module type -- CommonJS or ECMAScript -- on select files. (docs) (#1342, #1371, #1376)- Useful when a configuration file, for example
webpack.config.ts, must execute as CommonJS but the rest of the project is ESM - selectively overrides
package.json"type"andtsconfig.json"module" - akin to
.cjsand.mjsextensions, but for.tsand.tsxfiles - thanks to @jayaddison for help on test coverage
- Useful when a configuration file, for example
- Implement
"extends"support for"ts-node"options intsconfig.json(#1328, #1356)"ts-node": {}options will be parsed from extended tsconfigs- allows sharing and deduplicating ts-node configuration
- Un-deprecate
scopeandscopeDir; add both to CLI andtsconfig.jsonoptions; un-deprecateTS_NODE_SCOPEenv var; addTS_NODE_SCOPE_DIRenv var (docs) (#1346, #1367)
Changed
- Improve error messages thrown by native ESM loader hooks (#1357, #1373) @tars0x9752
- messages more closely match node; are more descriptive
- Emit
"ts-node"object at the top of--showConfigoutput instead of the bottom (#1355)
Fixed
- Fix #1282: Set correct globals in
[stdin],[eval], and<repl>contexts (#1333)- More closely align ts-node's behavior with vanilla node
- Affects the interactive REPL, piping to stdin, and
ts-node -e - Matches node's behavior for globals
__filename,__dirname,moduleand sub-fields ofmodule,exports, and builtin module aliasesfs, etc
- Fix #1343: Set swc option
keepClassNamestotrue(#1344) - Fix: #1387: REPL outputs 'use strict' after first empty line of input (#1388) @ejose19
Docs
v10.0.0...v10.1.0
https://github.com/TypeStrong/ts-node/milestone/3