Skip to content

Commit b195c94

Browse files
authored
Migrate the "Missing frames / speed related performance issues" issue template to use Github forms (flutter#134033)
Closes flutter#119921 ### Demo - Demo issue template: [Issue: My app is slow or missing frames](https://github.com/huycozy/flutter/issues/new?assignees=&labels=from%3A+performance+template&projects=&template=5_performance_speed.yml) - Demo a filed issue: huycozy#5
1 parent b7d0e8c commit b195c94

File tree

2 files changed

+172
-81
lines changed

2 files changed

+172
-81
lines changed

.github/ISSUE_TEMPLATE/5_performance_speed.md

Lines changed: 0 additions & 81 deletions
This file was deleted.
Lines changed: 172 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,172 @@
1+
name: My app is slow or missing frames
2+
description: |
3+
You are writing an application but have discovered that it is slow,
4+
you are not hitting 60Hz, or you are getting jank (missed frames).
5+
labels: 'from: performance template'
6+
body:
7+
- type: markdown
8+
attributes:
9+
value: |
10+
Thank you for using Flutter!
11+
12+
If you are looking for support, please check out our documentation
13+
or consider asking a question on Stack Overflow:
14+
15+
- https://flutter.dev/
16+
- https://api.flutter.dev/
17+
- https://stackoverflow.com/questions/tagged/flutter?sort=frequent
18+
- type: textarea
19+
attributes:
20+
label: Steps to reproduce
21+
description: Please tell us exactly how to reproduce the problem you are running into.
22+
placeholder: |
23+
1. ...
24+
2. ...
25+
3. ...
26+
validations:
27+
required: true
28+
- type: textarea
29+
attributes:
30+
label: Code sample
31+
description: |
32+
Please create a minimal reproducible sample that shows the problem and attach it below between the lines with the backticks.
33+
34+
Try to reproduce the problem in a test app. Either run `flutter create janktest` and recreate the situation you are experiencing in that app, or clone your app and delete code until you have the jank reproducing with a single `.dart` file.
35+
36+
If you need more than just a `.dart` file (for example, assets are needed to reproduce the issue, or plugins/packages are needed to reproduce the issue) then create a GitHub repository and upload code there.
37+
38+
Without this we will unlikely be able to progress on the issue, and because of that we regretfully will have to close it.
39+
40+
Note: Please do not upload screenshots of text. Instead, use code blocks or the above mentioned ways to upload your code sample.
41+
value: |
42+
<details><summary>Code sample</summary>
43+
44+
```dart
45+
[Paste your code here]
46+
```
47+
48+
</details>
49+
validations:
50+
required: true
51+
- type: checkboxes
52+
attributes:
53+
label: Performance profiling on master channel
54+
description: |
55+
Switch flutter to master channel and run this app on a physical device using profile mode with Skia tracing enabled, as follows:
56+
```console
57+
flutter channel master
58+
flutter run --profile --trace-skia
59+
```
60+
The bleeding edge master channel is encouraged here because Flutter is constantly fixing bugs and improving its performance. Your problem in an older Flutter version may have already been solved in the master channel.
61+
options:
62+
- label: The issue still persists on the master channel
63+
required: true
64+
- type: textarea
65+
attributes:
66+
label: Timeline Traces
67+
description: |
68+
Open Flutter DevTools and save a timeline trace of the performance issue so we know which functions might be causing it. See "How to Collect and Read Timeline Traces" on this blog post: https://medium.com/flutter/profiling-flutter-applications-using-the-timeline-a1a434964af3#a499
69+
70+
Make sure the performance overlay is turned OFF when recording the trace as that may affect the performance of the profile run. (Pressing ‘P’ on the command line toggles the overlay.)
71+
72+
If the trace are too large to be uploaded to GitHub, you may upload them as a `zip` file or use online tools like https://pastebin.com to share it.
73+
value: |
74+
<details><summary>Timeline Traces JSON</summary>
75+
76+
```json
77+
[Paste the Timeline Traces here]
78+
```
79+
80+
</details>
81+
validations:
82+
required: true
83+
- type: textarea
84+
attributes:
85+
label: Video demonstration
86+
description: |
87+
Record a video of the performance issue using another phone so we can have an intuitive understanding of what happened.
88+
89+
Don’t use "adb screenrecord", as that affects the performance of the profile run.
90+
value: |
91+
<details>
92+
<summary>Video demonstration</summary>
93+
94+
[Upload media here]
95+
96+
</details>
97+
- type: dropdown
98+
id: target_platforms
99+
attributes:
100+
label: What target platforms are you seeing this bug on?
101+
multiple: true
102+
options:
103+
- Android
104+
- iOS
105+
- Web
106+
- macOS
107+
- Linux
108+
- Windows
109+
validations:
110+
required: true
111+
- type: textarea
112+
attributes:
113+
label: OS/Browser name and version | Device information
114+
description: |
115+
Which target OS version is the test system running? For Web, please provide browser version.
116+
Please also include the device information (model, CPU architecture, etc).
117+
validations:
118+
required: true
119+
- type: dropdown
120+
id: device-kind
121+
attributes:
122+
label: Does the problem occur on emulator/simulator as well as on physical devices?
123+
options:
124+
- "Unknown"
125+
- "Yes"
126+
- "No"
127+
validations:
128+
required: true
129+
- type: dropdown
130+
id: enable-impeller
131+
attributes:
132+
label: Is the problem only reproducible with Impeller?
133+
description: |
134+
Please check https://docs.flutter.dev/perf/impeller as the guideline on how to enable/disable it.
135+
options:
136+
- "N/A"
137+
- "Yes"
138+
- "No"
139+
validations:
140+
required: true
141+
- type: textarea
142+
attributes:
143+
label: Logs
144+
description: |
145+
Include the full logs of the commands you are running between the lines with the backticks below. If you are running any `flutter` commands, please include the output of running them with `--verbose`; for example, the output of running `flutter --verbose create foo`.
146+
147+
If the logs are too large to be uploaded to GitHub, you may upload them as a `txt` file or use online tools like https://pastebin.com to share it.
148+
149+
Note: Please do not upload screenshots of text. Instead, use code blocks or the above mentioned ways to upload logs.
150+
value: |
151+
<details><summary>Logs</summary>
152+
153+
```console
154+
[Paste your logs here]
155+
```
156+
157+
</details>
158+
- type: textarea
159+
attributes:
160+
label: Flutter Doctor output
161+
description: |
162+
Finally, paste the output of running `flutter doctor -v` here, with your device plugged in.
163+
value: |
164+
<details><summary>Doctor output</summary>
165+
166+
```console
167+
[Paste your output here]
168+
```
169+
170+
</details>
171+
validations:
172+
required: true

0 commit comments

Comments
 (0)