From a6179a5a95a5b9cc7f95eb511034171b1d8611db Mon Sep 17 00:00:00 2001 From: tchapi Date: Sat, 14 Mar 2026 16:05:59 +0100 Subject: [PATCH 1/2] chore --- .github/ISSUE_TEMPLATE/bug_report.yml | 161 +++++++++++++++++++++ .github/ISSUE_TEMPLATE/feature_request.yml | 54 +++++++ 2 files changed, 215 insertions(+) create mode 100644 .github/ISSUE_TEMPLATE/bug_report.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..4c4d982 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -0,0 +1,161 @@ +name: Bug Report +description: Something is not working as expected +labels: ["bug", "triage"] +body: + - type: markdown + attributes: + value: | + Before opening an issue, please: + - Check `./var/log/prod.log` for errors (only written when errors occur, thanks to the `fingers_crossed` filter) + - Check your web server / reverse proxy logs + - Read the [Troubleshooting section of the README](https://github.com/tchapi/davis/blob/main/README.md#troubleshooting) + + - type: input + id: davis_version + attributes: + label: Davis version + description: Tag or commit SHA. Found on the `/` status page or via `git describe --tags`. + placeholder: "e.g. v5.1.0" + validations: + required: true + + - type: dropdown + id: install_method + attributes: + label: Installation method + options: + - Docker – standalone (with Caddy) + - Docker – barebone (no reverse proxy) + - Bare metal / manual + - NixOS module + - Other (describe below) + validations: + required: true + + - type: input + id: php_version + attributes: + label: PHP version (bare metal only) + description: Output of `php --version`. Skip if using Docker. + placeholder: "e.g. 8.2.18" + + - type: dropdown + id: database + attributes: + label: Database + options: + - MySQL + - MariaDB + - PostgreSQL + - SQLite + - Other + validations: + required: true + + - type: dropdown + id: reverse_proxy + attributes: + label: Reverse proxy + options: + - None (standalone Docker with Caddy) + - Nginx + - Apache + - Caddy (custom) + - Traefik + - Other + validations: + required: true + + - type: dropdown + id: auth_method + attributes: + label: Authentication method + options: + - Internal (ADMIN_LOGIN / ADMIN_PASSWORD) + - IMAP + - LDAP + validations: + required: true + + - type: checkboxes + id: protocols + attributes: + label: Affected protocol(s) + options: + - label: CalDAV + - label: CardDAV + - label: WebDAV + - label: Admin dashboard + - label: API + + - type: textarea + id: client + attributes: + label: Client(s) exhibiting the issue + description: Name, version, OS/platform. Add multiple if relevant. + placeholder: | + - DAVx⁵ 4.3.14 on Android 14 + - Apple Calendar on macOS 14.4 + - Thunderbird 115.10 on Ubuntu 22.04 + validations: + required: true + + - type: textarea + id: env_vars + attributes: + label: Relevant environment variables + description: | + Sanitize secrets (APP_SECRET, DATABASE_URL password, API_KEY, etc.). + Include at minimum: APP_ENV, CALDAV_ENABLED, CARDDAV_ENABLED, WEBDAV_ENABLED, AUTH_METHOD, and any env vars you think are relevant. + render: shell + placeholder: | + APP_ENV=prod + AUTH_METHOD=... + CALDAV_ENABLED=true + CARDDAV_ENABLED=true + WEBDAV_ENABLED=false + DATABASE_URL=mysql://user:***@host:3306/davis + validations: + required: true + + - type: textarea + id: steps + attributes: + label: Steps to reproduce + placeholder: | + 1. Configure client with URL https://dav.example.com/dav + 2. ... + 3. Observe error + validations: + required: true + + - type: textarea + id: expected + attributes: + label: Expected behaviour + validations: + required: true + + - type: textarea + id: actual + attributes: + label: Actual behaviour + description: Include any error messages shown in the UI or client. + validations: + required: true + + - type: textarea + id: logs + attributes: + label: Logs + description: | + Paste the relevant section of `./var/log/prod.log` (relative to your Davis installation root, **not** `/var/log`). + Also include web server / reverse proxy error logs if applicable. + Set `APP_ENV=dev` temporarily to get verbose output if `prod.log` is empty. + render: text + + - type: textarea + id: additional + attributes: + label: Additional context + description: Anything else that might be relevant (docker-compose snippet, nginx config excerpt, network topology, etc.). \ No newline at end of file diff --git a/.github/ISSUE_TEMPLATE/feature_request.yml b/.github/ISSUE_TEMPLATE/feature_request.yml new file mode 100644 index 0000000..54fe6c7 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.yml @@ -0,0 +1,54 @@ +name: Feature Request +description: Suggest an improvement or new functionality +labels: ["enhancement"] +body: + - type: markdown + attributes: + value: | + Please check [existing issues](https://github.com/tchapi/davis/issues?q=is%3Aissue+label%3Aenhancement) first to avoid duplicates. + + - type: textarea + id: problem + attributes: + label: Problem / motivation + description: What are you trying to do, and why is it currently not possible or inconvenient? + placeholder: "e.g. I cannot do X, which forces me to..." + validations: + required: true + + - type: textarea + id: solution + attributes: + label: Proposed solution + description: Describe the feature you have in mind. Be as specific as possible. + validations: + required: true + + - type: textarea + id: alternatives + attributes: + label: Alternatives considered + description: Other approaches you have thought of or tried, and why they fall short. + + - type: dropdown + id: area + attributes: + label: Area + options: + - CalDAV + - CardDAV + - WebDAV + - Admin dashboard + - API + - Authentication (IMAP / LDAP / internal) + - Docker / deployment + - Documentation + - Other + validations: + required: true + + - type: textarea + id: additional + attributes: + label: Additional context + description: Links, screenshots, references to relevant RFCs or client behaviour, etc. \ No newline at end of file From 8c408ace4cacf21c2f01080f991e78944d66be92 Mon Sep 17 00:00:00 2001 From: tchapi Date: Sat, 14 Mar 2026 16:22:01 +0100 Subject: [PATCH 2/2] chore --- .github/ISSUE_TEMPLATE/bug_report.yml | 6 +++--- .github/ISSUE_TEMPLATE/feature_request.yml | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml index 4c4d982..d388b9e 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.yml +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -1,6 +1,6 @@ name: Bug Report description: Something is not working as expected -labels: ["bug", "triage"] +labels: ["bug"] body: - type: markdown attributes: @@ -60,7 +60,7 @@ body: - None (standalone Docker with Caddy) - Nginx - Apache - - Caddy (custom) + - Caddy - Traefik - Other validations: @@ -151,7 +151,7 @@ body: description: | Paste the relevant section of `./var/log/prod.log` (relative to your Davis installation root, **not** `/var/log`). Also include web server / reverse proxy error logs if applicable. - Set `APP_ENV=dev` temporarily to get verbose output if `prod.log` is empty. + Set `APP_ENV=dev` temporarily to get verbose output if `prod.log` is empty (you need to install dev dependencies with composer). render: text - type: textarea diff --git a/.github/ISSUE_TEMPLATE/feature_request.yml b/.github/ISSUE_TEMPLATE/feature_request.yml index 54fe6c7..8315e64 100644 --- a/.github/ISSUE_TEMPLATE/feature_request.yml +++ b/.github/ISSUE_TEMPLATE/feature_request.yml @@ -1,11 +1,11 @@ name: Feature Request description: Suggest an improvement or new functionality -labels: ["enhancement"] +labels: ["feature request"] body: - type: markdown attributes: value: | - Please check [existing issues](https://github.com/tchapi/davis/issues?q=is%3Aissue+label%3Aenhancement) first to avoid duplicates. + Please check [existing issues](https://github.com/tchapi/davis/issues) and the [Davis roadmap](https://github.com/users/tchapi/projects/1) first to avoid duplicates. - type: textarea id: problem