ts-node doesn't resolve extended tsconfigs if they originate from the export fields of packages
ItamarGronich opened this issue · 1 comments
Search Terms
exports, package.json, tsconfig, extends, base config
Description
While tsc works and resolves the config files from the exports fields of the packages, ts-node fails.
Expected Behavior
ts-node finds and reads extended configs from an external package when they're defined in the packageJson.exports
field.
Actual Behavior
ts-node fails to parse the config and exits with an error.
Minimal reproduction
Repro: TypeStrong/ts-node-repros#39
This setup includes two packages @tsnode-exports/main
a regular package and a @tsnode-exports/ts-config
holding just the base tsconfig file.
in package ts-config
the tsconfig file is in some internal folder and is exposed via the package.json
field: exports
In package main
we have a tsconfig with an extends
that points to that tsconfig in the ts-config
package.
Steps to reproduce the problem
- clone and checkout branch
- make sure you got the right node version (
v20.11.0
) - run
npm ci
- See how
tsc
builds successfully by runningnpm run tsc
- See how
ts-node
fails to build by runningnpm run ts-node
Specifications
- ts-node version: v10.9.2
- node version: v20.11.0
- TypeScript version: v5.4.2
- tsconfig.json, if you're using one: (in repro)
- package.json: in repro
- Operating system and version: MacOS Sonoma 14.3.1