Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork2.8k
chore: replace issue templates with issue forms#4897
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to ourterms of service andprivacy statement. We’ll occasionally send you account related emails.
Already on GitHub?Sign in to your account
Merged
Uh oh!
There was an error while loading.Please reload this page.
Merged
Changes fromall commits
Commits
Show all changes
8 commits Select commitHold shift + click to select a range
b85aa23
chore: replace issue templates with issue forms
bradzacher43ff997
chore: address comments and rework a bunch of stuff
bradzacher7add25e
chore: titles
bradzacher7c3a9dc
Update 6-bug-report-other.yaml
bradzacher8217f85
Update 5-documentation-request.yml
bradzacherb21e4c1
Update .github/ISSUE_TEMPLATE/1-bug-report-plugin.yaml
bradzacher837719f
Update 1-bug-report-plugin.yaml
bradzachera048cc4
Merge branch 'main' into issue-forms
bradzacherFile filter
Filter by extension
Conversations
Failed to load comments.
Loading
Uh oh!
There was an error while loading.Please reload this page.
Jump to
Jump to file
Failed to load files.
Loading
Uh oh!
There was an error while loading.Please reload this page.
Diff view
Diff view
There are no files selected for viewing
107 changes: 107 additions & 0 deletions.github/ISSUE_TEMPLATE/1-bug-report-plugin.yaml
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,107 @@ | ||
name: "🐛 Report a Bug With a Rule" | ||
description: "Report a bug you encountered with a lint rule" | ||
title: "Bug: [rule name here] <short description of the issue>" | ||
labels: | ||
- bug | ||
- "package: eslint-plugin" | ||
- triage | ||
body: | ||
- type: checkboxes | ||
id: sanity-checks | ||
attributes: | ||
label: Before You File a Bug Report Please Confirm You Have Done The Following... | ||
description: If any of these required steps are not taken, we may not be able to review your issue. Help us to help you! | ||
options: | ||
- label: I have tried restarting my IDE and the issue persists. | ||
required: true | ||
- label: I have updated to the latest version of the packages. | ||
required: true | ||
- label: I have [searched for related issues](https://github.com/typescript-eslint/typescript-eslint/issues?q=is%3Aissue+label%3Abug+label%3A%22package%3A+eslint-plugin%22) and found none that matched my issue. | ||
required: true | ||
- label: I have [read the FAQ](https://typescript-eslint.io/docs/linting/troubleshooting) and my problem is not listed. | ||
required: true | ||
- type: input | ||
id: playground-link | ||
attributes: | ||
label: Playground Link | ||
description: | | ||
Link to an isolated reproduction [in our online playground](https://typescript-eslint.io/play/). | ||
If either of the following holds true: | ||
- You can't reproduce the issue in the playground | ||
- Your issue requires some complex setup - such as multiple files or a specific folder structure. | ||
***Please do not use this template.*** Instead, select the | ||
["Report a complex bug you encountered by providing an isolated reproduction repository" template](https://github.com/typescript-eslint/typescript-eslint/issues/new?template=7-bug-report-complex.yaml). | ||
placeholder: https://typescript-eslint.io/play/... | ||
validations: | ||
required: true | ||
- type: textarea | ||
id: repro-code | ||
attributes: | ||
label: Repro Code | ||
description: A ***minimal*** code sample which reproduces the issue | ||
render: typescript | ||
validations: | ||
required: true | ||
- type: textarea | ||
id: eslint-config | ||
attributes: | ||
label: ESLint Config | ||
description: A ***minimal*** ESLint config for reproducing the issue | ||
render: javascript | ||
value: | | ||
module.exports = { | ||
parser: "@typescript-eslint/parser", | ||
rules: { | ||
"@typescript-eslint/<rule-name>": ["error", ...<options>], | ||
}, | ||
}; | ||
validations: | ||
required: true | ||
- type: textarea | ||
id: typescript-config | ||
attributes: | ||
label: tsconfig | ||
description: (Optional) A ***minimal*** tsconfig for reproducing the issue, if you're using type-aware linting | ||
render: jsonc | ||
value: | | ||
{ | ||
"compilerOptions": { | ||
// ... | ||
} | ||
} | ||
- type: textarea | ||
id: expected | ||
attributes: | ||
label: Expected Result | ||
description: What did you expect to happen? Please be specific here - list the exact lines and messages you expect. | ||
placeholder: I expected that the 3rd line should report the error "foo bar"... | ||
validations: | ||
required: true | ||
- type: textarea | ||
id: actual | ||
attributes: | ||
label: Actual Result | ||
description: What actually happened? Please be specific here - list the exact lines and messages that caused errors. | ||
placeholder: There was no error on the 3rd line... | ||
validations: | ||
required: true | ||
- type: textarea | ||
id: additional | ||
attributes: | ||
label: Additional Info | ||
description: Any additional info you'd like to provide. If ESLint threw an exception, please run your lint again with the `--debug` flag, and dump the output below. e.g. `eslint --ext ".ts,.js" src --debug` | ||
- type: textarea | ||
id: versions | ||
attributes: | ||
label: Versions | ||
value: | | ||
| package | version | | ||
| -------------------------------------- | ------- | | ||
| `@typescript-eslint/eslint-plugin` | `X.Y.Z` | | ||
| `@typescript-eslint/parser` | `X.Y.Z` | | ||
| `TypeScript` | `X.Y.Z` | | ||
| `ESLint` | `X.Y.Z` | | ||
| `node` | `X.Y.Z` | | ||
validations: | ||
required: true |
68 changes: 68 additions & 0 deletions.github/ISSUE_TEMPLATE/2-enhancement-rule-option.yaml
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,68 @@ | ||
name: "✨ Propose a New Rule Option or Additional Checks" | ||
description: "Propose a new lint rule option or propose that a lint rule checks more cases" | ||
title: "Enhancement: [rule-name] <a short description of my proposal>" | ||
labels: | ||
- "enhancement: plugin rule option" | ||
- "package: eslint-plugin" | ||
- triage | ||
body: | ||
- type: checkboxes | ||
id: sanity-checks | ||
attributes: | ||
label: Before You File a Proposal Please Confirm You Have Done The Following... | ||
description: If any of these required steps are not taken, we may not be able to review your issue. Help us to help you! | ||
options: | ||
- label: I have [searched for related issues](https://github.com/typescript-eslint/typescript-eslint/issues?q=is%3Aissue+label%3A%22enhancement%3A+plugin+rule+option%22) and found none that match my proposal. | ||
required: true | ||
- label: I have searched the [current rule list](https://typescript-eslint.io/rules/#supported-rules) and found no rules that match my proposal. | ||
required: true | ||
- label: I have [read the FAQ](https://typescript-eslint.io/docs/linting/troubleshooting) and my problem is not listed. | ||
required: true | ||
- type: checkboxes | ||
id: rule-fits-the-brief | ||
attributes: | ||
label: My proposal is suitable for this project | ||
options: | ||
- label: I believe my proposal would be useful to the broader TypeScript community (meaning it is not a niche proposal). | ||
required: true | ||
- type: input | ||
id: base-rule | ||
attributes: | ||
label: Link to the rule's documentation | ||
description: Please provide the link to the rule's documentation | ||
placeholder: https://typescript-eslint.io/rules/... | ||
validations: | ||
required: true | ||
- type: textarea | ||
id: description | ||
attributes: | ||
label: Description | ||
description: Explain what your proposal would do and why this is useful. | ||
placeholder: I propose that the foo rule should also check for when bars are force to be a baz. | ||
validations: | ||
required: true | ||
- type: textarea | ||
id: fail-cases | ||
attributes: | ||
label: Fail | ||
description: Specify an example of code that should be detected and errored on. | ||
render: typescript | ||
value: | | ||
var replace = 'me'; | ||
validations: | ||
required: true | ||
- type: textarea | ||
id: pass-cases | ||
attributes: | ||
label: Pass | ||
description: Specify an example of code that would be accepted in its place | ||
render: typescript | ||
value: | | ||
const replace = 'me'; | ||
validations: | ||
required: true | ||
- type: textarea | ||
id: additional | ||
attributes: | ||
label: Additional Info | ||
description: Any additional info you'd like to provide. |
70 changes: 70 additions & 0 deletions.github/ISSUE_TEMPLATE/3-enhancement-new-rule.yaml
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,70 @@ | ||
name: "✨ Propose a New Rule" | ||
description: "Propose a new lint rule" | ||
title: "Rule proposal: <a short description of my proposal>" | ||
labels: | ||
- "enhancement: new plugin rule" | ||
- "package: eslint-plugin" | ||
- triage | ||
body: | ||
- type: checkboxes | ||
id: sanity-checks | ||
attributes: | ||
label: Before You File a Proposal Please Confirm You Have Done The Following... | ||
description: If any of these required steps are not taken, we may not be able to review your issue. Help us to help you! | ||
options: | ||
- label: I have [searched for related issues](https://github.com/typescript-eslint/typescript-eslint/issues?q=is%3Aissue+label%3A%22enhancement%3A+new+plugin+rule%22) and found none that match my proposal. | ||
required: true | ||
- label: I have searched the [current rule list](https://typescript-eslint.io/rules/#supported-rules) and found no rules that match my proposal. | ||
required: true | ||
- label: I have [read the FAQ](https://typescript-eslint.io/docs/linting/troubleshooting) and my problem is not listed. | ||
required: true | ||
- type: checkboxes | ||
id: rule-fits-the-brief | ||
attributes: | ||
label: My proposal is suitable for this project | ||
options: | ||
- label: My proposal specifically checks TypeScript syntax, or it proposes a check that requires type information to be accurate. | ||
required: true | ||
- label: My proposal is not a "formatting rule"; meaning it does not just enforce how code is formatted (whitespace, brace placement, etc). | ||
required: true | ||
- label: I believe my proposal would be useful to the broader TypeScript community (meaning it is not a niche proposal). | ||
required: true | ||
- type: markdown | ||
id: suggestion-go-elsewhere | ||
attributes: | ||
value: | | ||
If you answered no to one or more of the above, then your rule *likely* doesn't belong in this project, and will *likely* be rejected. | ||
That doesn't mean your proposal isn't useful! It just means you should consider either proposing it to another project (like [eslint-plugin-unicorn](https://github.com/sindresorhus/eslint-plugin-unicorn)), or publishing it in a new plugin. | ||
- type: textarea | ||
id: description | ||
attributes: | ||
label: Description | ||
description: Explain what your proposed rule would do and why this is useful. | ||
placeholder: My rule would check that things of type foo are not assigned to bars. | ||
validations: | ||
required: true | ||
- type: textarea | ||
id: fail-cases | ||
attributes: | ||
label: Fail Cases | ||
description: Specify an example of code that should be detected and errored on. | ||
render: typescript | ||
value: | | ||
var replace = 'me'; | ||
validations: | ||
required: true | ||
- type: textarea | ||
id: pass-cases | ||
attributes: | ||
label: Pass Cases | ||
description: Specify an example of code that would be accepted in its place | ||
render: typescript | ||
value: | | ||
const replace = 'me'; | ||
validations: | ||
required: true | ||
- type: textarea | ||
id: additional | ||
attributes: | ||
label: Additional Info | ||
description: Any additional info you'd like to provide. |
77 changes: 77 additions & 0 deletions.github/ISSUE_TEMPLATE/4-enhancement-new-base-rule-extension.yaml
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,77 @@ | ||
name: "✨ Propose a New Base Rule Extension" | ||
description: "Propose a new base lint rule extension" | ||
title: "Base rule extension: [rule-name] <a short description of my proposal>" | ||
labels: | ||
- "enhancement: new base rule extension" | ||
- "package: eslint-plugin" | ||
- triage | ||
body: | ||
- type: markdown | ||
id: preamble | ||
attributes: | ||
value: | | ||
# What is a "Base Rule Extension"? | ||
In some cases, ESLint provides a rule itself, but it doesn't support TypeScript syntax; either it crashes, or it ignores the syntax, or it falsely reports against it. | ||
In these cases, we create what we call an extension rule; a rule within our plugin that has the same functionality, but also supports TypeScript. | ||
- type: checkboxes | ||
id: sanity-checks | ||
attributes: | ||
label: Before You File a Proposal Please Confirm You Have Done The Following... | ||
description: If any of these required steps are not taken, we may not be able to review your issue. Help us to help you! | ||
options: | ||
- label: I have [searched for related issues](https://github.com/typescript-eslint/typescript-eslint/issues?q=is%3Aissue+label%3A%22enhancement%3A+new+base+rule+extension%22) and found none that match my proposal. | ||
required: true | ||
- label: I have searched the [current extension rule list](https://typescript-eslint.io/rules/#extension-rules) and found no rules that match my proposal. | ||
required: true | ||
- label: I have [read the FAQ](https://typescript-eslint.io/docs/linting/troubleshooting) and my problem is not listed. | ||
required: true | ||
- type: checkboxes | ||
id: rule-fits-the-brief | ||
attributes: | ||
label: My proposal is suitable for this project | ||
options: | ||
- label: My proposal specifically checks TypeScript syntax, or it proposes a check that requires type information to be accurate. | ||
required: true | ||
- label: I believe my proposal would be useful to the broader TypeScript community (meaning it is not a niche proposal). | ||
required: true | ||
- type: input | ||
id: base-rule | ||
attributes: | ||
label: Link to the base rule | ||
description: Please provide the link to the base rule's documentation | ||
placeholder: https://eslint.org/docs/rules/... | ||
validations: | ||
required: true | ||
- type: textarea | ||
id: description | ||
attributes: | ||
label: Description | ||
description: Explain what your proposed extension rule would do and why this is useful. | ||
placeholder: I propose that we extend the foo rule so that it supports TypeScript's bar feature. | ||
validations: | ||
required: true | ||
- type: textarea | ||
id: fail-cases | ||
attributes: | ||
label: Fail | ||
description: Specify an example of code that should be detected and errored on. | ||
render: typescript | ||
value: | | ||
var replace = 'me'; | ||
validations: | ||
required: true | ||
- type: textarea | ||
id: pass-cases | ||
attributes: | ||
label: Pass | ||
description: Specify an example of code that would be accepted in its place | ||
render: typescript | ||
value: | | ||
const replace = 'me'; | ||
validations: | ||
required: true | ||
- type: textarea | ||
id: additional | ||
attributes: | ||
label: Additional Info | ||
description: Any additional info you'd like to provide. |
32 changes: 32 additions & 0 deletions.github/ISSUE_TEMPLATE/5-documentation-request.yml
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,32 @@ | ||
name: "📝 Documentation Request" | ||
description: "Request a change in documentation" | ||
title: "Docs: <a short description of my proposal>" | ||
labels: | ||
- documentation | ||
- triage | ||
body: | ||
- type: checkboxes | ||
id: sanity-checks | ||
attributes: | ||
label: Before You File a Documentation Request Please Confirm You Have Done The Following... | ||
options: | ||
- label: I have looked for existing [open or closed documentation requests](https://github.com/typescript-eslint/typescript-eslint/issues?q=is%3Aissue+label%3Adocumentation) that match my proposal. | ||
required: true | ||
- label: I have [read the FAQ](https://typescript-eslint.io/docs/linting/troubleshooting) and my problem is not listed. | ||
required: true | ||
- type: markdown | ||
attributes: | ||
value: | | ||
If your request is for help, not documentation, please ask on [StackOverflow](https://stackoverflow.com/questions/tagged/typescript-eslint) | ||
- type: textarea | ||
attributes: | ||
label: Suggested Changes | ||
description: What would you like to see happen in the docs? | ||
validations: | ||
required: true | ||
- type: textarea | ||
attributes: | ||
label: Affected URL(s) | ||
description: Which URL(s) on the website does this CRUD? | ||
validations: | ||
required: true |
Oops, something went wrong.
Uh oh!
There was an error while loading.Please reload this page.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.