1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102
|
name: Module resolution
description: Report a problem with module resolution
title: "Module resolution:"
labels: []
body:
- type: markdown
attributes:
value: |
Module resolution can be very difficult to configure correctly!
Be sure you've read the docs and asked for help in other places before filling out this form.
Most module resolution bug reports are actually misconfigurations, so we require a thorough pre-investigation before we can look into any potential issues.
Let's make sure you're ready to file a module resolution bug.
- type: markdown
attributes:
value: |
A module resolution bug requires five things:
1. A module that's trying to import some target module
2. That target module
3. The configuration of the importing module
4. The configuration of the target module
5. A difference in runtime behavior
You will also be required to post a cloneable repository.
This repo must involve running `tsc`, not a third-party tool (e.g. vue-tsc, ngc, expo, ...)
- type: input
id: repo-url
attributes:
label: Demo Repo
description: Post a cloneable repo that reproduces the issue. We will run `npm`, `yarn`, or `pnpm` here, but will not invoke more complex build scripts or other build tools.
placeholder: https://github.com/ghost/myrepro
validations:
required: true
- type: dropdown
id: defect-kind
attributes:
label: Which of the following problems are you reporting?
options:
- The module specifier resolves at runtime, but not at build time
- The module specifier resolves at build time, but shouldn't because it doesn't at runtime
- The module specifier resolves, but to the wrong file
- The module specifier resolves to the right file, but something about the types are wrong
- Something else more complicated which I'll explain in more detail
validations:
required: true
- type: textarea
id: code-proof
attributes:
label: Demonstrate the defect described above with a code sample.
description: This should be at most four lines of code, and come from your demo repo.
placeholder: import * as foo from "./bar"; // Should not resolve
validations:
required: true
- type: textarea
id: config
attributes:
label: Run `tsc --showConfig` and paste its output here
description: Repros that depend on running within external tools (yarn, pnpm, esbuild, etc.) are not TypeScript defects and will not be investigated.
placeholder: "> tsc --showConfig"
validations:
required: true
- type: textarea
id: traceResolution
attributes:
label: Run `tsc --traceResolution` and paste its output here
description: Run `tsc --traceResolution` and paste the output here.
placeholder: "> tsc --traceResolution"
validations:
required: true
- type: textarea
id: import-package-json
attributes:
label: Paste the `package.json` of the *importing* module, if it exists
placeholder: "my_project/package.json"
validations:
required: true
- type: textarea
id: export-package-json
attributes:
label: Paste the `package.json` of the *target* module, if it exists
placeholder: "node_modules/somepkg/package.json"
validations:
required: true
- type: textarea
id: comments
attributes:
label: Any other comments can go here
placeholder: "Have a nice day!"
validations:
required: true
|