Skip to content

Releases: TypeStrong/ts-node

Fix `tsconfig.json` file not found

08 Dec 12:06
057ac1b
Compare
Choose a tag to compare

Fixed

  • Fixed tsconfig.json file not found on latest TypeScript version (#2091)

v10.9.1

14 Jul 02:45
Compare
Choose a tag to compare

Fixed

  • Workaround nodejs bug introduced in 18.6.0 (#1838) @cspotcode
    • Only affects projects on node >=18.6.0 using --esm
    • Older versions of node and projects without --esm are unaffected

v10.9.0...v10.9.1
https://github.com/TypeStrong/ts-node/milestone/18?closed=1

v10.9.0

13 Jul 23:35
Compare
Choose a tag to compare

Added

  • --project accepts path to a directory containing a tsconfig.json (#1829, #1830) @cspotcode
    • previously it required an explicit filename
  • Added helpful error message when swc version is too old to support our configuration (#1802) @cspotcode
  • Added experimentalTsImportSpecifiers option which allows using voluntary .ts file extensions in import specifiers (undocumented except for API docs) (#1815) @cspotcode

Fixed

  • Fixed bug where child_process.fork() would erroneously execute the parent's entrypoint script, not the intended child script (#1812, #1814) @devversion
  • Fixed support for jsx modes "react-jsx" and "react-jsxdev" in swc transpiler (#1800, #1802) @cspotcode
  • Fixed support for import assertions in swc transpiler (#1817, #1802) @cspotcode
  • Fixed bug where calling repl.evalCode() with code not ending in a newline would not update the typechecker accordingly (#1764, #1824) @cspotcode

v10.8.2...v10.9.0
https://github.com/TypeStrong/ts-node/milestone/16?closed=1

v10.8.2

02 Jul 17:58
Compare
Choose a tag to compare

Fixed

  • Revert "Use file URL for source map paths" (#1821) @cspotcode
    • Fixes #1790: ts-node 10.8.1 regression where nyc code coverage reports had incorrect paths
    • Fixes #1797: ts-node 10.8.1 regression where breakpoints did not hit in VSCode debugging
  • Allow JSON imports in node 16.15 and up (#1792) @queengooborg
    • JSON imports were already supported in v17.5 and up
    • this change extends support to >=16.15.0,<17.0.0
    • These version ranges match vanilla node's support for JSON imports

v10.8.1...v10.8.2
https://github.com/TypeStrong/ts-node/milestone/15?closed=1

v10.8.1

03 Jun 18:19
Compare
Choose a tag to compare

Fixed

  • Fixed #1769: source URLs in source map cache were malformed on Windows, affecting code coverage reports (#1769, #1771) @PaperStrike
  • Fixed #1778: typechecker was erronously resolving imports from ESM files as if they were from CJS files (#1778, #1782) @cspotcode

v10.8.0...v10.8.1
https://github.com/TypeStrong/ts-node/milestone/14

v10.8.0

21 May 18:21
Compare
Choose a tag to compare

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

Added

  • Added support for module=NodeNext, module=Node16, .mts, .cts, .mjs, and .cjs file extensions (#1414, #1694, #1744, #1745, #1727, #1717, #1753, #1757) @cspotcode
  • Added ability to include file extensions in CommonJS imports (#1727, #1753) @cspotcode
    • Enables consistency with ESM, where file extensions are often mandatory
  • Resolves from emitted to source file extensions (#1727, #1753) @cspotcode
    • Must enable experimentalResolver, will be enabled by default in a future version (docs)
    • Typechecker requires importing the emitted file extension; ts-node resolves correctly to the source file. E.g. import "./foo.js" will execute foo.ts See also: TypeScript issue #37582
    • If typechecking is disabled, you can also use source file extensions. E.g. import "./foo.ts"
  • Added experimentalSpecifierResolution (#1727, #1753) @cspotcode
    • the same as Node's --experimental-specifier-resolution (Node docs)
    • can also be specified in tsconfig.json for convenience, to avoid the CLI flag
    • allows omitting file extensions in ESM imports, plus a few other CommonJS-style conveniences
  • Adds diagnostics property to TSError, with array of TypeScript diagnostic objects from the compiler (API docs) (#1705, #1706) @paulbrimicombe

Changed

  • Renames option experimentalResolverFeatures to experimentalResolver (docs) (#1727) @cspotcode
  • Internal change to ESM loader for compatibility with forthcoming node versions: returns shortCircuit: true (#1714, #1715) @cspotcode
  • Performance: Optimize filesystem stat calls in ESM loader and new CommonJS resolver (#1758, #1759) @cspotcode
  • Performance, maintenance: Upgrade source-mapper dependency "@cspotcode/source-map-support"
    • Switches to "trace-mapping" for underlying source-map parsing (#1729) @cspotcode

Fixed

  • Fixed bug where REPL .type command was not showing any type information when using TypeScript nightly builds (#1761, #1762) @cspotcode
  • Correctly suppress "Custom ESM Loaders" warning on newer node versions where the warning's prose changed (#1701) @cspotcode
  • Fixed REPL bug where function signatures could not be entered across multiple lines (#1667, #1677) @d9k
  • REPL treats unparenthesized object literals as objects, instead of as block scopes (#1697, #1699) @jhmaster2000
  • Fixed bug where preferTsExts combined with third-party transpiler hooks could disrupt nyc code coverage (#1755) @cspotcode
  • Fixed bug where file:// URLs in stack traces did not always use percent-encoding (#1738, #1726, #1729) @cspotcode
  • Fixed bug where v8-compile-cache-lib did not correctly unhook itself (#1717, #1718, #1719) @cspotcode
    • This internal dependency is used to speed up loading the TypeScript compiler

Docs

v10.7.0...v10.8.0
https://github.com/TypeStrong/ts-node/milestone/12

v10.7.0

06 Mar 04:25
Compare
Choose a tag to compare

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

Added

  • Adds --esm flag, option, and ts-node-esm binary (#1258, #1655)
    • Enables full esm support; no need for --loader nor NODE_OPTIONS
    • Use shebang #!/usr/bin/env ts-node-esm, run ts-node --esm, or add to your tsconfig.json: "ts-node": {"esm": true}

Changed

  • Unflag ESM json modules on node >=17.5.0 (#1661, #1665) @Jamesernator
    • no longer requires --experimental-json-modules
  • Lazy-load dependencies to improve startup responsiveness. (#1676)

Fixed

  • Fixed bug where "compiler", "transpiler", and swc backend would not resolve relative to the tsconfig.json that declared them (#1662, #1655)
    • Enables reusable tsconfig.json shared via node module to include necessary dependencies

v10.6.0...v10.7.0
https://github.com/TypeStrong/ts-node/milestone/11

v10.6.0

01 Mar 17:05
Compare
Choose a tag to compare

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

Added

  • Adds workaround for extensionless entrypoints with ESM loader (#1649, #1654)
    • You can now combine tools such as mocha with --loader ts-node/esm, where previously node would throw [ERR_UNKNOWN_FILE_EXTENSION]
    • node has a bug where combining --loader with an extensionless entrypoint causes this error nodejs/node#33226
    • Some tools, for example mocha, have an extensionless entrypoint. (source, source)
    • Combining NODE_OPTIONS=--loader ts-node/esm with these tools causes this error. mochajs/mocha#4645
    • node intends to fix this bug in a future release: nodejs/node#41711
    • In the interim, we have implemented a workaround in ts-node.
  • Adds support for target "ES2022" in moduleTypes overrides (#1650)

Fixed

  • Fixed bug where --swc and other third-party transpilers did not respect moduleTypes overrides (#1651, #1652, #1660)
  • Fixed bug where node flags were not preserved correctly in process.execArgv (#1657, #1658)
    • This affected child_process.fork(), since it uses process.execArgv to create a similar child runtime.
    • With this fix, child_process.fork() will preserve both node flags and ts-node hooks.
  • Fixed compatibility TypeScript 4.7's API changes (#1647, #1648)

v10.5.0...v10.6.0
https://github.com/TypeStrong/ts-node/milestone/9

v10.5.0

07 Feb 15:59
Compare
Choose a tag to compare

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

Added

  • Eliminate "Emit Skipped" errors (#693, #1345, #1629)
    • Avoids all "Emit Skipped" errors by performing a fallback transpileOnly-style transformation.
    • Does not affect typechecking. Type errors are still detected and thrown.
    • Fallback has the same limitations as isolatedModules. This will only affect rare cases such as using const enums with preserveConstEnums disabled.
    • Fixes #693
  • Graduate swc transpiler out of experimental; add swc: true convenience option (docs) (#1487, #1536, #1613, #1627)
    • "swc": true or --swc will use swc for faster execution
    • This feature is no longer marked "experimental." Thank you to everyone who filed bugs!
  • swc transpiler attempts to load @swc/core or @swc/wasm dependencies from your project before falling-back to global installations (#1613, #1627)
    • global fallback only occurs when using a global installation of ts-node
  • Add support for TypeScript's traceResolution output (docs) (#1128, #1491) @TheUnlocked
  • Support import assertions in ESM loader (docs) (#1557, #1558, #1559, #1573) @Pokute, @geigerzaehler
    • Allows importing JSON files from ESM with the requisite flag (docs)
  • ts-node -vvv also logs absolute paths to ts-node and typescript, to make it more obvious when you're accidentally using globally-installed versions (#1323, #1620)
  • Add swc target "es2022" (#1535, #1540)
    • When you have target es2022 in tsconfig, will use swc's es2022 target

Changed

  • Initialize TypeScript compiler before starting REPL prompt (#1498) @TheUnlocked
    • Improves responsiveness for first line of REPL input
  • Use v8-compile-cache-lib to load typescript
  • Support both --camelCase and --hyphen-case for all CLI flags; update documentation to use --camelCase (#1598, #1599)
    • Not a breaking change; CLI continues to accept both forms
  • Make TSError diagnosticText property non-enumerable to prevent it from being logged below the stack (#1632)

Fixed

  • Fix #1538: REPL inputs fail to transpile via swc (#1538, #1541, #1602)
  • Fix #1478: REPL erroneously logged undefined for all inputs after the first when using swc transpiler (#1478, #1580, #1602)
  • Fix #1389: In --showConfig output, emit accurate moduleTypes paths resolved relative to the tsconfig.json which declared them (#1389, #1619)
  • Fix: Remove indentation from ts-node --help output (#1597, #1600)
  • Fix #1425: Merged definitions correctly into tsconfig.schemastore-schema.json (#1425, #1618)
  • Fix: Allow disabling "use strict" emit in SWC transpiler (#1531, #1537)
  • Fix: Add missing ERR_UNKNOWN_FILE_EXTENSION constructor; was throwing ERR_UNKNOWN_FILE_EXTENSION is not a constructor (#1562) @bluelovers
  • Fix #1565: entrypoint resolution failed on node v12.0.x and v12.1.x (#1565, #1566) @davidmurdoch

Docs

Misc

  • Adds experimental experimentalResolverFeatures option, but it does not do anything yet (#1514, #1614)

v10.4.0...v10.5.0
https://github.com/TypeStrong/ts-node/milestone/4

v10.4.0

22 Oct 19:23
Compare
Choose a tag to compare

Added

  • Adds support for targets "es2020" and "es2021" to swc transpiler (#1521)
  • Adds automatic target downgrade when using older versions of swc (#1521)
    • If tsconfig specifies es2020, but your version of swc only supports up to es2019, ts-node will automatically switch to es2019 instead of throwing an error

Changed

Fixed

v10.3.1...v10.4.0
https://github.com/TypeStrong/ts-node/milestone/8

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy