From d56a50245b3c47a8a6bef33a20ac6ec4864df52d Mon Sep 17 00:00:00 2001 From: Pavel Feldman Date: Thu, 1 Feb 2024 14:58:33 -0800 Subject: [PATCH] chore: Jest-inspired GitHub templates (thanks Jest!) (#29303) --- .github/ISSUE_TEMPLATE/bug.md | 34 ------- .github/ISSUE_TEMPLATE/bug.yml | 100 +++++++++++++++++++++ .github/ISSUE_TEMPLATE/documentation.yml | 29 ++++++ .github/ISSUE_TEMPLATE/feature.yml | 37 ++++++++ .github/ISSUE_TEMPLATE/feature_request.md | 11 --- .github/ISSUE_TEMPLATE/question.yml | 27 ++++++ .github/ISSUE_TEMPLATE/regression.md | 32 ------- .github/ISSUE_TEMPLATE/regression.yml | 97 ++++++++++++++++++++ .github/ISSUE_TEMPLATE/vscode-extension.md | 26 ------ 9 files changed, 290 insertions(+), 103 deletions(-) delete mode 100644 .github/ISSUE_TEMPLATE/bug.md create mode 100644 .github/ISSUE_TEMPLATE/bug.yml create mode 100644 .github/ISSUE_TEMPLATE/documentation.yml create mode 100644 .github/ISSUE_TEMPLATE/feature.yml delete mode 100644 .github/ISSUE_TEMPLATE/feature_request.md create mode 100644 .github/ISSUE_TEMPLATE/question.yml delete mode 100644 .github/ISSUE_TEMPLATE/regression.md create mode 100644 .github/ISSUE_TEMPLATE/regression.yml delete mode 100644 .github/ISSUE_TEMPLATE/vscode-extension.md diff --git a/.github/ISSUE_TEMPLATE/bug.md b/.github/ISSUE_TEMPLATE/bug.md deleted file mode 100644 index 662784b912..0000000000 --- a/.github/ISSUE_TEMPLATE/bug.md +++ /dev/null @@ -1,34 +0,0 @@ ---- -name: Bug Report -about: Something doesn't work like it should? Tell us! -title: "[BUG]" -labels: '' -assignees: '' - ---- - -### System info -- Playwright Version: [v1.XX] -- Operating System: [All, Windows 11, Ubuntu 20, macOS 13.2, etc.] -- Browser: [All, Chromium, Firefox, WebKit] -- Other info: - -### Source code - -[We will only be able to work on the issues that we can reproduce.] - -[Please provide a self-contained example in a form of a snippet, archive or a repository.] - -[Repro scenario can't be large or have external dependencies.] - -**Steps** -- [Run the test] -- [...] - -**Expected** - -[Describe expected behavior] - -**Actual** - -[Describe actual behavior] diff --git a/.github/ISSUE_TEMPLATE/bug.yml b/.github/ISSUE_TEMPLATE/bug.yml new file mode 100644 index 0000000000..5baad382eb --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug.yml @@ -0,0 +1,100 @@ +name: Bug Report 🪲 +description: Create a bug report to help us improve +title: '[Bug]: ' +body: + - type: markdown + attributes: + value: | + # Please follow these steps first: + - type: markdown + attributes: + value: | + ## Troubleshoot + If Playwright is not behaving the way you expect, we'd ask you to look at the [documentation](https://playwright.dev/docs/intro) and search the issue tracker for evidence supporting your expectation. + Please make reasonable efforts to troubleshoot and rule out issues with your code, the configuration, or any 3rd party libraries you might be using. + Playwright offers [several debugging tools](https://playwright.dev/docs/debug) that you can use to troubleshoot your issues. + - type: markdown + attributes: + value: | + ## Ask for help through appropriate channels + If you feel unsure about the cause of the problem, consider asking for help on for example [StackOverflow](https://stackoverflow.com/questions/ask) or our [Discord channel](https://aka.ms/playwright/discord) before posting a bug report. The issue tracker is not a help forum. + - type: markdown + attributes: + value: | + ## Make a minimal reproduction + To file the report, you will need a GitHub repository with a minimal (but complete) example and simple/clear steps on how to reproduce the bug. + The simpler you can make it, the more likely we are to successfully verify and fix the bug. + - type: markdown + attributes: + value: | + > [!IMPORTANT] + > Bug reports without a minimal reproduction will be rejected. + + --- + - type: input + id: version + attributes: + label: Version + description: | + The version of Playwright you are using. + Is it the [latest](https://github.com/microsoft/playwright/releases)? Test and see if the bug has already been fixed. + placeholder: ex. 1.41.1 + validations: + required: true + - type: textarea + id: reproduction + attributes: + label: Steps to reproduce + description: Please link to a repository with a minimal reproduction and describe accurately how we can reproduce/verify the bug. + placeholder: | + Example steps (replace with your own): + 1. Clone my repo at https://github.com//example + 2. npm install + 3. npm run test + 4. You should see the error come up + validations: + required: true + - type: textarea + id: expected + attributes: + label: Expected behavior + description: A description of what you expect to happen. + placeholder: I expect to see X or Y + validations: + required: true + - type: textarea + id: what-happened + attributes: + label: Actual behavior + description: | + A clear and concise description of the unexpected behavior. + Please include any relevant output here, especially any error messages. + placeholder: A bug happened! + validations: + required: true + - type: textarea + id: context + attributes: + label: Additional context + description: Anything else that might be relevant + validations: + required: false + - type: textarea + id: envinfo + attributes: + label: Environment + description: | + Please paste the output of running `npx envinfo --preset playwright`. + This will be automatically formatted as a code block, so no need for backticks. + placeholder: | + System: + OS: Linux 6.2 Ubuntu 22.04.3 LTS 22.04.3 LTS (Jammy Jellyfish) + CPU: (8) arm64 + Binaries: + Node: 18.19.0 - ~/.nvm/versions/node/v18.19.0/bin/node + npm: 10.2.3 - ~/.nvm/versions/node/v18.19.0/bin/npm + npmPackages: + @playwright/test: 1.41.1 => 1.41.1 + render: shell + validations: + required: true diff --git a/.github/ISSUE_TEMPLATE/documentation.yml b/.github/ISSUE_TEMPLATE/documentation.yml new file mode 100644 index 0000000000..0a683969a6 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/documentation.yml @@ -0,0 +1,29 @@ +name: Documentation 📖 +description: Submit a request to add or update documentation +title: '[Docs]: ' +labels: ['Documentation :book:'] +body: + - type: markdown + attributes: + value: | + ### Thank you for helping us improve our documentation! + Please be sure you are looking at [the Next version of the documentation](https://playwright.dev/docs/next/intro) before opening an issue here. + - type: textarea + id: links + attributes: + label: Page(s) + description: | + Links to one or more documentation pages that should be modified. + If you are reporting an issue with a specific section of a page, try to link directly to the nearest anchor. + If you are suggesting that a new page be created, link to the parent of the proposed page. + validations: + required: true + - type: textarea + id: description + attributes: + label: Description + description: | + Describe the change you are requesting. + If the issue pertains to a single function or matcher, be sure to specify the entire call signature. + validations: + required: true diff --git a/.github/ISSUE_TEMPLATE/feature.yml b/.github/ISSUE_TEMPLATE/feature.yml new file mode 100644 index 0000000000..cea9c2e55d --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature.yml @@ -0,0 +1,37 @@ +name: Feature Request 🚀 +description: Submit a proposal for a new feature +title: '[Feature]: ' +body: + - type: markdown + attributes: + value: | + ### Thank you for taking the time to suggest a new feature! + - type: textarea + id: description + attributes: + label: '🚀 Feature Request' + description: A clear and concise description of what the feature is. + validations: + required: true + - type: textarea + id: motivation + attributes: + label: Motivation + description: Outline your motivation for the proposal. How will it make Playwright better? + validations: + required: true + - type: textarea + id: example + attributes: + label: Example + description: Describe how this feature would be used. + validations: + required: false + - type: textarea + id: pitch + attributes: + label: Pitch + description: | + Why does this feature belong in the Playwright core and should not be a third party module? + validations: + required: true diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md deleted file mode 100644 index 37ec8a7d25..0000000000 --- a/.github/ISSUE_TEMPLATE/feature_request.md +++ /dev/null @@ -1,11 +0,0 @@ ---- -name: Feature request -about: Request new features to be added -title: "[Feature]" -labels: '' -assignees: '' - ---- - -Let us know what functionality you'd like to see in Playwright and what your use case is. -Do you think others might benefit from this as well? diff --git a/.github/ISSUE_TEMPLATE/question.yml b/.github/ISSUE_TEMPLATE/question.yml new file mode 100644 index 0000000000..9615afdc8a --- /dev/null +++ b/.github/ISSUE_TEMPLATE/question.yml @@ -0,0 +1,27 @@ +name: 'Questions / Help 💬' +description: If you have questions, please check StackOverflow or Discord +title: '[Please read the message below]' +labels: [':speech_balloon: Question'] +body: + - type: markdown + attributes: + value: | + ## Questions and Help 💬 + + This issue tracker is reserved for bug reports and feature requests. + + For anything else, such as questions or getting help, please see: + + - [The Playwright documentation](https://playwright.dev) + - [Our Discord server](https://aka.ms/playwright/discord) + - type: checkboxes + id: no-post + attributes: + label: | + Please do not submit this issue. + description: | + > [!IMPORTANT] + > This issue will be closed. + options: + - label: I understand + required: true diff --git a/.github/ISSUE_TEMPLATE/regression.md b/.github/ISSUE_TEMPLATE/regression.md deleted file mode 100644 index d6d7510a4c..0000000000 --- a/.github/ISSUE_TEMPLATE/regression.md +++ /dev/null @@ -1,32 +0,0 @@ ---- -name: Report regression -about: Functionality that used to work and does not any more -title: "[REGRESSION]: " -labels: '' -assignees: '' - ---- - -**Context:** -- GOOD Playwright Version: [what Playwright version worked nicely?] -- BAD Playwright Version: [what Playwright version doesn't work any more?] -- Operating System: [e.g. Windows, Linux or Mac] -- Extra: [any specific details about your environment] - -**Code Snippet** - -Help us help you! Put down a short code snippet that illustrates your bug and -that we can run and debug locally. For example: - -```javascript -const {chromium, webkit, firefox} = require('playwright'); - -(async () => { - const browser = await chromium.launch(); - // ... -})(); -``` - -**Describe the bug** - -Add any other details about the problem here. diff --git a/.github/ISSUE_TEMPLATE/regression.yml b/.github/ISSUE_TEMPLATE/regression.yml new file mode 100644 index 0000000000..70b6da1287 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/regression.yml @@ -0,0 +1,97 @@ +--- +name: Report regression +about: Functionality that used to work and does not any more +title: "[Regression]: " + +body: + - type: markdown + attributes: + value: | + # Please follow these steps first: + - type: markdown + attributes: + value: | + ## Make a minimal reproduction + To file the report, you will need a GitHub repository with a minimal (but complete) example and simple/clear steps on how to reproduce the regression. + The simpler you can make it, the more likely we are to successfully verify and fix the regression. + - type: markdown + attributes: + value: | + > [!IMPORTANT] + > Regression reports without a minimal reproduction will be rejected. + + --- + - type: input + id: goodVersion + attributes: + label: Last Good Version + description: | + Last version of Playwright where the feature was working. + placeholder: ex. 1.40.1 + validations: + required: true + - type: input + id: badVersion + attributes: + label: First Bad Version + description: | + First version of Playwright where the feature was broken. + Is it the [latest](https://github.com/microsoft/playwright/releases)? Test and see if the regression has already been fixed. + placeholder: ex. 1.41.1 + validations: + required: true + - type: textarea + id: reproduction + attributes: + label: Steps to reproduce + description: Please link to a repository with a minimal reproduction and describe accurately how we can reproduce/verify the bug. + placeholder: | + Example steps (replace with your own): + 1. Clone my repo at https://github.com//example + 2. npm install + 3. npm run test + 4. You should see the error come up + validations: + required: true + - type: textarea + id: expected + attributes: + label: Expected behavior + description: A description of what you expect to happen. + placeholder: I expect to see X or Y + validations: + required: true + - type: textarea + id: what-happened + attributes: + label: Actual behavior + description: A clear and concise description of the unexpected behavior. + placeholder: A bug happened! + validations: + required: true + - type: textarea + id: context + attributes: + label: Additional context + description: Anything else that might be relevant + validations: + required: false + - type: textarea + id: envinfo + attributes: + label: Environment + description: | + Please paste the output of running `npx envinfo --preset playwright`. + This will be automatically formatted as a code block, so no need for backticks. + placeholder: | + System: + OS: Linux 6.2 Ubuntu 22.04.3 LTS 22.04.3 LTS (Jammy Jellyfish) + CPU: (8) arm64 + Binaries: + Node: 18.19.0 - ~/.nvm/versions/node/v18.19.0/bin/node + npm: 10.2.3 - ~/.nvm/versions/node/v18.19.0/bin/npm + npmPackages: + @playwright/test: 1.41.1 => 1.41.1 + render: shell + validations: + required: true diff --git a/.github/ISSUE_TEMPLATE/vscode-extension.md b/.github/ISSUE_TEMPLATE/vscode-extension.md deleted file mode 100644 index e623fa9de1..0000000000 --- a/.github/ISSUE_TEMPLATE/vscode-extension.md +++ /dev/null @@ -1,26 +0,0 @@ ---- -name: VSCode extension bug -about: Something doesn't work like it should inside the Visual Studio Code extension or you have a feature request? Tell us! -title: "[BUG]" -labels: '' -assignees: '' - ---- - -**Context:** -- Playwright Version: [what Playwright version do you use?] -- Operating System: [e.g. Windows, Linux or Mac] -- Node.js version: [e.g. 12.22, 14.6] -- Visual Studio Code version: [e.g. 1.65] -- Playwright for VSCode extension version: [e.g. 1.2.3] -- Browser: [e.g. All, Chromium, Firefox, WebKit] -- Extra: [any specific details about your environment] - -**Code Snippet** - -Help us help you! Put down a short code snippet that illustrates your bug and -that we can run and debug locally. For example: - -**Describe the bug** - -Add any other details about the problem here.