From e2afc60bbcc299e09a5bf0e0c8909b6766b633a2 Mon Sep 17 00:00:00 2001 From: Hiroki Osame Date: Tue, 14 May 2024 20:18:06 +0900 Subject: [PATCH] chore: improve issue templates --- .github/ISSUE_TEMPLATE/bug-report.yml | 97 +++++---------------- .github/ISSUE_TEMPLATE/config.yml | 8 +- .github/ISSUE_TEMPLATE/feature-request.yml | 98 ---------------------- 3 files changed, 25 insertions(+), 178 deletions(-) delete mode 100644 .github/ISSUE_TEMPLATE/feature-request.yml diff --git a/.github/ISSUE_TEMPLATE/bug-report.yml b/.github/ISSUE_TEMPLATE/bug-report.yml index 66a9a2523..3ceac0b04 100644 --- a/.github/ISSUE_TEMPLATE/bug-report.yml +++ b/.github/ISSUE_TEMPLATE/bug-report.yml @@ -14,13 +14,13 @@ body: - label: I read the documentation and searched existing issues to avoid duplicates required: true - - label: I understand this is a place to report a confirmed bug (not seek debugging help) + - label: I am reporting a confirmed bug (not seek debugging help) required: true - - label: I understand this is a collaborative open source project, and relies on community contributions + - label: I understand this is a collaborative project and relies on my contributions required: true - - label: I have read and understood the [Contribution guide](https://github.com/privatenumber/tsx/blob/develop/CONTRIBUTING.md) + - label: I read and understood the [Contribution guide](https://github.com/privatenumber/tsx/blob/develop/CONTRIBUTING.md) required: true - type: markdown @@ -28,38 +28,22 @@ body: value: | ## πŸ“‹ Minimal reproduction - > [!WARNING] - > Without a minimal reproduction, your issue will be closed & locked without response. + > [!CAUTION] + > Without a **minimal** reproduction, your issue will be closed & locked without response. - The minimal reproduction is the core of your issue. Most times, this is all we read. + The minimal reproduction is the core of your issue. This is usually all we read. - Start by removing everything unncessary. Including converting TypeScript to JavaScript where possible, and removing _all_ unnecessary files & code (especially inside `node_modules`). - - Minimizing the scope of the problem will reveal the root cause. - -
- Guidelines for creating a Minimal Reproduction - - 1. **Eliminate extra files**: Limit to under 10 files. Discard non-essential files (like `LICENSE`, `.npmrc`, `.github`) and trim extraneous properties from `package.json`. - - 2. **Concentrate on the Issue**: Focus solely on the bug. Exclude unrelated frontend/backend components. If it's a TypeScript issue, convert to JavaScript for clarity. Aim for minimal lines of code in a single file. - - 3. **Configure 'start' script**: In `package.json`, ensure the `start` script clearly demonstrates the bug. - - 4. **Thorough verification**: Test the reproduction yourself. Confirm immediate reproducibility, proper dependency declarations, and absence of redundant code or files. This mirrors the maintainers' process of scrutinizing every aspect. - - 5. **Upload**: Share your minimal reproduction on [StackBlitz](https://stackblitz.com) or a new GitHub repository, ensuring it's accessible via a browser. - -
+ The first thing we'll do is scrutinize every code, file, and dependency to see how they impact the bug. If you can delete it and still produce the bug, it's not needed. **Starter Template**: [Fork this StackBlitz template](https://stackblitz.com/edit/node-huzszn?file=index.ts) + If it's not reproducible on StackBlitz, upload it to a GitHub repository and use GitHub Actions to show the error. - The more refined and concise your reproduction, the faster and more effectively maintainers can address your issue. + Please do your best to _show_ the bug rather than talking about it. This will lead to a speedy resolution. - type: input attributes: label: Minimal reproduction URL - placeholder: https://stackblitz.com/edit/... + placeholder: https://github.com/... validations: required: true @@ -69,61 +53,24 @@ body: > [!TIP] > **πŸ™‹ Need help?** Use [_Priority Support_](https://github.com/sponsors/privatenumber) for debugging help and implementation! - - type: markdown - attributes: - value: "## 🌍 Environment" - - - type: input - attributes: - label: Version - placeholder: v0.0.0 - validations: - required: true - - - type: input - attributes: - label: Node.js version - placeholder: v0.0.0 - validations: - required: true - - - type: dropdown - id: package-manager - attributes: - label: Package manager - options: - - npm - - yarn - - pnpm - - bun - - N/A - validations: - required: true - - - type: dropdown - attributes: - label: Operating system - options: - - macOS - - Windows - - Linux - validations: - required: true - - type: markdown attributes: value: | ## πŸ—’οΈ Extra information > [!IMPORTANT] - > Only fill out this section for more complex issues that require context. I only read this section after validating the reproduction. - - Let the code do the talking. Focus more on minimizing the reproduction to get to the core of the issue. + > This section is optional, and complements the reproduction. We read it after verifying the reproduction. - type: textarea attributes: label: Problem & expected behavior (under 200 words) value: | + Skip this section and let your reproduction do the talking... + + + + + But if you really need to explain, keep it under 200 words: - What happened - What I expected - Error stack trace @@ -134,15 +81,17 @@ body: attributes: value: | ## πŸ› οΈ Contribute - **Bugs are expected to be fixed by those that are affected by it.** - - Offering financial support for the engineering work will likely speed up the resolution process. - type: checkboxes attributes: - label: Contributions + label: Bugs are expected to be fixed by those affected by it options: - label: I'm interested in working on this issue + + - type: checkboxes + attributes: + label: Supporting engineering work financially will speed up resolution + options: - label: I'm willing to offer financial support - type: markdown diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml index dadbe43f8..414a32a86 100644 --- a/.github/ISSUE_TEMPLATE/config.yml +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -1,12 +1,8 @@ blank_issues_enabled: false contact_links: - - name: πŸ’¬ Help / Questions / Discussions - url: https://github.com/privatenumber/tsx/discussions - about: Use GitHub Discussions for anything else - - - name: πŸ’– Priority Support + - name: πŸ’– [Sponsors only] Feature requests / Help / Questions url: https://github.com/sponsors/privatenumber/ - about: Need help ASAP? Get prioritized help for all your questions and issues for as little as $25! + about: Need help ASAP? Get prioritized help for all your questions and issues! - name: πŸ“š Contribution guide url: https://github.com/privatenumber/tsx/blob/develop/CONTRIBUTING.md diff --git a/.github/ISSUE_TEMPLATE/feature-request.yml b/.github/ISSUE_TEMPLATE/feature-request.yml deleted file mode 100644 index 01a533fdb..000000000 --- a/.github/ISSUE_TEMPLATE/feature-request.yml +++ /dev/null @@ -1,98 +0,0 @@ -name: 🌟 Feature request -description: Have a cool idea? Let's hear it! -labels: [enhancement, pending triage] -body: - - type: markdown - attributes: - value: | - πŸ’β€β™‚οΈ This is a collaborative effort. Please be polite & considerate, and follow this form. - - - type: checkboxes - attributes: - label: Acknowledgements - options: - - label: I read the documentation and searched existing issues to avoid duplicates - required: true - - - label: I understand tsx aims for TypeScript parity and is not for arbitrary Node.js enhancements - required: true - - - label: This request cannot be made to Node.js directly, and is specific to tsx - required: true - - - label: I understand this form is not for addressing a bug or seeking help - required: true - - - label: I have read and understood the [Contribution guide](https://github.com/privatenumber/tsx/blob/develop/CONTRIBUTING.md) - required: true - - - type: markdown - attributes: - value: | - ## πŸ‘€ Tell us about your idea - - - type: textarea - attributes: - label: Feature request - description: A clear and concise description of the feature. - placeholder: | - I would love to be able to... - validations: - required: true - - - type: textarea - attributes: - label: Motivations - description: | - Describe the problem you’re addressing with this feature request. If the motivation is feature parity, provide documentation links. - placeholder: | - How did you come across this idea? - validations: - required: true - - - type: textarea - attributes: - label: Alternatives - description: | - Have you considered alternative solutions? Is there a workaround? - placeholder: | - Do you have alternative proposals? - - Are there workarounds? - - - type: textarea - attributes: - label: Additional context - description: | - Anything else to share? (e.g. screenshots & links) - - - type: markdown - attributes: - value: | - > [!TIP] - > **πŸ™‹ Need help?** Use [_Priority Support_](https://github.com/sponsors/privatenumber) for debugging help and implementation! - - - type: markdown - attributes: - value: | - ## πŸ› οΈ Contribute - **Features are expected to be worked on by those that want it.** - - Offering financial support for the engineering work will likely speed up the resolution process. - - - type: checkboxes - attributes: - label: Contributions - options: - - label: I'm interested in working on this issue - - label: I'm willing to offer financial support - - - type: markdown - attributes: - value: | - ## πŸš€ Need immediate help? - Escalate this issue by supporting the project as a [_Priority Patron_](https://github.com/sponsors/privatenumber)! - - Your concern will receive prompt attention, ensuring faster and more efficient resolution. - - [β†’ Become a _Priority Patron_!](https://github.com/sponsors/privatenumber)