From a14ff66f5a1ec064897586fb71791bac4204940b Mon Sep 17 00:00:00 2001 From: Kili Date: Mon, 9 Mar 2026 23:17:06 +0100 Subject: [PATCH] Add GitHub issue templates (#686) --- .github/ISSUE_TEMPLATE/bug_report.yml | 72 ++++++++++++++++++++++ .github/ISSUE_TEMPLATE/config.yml | 5 ++ .github/ISSUE_TEMPLATE/feature_request.yml | 30 +++++++++ 3 files changed, 107 insertions(+) create mode 100644 .github/ISSUE_TEMPLATE/bug_report.yml create mode 100644 .github/ISSUE_TEMPLATE/config.yml create mode 100644 .github/ISSUE_TEMPLATE/feature_request.yml diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml new file mode 100644 index 0000000..53044de --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -0,0 +1,72 @@ +name: Bug report +description: Report a reproducible parsedmarc bug +title: "[Bug]: " +labels: + - bug +body: + - type: input + id: version + attributes: + label: parsedmarc version + description: Include the parsedmarc version or commit if known. + placeholder: 9.x.x + validations: + required: true + - type: dropdown + id: input_backend + attributes: + label: Input backend + description: Which input path or mailbox backend is involved? + options: + - IMAP + - MS Graph + - Gmail API + - Maildir + - mbox + - Local file / direct parse + - Other + validations: + required: true + - type: textarea + id: environment + attributes: + label: Environment + description: Runtime, container image, OS, Python version, or deployment details. + placeholder: Docker on Debian, Python 3.12, parsedmarc installed from PyPI + validations: + required: true + - type: textarea + id: config + attributes: + label: Sanitized config + description: Include the relevant config fragment with secrets removed. + render: ini + - type: textarea + id: steps + attributes: + label: Steps to reproduce + description: Describe the smallest reproducible sequence you can. + placeholder: | + 1. Configure parsedmarc with ... + 2. Run ... + 3. Observe ... + validations: + required: true + - type: textarea + id: expected_actual + attributes: + label: Expected vs actual behavior + description: What did you expect, and what happened instead? + validations: + required: true + - type: textarea + id: logs + attributes: + label: Logs or traceback + description: Paste sanitized logs or a traceback if available. + render: text + - type: textarea + id: samples + attributes: + label: Sample report availability + description: If you can share a sanitized sample report or message, note that here. diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml new file mode 100644 index 0000000..2b5cc15 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -0,0 +1,5 @@ +blank_issues_enabled: true +contact_links: + - name: Security issue + url: https://github.com/domainaware/parsedmarc/security/policy + about: Please use the security policy and avoid filing public issues for undisclosed vulnerabilities. diff --git a/.github/ISSUE_TEMPLATE/feature_request.yml b/.github/ISSUE_TEMPLATE/feature_request.yml new file mode 100644 index 0000000..1057a1a --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.yml @@ -0,0 +1,30 @@ +name: Feature request +description: Suggest a new feature or behavior change +title: "[Feature]: " +labels: + - enhancement +body: + - type: textarea + id: problem + attributes: + label: Problem statement + description: What workflow or limitation are you trying to solve? + validations: + required: true + - type: textarea + id: proposal + attributes: + label: Proposed behavior + description: Describe the feature or behavior you want. + validations: + required: true + - type: textarea + id: alternatives + attributes: + label: Alternatives considered + description: Describe workarounds or alternative approaches you considered. + - type: textarea + id: impact + attributes: + label: Compatibility or operational impact + description: Note config, output, performance, or deployment implications if relevant.