From 0e86959b10e0bb979f69b77d79e4375aa37d6410 Mon Sep 17 00:00:00 2001 From: makhlwf Date: Sat, 8 Aug 2026 20:11:43 +0200 Subject: [PATCH 1/7] feat(templates): adapt issue templates for NVDA add-on development --- .github/ISSUE_TEMPLATE/01-bug_report.yaml | 170 ++++++++++++++++++ .../ISSUE_TEMPLATE/02-feature_request.yaml | 44 +++++ .../ISSUE_TEMPLATE/03-special_case_issue.yaml | 104 +++++++++++ .../04-developer_facing_changes.yaml | 59 ++++++ .../ISSUE_TEMPLATE/05-advanced_bug_report.md | 28 +++ .../06-advanced_feature_request.md | 19 ++ .github/ISSUE_TEMPLATE/config.yml | 1 + 7 files changed, 425 insertions(+) create mode 100644 .github/ISSUE_TEMPLATE/01-bug_report.yaml create mode 100644 .github/ISSUE_TEMPLATE/02-feature_request.yaml create mode 100644 .github/ISSUE_TEMPLATE/03-special_case_issue.yaml create mode 100644 .github/ISSUE_TEMPLATE/04-developer_facing_changes.yaml create mode 100644 .github/ISSUE_TEMPLATE/05-advanced_bug_report.md create mode 100644 .github/ISSUE_TEMPLATE/06-advanced_feature_request.md create mode 100644 .github/ISSUE_TEMPLATE/config.yml diff --git a/.github/ISSUE_TEMPLATE/01-bug_report.yaml b/.github/ISSUE_TEMPLATE/01-bug_report.yaml new file mode 100644 index 0000000..4acf68f --- /dev/null +++ b/.github/ISSUE_TEMPLATE/01-bug_report.yaml @@ -0,0 +1,170 @@ +name: Bug report +description: Create a bug report to help us improve this add-on +type: Bug +labels: [bug] + +body: + - type: markdown + attributes: + value: | + ### Attention! + + Please read the instructions carefully before filling out this template. + Issues may be closed if required information is missing. + Attach an NVDA log file whenever possible to help us diagnose the problem faster. + + - type: textarea + id: summary + attributes: + label: Brief summary + validations: + required: true + + - type: textarea + id: reproSteps + attributes: + label: Steps to reproduce + description: | + A clear and concise list of steps to reproduce the problem. + Include any sample files or links required to reproduce the issue. + placeholder: | + Example: + 1. Press NVDA+Ctrl+X to open add-on dialog + 2. Select "Settings" option + 3. Press Enter + validations: + required: true + + - type: textarea + id: actualBehavior + attributes: + label: Actual behavior + description: | + Describe what actually happens when these steps are taken. + Include verbatim speech/braille viewer output if relevant, or error sounds heard. + placeholder: | + Example: + An NVDA error sound is heard. + NVDA Speech: "error" + validations: + required: true + + - type: textarea + id: expectedBehavior + attributes: + label: Expected behavior + description: | + Describe what you expected to happen when these steps are taken. + placeholder: | + Example: + The settings dialog should open without any error sound. + validations: + required: true + + - type: textarea + id: attachedFiles + attributes: + label: NVDA logs and other attachments + description: | + In most cases an NVDA log file is incredibly helpful when trying to understand or fix an issue. + Please attach your NVDA log file or any relevant screenshots/files here. + + - type: markdown + attributes: + value: | + ### System Configuration + + Please provide information about your system and add-on setup. + + - type: input + id: addonVersion + attributes: + label: Add-on version + description: | + Which version of this add-on are you using? + You can check this in NVDA's Add-on Store. + validations: + required: true + + - type: dropdown + id: nvdaType + attributes: + label: NVDA type + description: Is this reproduced with NVDA installed/portable/running from source? + multiple: true + options: ["installed copy", "portable copy", "installer/launcher copy", "source copy"] + validations: + required: true + + - type: input + id: nvdaVersion + attributes: + label: NVDA version + description: | + Which version(s) of NVDA can you reproduce this issue with? + This can be copied from the NVDA About dialog (NVDA menu -> Help -> About). + validations: + required: true + + - type: textarea + id: otherNvdaVersions + attributes: + label: Have you tried any other versions of NVDA? If so, please report their behaviors. + description: | + Knowing whether this issue occurs in previous releases helps us determine if a change in NVDA or this add-on introduced the problem. + + - type: input + id: winVersion + attributes: + label: Windows version + description: | + The version of Windows you are using. + placeholder: | + Example: Windows 11 Version 25H2 Build 26220.8925 + validations: + required: true + + - type: textarea + id: otherVersions + attributes: + label: Name and version of other software in use when reproducing the issue + placeholder: | + Example: Chrome version 126.0.6478.127 + + - type: textarea + id: otherSysInfo + attributes: + label: Other information about your system + + - type: markdown + attributes: + value: | + ### Troubleshooting steps + + - type: dropdown + id: restart + validations: + required: true + attributes: + label: Does the issue still occur after restarting your computer? + options: [ + "I have not restarted my computer", + "I have restarted my computer and the issue still occurs", + "Restarting my computer fixes the issue temporarily, but it comes back later", + "Restarting my computer fixed the issue", + ] + + - type: dropdown + id: addonConflicts + validations: + required: true + attributes: + label: Does the issue still occur when other NVDA add-ons are disabled (keeping only this add-on active)? + description: | + Issues can sometimes be caused by conflicts between multiple add-ons. + options: [ + "I have not tested with other add-ons disabled", + "I have disabled other add-ons and the issue still occurs with only this add-on enabled", + "The issue no longer occurs when other add-ons are disabled", + "I do not have any other NVDA add-ons installed", + ] diff --git a/.github/ISSUE_TEMPLATE/02-feature_request.yaml b/.github/ISSUE_TEMPLATE/02-feature_request.yaml new file mode 100644 index 0000000..654e65d --- /dev/null +++ b/.github/ISSUE_TEMPLATE/02-feature_request.yaml @@ -0,0 +1,44 @@ +name: Feature request +description: Suggest an idea or improvement for this add-on +type: Feature +labels: [enhancement] + +body: + - type: markdown + attributes: + value: | + ### Feature Request + + Thank you for helping us improve this add-on! Please describe the feature or enhancement you would like to see. + + - type: textarea + id: problem + validations: + required: true + attributes: + label: Is your feature request related to a problem? Please describe. + description: A clear and concise description of what the problem or limitation is. + + - type: textarea + id: solution + validations: + required: true + attributes: + label: Describe the solution you'd like + description: | + A clear and concise description of what you want to happen. + If you have technical ideas for implementation, feel free to include them. + + - type: textarea + id: altSolution + attributes: + label: Describe alternatives you've considered + description: | + A clear and concise description of any alternative solutions or workarounds you've considered. + + - type: textarea + id: context + attributes: + label: Additional context + description: | + Add any other context or attachments for the feature request here (such as target application versions or example documents). diff --git a/.github/ISSUE_TEMPLATE/03-special_case_issue.yaml b/.github/ISSUE_TEMPLATE/03-special_case_issue.yaml new file mode 100644 index 0000000..de3b41b --- /dev/null +++ b/.github/ISSUE_TEMPLATE/03-special_case_issue.yaml @@ -0,0 +1,104 @@ +name: Special Case Issue +description: A complex or exceptional issue that doesn't fit into standard templates +type: Task +labels: [] + +body: + - type: markdown + attributes: + value: | + ## Special Case Issue + + Use this template if your issue doesn't fit into standard bug report or feature request categories. + Before proceeding, please verify if standard templates are more appropriate: + - [Bug Report](01-bug_report.yaml) + - [Feature Request](02-feature_request.yaml) + + - type: textarea + id: detailedDescription + attributes: + label: Detailed description of the issue + description: Provide a detailed description of the issue or topic. + validations: + required: true + + - type: textarea + id: templateJustification + attributes: + label: Why are the other templates not appropriate in this case? + description: Explain why standard bug report or feature request templates are not suitable. + validations: + required: true + + - type: input + id: communityDiscussion + attributes: + label: Link to any related community discussion (if applicable) + description: Mention if you have discussed this topic on forums, GitHub discussions, or mailing lists. + + - type: textarea + id: additionalInfo + attributes: + label: Additional information (if applicable) + + - type: markdown + attributes: + value: | + ### Issue behavior (if applicable) + + - type: textarea + id: stepsToReproduce + attributes: + label: Steps to reproduce or illustrate the issue (if applicable) + + - type: textarea + id: expectedOutcome + attributes: + label: Expected outcome or behavior (if applicable) + + - type: textarea + id: attachments + attributes: + label: Logs, screenshots and other attachments (if applicable) + + - type: markdown + attributes: + value: | + ### System Configuration (if applicable) + + - type: input + id: addonVersion + attributes: + label: Add-on version + + - type: dropdown + id: nvdaType + attributes: + label: NVDA type + multiple: true + options: ["installed copy", "portable copy", "installer/launcher copy", "source copy"] + + - type: input + id: nvdaVersion + attributes: + label: NVDA version + + - type: textarea + id: otherNvdaVersions + attributes: + label: Have you tried any other versions of NVDA? + + - type: input + id: winVersion + attributes: + label: Windows version + + - type: textarea + id: otherVersions + attributes: + label: Name and version of other software in use + + - type: textarea + id: otherSysInfo + attributes: + label: Other information about your system diff --git a/.github/ISSUE_TEMPLATE/04-developer_facing_changes.yaml b/.github/ISSUE_TEMPLATE/04-developer_facing_changes.yaml new file mode 100644 index 0000000..1981ba5 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/04-developer_facing_changes.yaml @@ -0,0 +1,59 @@ +name: Developer facing changes +description: Maintenance tasks, API changes, and code changes which are not user facing changes +type: Task +labels: [maintenance] + +body: + - type: markdown + attributes: + value: | + This template is intended for developers to document improvements or maintenance to this add-on's codebase that do not involve user-facing changes. + This may include API refactoring, technical debt removal, CI updates, and maintenance tasks. + + If this involves a user-facing change (e.g., a feature or bug), please use one of our other templates. + + - type: textarea + id: relatedIssues + attributes: + label: Related issues, PRs or discussions + validations: + required: false + + - type: textarea + id: currentState + attributes: + label: What is the current state of the codebase? + validations: + required: true + + - type: textarea + id: whyChanges + attributes: + label: Why are changes required? + validations: + required: true + + - type: textarea + id: technicalChanges + attributes: + label: What technical changes are required? + validations: + required: true + + - type: dropdown + id: apiBreaking + attributes: + label: Are the proposed technical changes API breaking? + options: + - "Unknown" + - "Yes" + - "No" + validations: + required: true + + - type: textarea + id: risksIssues + attributes: + label: Are there potential risks or issues with the proposed implementation? + validations: + required: true diff --git a/.github/ISSUE_TEMPLATE/05-advanced_bug_report.md b/.github/ISSUE_TEMPLATE/05-advanced_bug_report.md new file mode 100644 index 0000000..1169e6e --- /dev/null +++ b/.github/ISSUE_TEMPLATE/05-advanced_bug_report.md @@ -0,0 +1,28 @@ +--- +name: Advanced Bug Report (Markdown) +about: Free-form Markdown bug report template for experienced developers +title: '' +labels: 'bug' +assignees: '' +--- + +## Summary + + +## Steps to Reproduce +1. +2. + +## Actual Behavior + + +## Expected Behavior + + +## Environment +- **Add-on Version:** +- **NVDA Version:** +- **Windows Version:** + +## Logs & Attachments + diff --git a/.github/ISSUE_TEMPLATE/06-advanced_feature_request.md b/.github/ISSUE_TEMPLATE/06-advanced_feature_request.md new file mode 100644 index 0000000..fe55994 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/06-advanced_feature_request.md @@ -0,0 +1,19 @@ +--- +name: Advanced Feature Request (Markdown) +about: Free-form Markdown feature request template for experienced developers +title: '' +labels: 'enhancement' +assignees: '' +--- + +## Motivation / Problem Statement + + +## Proposed Solution + + +## Alternatives Considered + + +## Implementation Details / Context + diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml new file mode 100644 index 0000000..0086358 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -0,0 +1 @@ +blank_issues_enabled: true From d6d16b504749c8cb2ce1aacaaf1ab0392cbf153d Mon Sep 17 00:00:00 2001 From: makhlwf Date: Mon, 10 Aug 2026 06:30:01 +0200 Subject: [PATCH 2/7] rename the advanced template files to match nvda's --- .../{05-advanced_bug_report.md => 11-advanced_bug_report.md} | 0 ...advanced_feature_request.md => 12-advanced_feature_request.md} | 0 2 files changed, 0 insertions(+), 0 deletions(-) rename .github/ISSUE_TEMPLATE/{05-advanced_bug_report.md => 11-advanced_bug_report.md} (100%) rename .github/ISSUE_TEMPLATE/{06-advanced_feature_request.md => 12-advanced_feature_request.md} (100%) diff --git a/.github/ISSUE_TEMPLATE/05-advanced_bug_report.md b/.github/ISSUE_TEMPLATE/11-advanced_bug_report.md similarity index 100% rename from .github/ISSUE_TEMPLATE/05-advanced_bug_report.md rename to .github/ISSUE_TEMPLATE/11-advanced_bug_report.md diff --git a/.github/ISSUE_TEMPLATE/06-advanced_feature_request.md b/.github/ISSUE_TEMPLATE/12-advanced_feature_request.md similarity index 100% rename from .github/ISSUE_TEMPLATE/06-advanced_feature_request.md rename to .github/ISSUE_TEMPLATE/12-advanced_feature_request.md From 064ea1d45b50e2c5de4475c4ee511b301e728042 Mon Sep 17 00:00:00 2001 From: makhlwf Date: Mon, 10 Aug 2026 04:52:53 +0200 Subject: [PATCH 3/7] remove the special case template synce it is not required --- ....yaml => 03-developer_facing_changes.yaml} | 0 .../ISSUE_TEMPLATE/03-special_case_issue.yaml | 104 ------------------ 2 files changed, 104 deletions(-) rename .github/ISSUE_TEMPLATE/{04-developer_facing_changes.yaml => 03-developer_facing_changes.yaml} (100%) delete mode 100644 .github/ISSUE_TEMPLATE/03-special_case_issue.yaml diff --git a/.github/ISSUE_TEMPLATE/04-developer_facing_changes.yaml b/.github/ISSUE_TEMPLATE/03-developer_facing_changes.yaml similarity index 100% rename from .github/ISSUE_TEMPLATE/04-developer_facing_changes.yaml rename to .github/ISSUE_TEMPLATE/03-developer_facing_changes.yaml diff --git a/.github/ISSUE_TEMPLATE/03-special_case_issue.yaml b/.github/ISSUE_TEMPLATE/03-special_case_issue.yaml deleted file mode 100644 index de3b41b..0000000 --- a/.github/ISSUE_TEMPLATE/03-special_case_issue.yaml +++ /dev/null @@ -1,104 +0,0 @@ -name: Special Case Issue -description: A complex or exceptional issue that doesn't fit into standard templates -type: Task -labels: [] - -body: - - type: markdown - attributes: - value: | - ## Special Case Issue - - Use this template if your issue doesn't fit into standard bug report or feature request categories. - Before proceeding, please verify if standard templates are more appropriate: - - [Bug Report](01-bug_report.yaml) - - [Feature Request](02-feature_request.yaml) - - - type: textarea - id: detailedDescription - attributes: - label: Detailed description of the issue - description: Provide a detailed description of the issue or topic. - validations: - required: true - - - type: textarea - id: templateJustification - attributes: - label: Why are the other templates not appropriate in this case? - description: Explain why standard bug report or feature request templates are not suitable. - validations: - required: true - - - type: input - id: communityDiscussion - attributes: - label: Link to any related community discussion (if applicable) - description: Mention if you have discussed this topic on forums, GitHub discussions, or mailing lists. - - - type: textarea - id: additionalInfo - attributes: - label: Additional information (if applicable) - - - type: markdown - attributes: - value: | - ### Issue behavior (if applicable) - - - type: textarea - id: stepsToReproduce - attributes: - label: Steps to reproduce or illustrate the issue (if applicable) - - - type: textarea - id: expectedOutcome - attributes: - label: Expected outcome or behavior (if applicable) - - - type: textarea - id: attachments - attributes: - label: Logs, screenshots and other attachments (if applicable) - - - type: markdown - attributes: - value: | - ### System Configuration (if applicable) - - - type: input - id: addonVersion - attributes: - label: Add-on version - - - type: dropdown - id: nvdaType - attributes: - label: NVDA type - multiple: true - options: ["installed copy", "portable copy", "installer/launcher copy", "source copy"] - - - type: input - id: nvdaVersion - attributes: - label: NVDA version - - - type: textarea - id: otherNvdaVersions - attributes: - label: Have you tried any other versions of NVDA? - - - type: input - id: winVersion - attributes: - label: Windows version - - - type: textarea - id: otherVersions - attributes: - label: Name and version of other software in use - - - type: textarea - id: otherSysInfo - attributes: - label: Other information about your system From 467c6fef3e3ad754447795e7b2dcc875d1ddba58 Mon Sep 17 00:00:00 2001 From: makhlwf Date: Mon, 10 Aug 2026 04:56:08 +0200 Subject: [PATCH 4/7] remove the question of API braking synce it is unlikely that addons has a public API --- .../ISSUE_TEMPLATE/03-developer_facing_changes.yaml | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/.github/ISSUE_TEMPLATE/03-developer_facing_changes.yaml b/.github/ISSUE_TEMPLATE/03-developer_facing_changes.yaml index 1981ba5..43960b1 100644 --- a/.github/ISSUE_TEMPLATE/03-developer_facing_changes.yaml +++ b/.github/ISSUE_TEMPLATE/03-developer_facing_changes.yaml @@ -40,17 +40,6 @@ body: validations: required: true - - type: dropdown - id: apiBreaking - attributes: - label: Are the proposed technical changes API breaking? - options: - - "Unknown" - - "Yes" - - "No" - validations: - required: true - - type: textarea id: risksIssues attributes: From 2d0d876b6c7779c9080484ddbc020c45173423a1 Mon Sep 17 00:00:00 2001 From: makhlwf Date: Mon, 10 Aug 2026 05:04:30 +0200 Subject: [PATCH 5/7] replace 'ctrl' with 'control' for the hourtcut example for clearity --- .github/ISSUE_TEMPLATE/01-bug_report.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/ISSUE_TEMPLATE/01-bug_report.yaml b/.github/ISSUE_TEMPLATE/01-bug_report.yaml index 4acf68f..1e75be3 100644 --- a/.github/ISSUE_TEMPLATE/01-bug_report.yaml +++ b/.github/ISSUE_TEMPLATE/01-bug_report.yaml @@ -29,7 +29,7 @@ body: Include any sample files or links required to reproduce the issue. placeholder: | Example: - 1. Press NVDA+Ctrl+X to open add-on dialog + 1. Press NVDA+control+X to open add-on dialog 2. Select "Settings" option 3. Press Enter validations: From 43843fcf5c59612d46f6c095b569a567f97bc935 Mon Sep 17 00:00:00 2001 From: makhlwf Date: Mon, 10 Aug 2026 05:08:38 +0200 Subject: [PATCH 6/7] replace arrows directions with commas --- .github/ISSUE_TEMPLATE/01-bug_report.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/ISSUE_TEMPLATE/01-bug_report.yaml b/.github/ISSUE_TEMPLATE/01-bug_report.yaml index 1e75be3..d8a7896 100644 --- a/.github/ISSUE_TEMPLATE/01-bug_report.yaml +++ b/.github/ISSUE_TEMPLATE/01-bug_report.yaml @@ -102,7 +102,7 @@ body: label: NVDA version description: | Which version(s) of NVDA can you reproduce this issue with? - This can be copied from the NVDA About dialog (NVDA menu -> Help -> About). + This can be copied from the NVDA About dialog (NVDA menu, Help, About). validations: required: true From 6391063ba0852dd392ef6edf85d23cb973238249 Mon Sep 17 00:00:00 2001 From: makhlwf Date: Mon, 10 Aug 2026 05:11:13 +0200 Subject: [PATCH 7/7] user facing to user-facing --- .github/ISSUE_TEMPLATE/03-developer_facing_changes.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/ISSUE_TEMPLATE/03-developer_facing_changes.yaml b/.github/ISSUE_TEMPLATE/03-developer_facing_changes.yaml index 43960b1..9c09ccd 100644 --- a/.github/ISSUE_TEMPLATE/03-developer_facing_changes.yaml +++ b/.github/ISSUE_TEMPLATE/03-developer_facing_changes.yaml @@ -1,5 +1,5 @@ name: Developer facing changes -description: Maintenance tasks, API changes, and code changes which are not user facing changes +description: Maintenance tasks, API changes, and code changes which are not user-facing changes type: Task labels: [maintenance]