Skip to content

Commit 32285d9

Browse files
Convert issue templates to issue forms (#55153)
Co-authored-by: Jake Bailey <[email protected]>
1 parent 36ac4eb commit 32285d9

File tree

9 files changed

+239
-195
lines changed

9 files changed

+239
-195
lines changed

.github/ISSUE_TEMPLATE/Bug_report.md

Lines changed: 0 additions & 73 deletions
This file was deleted.

.github/ISSUE_TEMPLATE/Feature_request.md

Lines changed: 0 additions & 61 deletions
This file was deleted.

.github/ISSUE_TEMPLATE/bug_report.yml

Lines changed: 90 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,90 @@
1+
name: "Bug report"
2+
description: "Create a report to help us improve TypeScript"
3+
body:
4+
- type: markdown
5+
attributes:
6+
value: Please fill in each section completely. Thank you!
7+
- type: textarea
8+
id: search_terms
9+
attributes:
10+
label: "🔎 Search Terms"
11+
description: |
12+
What search terms did you use when trying to find an existing bug report?
13+
14+
List them here so people in the future can find this one more easily.
15+
validations:
16+
required: true
17+
- type: textarea
18+
id: version_info
19+
attributes:
20+
label: "🕗 Version & Regression Information"
21+
description: |
22+
When did you start seeing this bug occur?
23+
24+
"Bugs" that have existed in TS for a long time are very likely to be FAQs; refer to
25+
https://github.com/Microsoft/TypeScript/wiki/FAQ#common-bugs-that-arent-bugs
26+
27+
28+
If possible, please try testing the nightly version of TS to see if it's already been fixed. For npm: `typescript@next`
29+
30+
This is also the 'Nightly' version in the playground: http://www.typescriptlang.org/play/?ts=Nightly
31+
32+
33+
Note: The TypeScript Playground can be used to try older versions of TypeScript.
34+
35+
Please keep and fill in the line that best applies.
36+
value: |
37+
- This is a crash
38+
- This changed between versions ______ and _______
39+
- This is the behavior in every version I tried, and I reviewed the FAQ for entries about _________
40+
- I was unable to test this on prior versions because _______
41+
validations:
42+
required: true
43+
- type: input
44+
id: playground_link
45+
attributes:
46+
label: ⏯ Playground Link
47+
description: |
48+
A link to a TypeScript Playground "Share" link which shows this behavior.
49+
50+
This should have the same code as the code snippet below, and use whichever settings are relevant to your report.
51+
52+
53+
As a last resort, you can link to a repo, but these will be slower for us to investigate.
54+
placeholder: "Playground link with relevant code: https://www.typescriptlang.org/play?#code/PTAEFkE9QYwewCYFNQHM5IM6gBZIE5JA"
55+
validations:
56+
required: false
57+
- type: textarea
58+
id: code
59+
attributes:
60+
label: 💻 Code
61+
description: |
62+
Please post the relevant code sample here as well.
63+
This code and the Playground code should be the same, do not use separate examples.
64+
65+
We can quickly address your report if:
66+
67+
- The code sample is short. Nearly all TypeScript bugs can be demonstrated in 20-30 lines of code!
68+
- It doesn't use external libraries. These are often issues with the type definitions rather than TypeScript bugs.
69+
- The incorrectness of the behavior is readily apparent from reading the sample.
70+
71+
Reports are slower to investigate if:
72+
- We have to pare too much extraneous code.
73+
- We have to clone a large repo and validate that the problem isn't elsewhere.
74+
- The sample is confusing or doesn't clearly demonstrate what's wrong.
75+
validations:
76+
required: false
77+
- type: textarea
78+
id: actual_behavior
79+
attributes:
80+
label: 🙁 Actual behavior
81+
description: "What happened, and why it was wrong."
82+
validations:
83+
required: true
84+
- type: textarea
85+
id: expected_behavior
86+
attributes:
87+
label: 🙂 Expected behavior
88+
description: What you expected to happen instead, and why
89+
validations:
90+
required: true
Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
name: "Feature request"
2+
description: "Suggest an idea"
3+
body:
4+
- type: markdown
5+
attributes:
6+
value: "Please fill in each section completely. Thank you!"
7+
- type: textarea
8+
id: search_terms
9+
attributes:
10+
label: "🔍 Search Terms"
11+
description: |
12+
💡 Did you know? TypeScript has over 2,000 open suggestions!
13+
14+
🔎 Please search thoroughly before logging new feature requests as most common ideas already have a proposal in progress.
15+
16+
The "Common Feature Requests" section of the FAQ lists many popular requests: https://github.com/Microsoft/TypeScript/wiki/FAQ#common-feature-requests
17+
placeholder: |
18+
List of keywords you searched for before creating this issue.
19+
Write them down here so that others can find this suggestion more easily and help provide feedback.
20+
validations:
21+
required: true
22+
- type: checkboxes
23+
id: viability_checklist
24+
attributes:
25+
label: "✅ Viability Checklist"
26+
description: |
27+
Suggestions that don't meet all these criteria are very, very unlikely to be accepted.
28+
We always recommend reviewing the TypeScript design goals before investing time writing
29+
a proposal for ideas outside the scope of the project.
30+
31+
My suggestion meets the following guidelines.
32+
options:
33+
- label: This wouldn't be a breaking change in existing TypeScript/JavaScript code
34+
required: true
35+
- label: This wouldn't change the runtime behavior of existing JavaScript code
36+
required: true
37+
- label: This could be implemented without emitting different JS based on the types of the expressions
38+
required: true
39+
- label: This isn't a runtime feature (e.g. library functionality, non-ECMAScript syntax with JavaScript output, new syntax sugar for JS, etc.)
40+
required: true
41+
- label: "This feature would agree with the rest of our Design Goals: https://github.com/Microsoft/TypeScript/wiki/TypeScript-Design-Goals"
42+
required: true
43+
- type: textarea
44+
id: suggestion_summary
45+
attributes:
46+
label: "⭐ Suggestion"
47+
description: "A summary of what you'd like to see added or changed"
48+
validations:
49+
required: true
50+
- type: textarea
51+
id: motivating_example
52+
attributes:
53+
label: "📃 Motivating Example"
54+
description: |
55+
If you were announcing this feature in a blog post, what's a short
56+
explanation that shows a developer why this feature improves the language?
57+
validations:
58+
required: true
59+
- type: textarea
60+
id: use_cases
61+
attributes:
62+
label: "💻 Use Cases"
63+
value: |
64+
1. What do you want to use this for?
65+
2. What shortcomings exist with current approaches?
66+
3. What workarounds are you using in the meantime?
67+
validations:
68+
required: true

.github/ISSUE_TEMPLATE/lib_change.md

Lines changed: 0 additions & 58 deletions
This file was deleted.

0 commit comments

Comments
 (0)