Skip to content

Commit 2f68b6e

Browse files
committed
meta: add common issue templates
- General bug - ICE - Regression - Feature request The motivation here is to nudge issue reporters to include enough info + reproducer so issues are more likely to be actionable on first-open instead of needing to manually nudge the reporter for additional info / reproducer as frequently.
1 parent fcbe767 commit 2f68b6e

4 files changed

Lines changed: 247 additions & 0 deletions

File tree

.github/ISSUE_TEMPLATE/bug.md

Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
---
2+
name: General rustfmt bug Report
3+
about: Create a general bug report for rustfmt. Prefer more specialized issue templates if applicable.
4+
labels: C-bug
5+
---
6+
<!--
7+
Thank you for filing a bug report! 🐛 Please provide a short summary of the bug,
8+
along with any information you feel relevant to replicating the bug.
9+
-->
10+
11+
## Summary
12+
13+
<!--
14+
Please include a reproducer for the bug you are describing.
15+
If possible, try to provide a Minimal, Complete and Verifiable example.
16+
You can read "Rust Bug Minimization Patterns" for how to create smaller examples.
17+
http://blog.pnkfx.org/blog/2019/11/18/rust-bug-minimization-patterns/
18+
-->
19+
20+
I tried to format this code:
21+
22+
```rust
23+
<code>
24+
```
25+
26+
### Expected behavior
27+
28+
I expected to see this happen: *explanation*
29+
30+
### Actual behavior
31+
32+
Instead, this happened: *explanation*
33+
34+
35+
## Configuration
36+
37+
<!--
38+
Include any CLI options used, and include the configuration file (e.g.
39+
`rustfmt.toml`).
40+
-->
41+
42+
`rustfmt` cli options used (if applicable):
43+
44+
```bash
45+
$ <rustfmt_options>
46+
```
47+
48+
`rustfmt` configuration file (e.g. `rustfmt.toml`, if applicable):
49+
50+
```md
51+
<configuration_file>
52+
```
53+
54+
55+
## Reproduction Steps
56+
57+
<!-- Include any steps that might be needed to reproduce this behavior -->
58+
59+
1. ...
60+
61+
62+
## Meta
63+
<!--
64+
If you're using the stable version of rustfmt, you should also check if the
65+
bug also exists in the beta or nightly versions.
66+
-->
67+
68+
`rustfmt --version`:
69+
```
70+
<version>
71+
```
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
---
2+
name: Feature Request
3+
about: Create a feature request for rustfmt.
4+
labels: C-feature-request
5+
---
6+
<!--
7+
Please note that rustfmt's core scope is to pretty-print a parsed program's AST
8+
according to the rules defined in the Rust Style Guide. Supporting this function
9+
and its associated maintenance takes top priority. Any other features, such as
10+
auxiliary formatting configuration options, are secondary to that core mission.
11+
-->
12+
13+
## Feature Request
14+
15+
### Summary
16+
17+
<!-- Please summarize what feature you are requesting. -->
18+
19+
### Motivation
20+
21+
<!--
22+
- Can you say more on why this feature would be desirable to the wider Rust
23+
community as well?
24+
- Can you give example snippets to demonstrate the difference between having
25+
and not having the proposed feature?
26+
-->
27+
28+
### Related configuration options
29+
30+
<!--
31+
- Are there stable/unstable formatting configuration options related to this
32+
feature request?
33+
-->

.github/ISSUE_TEMPLATE/ice.md

Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
---
2+
name: rustfmt Internal Compiler Error (ICE)
3+
about: Create a report for an internal compiler error in rustfmt.
4+
labels: C-bug, I-ICE
5+
title: "[ICE]: "
6+
---
7+
<!--
8+
Thank you for finding an Internal Compiler Error! 🧊 If possible, try to provide
9+
a Minimal, Complete and Verifiable example. You can read "Rust Bug Minimization
10+
Patterns" for how to create smaller examples.
11+
http://blog.pnkfx.org/blog/2019/11/18/rust-bug-minimization-patterns/
12+
-->
13+
14+
## Code
15+
16+
```Rust
17+
<code>
18+
```
19+
20+
21+
## Configuration
22+
23+
<!--
24+
Include any CLI options used, and include the configuration file (e.g.
25+
`rustfmt.toml`).
26+
-->
27+
28+
`rustfmt` cli options used (if applicable):
29+
30+
```bash
31+
$ <rustfmt_options>
32+
```
33+
34+
`rustfmt` configuration file (e.g. `rustfmt.toml`, if applicable):
35+
36+
```md
37+
<configuration_file>
38+
```
39+
40+
41+
## Reproduction Steps
42+
43+
<!-- Include any steps that might be needed to reproduce this behavior -->
44+
45+
1. ...
46+
47+
48+
## Meta
49+
<!--
50+
If you're using the stable version of rustfmt, you should also check if the
51+
bug also exists in the beta or nightly versions.
52+
-->
53+
54+
`rustfmt --version`:
55+
```
56+
<version>
57+
```
58+
59+
60+
## Error output
61+
62+
```
63+
<output>
64+
```
65+
66+
<!--
67+
Include a backtrace in the code block below.
68+
-->
69+
<details><summary><strong>Backtrace</strong></summary>
70+
<p>
71+
72+
```
73+
<backtrace>
74+
```
75+
76+
</p>
77+
</details>
Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
---
2+
name: Regression
3+
about: Report something that unexpectedly changed between rustfmt versions.
4+
labels: C-bug, regression-untriaged
5+
---
6+
<!--
7+
Thank you for filing a regression report! 🐛 A regression is something that changed between
8+
versions of rustfmt but was not supposed to.
9+
10+
Please provide a short summary of the regression, along with any information you
11+
feel is relevant to replicate it.
12+
-->
13+
14+
## Summary
15+
16+
<!--
17+
Please include a reproducer for the bug you are describing.
18+
If possible, try to provide a Minimal, Complete and Verifiable example.
19+
You can read "Rust Bug Minimization Patterns" for how to create smaller examples.
20+
http://blog.pnkfx.org/blog/2019/11/18/rust-bug-minimization-patterns/
21+
-->
22+
23+
I tried to format this code:
24+
25+
```rust
26+
<code>
27+
```
28+
29+
### Expected behavior
30+
31+
I expected to see this happen: *explanation*
32+
33+
### Actual behavior
34+
35+
Instead, this happened: *explanation*
36+
37+
38+
## Meta
39+
40+
### Version it worked on
41+
42+
<!--
43+
Provide the most recent version this worked on, for example:
44+
45+
It most recently worked on: Rust 1.47
46+
-->
47+
48+
It most recently worked on: <!-- version -->
49+
50+
### Version with regression
51+
52+
<!--
53+
Provide the version you are using that has the regression.
54+
-->
55+
56+
`rustc --version --verbose`:
57+
```
58+
<version>
59+
```
60+
61+
<!--
62+
If you know when this regression occurred, please add a line like below, replacing `{channel}`
63+
with one of stable, beta, or nightly.
64+
65+
@rustbot modify labels: +regression-from-stable-to-{channel} -regression-untriaged
66+
-->

0 commit comments

Comments
 (0)