diff --git a/.github/DISCUSSION_TEMPLATE/ideas.yml b/.github/DISCUSSION_TEMPLATE/ideas.yml new file mode 100644 index 000000000..6c5bb251e --- /dev/null +++ b/.github/DISCUSSION_TEMPLATE/ideas.yml @@ -0,0 +1,72 @@ +labels: ["enhancement"] +body: + - type: markdown + attributes: + value: | + Thanks for suggesting a new feature! Help us understand your proposal by providing detailed information. + + - type: textarea + attributes: + label: Feature Description + description: Provide a clear and concise description of the feature you'd like + placeholder: I would like webpack to support... + validations: + required: true + + - type: textarea + attributes: + label: Goals + description: What problems would this feature solve? + value: | + 1. + 2. + 3. + validations: + required: true + + - type: textarea + attributes: + label: Current Behavior + description: How does webpack currently handle this use case? + placeholder: Currently, webpack requires users to... + validations: + required: true + + - type: textarea + attributes: + label: Proposed Solution + description: How should this feature work? Include API examples if applicable + placeholder: | + I propose adding a new option: + ```js + module.exports = { + newFeature: { + enabled: true + } + } + ``` + validations: + required: true + + - type: textarea + attributes: + label: Alternatives Considered + description: What other solutions have you considered? + placeholder: | + - Using plugin X, but it doesn't support Y + - Writing custom loader, but it's too complex + - Current workaround using... + validations: + required: false + + - type: textarea + attributes: + label: Use Cases + description: Provide specific examples of how this feature would be used + placeholder: | + This would be useful for: + - Projects that need to... + - When building applications with... + - Teams that want to... + validations: + required: true diff --git a/.github/DISCUSSION_TEMPLATE/other.yml b/.github/DISCUSSION_TEMPLATE/other.yml new file mode 100644 index 000000000..08cec9b6b --- /dev/null +++ b/.github/DISCUSSION_TEMPLATE/other.yml @@ -0,0 +1,23 @@ +labels: ["discussion"] +body: + - type: markdown + attributes: + value: | + This template is for general discussions that don't fit into Q&A or Ideas categories. + + For bug reports, please use the [issue tracker](https://github.com/webpack/webpack/issues/new/choose). + For questions and help, consider using the [Q&A category](https://github.com/webpack/webpack/discussions/categories/q-a). + + - type: textarea + attributes: + label: Context + description: Share your thoughts or any relevant background + placeholder: What would you like to discuss? + validations: + required: false + + - type: input + attributes: + label: webpack version + description: What version of webpack are you using? + placeholder: "5.89.0" diff --git a/.github/DISCUSSION_TEMPLATE/q-a.yml b/.github/DISCUSSION_TEMPLATE/q-a.yml new file mode 100644 index 000000000..69395d1e5 --- /dev/null +++ b/.github/DISCUSSION_TEMPLATE/q-a.yml @@ -0,0 +1,70 @@ +labels: ["help wanted"] +body: + - type: markdown + attributes: + value: | + Need help with webpack? You're in the right place! Before asking: + - Check the [webpack documentation](https://webpack.js.org) + - Search existing [discussions](https://github.com/webpack/webpack/discussions) + - Search existing [issues](https://github.com/webpack/webpack/issues) + + - type: textarea + attributes: + label: What do you need help with? + description: Describe your problem or question clearly + placeholder: I'm trying to configure webpack to do X, but I'm getting Y instead... + validations: + required: true + + - type: textarea + attributes: + label: Your webpack configuration + description: Share your webpack.config.js or relevant configuration + render: js + placeholder: | + module.exports = { + entry: './src/index.js', + output: { + filename: 'bundle.js' + } + } + validations: + required: false + + - type: textarea + attributes: + label: Error logs + description: If you're getting errors, paste them here + render: shell + placeholder: | + ERROR in ./src/index.js + Module not found: Error: Can't resolve... + validations: + required: false + + - type: input + attributes: + label: Repository + description: Link to a minimal reproduction helps us help you faster + placeholder: https://github.com/username/webpack-issue + validations: + required: false + + - type: textarea + attributes: + label: What have you tried? + description: List any solutions you've already attempted + placeholder: | + - I tried adding X to my config + - I searched for similar issues and found... + - I read the documentation about Y + validations: + required: false + + - type: input + attributes: + label: webpack version + description: What version of webpack are you using? + placeholder: "5.89.0" + validations: + required: true diff --git a/.github/ISSUE_TEMPLATE/bug-report.yml b/.github/ISSUE_TEMPLATE/bug-report.yml new file mode 100644 index 000000000..0efad26b5 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug-report.yml @@ -0,0 +1,115 @@ +name: Bug Report +description: Report a bug in webpack +labels: ["type: bug"] +body: + - type: markdown + attributes: + value: | + Thank you for reporting a bug! Before submitting: + - Search [existing issues](https://github.com/webpack/webpack/issues) to avoid duplicates + - Try the latest version of webpack + - For help with your project, use [Discussions](https://github.com/webpack/webpack/discussions) + + ⚠️ **Important**: Issues that cannot be reproduced or contain vague information will be closed. If you need help debugging your specific setup, please use [Discussions](https://github.com/webpack/webpack/discussions/new?category=q-a) instead. + + - type: textarea + id: description + attributes: + label: Bug Description + description: A clear and concise description of what the bug is + placeholder: When I do X, Y happens instead of Z + validations: + required: true + + - type: textarea + id: reproduction + attributes: + label: Link to Minimal Reproduction + description: | + Please provide a minimal reproduction using: + - GitHub repository with minimal webpack.config.js + + **If a minimal reproduction is difficult** (e.g., performance issues in large projects with thousands of files): + - Describe your project structure in detail + - Include your full webpack configuration + - Provide specific metrics (build times, memory usage, file counts) + placeholder: | + https://github.com/user/webpack-repro + + OR for complex cases: + - Build takes 30+ minutes + - Issue only appears with specific combinations of loaders/plugins + validations: + required: true + + - type: textarea + id: steps + attributes: + label: Steps to Reproduce + description: Clear steps to reproduce the behavior + placeholder: | + 1. Run 'npm install' + 2. Run 'npm run build' + 3. See error in console + validations: + required: true + + - type: textarea + id: expected + attributes: + label: Expected Behavior + description: What you expected to happen + validations: + required: true + + - type: textarea + id: actual + attributes: + label: Actual Behavior + description: What actually happened + validations: + required: true + + - type: textarea + id: environment + attributes: + label: Environment + description: | + Please run `npx webpack info` and paste the output here + render: shell + placeholder: | + System: + OS: macOS 14.0.0 + CPU: (12) arm64 Apple M1 + Memory: 16.00 GB + Binaries: + Node: 22.17.0 + npm: 10.0.0 + Packages: + webpack: 5.100.0 + validations: + required: true + + - type: dropdown + id: regression + attributes: + label: Is this a regression? + description: Did this work in a previous version of webpack? + options: + - "No" + - "Yes (please specify version below)" + validations: + required: true + + - type: input + id: regression-version + attributes: + label: Last Working Version + description: If regression, which version worked? + placeholder: "v5.99.9" + + - type: textarea + id: additional + attributes: + label: Additional Context + description: Any other context about the problem (error logs, workarounds, etc.) diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml new file mode 100644 index 000000000..c4811cb8b --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -0,0 +1,11 @@ +blank_issues_enabled: true +contact_links: + - name: Feature Request + url: https://github.com/webpack/webpack/discussions/new?category=ideas + about: Request new features or suggest improvements + - name: Ask for Help + url: https://github.com/webpack/webpack/discussions/new?category=q-a + about: Ask questions and get help from the community + - name: Other Discussion + url: https://github.com/webpack/webpack/discussions/new?category=general + about: General discussions that don't fit other categories