Skip to content

Update dependency ts-node to v10

Particify Dependency Bot requested to merge renovate/ts-node-10.x into master

This MR contains the following updates:

Package Change Age Adoption Passing Confidence
ts-node (source) 9.1.1 -> 10.2.0 age adoption passing confidence

Release Notes

TypeStrong/ts-node

v10.2.0

Compare Source

Questions about this release? Ask in the official discussion thread: #​1423

Added

  • Adds top-level await support to REPL (#​1383, #​245) @​ejose19
    • can be disabled with --no-experimental-repl-await, experimentalReplAwait, or TS_NODE_EXPERIMENTAL_REPL_AWAIT (CLI docs, API docs)
  • Setting "pretty": false disables pretty formatting of diagnostics even when stdout is a TTY (#​1418, #​1420) @​elevatebart
    • Applies to ts-node's pretty option, not to be confused with TypeScript's pretty option
  • Ignores diagnostics which are annoying in an interactive REPL (#​1396, #​1120, #​729, #​850, #​469)
    • For example, when you input const foo = 1 in the REPL, foo is unused. We ignore the resulting diagnostic foo is declared but its value is never read
    • Diagnostics are only ignored in the REPL
    • Diagnostics for non-REPL files imported by the REPL will still be shown
  • Logged stack traces are colorized to match vanilla node's behavior (#​1412, #​1405)

Fixed

https://github.com/TypeStrong/ts-node/milestone/2

v10.1.0

Compare Source

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" and tsconfig.json "module"
    • akin to .cjs and .mjs extensions, but for .ts and .tsx files
    • thanks to @​jayaddison for help on test coverage
  • Implement "extends" support for "ts-node" options in tsconfig.json (#​1328, #​1356)
    • "ts-node": {} options will be parsed from extended tsconfigs
    • allows sharing and deduplicating ts-node configuration
  • Un-deprecate scope and scopeDir; add both to CLI and tsconfig.json options; un-deprecate TS_NODE_SCOPE env var; add TS_NODE_SCOPE_DIR env 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 --showConfig output 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, module and sub-fields of module, exports, and builtin module aliases fs, etc
  • Fix #​1343: Set swc option keepClassNames to true (#​1344)
  • Fix: #​1387: REPL outputs 'use strict' after first empty line of input (#​1388) @​ejose19

Docs

  • Update ESM docs to say that env vars are supported with node --loader ts-node/esm (docs) (#​1379)

https://github.com/TypeStrong/ts-node/milestone/3

v10.0.0

Compare Source

Questions about this release? Ask in the official discussion thread: #​1337

Breaking changes are prefixed with [BREAKING]

Added

Changed

  • [BREAKING] Make --script-mode default behavior; resolve tsconfig relative to entrypoint script instead of cwd (#​949, #​1197, #​1155)
    • In most cases this change will have no noticeable effect
    • Primarily benefits portable shell scripts on your $PATH, because ts-node will respect the script's local tsconfig.json
    • Use --cwd-mode or ts-node-cwd if you need legacy behavior
  • [BREAKING] ignore rules evaluate relative to tsconfig.json directory, otherwise cwd (#​1155)
  • [BREAKING] Remove support for node 10. Minimum supported version is node 12 (#​1312)
  • Rename --dir to --cwd; rename TS_NODE_DIR to TS_NODE_CWD (#​1155)
    • --dir and TS_NODE_DIR are deprecated but still parsed for backwards-compatibility
    • --dir effectively changed the working directory of ts-node; renaming makes this behavior more obvious

Deprecated

Removed

  • [BREAKING] Internal APIs removed from type declarations (#​1242)
    • Removed DEFAULTS, normalizeSlashes, parse, split
    • No features were removed
    • This will only affect consumers of ts-node's programmatic API

Fixed

  • [BREAKING] Fix #​1229 and #​1235: always throw ERR_REQUIRE_ESM when attempting to execute ESM as CJS, even when not using --loader ts-node/esm (#​1232)
    • This aligns our behavior with vanilla node
  • [BREAKING] Fix #​1225: compiler is loaded relative to tsconfig.json instead of entrypoint script (#​1155)
    • In most cases this change will have no noticable effect
  • Fix #​1217: REPL not always using passed stdout and stderr (#​1224)
  • Fix #​1220: ts-node ./index may execute the wrong file extension because tsconfig search poisons the require.resolve cache (#​1155)
  • Fix #​1322: Sourcemaps fail for filenames with spaces or other characters which are percent-encoded in URLs (#​1160, #​1330)
  • Fix #​1331: Resolution of node builtin modules in ESM loader fails on node >=12.20.0, <13 (#​1332)

Docs

https://github.com/TypeStrong/ts-node/milestone/1


Configuration

📅 Schedule: At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever MR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this MR and you won't be reminded about this update again.


  • If you want to rebase/retry this MR, check this box.

This MR has been generated by Renovate Bot.

Edited by Particify Dependency Bot

Merge request reports