From: Tim Düsterhus <t...@bastelstu.be>

GitHub's issue forms are the next evolution of issue templates and allow for
showing an actual form with separate inputs when creating an issue. They ensure
that all the required fields are filled in and automatically format code parts
(e.g. haproxy -vv or the configuration) as actual code blocks, possibly with
syntax highlighting.

Co-authored-by: Maximilian Mader <m...@bastelstu.be>
---
 .github/ISSUE_TEMPLATE/Bug.md          | 103 -----------------------
 .github/ISSUE_TEMPLATE/Bug.yml         | 108 +++++++++++++++++++++++++
 .github/ISSUE_TEMPLATE/Code-Report.md  |  55 -------------
 .github/ISSUE_TEMPLATE/Code-Report.yml |  43 ++++++++++
 .github/ISSUE_TEMPLATE/Feature.md      |  55 -------------
 .github/ISSUE_TEMPLATE/Feature.yml     |  50 ++++++++++++
 .github/ISSUE_TEMPLATE/Question.md     |  19 -----
 7 files changed, 201 insertions(+), 232 deletions(-)
 delete mode 100644 .github/ISSUE_TEMPLATE/Bug.md
 create mode 100644 .github/ISSUE_TEMPLATE/Bug.yml
 delete mode 100644 .github/ISSUE_TEMPLATE/Code-Report.md
 create mode 100644 .github/ISSUE_TEMPLATE/Code-Report.yml
 delete mode 100644 .github/ISSUE_TEMPLATE/Feature.md
 create mode 100644 .github/ISSUE_TEMPLATE/Feature.yml
 delete mode 100644 .github/ISSUE_TEMPLATE/Question.md

diff --git a/.github/ISSUE_TEMPLATE/Bug.md b/.github/ISSUE_TEMPLATE/Bug.md
deleted file mode 100644
index 038330a6c..000000000
--- a/.github/ISSUE_TEMPLATE/Bug.md
+++ /dev/null
@@ -1,103 +0,0 @@
----
-name: Bug Report
-about: Report a problem with HAProxy to help us resolve it.
-labels: 'type: bug, status: needs-triage'
----
-
-<!--
-
-Welcome! - We kindly ask that you:
-
-  1. Fill out the issue template below - not doing so needs a good reason.
-  2. Use the forum or the mailing list if you have a question rather than a 
bug or feature request.
-
-The forum is at: https://discourse.haproxy.org/
-
-The mailing list (no need to subscribe) is: haproxy@formilux.org
-Subscribe to the list: haproxy+subscr...@formilux.org
-Unsubscribe from the list: haproxy+unsubscr...@formilux.org
-
-Forum and mailing list are correct places for questions about HAProxy or 
general suggestions
-and topics, e.g. usage or documentation questions! This issue tracker is for 
tracking bugs and
-feature requests directly relating to the development of the software itself.
-
-Thanks for understanding, and for contributing to the project!
-
--->
-
-
-## Detailed description of the problem
-
-<!--
-In this section, please try to concentrate on observations. Only describe what 
you
-observed directly.
--->
-
-## Expected behavior
-
-<!--
-Explain why you consider the described behavior (above) to be wrong. What did 
you expect instead?
-
-Most likely this is a mismatch between HAProxy's documentation and HAProxy's 
behavior.
--->
-
-## Steps to reproduce the behavior
-
-<!--
-The more time you spend describing an easy way to reproduce the behavior (if
-this is possible), the easier it is for the project developers to fix it!
--->
-
-1. 
-2. 
-3. 
-
-## Do you have any idea what may have caused this?
-
-## Do you have an idea how to solve the issue?
-
-## What is your configuration?
-
-<!--
-Include as much configuration as possible, including global and default 
sections.
-Replace confidential data like domain names and IP addresses.
-
-Put it in code blocks ```:
--->
-
-```
-(paste your output here)
-```
-
-## Output of `haproxy -vv` and `uname -a`
-
-<!-- Put it in code blocks ```: -->
-
-```
-(paste your output here)
-```
-
-## If HAProxy crashed: Last outputs and backtraces
-
-<!--
-If HAProxy crashed then please provide:
-
-  1. The last output from your HAProxy logs (e.g. from journalctl or syslog).
-  2. A backtrace from a coredump (`t a a bt full`).
-
-Put all results in code blocks ```:
--->
-
-```
-(paste your output here)
-```
-
-## Additional information (if helpful)
-
-<!--
-Any additional information about your environment that may be useful to know 
about. For example:
-  - Any local patches applied.
-  - Environment specificities
-  - Unusual workload
-  - Interesting observations or coindidences with events on other components
--->
diff --git a/.github/ISSUE_TEMPLATE/Bug.yml b/.github/ISSUE_TEMPLATE/Bug.yml
new file mode 100644
index 000000000..b56ecb710
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/Bug.yml
@@ -0,0 +1,108 @@
+name: Bug Report
+description: Report a problem with HAProxy to help us resolve it.
+labels:
+- 'type: bug'
+- 'status: needs-triage'
+body:
+- type: markdown
+  attributes:
+    value: |
+      ## Welcome!
+
+      You are about to *report a bug* you encountered in HAProxy. Please use 
the 'Feature Request' template if you want to propose a new feature instead.
+
+      This issue tracker is used to track actual bugs. Please use [the 
forum](https://discourse.haproxy.org/) or mailing list if you have a question, 
e.g. to get help with building a configuration to achieve your desired behavior.
+
+      The forum is at: https://discourse.haproxy.org/
+
+      The mailing list (no need to subscribe) is: haproxy@formilux.org
+      Subscribe to the list: haproxy+subscr...@formilux.org
+      Unsubscribe from the list: haproxy+unsubscr...@formilux.org
+
+      Forum and mailing list are correct places for questions about HAProxy or 
general suggestions and topics, e.g. usage or documentation questions! This 
issue tracker is for tracking bugs and feature requests directly relating to 
the development of the software itself.
+
+      Thanks for understanding, and for contributing to the project!
+- type: textarea
+  id: description
+  attributes:
+    label: Detailed Description of the Problem
+    description: |
+      In this section, please try to concentrate on observations. Only 
describe what you observed directly.
+  validations:
+    required: true
+- type: textarea
+  id: expected-behavior
+  attributes:
+    label: Expected Behavior
+    description: |
+      Explain why you consider the described behavior (above) to be wrong. 
What did you expect instead?
+
+      Most likely this is a mismatch between HAProxy's documentation and 
HAProxy's behavior.
+  validations:
+    required: true
+- type: textarea
+  id: steps
+  attributes:
+    label: Steps to Reproduce the Behavior
+    description: |
+      The more time you spend describing an easy way to reproduce the behavior 
(if this is possible), the easier it is for the project developers to fix it!
+    placeholder: |
+      1.
+      2.
+      3.
+  validations:
+    required: true
+- type: textarea
+  id: possible-cause
+  attributes:
+    label: Do you have any idea what may have caused this?
+    description: |
+      Simply leave this empty if you do not.
+- type: textarea
+  id: possible-solution
+  attributes:
+    label: Do you have an idea how to solve the issue?
+    description: |
+      Simply leave this empty if you do not.
+- type: textarea
+  id: configuration
+  attributes:
+    label: What is your configuration?
+    description: |
+      - Include as much configuration as possible, including global and 
default sections.
+      - Replace confidential data like domain names and IP addresses.
+    render: haproxy
+  validations:
+    required: true
+- type: textarea
+  id: haproxy-vv
+  attributes:
+    label: 'Output of `haproxy -vv`'
+    description: |
+      Please run `haproxy -vv` (with two `v`) and paste the output into this 
field.
+
+      Please also include the output of `uname -a` if you use HAProxy 2.1 or 
older.
+    render: plain
+  validations:
+    required: true
+- type: textarea
+  id: last-output
+  attributes:
+    label: Last Outputs and Backtraces
+    description: |
+      If HAProxy crashed then please provide:
+
+        1. The last output from your HAProxy logs (e.g. from journalctl or 
syslog).
+        2. A backtrace from a coredump (`t a a bt full`).
+    render: plain
+- type: textarea
+  id: additional
+  attributes:
+    label: Additional Information
+    description: |
+      Any additional information about your environment that may be useful to 
know about. For example:
+
+        - Any local patches applied
+        - Environment specificities
+        - Unusual workload
+        - Interesting observations or coincidences with events on other 
components
diff --git a/.github/ISSUE_TEMPLATE/Code-Report.md 
b/.github/ISSUE_TEMPLATE/Code-Report.md
deleted file mode 100644
index d1bcd49bb..000000000
--- a/.github/ISSUE_TEMPLATE/Code-Report.md
+++ /dev/null
@@ -1,55 +0,0 @@
----
-name: Code Report
-about: File a Code Report (for example from coverity or valgrind)
-labels: 'type: code-report'
----
-
-<!--
-
-Welcome! - We kindly ask that you:
-
-  1. Fill out the issue template below - not doing so needs a good reason.
-  2. Use the forum or the mailing list if you have a question rather than a 
bug or feature request.
-
-The forum is at: https://discourse.haproxy.org/
-
-The mailing list (no need to subscribe) is: haproxy@formilux.org
-Subscribe to the list: haproxy+subscr...@formilux.org
-Unsubscribe from the list: haproxy+unsubscr...@formilux.org
-
-Forum and mailing list are correct places for questions about HAProxy or 
general suggestions
-and topics, e.g. usage or documentation questions! This issue tracker is for 
tracking bugs and
-feature requests directly relating to the development of the software itself.
-
-Thanks for understanding, and for contributing to the project!
-
--->
-
-## Code Report
-
-<!--
-In this section please provide:
-  1. Information about the tool that generated the report (e.g. 
valgrind-3.11.0 or Coverity).
-  2. Provide the full output of the tool in code blocks (```).
--->
-
-Tool: (tool name goes here)
-
-```
-(paste your output here)
-```
-
-
-## Output of `haproxy -vv` and `uname -a`
-
-<!--
-Please add the output of haproxy -vv you are currently using here, this helps 
us
-later to see what has changed in HAProxy when we revisit this issue after some
-time.
-
-Put it in code blocks ```:
--->
-
-```
-(paste your output here)
-```
diff --git a/.github/ISSUE_TEMPLATE/Code-Report.yml 
b/.github/ISSUE_TEMPLATE/Code-Report.yml
new file mode 100644
index 000000000..41d1dd6a5
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/Code-Report.yml
@@ -0,0 +1,43 @@
+name: Code Report
+description: File a Code Report (for example from coverity or valgrind)
+labels:
+- 'type: code-report'
+body:
+- type: markdown
+  attributes:
+    value: |
+      ## Welcome!
+
+      You are about to *report an issue found using an automated tool*. Please 
use the 'Bug Report' template if you encountered a regular bug.
+
+      Please use the forum or mailing list if you have a question, e.g. to get 
help with building a configuration to achieve your desired behavior.
+- type: input
+  id: tool
+  attributes:
+    label: Tool Name and Version
+    description: The name and version of the tool you used (e.g. 
valgrind-3.13.0, or Coverity)
+  validations:
+    required: true
+- type: textarea
+  id: code-report
+  attributes:
+    label: Code Report
+    description: Please provide the full output of the tool here.
+    render: plain
+  validations:
+    required: true
+- type: textarea
+  id: additional
+  attributes:
+    label: Additional Information
+    description: |
+      Any additional information about your environment (e.g. example 
configurations to trigger a memory leak).
+- type: textarea
+  id: haproxy-vv
+  attributes:
+    label: 'Output of `haproxy -vv`'
+    render: plain
+    description: |
+      Please add the output of `haproxy -vv` you are currently using here, 
this helps us later to see what has changed in HAProxy when we revisit this 
issue after some time.
+  validations:
+    required: true
diff --git a/.github/ISSUE_TEMPLATE/Feature.md 
b/.github/ISSUE_TEMPLATE/Feature.md
deleted file mode 100644
index eaaa7e5db..000000000
--- a/.github/ISSUE_TEMPLATE/Feature.md
+++ /dev/null
@@ -1,55 +0,0 @@
----
-name: Feature Request
-about: Suggest a new feature or enhancement for HAProxy.
-labels: 'type: feature'
----
-
-<!--
-
-Welcome! - We kindly ask that you:
-
-  1. Fill out the issue template below - not doing so needs a good reason.
-  2. Use the forum or the mailing list if you have a question rather than a 
bug or feature request.
-
-The forum is at: https://discourse.haproxy.org/
-
-The mailing list (no need to subscribe) is: haproxy@formilux.org
-Subscribe to the list: haproxy+subscr...@formilux.org
-Unsubscribe from the list: haproxy+unsubscr...@formilux.org
-
-Forum and mailing list are correct places for questions about HAProxy or 
general suggestions
-and topics, e.g. usage or documentation questions! This issue tracker is for 
tracking bugs and
-feature requests directly relating to the development of the software itself.
-
-Thanks for understanding, and for contributing to the project!
-
--->
-
-## What should haproxy do differently? Which functionality do you think we 
should add?
-
-<!--
-Please describe the feature you would like us to add here.
--->
-
-## What are you trying to do?
-
-<!--
-This section should contain a brief description what you're trying to do, which
-would be possible after implementing the new feature.
--->
-
-## Output of `haproxy -vv` and `uname -a`
-
-<!--
-Please add the output of haproxy -vv you are currently using here, this helps 
us
-later to see what has changed in HAProxy when we revisit this issue after some
-time.
-
-*PLEASE DO NOT LEAVE THIS OUT*
-
-Put it in code blocks ```:
--->
-
-```
-(paste your output here)
-```
diff --git a/.github/ISSUE_TEMPLATE/Feature.yml 
b/.github/ISSUE_TEMPLATE/Feature.yml
new file mode 100644
index 000000000..851525619
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/Feature.yml
@@ -0,0 +1,50 @@
+name: Feature Request
+description: Suggest a new feature or enhancement for HAProxy.
+labels:
+- 'type: feature'
+body:
+- type: markdown
+  attributes:
+    value: |
+      ## Welcome!
+
+      You are about to *request a feature* you are missing in HAProxy.
+
+      This issue tracker is used to track feature requests and bug reports. 
Please use [the forum](https://discourse.haproxy.org/) or mailing list if you 
have a question, e.g. to get help with building a configuration to achieve your 
desired behavior.
+
+      The forum is at: https://discourse.haproxy.org/
+
+      The mailing list (no need to subscribe) is: haproxy@formilux.org
+      Subscribe to the list: haproxy+subscr...@formilux.org
+      Unsubscribe from the list: haproxy+unsubscr...@formilux.org
+
+      Forum and mailing list are correct places for questions about HAProxy or 
general suggestions and topics, e.g. usage or documentation questions! This 
issue tracker is for tracking bugs and feature requests directly relating to 
the development of the software itself.
+
+      Thanks for understanding, and for contributing to the project!
+- type: textarea
+  id: feature-request
+  attributes:
+    label: Your Feature Request
+    description: |
+      What should HAProxy do differently? Which functionality do you think we 
should add? Please describe the feature you would like us to add here.
+  validations:
+    required: true
+- type: textarea
+  id: feature-explanation
+  attributes:
+    label: What are you trying to do?
+    description: |
+      This section should contain a brief description what you're trying to 
do, which would be possible after implementing the new feature.
+  validations:
+    required: true
+- type: textarea
+  id: haproxy-vv
+  attributes:
+    label: 'Output of `haproxy -vv`'
+    render: plain
+    description: >
+      Please add the output of `haproxy -vv` you are currently using here, 
this helps us later to see what has changed in HAProxy when we revisit this 
issue after some time.
+
+      Please *do not* enter "future version" or something similar. We are 
interested in the version you are *currently using*.
+  validations:
+    required: true
diff --git a/.github/ISSUE_TEMPLATE/Question.md 
b/.github/ISSUE_TEMPLATE/Question.md
deleted file mode 100644
index 99b93e6eb..000000000
--- a/.github/ISSUE_TEMPLATE/Question.md
+++ /dev/null
@@ -1,19 +0,0 @@
----
-name: Question
-about: Do NOT ask questions in the issue tracker. This issue tracker is for 
tracking bugs and feature requests directly relating to the development of the 
software itself.
-labels: 'status: invalid'
----
-
-# :stop_sign: HOLD ON :stop_sign:
-
-Do **NOT** ask questions in the issue tracker. This issue tracker is for 
tracking bugs and
-feature requests directly relating to the development of the software itself.
- 
-Use the forum or the mailing list if you have a question rather than a bug or 
feature request.
- 
-The forum is at: https://discourse.haproxy.org/
- 
-- The mailing list (no need to subscribe) is: haproxy@formilux.org
-- Subscribe to the list: haproxy+subscr...@formilux.org
-- Unsubscribe from the list: haproxy+unsubscr...@formilux.org
-
-- 
2.32.0


Reply via email to