Upgrade to GitHub issue forms.

This commit is contained in:
Sergio Benitez 2023-12-06 16:47:10 -08:00
parent 8d9dfcecad
commit 93591a87a3
8 changed files with 332 additions and 89 deletions

View File

@ -1,28 +0,0 @@
---
name: Bug Report
about: Report behavior that deviates from specification or expectation
title: ''
labels: triage
assignees: ''
---
**Description**
A clear and concise description of what the bug is. This should include links to documentation that is contradicted or an explanation of why the present functionality doesn't match your expectation.
**To Reproduce**
How to reproduce the bug. A fully working code example (`main.rs` + `Cargo.toml`) is preferred.
**Expected Behavior**
A clear and concise description of what you expected to happen.
**Environment:**
- OS Distribution and Kernel: [e.g. Arch Linux 4.16.13, macOS 11.2.1]
- Rocket Version: [e.g. 0.4.12, master@abf996b]
**Additional Context**
Add any other context about the problem here, for example, how you uncovered the bug or if you have ideas about what/where Rocket is going wrong.

133
.github/ISSUE_TEMPLATE/bug-report.yml vendored Normal file
View File

@ -0,0 +1,133 @@
name: Bug Report
description: Report a functionality issue that deviates from the documentation.
labels: ["triage"]
body:
- type: markdown
attributes:
value: >
**Thanks for taking the time to fill out this bug report!** Your report
helps make Rocket better.
Please only report issues related to _functionality_ that deviates from
published specification or reasonable expectation. Do not report issues
with documentation, infrastructure, or anything unrelated to functional
correctness here.
- type: input
attributes:
label: Rocket Version
description: >
Enter the exact version of Rocket (x.y.z) or git shorthash (8d9dfce) you're using.
Please ensure you're using the latest release before reporting a bug.
placeholder: "ex: 0.5.0"
validations:
required: true
- type: input
attributes:
label: Operating System
description: Which operating system and version are you running?
placeholder: "examples: macOS 13.6.2, Arch Linux 4.16.13"
validations:
required: true
- type: input
attributes:
label: Rust Toolchain Version
description: Which version of `rustc` are you using? (`rustc --version`)
placeholder: "ex: rustc 1.74.0 (79e9716c9 2023-11-13)"
validations:
required: true
- type: textarea
attributes:
label: What happened?
description: Provide a brief overview of what went wrong.
validations:
required: true
- type: textarea
attributes:
label: Test Case
description: >
Provide a Rocket application that elicits the bug. Ideally the program
contains a `#[test]` case using Rocket's
[`local`](https://api.rocket.rs/v0.5/rocket/local/index.html) testing
module.
placeholder: >
#[macro_use] extern crate rocket;
#[launch]
fn rocket() -> _ {
rocket::build()
}
#[test]
fn failing_test() {
use rocket::local::blocking::Client;
let client = Client::tracked(rocket()).unwrap();
let response = client.get("/").dispatch();
assert!(response.status().class().is_success());
}
render: rust
validations:
required: true
- type: textarea
attributes:
label: Log Output
description: >
Please provide the complete log output captured with
`ROCKET_LOG_LEVEL=debug` when the test case is run.
placeholder: >
ROCKET_LOG_LEVEL=debug cargo test
running 1 test
test failing_test ... FAILED
failures:
---- failing_test stdout ----
-- configuration trace information --
>> "address" parameter source: rocket::Config::default()
>> "port" parameter source: rocket::Config::default()
>> "workers" parameter source: rocket::Config::default()
>> "max_blocking" parameter source: rocket::Config::default()
>> "keep_alive" parameter source: rocket::Config::default()
>> "ident" parameter source: rocket::Config::default()
>> "ip_header" parameter source: rocket::Config::default()
>> "limits" parameter source: rocket::Config::default()
>> "temp_dir" parameter source: rocket::Config::default()
>> "log_level" parameter source: `ROCKET_` environment variable(s)
>> "shutdown" parameter source: rocket::Config::default()
>> "cli_colors" parameter source: rocket::Config::default()
🔧 Configured for debug.
>> address: 127.0.0.1
>> port: 8000
[...]
render: shell
validations:
required: true
- type: textarea
attributes:
label: Additional Context
description: >
Feel free to provide any additional context for your bug report.
- type: checkboxes
attributes:
label: System Checks
description: "Please confirm all of the following:"
options:
- label: My bug report relates to functionality.
required: true
- label: I have tested against the latest Rocket release or a recent git commit.
required: true
- label: I have tested against the latest stable `rustc` toolchain.
required: true
- label: I was unable to find this issue previously reported.
required: true

View File

@ -1,5 +1,14 @@
blank_issues_enabled: true
blank_issues_enabled: false
contact_links:
- name: Question
url: https://github.com/SergioBenitez/Rocket/discussions
about: Please ask questions or raise indefinite concerns on Discussions
- name: FAQ
url: https://rocket.rs/guide/faq/
about: Please see our FAQ for answers to common questions.
- name: Questions
url: https://github.com/rwf2/Rocket/discussions/new?category=questions
about: For other questions or help, please use GitHub discussions.
- name: Feedback
url: https://github.com/rwf2/Rocket/discussions/new/choose
about: For general chat or feedback, please use GitHub discussions.
- name: Chat
url: https://chat.mozilla.org/#/room/#rocket:mozilla.org
about: Chat with us live on rocket:mozilla.org on Matrix.

56
.github/ISSUE_TEMPLATE/doc-problem.yml vendored Normal file
View File

@ -0,0 +1,56 @@
name: Documentation Problem
description: Report an issue with or suggest documentation.
labels: ["docs"]
body:
- type: markdown
attributes:
value: >
**Thanks for taking the time to report a documentation issue!**
Documentation problems include everything from typos to missing or
incorrect technical details in any of the following:
- [Rocket's Website](https://rocket.rs/)
- [The Rocket Programming Guide](https://rocket.rs/guide/)
- [API Docs](https://api.rocket.rs)
- [Content on GitHub](https://github.com/rwf2/Rocket)
If we've written it, we want to know how it can be improved.
- type: dropdown
validations:
required: true
attributes:
label: What kind of documentation problem are you reporting?
multiple: true
options:
- Typo (PRs welcome!)
- Unclear Docs
- Undocumented Feature
- Broken Links
- Rendering Issue
- Grammar Issue
- Technical Problem
- Other
- type: input
validations:
required: true
attributes:
label: Where is the issue found?
description: Please provide a direct link to the documentation.
placeholder: "ex: https://rocket.rs/v0.5/guide/requests/#multiple-segments"
- type: textarea
validations:
required: true
attributes:
label: What's wrong?
description: >
Please describe what's wrong with the documentation.
- type: checkboxes
attributes:
label: System Checks
description: "Please confirm all of the following:"
options:
- label: I confirmed that the issue still exists on `master` on GitHub.
required: true
- label: I was unable to find a previous report of this problem.
required: true

View File

@ -1,31 +0,0 @@
---
name: Feature Request
about: Propose a change that introduces new functionality
title: ''
labels: request
assignees: ''
---
**Is your feature request motivated by a concrete problem? Please describe.**
A clear and concise description of what the problem is. Examples:
- "I frequently want to do X, but Rocket makes it hard. It would be nice if Rocket..."
- "I want to do X but Rocket makes it impossible because..."
- "Feature Z exists, but it has these drawbacks. What if..."
**Why this feature can't or shouldn't live outside of Rocket**
Rocket is designed to have a small but pluggable core. Feature requests that can be implemented outside of Rocket are typically declined. Make a case for why this feature can't or shouldn't be implemented outside of Rocket.
**Ideal Solution**
If you have an idea for a solution, propose it with a clear and concise description.
**Alternatives Considered**
A clear and concise description of any alternative solutions or features you've considered.
**Additional Context**
Add any other context here, for example, descriptions of elegant solutions in other software.

View File

@ -0,0 +1,73 @@
name: Feature Request
description: Propose a change that introduces new functionality.
labels: ["request"]
body:
- type: markdown
attributes:
value: >
**Thanks for taking the time to request a feature!** Your request helps
make Rocket better.
Please note that Rocket is designed to have a small but pluggable core.
Feature requests that can be implemented outside of Rocket _are
typically declined._ In your request, please make a strong case for why
this feature can't or shouldn't be implemented outside of Rocket.
- type: textarea
attributes:
label: What's missing?
description: >
Provide a brief overview of the functionality that's missing in Rocket
today, which problem(s) that functionality would solve for you, and what
the functionality would enable you to do.
placeholder: >
example: I frequently want to do X, but Rocket makes it hard. It would
be nice if Rocket...
example: I want to do X but Rocket makes it impossible because...
example: Feature Z exists, but it has these N drawbacks: [..]. What if...
validations:
required: true
- type: textarea
attributes:
label: Ideal Solution
description: >
If you already have an idea of how this feature can be implemented,
please describe it here. Hypothetical code examples are particularly
useful.
- type: textarea
attributes:
label: Why can't this be implemented outside of Rocket?
description: >
Please make a strong case for why this feature can't or shouldn't be
implemented outside of Rocket. We are likely to decline feature requests
that can exist outside of Rocket without compromise.
validations:
required: true
- type: textarea
attributes:
label: Are there workarounds usable today?
description: >
If the functionality being requested can be achieved today, please detail
how here.
- type: textarea
attributes:
label: Alternative Solutions
description: >
If you have other ideas about how this feature can be implemented, let
us know.
- type: textarea
attributes:
label: Additional Context
description: >
Feel free to provide any additional context for your request.
- type: checkboxes
attributes:
label: System Checks
description: "Please confirm all of the following:"
options:
- label: I do not believe that this feature can or should be implemented outside of Rocket.
required: true
- label: I was unable to find a previous request for this feature.
required: true

View File

@ -1,26 +0,0 @@
---
name: Suggestion
about: Suggest a change or improvement to existing functionality
title: ''
labels: suggestion
assignees: ''
---
**Existing Functionality**
A clear and concise description of existing functionality and why it is insufficient. Examples:
- "I frequently want to do X, but Rocket makes it hard. It would be nice if..."
- "Feature Z exists, but it has these drawbacks. What if..."
**Suggested Changes**
If you have a concrete idea for an improvement, propose it with a clear and concise description.
**Alternatives Considered**
A clear and concise description of any alternative solutions using existing features or new features you've considered.
**Additional Context**
Add any other context here, for example, descriptions of elegant solutions in other software.

57
.github/ISSUE_TEMPLATE/suggestion.yml vendored Normal file
View File

@ -0,0 +1,57 @@
name: Suggestion
description: Suggest a change or improvement to existing functionality.
labels: ["suggestion"]
body:
- type: markdown
attributes:
value: >
**Thanks for taking the time to make a suggestion!**
- type: input
validations:
required: true
attributes:
label: API Docs to Existing Functionality
description: Please provide a direct link to the API docs for the
functionality you'd like to change.
placeholder: "ex: https://api.rocket.rs/v0.5/rocket/trait.Sentinel.html"
- type: textarea
validations:
required: true
attributes:
label: Problems with Existing Functionality
description: Please let us know what you think is wrong with the existing functionality.
placeholder: >
example: Sentinels don't allow me to access `Foo`, but I'd like to because...
example: Feature Z exists, but it has these drawbacks. What if...
- type: textarea
validations:
required: true
attributes:
label: Suggested Changes
description: >
How do you propose the existing functionality be changed? Code examples
are particular useful.
- type: textarea
validations:
required: true
attributes:
label: Alternatives Considered
description: >
Instead of making a change to Rocket, please describe alternative
solutions using existing features or new features you've considered.
- type: textarea
attributes:
label: Additional Context
description: Feel free to provide any additional context for your suggestion.
- type: checkboxes
attributes:
label: System Checks
description: "Please confirm all of the following:"
options:
- label: >
I do not believe that this suggestion can or should be implemented
outside of Rocket.
required: true
- label: I was unable to find a previous suggestion for this change.
required: true