This website is an instance of Woof!, an application that tracks and exposes useful interactions on mailing lists.
Woof! can typically be used for software development mailing lists when these lists serve as channels for reporting bugs, submitting patches, proposing feature requests, sharing tips, etc.
| ||Anyone||Bug can have a version number as [BUG version]|
| ||Anyone||Woof! stores and exposes the patch itself when possible|
| ||Anyone||Any request can be voted upon with +1 and -1|
| ||Anyone||The body of the email is exposed in the RSS feeds|
| ||Maintainers||The body of the email is exposed in the RSS feeds|
| ||Maintainers||Requires a version number for the released changes|
| ||Maintainers||Requires a version number for the upcoming change|
Adding a report
Adding a report to Woof! is done by using subject prefixes:
[BUG x]where x is a version number
[REL x]where x is a version number
[CHANGE x]where x is a future (not released) version number
[PATCH n/m]or an email with a diff or patch attachment
[FR]or one of
[FP, RFC, RFE, TASK, POLL]
The various report states
All report types can be in a combination of these states: (un)acked, (un)owned and (un)closed.
Ackedmeans that someone took the next sensical action: e.g. for a bug, someone confirmed it; for a patch, someone reviewed it.
Ownedmeans someone claimed to handle this report. You can own a report that has not been acked.
Closedmeans the report has been closed, either because it has been fixed (for a bug), canceled or done in any fashion.
Updating a report
Some words at the beginning of a line in the body of a reply to a report trigger an update of this report.
E.g. if a line in your reply to a bug report starts with
Confirmed., the bug report will be updated as "Confirmed" in Woof!.
Here are the default "triggers", the terms you can use for trigger an update:
Note: These words (
Approved, etc.) are case-sensitive and a punctuation mark among
;:,. is mandatory after each of them.
Updating the priority
You cannot set the priority of a report directly: it is computed based on whether the report is important and urgent.
But you can update a report as (un)important and/or (not-)urgent.
- To set a report as important, use "Important" in a reply.
- To set a report as unimportant, use "Unimportant" in a reply.
- To set a report as urgent, use "Urgent" in a reply.
- To set a report as not urgent, use "Not Urgent" in a reply.
Using multiple triggers
You can use multiple triggers in the same email. E.g. in a reply against a bug report:
Confirmed. Urgent. Important.
will mark the bug report as confirmed, and set it as important and urgent, giving it the highest priority.
Updating a report without replying to the mailing list
Sometimes it can be useful to create or update a report without notifying all the subscribers of the mailing list: maintainers can do this by writing directly to the Woof! inbox (i.e. :inbox-user in the config_example.edn file.)
Say for example that someone sends a feature request; after two years, you decide to cancel this feature request but don't want to notify the list. In this case, and provided you are a maintainer of this Woof! instance, you simply hit "reply" from your email client and add the Woof! monitored email in the
To: field: the report will be unlisted from feature requests.
Woof! web interface allow users to search reports.
agendawill find reports which subject matches
from:email@example.com list reports from firstname.lastname@example.org
acked:email@example.com list reports acked by firstname.lastname@example.org
owned:email@example.com list reports owned by firstname.lastname@example.org
closed:email@example.com list reports closed by firstname.lastname@example.org
You can use abbreviations (f[rom], a[cked], o[wned], c[losed]) and combine search parameters:
f:email@example.com a:firstname.lastname@example.org list possible reports from email@example.com and acked by firstname.lastname@example.org.
Admins and maintainers
Each Woof! instance comes with a default admin.
Admins can update the main configuration:
Global notifications: [true|false]: Enable/disable mail notifications globally
Maintenance: [true|false]: Put the website in maintenance mode
[Add|Remove] admin: email@example.com: Add or remove an admin
[Add|Remove] maintainer: firstname.lastname@example.org: Add or remove a maintainer
[Delete|Undelete]: email@example.com: Clean up past reports
[Ignore|Unignore]: firstname.lastname@example.org: Ignore future reports
(Un)Delete/(Un)Ignore commands can accept several arguments: you can use
Ignore: email@example.com firstname.lastname@example.org to ignore future messages from these two users.
Maintainers can perform three actions:
Add maintainer: email@example.com
Note that maintainers cannot remove admins or other maintainers and they cannot undelete mails or unignore contributors.