-
Notifications
You must be signed in to change notification settings - Fork 13.2k
Closed
Labels
BugA bug in TypeScriptA bug in TypeScriptFix AvailableA PR has been opened for this issueA PR has been opened for this issue
Milestone
Description
Demo Repo
https://github.com/jkrems/ts-imports-emit
Which of the following problems are you reporting?
Something else more complicated which I'll explain in more detail
Demonstrate the defect described above with a code sample.
import {indirect} from "#indirect"; // should pull the target module into the emit, just like a direct import wouldRun tsc --showConfig and paste its output here
{
"compilerOptions": {
"module": "preserve",
"moduleResolution": "bundler",
"rootDir": "./src",
"outDir": "./dist",
"esModuleInterop": true,
"allowSyntheticDefaultImports": true,
"resolvePackageJsonExports": true,
"resolvePackageJsonImports": true,
"resolveJsonModule": true
},
"files": [
"./src/main.ts"
],
"exclude": [
"/Users/jankrems/code/src/github.com/jkrems/imports-emit/dist"
]
}Run tsc --traceResolution and paste its output here
======== Resolving module './direct' from '/Users/jankrems/code/src/github.com/jkrems/imports-emit/src/main.ts'. ========
Explicitly specified module resolution kind: 'Bundler'.
Resolving in CJS mode with conditions 'import', 'types'.
Loading module as file / folder, candidate module location '/Users/jankrems/code/src/github.com/jkrems/imports-emit/src/direct', target file types: TypeScript, JavaScript, Declaration, JSON.
File '/Users/jankrems/code/src/github.com/jkrems/imports-emit/src/direct.ts' exists - use it as a name resolution result.
======== Module name './direct' was successfully resolved to '/Users/jankrems/code/src/github.com/jkrems/imports-emit/src/direct.ts'. ========
======== Resolving module '#indirect' from '/Users/jankrems/code/src/github.com/jkrems/imports-emit/src/main.ts'. ========
Explicitly specified module resolution kind: 'Bundler'.
Resolving in CJS mode with conditions 'import', 'types'.
File '/Users/jankrems/code/src/github.com/jkrems/imports-emit/src/package.json' does not exist.
Found 'package.json' at '/Users/jankrems/code/src/github.com/jkrems/imports-emit/package.json'.
Using 'imports' subpath '#indirect' with target './src/indirect.js'.
File name '/Users/jankrems/code/src/github.com/jkrems/imports-emit/src/indirect.js' has a '.js' extension - stripping it.
File '/Users/jankrems/code/src/github.com/jkrems/imports-emit/src/indirect.ts' exists - use it as a name resolution result.
'package.json' does not have a 'peerDependencies' field.
Resolving real path for '/Users/jankrems/code/src/github.com/jkrems/imports-emit/src/indirect.ts', result '/Users/jankrems/code/src/github.com/jkrems/imports-emit/src/indirect.ts'.
======== Module name '#indirect' was successfully resolved to '/Users/jankrems/code/src/github.com/jkrems/imports-emit/src/indirect.ts' with Package ID 'imports-emit/src/indirect.ts@1.0.0'. ========
======== Resolving module '@typescript/lib-es5' from '/Users/jankrems/code/src/github.com/jkrems/imports-emit/__lib_node_modules_lookup_lib.es5.d.ts__.ts'. ========
Explicitly specified module resolution kind: 'Node10'.
Loading module '@typescript/lib-es5' from 'node_modules' folder, target file types: TypeScript, Declaration.
Searching all ancestor node_modules directories for preferred extensions: TypeScript, Declaration.
Directory '/Users/jankrems/code/src/github.com/jkrems/imports-emit/node_modules/@types' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-es5'
Directory '/Users/jankrems/code/src/github.com/jkrems/node_modules' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-es5'
Directory '/Users/jankrems/code/src/github.com/node_modules' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-es5'
Directory '/Users/jankrems/code/src/node_modules' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-es5'
Directory '/Users/jankrems/code/node_modules' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-es5'
Directory '/Users/jankrems/node_modules' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-es5'
Directory '/Users/node_modules' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-es5'
Directory '/node_modules' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-es5'
Loading module '@typescript/lib-es5' from 'node_modules' folder, target file types: JavaScript.
Searching all ancestor node_modules directories for fallback extensions: JavaScript.
Directory '/Users/jankrems/code/src/github.com/jkrems/node_modules' does not exist, skipping all lookups in it.
Directory '/Users/jankrems/code/src/github.com/node_modules' does not exist, skipping all lookups in it.
Directory '/Users/jankrems/code/src/node_modules' does not exist, skipping all lookups in it.
Directory '/Users/jankrems/code/node_modules' does not exist, skipping all lookups in it.
Directory '/Users/jankrems/node_modules' does not exist, skipping all lookups in it.
Directory '/Users/node_modules' does not exist, skipping all lookups in it.
Directory '/node_modules' does not exist, skipping all lookups in it.
======== Module name '@typescript/lib-es5' was not resolved. ========
======== Resolving module '@typescript/lib-decorators' from '/Users/jankrems/code/src/github.com/jkrems/imports-emit/__lib_node_modules_lookup_lib.decorators.d.ts__.ts'. ========
Explicitly specified module resolution kind: 'Node10'.
Loading module '@typescript/lib-decorators' from 'node_modules' folder, target file types: TypeScript, Declaration.
Searching all ancestor node_modules directories for preferred extensions: TypeScript, Declaration.
Directory '/Users/jankrems/code/src/github.com/jkrems/imports-emit/node_modules/@types' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-decorators'
Directory '/Users/jankrems/code/src/github.com/jkrems/node_modules' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-decorators'
Directory '/Users/jankrems/code/src/github.com/node_modules' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-decorators'
Directory '/Users/jankrems/code/src/node_modules' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-decorators'
Directory '/Users/jankrems/code/node_modules' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-decorators'
Directory '/Users/jankrems/node_modules' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-decorators'
Directory '/Users/node_modules' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-decorators'
Directory '/node_modules' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-decorators'
Loading module '@typescript/lib-decorators' from 'node_modules' folder, target file types: JavaScript.
Searching all ancestor node_modules directories for fallback extensions: JavaScript.
Directory '/Users/jankrems/code/src/github.com/jkrems/node_modules' does not exist, skipping all lookups in it.
Directory '/Users/jankrems/code/src/github.com/node_modules' does not exist, skipping all lookups in it.
Directory '/Users/jankrems/code/src/node_modules' does not exist, skipping all lookups in it.
Directory '/Users/jankrems/code/node_modules' does not exist, skipping all lookups in it.
Directory '/Users/jankrems/node_modules' does not exist, skipping all lookups in it.
Directory '/Users/node_modules' does not exist, skipping all lookups in it.
Directory '/node_modules' does not exist, skipping all lookups in it.
======== Module name '@typescript/lib-decorators' was not resolved. ========
======== Resolving module '@typescript/lib-decorators/legacy' from '/Users/jankrems/code/src/github.com/jkrems/imports-emit/__lib_node_modules_lookup_lib.decorators.legacy.d.ts__.ts'. ========
Explicitly specified module resolution kind: 'Node10'.
Loading module '@typescript/lib-decorators/legacy' from 'node_modules' folder, target file types: TypeScript, Declaration.
Searching all ancestor node_modules directories for preferred extensions: TypeScript, Declaration.
Directory '/Users/jankrems/code/src/github.com/jkrems/imports-emit/node_modules/@types' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-decorators/legacy'
Directory '/Users/jankrems/code/src/github.com/jkrems/node_modules' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-decorators/legacy'
Directory '/Users/jankrems/code/src/github.com/node_modules' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-decorators/legacy'
Directory '/Users/jankrems/code/src/node_modules' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-decorators/legacy'
Directory '/Users/jankrems/code/node_modules' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-decorators/legacy'
Directory '/Users/jankrems/node_modules' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-decorators/legacy'
Directory '/Users/node_modules' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-decorators/legacy'
Directory '/node_modules' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-decorators/legacy'
Loading module '@typescript/lib-decorators/legacy' from 'node_modules' folder, target file types: JavaScript.
Searching all ancestor node_modules directories for fallback extensions: JavaScript.
Directory '/Users/jankrems/code/src/github.com/jkrems/node_modules' does not exist, skipping all lookups in it.
Directory '/Users/jankrems/code/src/github.com/node_modules' does not exist, skipping all lookups in it.
Directory '/Users/jankrems/code/src/node_modules' does not exist, skipping all lookups in it.
Directory '/Users/jankrems/code/node_modules' does not exist, skipping all lookups in it.
Directory '/Users/jankrems/node_modules' does not exist, skipping all lookups in it.
Directory '/Users/node_modules' does not exist, skipping all lookups in it.
Directory '/node_modules' does not exist, skipping all lookups in it.
======== Module name '@typescript/lib-decorators/legacy' was not resolved. ========
======== Resolving module '@typescript/lib-dom' from '/Users/jankrems/code/src/github.com/jkrems/imports-emit/__lib_node_modules_lookup_lib.dom.d.ts__.ts'. ========
Explicitly specified module resolution kind: 'Node10'.
Loading module '@typescript/lib-dom' from 'node_modules' folder, target file types: TypeScript, Declaration.
Searching all ancestor node_modules directories for preferred extensions: TypeScript, Declaration.
Directory '/Users/jankrems/code/src/github.com/jkrems/imports-emit/node_modules/@types' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-dom'
Directory '/Users/jankrems/code/src/github.com/jkrems/node_modules' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-dom'
Directory '/Users/jankrems/code/src/github.com/node_modules' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-dom'
Directory '/Users/jankrems/code/src/node_modules' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-dom'
Directory '/Users/jankrems/code/node_modules' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-dom'
Directory '/Users/jankrems/node_modules' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-dom'
Directory '/Users/node_modules' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-dom'
Directory '/node_modules' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-dom'
Loading module '@typescript/lib-dom' from 'node_modules' folder, target file types: JavaScript.
Searching all ancestor node_modules directories for fallback extensions: JavaScript.
Directory '/Users/jankrems/code/src/github.com/jkrems/node_modules' does not exist, skipping all lookups in it.
Directory '/Users/jankrems/code/src/github.com/node_modules' does not exist, skipping all lookups in it.
Directory '/Users/jankrems/code/src/node_modules' does not exist, skipping all lookups in it.
Directory '/Users/jankrems/code/node_modules' does not exist, skipping all lookups in it.
Directory '/Users/jankrems/node_modules' does not exist, skipping all lookups in it.
Directory '/Users/node_modules' does not exist, skipping all lookups in it.
Directory '/node_modules' does not exist, skipping all lookups in it.
======== Module name '@typescript/lib-dom' was not resolved. ========
======== Resolving module '@typescript/lib-webworker/importscripts' from '/Users/jankrems/code/src/github.com/jkrems/imports-emit/__lib_node_modules_lookup_lib.webworker.importscripts.d.ts__.ts'. ========
Explicitly specified module resolution kind: 'Node10'.
Loading module '@typescript/lib-webworker/importscripts' from 'node_modules' folder, target file types: TypeScript, Declaration.
Searching all ancestor node_modules directories for preferred extensions: TypeScript, Declaration.
Directory '/Users/jankrems/code/src/github.com/jkrems/imports-emit/node_modules/@types' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-webworker/importscripts'
Directory '/Users/jankrems/code/src/github.com/jkrems/node_modules' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-webworker/importscripts'
Directory '/Users/jankrems/code/src/github.com/node_modules' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-webworker/importscripts'
Directory '/Users/jankrems/code/src/node_modules' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-webworker/importscripts'
Directory '/Users/jankrems/code/node_modules' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-webworker/importscripts'
Directory '/Users/jankrems/node_modules' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-webworker/importscripts'
Directory '/Users/node_modules' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-webworker/importscripts'
Directory '/node_modules' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-webworker/importscripts'
Loading module '@typescript/lib-webworker/importscripts' from 'node_modules' folder, target file types: JavaScript.
Searching all ancestor node_modules directories for fallback extensions: JavaScript.
Directory '/Users/jankrems/code/src/github.com/jkrems/node_modules' does not exist, skipping all lookups in it.
Directory '/Users/jankrems/code/src/github.com/node_modules' does not exist, skipping all lookups in it.
Directory '/Users/jankrems/code/src/node_modules' does not exist, skipping all lookups in it.
Directory '/Users/jankrems/code/node_modules' does not exist, skipping all lookups in it.
Directory '/Users/jankrems/node_modules' does not exist, skipping all lookups in it.
Directory '/Users/node_modules' does not exist, skipping all lookups in it.
Directory '/node_modules' does not exist, skipping all lookups in it.
======== Module name '@typescript/lib-webworker/importscripts' was not resolved. ========
======== Resolving module '@typescript/lib-scripthost' from '/Users/jankrems/code/src/github.com/jkrems/imports-emit/__lib_node_modules_lookup_lib.scripthost.d.ts__.ts'. ========
Explicitly specified module resolution kind: 'Node10'.
Loading module '@typescript/lib-scripthost' from 'node_modules' folder, target file types: TypeScript, Declaration.
Searching all ancestor node_modules directories for preferred extensions: TypeScript, Declaration.
Directory '/Users/jankrems/code/src/github.com/jkrems/imports-emit/node_modules/@types' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-scripthost'
Directory '/Users/jankrems/code/src/github.com/jkrems/node_modules' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-scripthost'
Directory '/Users/jankrems/code/src/github.com/node_modules' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-scripthost'
Directory '/Users/jankrems/code/src/node_modules' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-scripthost'
Directory '/Users/jankrems/code/node_modules' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-scripthost'
Directory '/Users/jankrems/node_modules' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-scripthost'
Directory '/Users/node_modules' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-scripthost'
Directory '/node_modules' does not exist, skipping all lookups in it.
Scoped package detected, looking in 'typescript__lib-scripthost'
Loading module '@typescript/lib-scripthost' from 'node_modules' folder, target file types: JavaScript.
Searching all ancestor node_modules directories for fallback extensions: JavaScript.
Directory '/Users/jankrems/code/src/github.com/jkrems/node_modules' does not exist, skipping all lookups in it.
Directory '/Users/jankrems/code/src/github.com/node_modules' does not exist, skipping all lookups in it.
Directory '/Users/jankrems/code/src/node_modules' does not exist, skipping all lookups in it.
Directory '/Users/jankrems/code/node_modules' does not exist, skipping all lookups in it.
Directory '/Users/jankrems/node_modules' does not exist, skipping all lookups in it.
Directory '/Users/node_modules' does not exist, skipping all lookups in it.
Directory '/node_modules' does not exist, skipping all lookups in it.
======== Module name '@typescript/lib-scripthost' was not resolved. ========
Paste the package.json of the importing module, if it exists
{
"name": "imports-emit",
"version": "1.0.0",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"imports": {
"#indirect": "./src/indirect.js"
},
"keywords": [],
"author": "",
"license": "MIT",
"description": "",
"devDependencies": {
"typescript": "^5.5.4"
}
}Paste the package.json of the target module, if it exists
n/a
Any other comments can go here
I would expect that adding indirection via "imports": {...} would not affect the emit. But I'm not sure if that's WAI.
Metadata
Metadata
Assignees
Labels
BugA bug in TypeScriptA bug in TypeScriptFix AvailableA PR has been opened for this issueA PR has been opened for this issue