Skip to content

Commit a2968a1

Browse files
Create module_resolution.yml (#54633)
1 parent c565827 commit a2968a1

File tree

1 file changed

+102
-0
lines changed

1 file changed

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

0 commit comments

Comments
 (0)