Issue templates: a form for reporting a bug and a form for asking for a feature #18

Closed
opened 2026-10-01 10:29:12 +00:00 by tiagoagueda · 0 comments
Owner

Requested by the maintainer on 2026-10-01, for every repository. The templates are written in the core first (postulo/postulo#351); this repository takes its own from those, with the fields that differ here.

New issue opens an empty box. Somebody reporting a bug has to guess what is needed, and the first reply is usually a question. A template asks once, at the start.

What to add

Forgejo reads issue templates from the repository itself: files under .forgejo/ISSUE_TEMPLATE/, either Markdown with a small header or YAML forms with typed fields, plus a config.yaml beside them that can switch off blank issues and add links shown above the choices. When templates exist, New issue offers them instead of an empty box.

  • A bug report (bug.yaml), labelled bug by itself, asking for what a fix needs:
    • this plugin's version and the Postulo version it runs beside (Server settings → Plugins shows both);
    • how the plugin was installed (from the catalogue, from a wheel, built into the image);
    • the DAV server and its version (Radicale, Nextcloud, Baïkal and so on), and whether it is contacts, the calendar or both.
    • what was done, step by step; what happened; what was expected;
    • anything from the logs, with personal details removed first. Postulo holds CVs, home addresses and the names of the people somebody is applying to; the form should say so in plain words above the box, because a pasted log or screenshot is where those leak.
  • A feature request (feature.yaml), labelled enhancement, asking for:
    • the problem, and who has it, before the solution;
    • what is proposed, and what else was considered;
    • whether it belongs in this plugin, or needs something from the core's plugin surface first (then the core gets an issue too).
  • config.yaml with links above the two forms:
    • A security problem is not a public issue. Link to the core's SECURITY.md, which says how to report one privately. This is the most important line in the whole change: without it the bug form is where a vulnerability gets posted in the open.
    • Translations: where to translate (postulo/postulo#349 decides the workflow), so a wrong word is corrected there rather than reported here.
    • Questions: wherever the project wants them, if not in issues.
    • Whether blank issues stay allowed. The maintainer files long, structured issues by hand; a form must not get in the way of that.

Forms should stay short. A field nobody will read is a reason not to finish the report; every field above is one the fix actually depends on.

For this repository

  • The server's name and version matter more here than anywhere: most sync bugs are one server's reading of the standard. The address and the login do not belong in a report.

Done when

  • New issue on this repository offers Bug report and Feature request, each applying its label, and shows the security link above them.
  • A report filed through the bug form carries what is listed above without anybody having to ask.
  • The forms match the core's wherever the fields are the same.
Requested by the maintainer on 2026-10-01, for every repository. The templates are written in the core first (postulo/postulo#351); this repository takes its own from those, with the fields that differ here. *New issue* opens an empty box. Somebody reporting a bug has to guess what is needed, and the first reply is usually a question. A template asks once, at the start. ## What to add Forgejo reads issue templates from the repository itself: files under `.forgejo/ISSUE_TEMPLATE/`, either Markdown with a small header or YAML forms with typed fields, plus a `config.yaml` beside them that can switch off blank issues and add links shown above the choices. When templates exist, *New issue* offers them instead of an empty box. - **A bug report** (`bug.yaml`), labelled `bug` by itself, asking for what a fix needs: - this plugin's version and the Postulo version it runs beside (*Server settings → Plugins* shows both); - how the plugin was installed (from the catalogue, from a wheel, built into the image); - the DAV server and its version (Radicale, Nextcloud, Baïkal and so on), and whether it is contacts, the calendar or both. - what was done, step by step; what happened; what was expected; - anything from the logs, **with personal details removed first**. Postulo holds CVs, home addresses and the names of the people somebody is applying to; the form should say so in plain words above the box, because a pasted log or screenshot is where those leak. - **A feature request** (`feature.yaml`), labelled `enhancement`, asking for: - the problem, and who has it, before the solution; - what is proposed, and what else was considered; - whether it belongs in this plugin, or needs something from the core's plugin surface first (then the core gets an issue too). - **`config.yaml`** with links above the two forms: - **A security problem is not a public issue.** Link to the core's `SECURITY.md`, which says how to report one privately. This is the most important line in the whole change: without it the bug form is where a vulnerability gets posted in the open. - Translations: where to translate (postulo/postulo#349 decides the workflow), so a wrong word is corrected there rather than reported here. - Questions: wherever the project wants them, if not in issues. - Whether blank issues stay allowed. The maintainer files long, structured issues by hand; a form must not get in the way of that. Forms should stay short. A field nobody will read is a reason not to finish the report; every field above is one the fix actually depends on. ## For this repository - The server's name and version matter more here than anywhere: most sync bugs are one server's reading of the standard. The address and the login do not belong in a report. ## Done when - *New issue* on this repository offers *Bug report* and *Feature request*, each applying its label, and shows the security link above them. - A report filed through the bug form carries what is listed above without anybody having to ask. - The forms match the core's wherever the fields are the same.
tiagoagueda added this to the 0.6.0 milestone 2026-10-01 10:29:12 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
Postulo/postulo-dav#18
No description provided.