Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Issue Templates #930

Open
wants to merge 7 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
75 changes: 75 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
name: "Found a Bug! 🐛"
aniculescu marked this conversation as resolved.
Show resolved Hide resolved
title: "🐛 [BUG] - <title>"
description: "Use this template to report a bug. Thank you!"
labels: ["bug"]
body:
- type: markdown
attributes:
value: |
Thanks in advance for taking the time to file this issue!
We hope this simple template will improve issue resolution time and minimize the need for _context discovery_ discussions.
______
**Note**: We encourage you to [submit an RFC](https://github.com/neon-bindings/rfcs) if you would like to propose a **design change** or a **new feature** for the Neon API or the Neon command-line tool.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why don't we add just one more category for Feature Requests and add this note to that one instead. For bug reports I don't think they'll generally need an RFC.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍 - Probably not worded great, but the intent was to say: don't use a bug template to describe a more fundamental change. I"ll add the feature_request type.

______

In addition to the `bug` label, consider adding others you might find relevant:
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This table is nice documentation for us to have somewhere, but I don't think it belongs in our issue template. I don't think we have a way to enable non-maintainers to attach labels, and I think the ROI isn't there anyway (the benefit of getting help with triage doesn't pay for the friction it adds to casually filing issues).

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good feedback, thanks. I was struggling to maintain that same ratio, ultimately I figured it's easier to cut things out than not have enough detail. Maybe the labels table is best moved to the contributing doc?

| Label | Description |
|:-----:|-------------|
| `CI` | Continuous Integration |
| `CLI` | Command Line Interface |
| `beginner friendly` | Great for those just starting out |
| `Performance` | Anything that affects performance |
| `linux` | Specific to Linux |
| `macos` | Specific to MacOS |
| `windows` | Specific to Windows |
| `android` | Specific to Android |
| `electron` | Specific to Electron apps |
- type: textarea
id: issue_summary
attributes:
label: Short Summary
description: Please provide a brief description of the issue
placeholder: "example: neon crashes when ..."
validations:
required: true
- type: textarea
id: issue_repro
attributes:
label: Steps to reproduce
description: "Help us reproduce this issue with some step-by-step instructions"
value: |
1.
2.
3.
...
validations:
required: true
- type: textarea
id: issue_fix
attributes:
label: Suggested fix
description: "If you have a proposed way to fix this bug, please summarize below. PRs work too :)"
- type: input
id: node_version
attributes:
label: "Node version: "
description: "Please specify the version of `node` you are running"
placeholder: "v18.10.0"
- type: input
id: npm_version
attributes:
label: "Node Package Manager version: "
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think "Node" here is unnecessary, just "Package Manager version" is good.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Perhaps just "Package Manager" to make space for alternate package managers (yarn, pnpm).

    attributes:
      label: "Package Manage: "
      description: "Please specify the package manager and version you are running (`npm -v`)"
      placeholder: "npm 8.19.2"

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

    attributes:
      label: "Package Manager & version: "
      description: "Please specify the package manager your are using and its version"
      placeholder: "example: npm 8.19.2"

How's this?

description: "Please specify the version of `npm` you are running"
placeholder: "8.19.2"
- type: input
id: neon_version
attributes:
label: "NEON version(s): "
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
label: "NEON version(s): "
label: "Neon version(s): "

description: "Please specify the versions of `neon` that exhibit this issue"
placeholder: "example: v0.10.0, v0.9.x"
- type: input
id: os_version_arch
attributes:
label: OS Version
description: "Please provide your OS version and Architecture"
placeholder: "example: macOS 12.5.1 Intel"
61 changes: 61 additions & 0 deletions .github/ISSUE_TEMPLATE/default_issue.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
name: New Issue
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why don't we call this "All Other Issues" or something like that, to make it really clear that it's the catch-all case.

title: Neon Issue
description: Use this template for all issues that are not bugs.
body:
- type: markdown
attributes:
value: |
Thanks in advance for taking the time to file this issue!
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's make the structure for this kind of issue report extremely minimal, so that we minimize the risk of people giving up on filing issues.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this is a good idea. Make the "other" issue nothing but an open text field.

If you think this is a 🐛 bug, please use the [bug issue template](https://github.com/neon-bindings/issues/new?assignees=&labels=&template=default_issue.yml&title=Neon+Issue).

Otherwise, please help us stay organized by selecting one or more of the following labels as applicable to your new issue.

| Label | Description |
|:-----:|-------------|
| `CI` | Continuous Integration |
| `CLI` | Command Line Interface |
| `beginner friendly` | Great for those just starting out |
| `enhancement` | For new features/design changes, use an [RFC](https://github.com/neon-bindings/rfcs) |
| `Performance` | Anything that affects performance |
| `linux` | Specific to Linux |
| `macos` | Specific to MacOS |
| `windows` | Specific to Windows |
| `android` | Specific to Android |
| `electron` | Specific to Electron apps |

---
- attributes:
description: "Please provide a brief description of the issue"
label: "Short Summary"
placeholder: "example: the issue template should be dynamically generated..."
id: issue_summary
type: textarea
validations:
required: true
- attributes:
value: "> For context, please give us some details of your setup:\n"
type: markdown
- attributes:
description: "Please specify the version of `node` you are running"
label: "Node version: "
placeholder: v18.10.0
id: node_version
type: input
- attributes:
description: "Please specify the version of `npm` you are running"
label: "Node Package Manager version: "
placeholder: "8.19.2"
id: npm_version
type: input
- attributes:
description: "Please specify the versions of `neon` that exhibit this issue"
label: "NEON version(s): "
placeholder: "example: v0.10.0, v0.9.x"
id: neon_version
type: input
- attributes:
description: "Please provide your OS version and Architecture"
label: "OS Version"
placeholder: "example: macOS 12.5.1 Intel"
id: os_version_arch
type: input
7 changes: 4 additions & 3 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,11 @@ Neon welcomes contribution from everyone. Here are some resources to help you jo

### Issue reports

We welcome issues and aim to keep the barrier low. Just [file a GitHub issue](https://github.com/neon-bindings/neon/issues)
like normal---we don't require issue templates or have any particular process.
We welcome issues and aim to keep the barrier low. For clarity and efficiency, we created two simple issue templates:
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If we add a third, then s/two/three/

- [Bug Report](https://github.com/neon-bindings/issues/new?assignees=&labels=bug&template=bug_report.yml&title=🐛+%5BBUG%5D+-+<title>)
- [General Neon Issue](https://github.com/neon-bindings/issues/new?assignees=&labels=&template=default_issue.yml&title=Neon+Issue)
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

(If we add a third, add the text here)


That said, the more information you can provide to help us reproduce your issue, the better!
The more information you can provide, the better! Thanks in advance! ❤️
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How about "The more information you can provide, the better we can help you get your issue resolved!" so we explain it explicitly in terms of how we are here to help the contributor?


### Requests For Comments

Expand Down