From b49228eabf2d2131d6a9bba8a136c91e9dd97339 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rihards=20Simanovi=C4=8Ds?= Date: Sat, 16 Nov 2024 23:18:18 +0000 Subject: [PATCH] chore: Update Issue Template (#215) * chore: update issue template Signed-off-by: Rihards Simanovics * chore: correct spelling in issue template Signed-off-by: Rihards Simanovics * fix: adjust render for some textarea fields and add a reproduction step * fix: remove render from markdown fields looks like github gets confused as all textarea fields are markdown by the default * style: add comments and correct labels * feat(github): add code quality issue template * refactor: remove direct references to Files From template fields, descriptions, and placeholders * refactor(github): convert feature request template to issue form --------- Signed-off-by: Rihards Simanovics --- .github/ISSUE_TEMPLATE/bug_report.md | 26 --- .github/ISSUE_TEMPLATE/bug_report.yml | 202 ++++++++++++++++++ .github/ISSUE_TEMPLATE/code_quality_issue.yml | 73 +++++++ .github/ISSUE_TEMPLATE/config.yml | 11 + .github/ISSUE_TEMPLATE/feature_request.md | 17 -- .github/ISSUE_TEMPLATE/feature_request.yml | 74 +++++++ 6 files changed, 360 insertions(+), 43 deletions(-) delete mode 100644 .github/ISSUE_TEMPLATE/bug_report.md create mode 100644 .github/ISSUE_TEMPLATE/bug_report.yml create mode 100644 .github/ISSUE_TEMPLATE/code_quality_issue.yml create mode 100644 .github/ISSUE_TEMPLATE/config.yml delete mode 100644 .github/ISSUE_TEMPLATE/feature_request.md create mode 100644 .github/ISSUE_TEMPLATE/feature_request.yml diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md deleted file mode 100644 index 7775212c..00000000 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ /dev/null @@ -1,26 +0,0 @@ ---- -name: Bug report -about: Create a report to help us improve -title: '' -labels: '' -assignees: '' - ---- - -**Describe the bug** -A clear and concise description of what the bug is. - -**Expected behavior** -A clear and concise description of what you expected to happen. - -**Screenshots** -If applicable, add screenshots to help explain your problem. - -**Please complete the following information:** -- InvoiceShelf version: -- PHP version: -- Database type and version: - -**Optional info** -- OS: [e.g. Ubuntu] -- Browser: [e.g. chrome, safari] diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml new file mode 100644 index 00000000..e8876333 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -0,0 +1,202 @@ +name: Bug report +description: Template for bug reports +labels: + - bug + - triage +projects: ["InvoiceShelf/2"] +assignees: + - rihards-simanovics + +body: + # Ask user to confirm they've tried to fix or research the issue before + # posting a bug report. + - type: checkboxes + id: confirm-read-documentation + attributes: + label: Issue filing pre-requisites + description: "Prior to filing an issue please confirm that:" + options: + - label: I've checked the documentation. + required: true + - label: I've looked for similar issues both Open and Closed. + required: true + - label: >- + Ive tried clearing both cache and cookies in my browser or tried + opening the app in the Incognito/InPrivate window. + required: true + + # Thank users for taking time to submit a bug report + - type: markdown + attributes: + value: >- + If you did all of the above, we first would like to thank you for taking + the time to fill out this bug report, it will help us tremendously to + find and fix the issue sooner! + + # Description fo the bug + - type: textarea + id: bug-description + attributes: + label: Describe the bug + description: A clear and concise description of what the bug is. + placeholder: >- + When doing `x`, `y`, and `z` in that order, an error occurs, but when x, + z and then y is done, the error does not occur. + validations: + required: true + + # Reproduction steps + - type: textarea + id: reproduce + attributes: + label: Steps to Reproduce the issue + description: A clear step-by-step explanation of how to reproduce your issue + placeholder: >- + ## Produces an error: + 1. Do X; + 2. Do Y; + 3. Do Z; + + ## Works fine: + 4. Do X; + 5. Do Z; + 6. Do Y. + validations: + required: true + + # Expected Behaviour + - type: textarea + id: expected-behavior + attributes: + label: Expected behavior + description: A clear and concise description of what you expected to happen. + placeholder: doing `x`, `y`, and `z` in that order should not generate an error. + validations: + required: true + + # Actual Behaviour + - type: textarea + id: actual-behavior + attributes: + label: Actual behavior + description: A clear and concise description of what actually happen. + placeholder: doing `x`, `y`, and `z` in that order generate an error. + validations: + required: true + + # Section break + - type: markdown + attributes: + value: |- + ## Envirment + + Now lets collect some information about your environment. + + # App Version + - type: input + id: invoiceshelf-version + attributes: + label: InvoiceShelf version + placeholder: v0.0.0 + validations: + required: true + + # PHP Version + - type: input + id: php-version + attributes: + label: PHP version + placeholder: v0.0.0 + validations: + required: true + + # DB Type + - type: input + id: database-type + attributes: + label: Database type + placeholder: MariaDB / MySQL / PostreSQL / SQLite + validations: + required: true + + # DB Version + - type: input + id: db-version + attributes: + label: Database version + placeholder: v0.0.0 + validations: + required: true + + # Web Browser + - type: input + id: web-browser + attributes: + label: Web Browser + placeholder: "Firefox / Safari / or any other (chromium based browser)" + + # OS Version + - type: input + id: server-os + attributes: + label: Server OS + description: If Linux please make sure to provide both distro name and it's version + placeholder: Windows / Linux (e.g. Ubuntu 24.04) + + # Associated Logs + - type: markdown + attributes: + value: >- + ## Logs + + + last but not least, could you please take some time to get us the logs + for: + + # Log Reverse proxy + - type: textarea + id: log-rev-proxy + attributes: + label: Reverse-proxy logs + description: >- + Please provide logs from your Apache, Nginx, Traefik, or any other + reverse proxy application. + placeholder: >- + [2015-02-04 10:00:00] production.INFO: Laravel 5.0 released. The world rejoices. + [2015-12-03 12:00:00] production.INFO: PHP 7.0 introduced scalar type declarations. Minds blown. + [2016-05-15 14:00:00] production.INFO: Composer installed new dependencies. Dependency hell avoided. + [2017-08-20 16:00:00] production.INFO: Artisan command executed: migrate. Smooth sailing. + [2018-01-10 09:00:00] production.INFO: User login successful. + [2018-01-10 09:05:00] production.ERROR: Database connection failed. Did you try turning it off and on again? + [2018-01-10 09:10:00] production.WARNING: Deprecated function used in UserController.php. Time to refactor, again. + [2018-01-10 09:15:00] production.ERROR: Uncaught Exception: Division by zero. Oops, math is hard. + [2018-01-10 09:20:00] production.INFO: User logout successful. See you later, alligator. + [2019-03-25 11:00:00] production.INFO: Cache cleared. Fresh start! + [2019-06-30 13:00:00] production.ERROR: Syntax error. Missing semicolon strikes again. + [2020-09-10 15:00:00] production.INFO: User registered. Welcome aboard! + [2021-11-05 17:00:00] production.WARNING: Low disk space. Time to clean up. + [2022-12-20 19:00:00] production.INFO: Server rebooted. All systems go. + [2024-11-14 18:56:20] production.INFO: Unexpected item in the bagging area. Please wait for assistance. + render: irc logs + + # PHP/Laravel Logs + - type: textarea + id: log-laravel + attributes: + label: Laravel/PHP logs + description: Please provide logs from either PHP or Laravel or both. + placeholder: >- + 2023-04-12 10:15:32 [NGINX] 172.16.0.5 - - [12/Apr/2023:10:15:32 +0000] "GET /index.html HTTP/1.1" 200 1024 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3" + 2023-04-12 10:15:33 [NGINX] 172.16.0.7 - - [12/Apr/2023:10:15:33 +0000] "POST /login HTTP/1.1" 302 - "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/603.3.8 (KHTML, like Gecko) Version/10.1.2 Safari/603.3.8" + 2023-04-12 10:15:34 [NGINX] 172.16.0.9 - - [12/Apr/2023:10:15:34 +0000] "GET /about HTTP/1.1" 200 2048 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.149 Safari/537.36" + 2023-04-12 10:15:35 [NGINX] 172.16.0.11 - - [12/Apr/2023:10:15:35 +0000] "PUT /api/v1/users/123 HTTP/1.1" 200 - "https://example.com/profile" "Mozilla/5.0 (iPhone; CPU iPhone OS 14_4 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0 Mobile/15E148 Safari/604.1" + 2023-04-12 10:15:36 [NGINX] 172.16.0.13 - - [12/Apr/2023:10:15:36 +0000] "DELETE /api/v1/products/456 HTTP/1.1" 204 - "-" "Dalvik/2.1.0 (Linux; U; Android 10; Pixel 4 Build/QD1A.190821.014.C2)" + 2023-04-12 10:15:37 [NGINX] 172.16.0.15 - - [12/Apr/2023:10:15:37 +0000] "GET /easter-egg HTTP/1.1" 200 42 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.82 Safari/537.3" + render: irc logs + + # Special thanks + - type: markdown + attributes: + value: >- + This template was generated with [Issue Forms + Creator](https://issue-forms-creator.netlify.app) diff --git a/.github/ISSUE_TEMPLATE/code_quality_issue.yml b/.github/ISSUE_TEMPLATE/code_quality_issue.yml new file mode 100644 index 00000000..1954bf33 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/code_quality_issue.yml @@ -0,0 +1,73 @@ +# Big thanks to https://github.com/files-community/Files/ for a template of the code_quality_issue + +name: Code Quality Issue +description: Create a code quality issue to help InvoiceShelf keep a clean codebase +labels: + - code quality + - triage +projects: ["InvoiceShelf/2"] +assignees: + - rihards-simanovics + +body: + # Tip to warn of checking for existing issues + - type: markdown + attributes: + value: > + > [!TIP] + + > Have you checked for similar code quality issues? There's a + possibility your suggestion is already being tracked. Please do a + thorough search before creating a new issue. + + # Issue body + - type: textarea + id: description + attributes: + label: Description + description: A clear and concise description of what the code quality issue is. + validations: + required: true + + # Related code + - type: textarea + id: code-in-question + attributes: + label: The code in question + description: >- + A list of the different InvoiceShelf and/or areas of the code concerned by the issue. + validations: + required: true + + # Gains + - type: textarea + id: gains + attributes: + label: Gains + description: What would fixing this code quality issue bring to the source code? + value: | + - eg. A better readability. + - eg. Uncoupling concepts X and Y. + - eg. Clarifying the responsibility of class C. + validations: + required: true + + # Requirements + - type: textarea + id: requirements + attributes: + label: Requirements + description: Describe all the requirements to solve the code quality issue. + value: | + - eg. Using a specific design pattern. + - eg. Separating Interface I into three new interfaces I1, I2 and I3. + - eg. Regrouping the duplicated process into a new helper. + + # Remarks + - type: textarea + id: comments + attributes: + label: Comments + description: >- + Additional information, comments or screenshots about the code quality + issue. diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml new file mode 100644 index 00000000..80ab6a45 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -0,0 +1,11 @@ +blank_issues_enabled: false +contact_links: + - name: Documentation + url: https://docs.invoiceshelf.com/ + about: App documentation. + - name: Translation issue + url: https://crowdin.com/project/invoiceshelf + about: Help improve translations on Crowdin. + - name: Question & Discussion + url: https://discord.gg/hwg2FtwWHW + about: Post your questions and join the discussion. You can participate in chats on every channel. diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md deleted file mode 100644 index 18d53ad6..00000000 --- a/.github/ISSUE_TEMPLATE/feature_request.md +++ /dev/null @@ -1,17 +0,0 @@ ---- -name: Feature request -about: Suggest an idea for this project -title: '' -labels: '' -assignees: '' - ---- - -**Is your feature request related to a problem? Please describe.** -A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] - -**Describe the solution you'd like** -A clear and concise description of what you want to happen. - -**Describe alternatives you've considered** -A clear and concise description of any alternative solutions or features you've considered. diff --git a/.github/ISSUE_TEMPLATE/feature_request.yml b/.github/ISSUE_TEMPLATE/feature_request.yml new file mode 100644 index 00000000..a5833ca8 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.yml @@ -0,0 +1,74 @@ +# Big thanks to https://github.com/files-community/Files/ for a template of the feature_request + +name: Feature Request +labels: + - feature request + - triage +projects: ["InvoiceShelf/2"] +assignees: + - rihards-simanovics +description: >- + This project thrives from differentiation from competing apps. Suggest an idea + for InvoiceShelf. +body: + # Tip to warn of checking for existing issues + - type: markdown + attributes: + value: > + > [!TIP] + + >Have you checked for similar feature requests? There's a possibility + your suggestion is already being tracked. Please do a thorough search + before creating a new issue. + + # Description + - type: textarea + id: what-feature + attributes: + label: What feature or improvement do you think would benefit InvoiceShelf? + description: Please include your use case + validations: + required: true + + # Tooltip about Requirements + - type: markdown + attributes: + value: > + --- + + + Please include a list changes required to make this improvement. A good + rule of thumb is to start your proposal with no more than 7 high-level + requirements. + + # Requirements + - type: textarea + id: requirements + attributes: + label: Requirements + description: Describe all the requirements to make your idea happen. + value: | + - This proposal will accomplish X + - This proposal will accomplish Y + - This proposal will accomplish Z + validations: + required: true + + # InvoiceShelf Version + - type: input + id: invoiceshelf_version + attributes: + label: App Version + description: Which version of InvoiceShelf are you using? + placeholder: v0.0.0 + validations: + required: true + + # Additional Comments + - type: textarea + id: comments + attributes: + label: Comments + description: >- + Additional information, comments or screenshots about the feature + request.