Skip to content

Commit 1313b4f

Browse files
authored
Use form-based issue templates (#140)
High quality feedback via GitHub issues is a very valuable contribution to the project. It is important to make the issue creation and management process as efficient as possible for the contributors, maintainers, and developers. Issue templates are helpful to the maintainers and developers because it establishes a standardized framework for the issues and encourages the contributors to provide the essential information. The contributor is now presented with a web form when creating an issue. This consists of multi-line input fields that have the same formatting, preview, and attachment capabilities as the standard GitHub Issue composer, in addition to menus and checkboxes where appropriate. The use of this form-based system should provide a much better experience for the contributors and also result in higher quality issues by establishing a standardized framework for the issues and encouraging contributors to provide the essential information. A template chooser allows the contributor to select the appropriate template type, redirects support requests to the appropriate communication channels via "Contact Links", and provides a prominent link to security policy to guide any vulnerability disclosures. The clear separation of the types of issues encourages the reporter to fit their report into a specific issue category, resulting in more clarity. Automatic labeling according to template choice allows the reporter to do the initial classification.
1 parent 65ea06c commit 1313b4f

File tree

4 files changed

+163
-25
lines changed

4 files changed

+163
-25
lines changed

.github/ISSUE_TEMPLATE/bug-report.yml

+77
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
# Source: https://github.com/arduino/tooling-project-assets/blob/main/issue-templates/forms/platform-dependent/bug-report.yml
2+
# See: https://docs.github.com/communities/using-templates-to-encourage-useful-issues-and-pull-requests/syntax-for-issue-forms
3+
4+
name: Bug report
5+
description: Report a problem with the code or documentation in this repository.
6+
labels:
7+
- "type: imperfection"
8+
body:
9+
- type: textarea
10+
id: description
11+
attributes:
12+
label: Describe the problem
13+
validations:
14+
required: true
15+
- type: textarea
16+
id: reproduce
17+
attributes:
18+
label: To reproduce
19+
description: Provide the specific set of steps we can follow to reproduce the problem.
20+
validations:
21+
required: true
22+
- type: textarea
23+
id: expected
24+
attributes:
25+
label: Expected behavior
26+
description: What would you expect to happen after following those instructions?
27+
validations:
28+
required: true
29+
- type: input
30+
id: project-version
31+
attributes:
32+
label: Arduino Firmware Uploader version
33+
description: |
34+
Which version of Arduino Firmware Uploader are you using?
35+
(output of `arduino-fwuploader version`)
36+
_This should be the most recent version available._
37+
validations:
38+
required: true
39+
- type: dropdown
40+
id: os
41+
attributes:
42+
label: Operating system
43+
description: Which operating system(s) are you using on your computer?
44+
multiple: true
45+
options:
46+
- Windows
47+
- Linux
48+
- macOS
49+
- N/A
50+
validations:
51+
required: true
52+
- type: input
53+
id: os-version
54+
attributes:
55+
label: Operating system version
56+
description: Which version of the operating system are you using on your computer?
57+
validations:
58+
required: true
59+
- type: textarea
60+
id: additional
61+
attributes:
62+
label: Additional context
63+
description: Add any additional information here.
64+
validations:
65+
required: false
66+
- type: checkboxes
67+
id: checklist
68+
attributes:
69+
label: Issue checklist
70+
description: Please double-check that you have done each of the following things before submitting the issue.
71+
options:
72+
- label: I searched for previous reports in [the issue tracker](https://github.com/arduino/arduino-fwuploader/issues?q=)
73+
required: true
74+
- label: I verified the problem still occurs when using the latest version
75+
required: true
76+
- label: My report contains all necessary details
77+
required: true

.github/ISSUE_TEMPLATE/bug_report.md

-25
This file was deleted.

.github/ISSUE_TEMPLATE/config.yml

+14
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
# Source: https://github.com/arduino/tooling-project-assets/blob/main/issue-templates/template-choosers/general/config.yml
2+
# See: https://docs.github.com/communities/using-templates-to-encourage-useful-issues-and-pull-requests/configuring-issue-templates-for-your-repository#configuring-the-template-chooser
3+
4+
blank_issues_enabled: true
5+
contact_links:
6+
- name: Learn about using this project
7+
url: https://arduino.github.io/arduino-fwuploader/dev/
8+
about: Detailed usage documentation is available here.
9+
- name: Support request
10+
url: https://forum.arduino.cc/
11+
about: We can help you out on the Arduino Forum!
12+
- name: Discuss development work on the project
13+
url: https://groups.google.com/a/arduino.cc/g/developers
14+
about: Arduino Developers Mailing List
+72
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
# Source: https://github.com/arduino/tooling-project-assets/blob/main/issue-templates/forms/platform-dependent/bug-report.yml
2+
# See: https://docs.github.com/communities/using-templates-to-encourage-useful-issues-and-pull-requests/syntax-for-issue-forms
3+
4+
name: Feature request
5+
description: Suggest an enhancement to this project.
6+
labels:
7+
- "type: enhancement"
8+
body:
9+
- type: textarea
10+
id: description
11+
attributes:
12+
label: Describe the request
13+
validations:
14+
required: true
15+
- type: textarea
16+
id: current
17+
attributes:
18+
label: Describe the current behavior
19+
description: |
20+
What is the current behavior of Arduino Firmware Uploader in relation to your request?
21+
How can we reproduce that behavior?
22+
validations:
23+
required: true
24+
- type: input
25+
id: project-version
26+
attributes:
27+
label: Arduino Firmware Uploader version
28+
description: |
29+
Which version of Arduino Firmware Uploader are you using?
30+
(output of `arduino-fwuploader version`)
31+
_This should be the most recent version available._
32+
validations:
33+
required: true
34+
- type: dropdown
35+
id: os
36+
attributes:
37+
label: Operating system
38+
description: Which operating system(s) are you using on your computer?
39+
multiple: true
40+
options:
41+
- Windows
42+
- Linux
43+
- macOS
44+
- N/A
45+
validations:
46+
required: true
47+
- type: input
48+
id: os-version
49+
attributes:
50+
label: Operating system version
51+
description: Which version of the operating system are you using on your computer?
52+
validations:
53+
required: true
54+
- type: textarea
55+
id: additional
56+
attributes:
57+
label: Additional context
58+
description: Add any additional information here.
59+
validations:
60+
required: false
61+
- type: checkboxes
62+
id: checklist
63+
attributes:
64+
label: Issue checklist
65+
description: Please double-check that you have done each of the following things before submitting the issue.
66+
options:
67+
- label: I searched for previous requests in [the issue tracker](https://github.com/arduino/arduino-fwuploader/issues?q=)
68+
required: true
69+
- label: I verified the feature was still missing when using the latest version
70+
required: true
71+
- label: My request contains all necessary details
72+
required: true

0 commit comments

Comments
 (0)