File:  [NetBSD Developer Wiki] / wikisrc / bugtracking / stuff_we_dislike_about_gnats.mdwn
Revision 1.4: download - view: text, annotated - select for diffs
Thu Jun 26 13:52:33 2014 UTC (5 years, 5 months ago) by schmonz
Branches: MAIN
CVS tags: HEAD
Add bsiegert's wish for more meaningful states of "closed".

# Stuff we dislike about gnats

## Storage and filing

* gnats does not understand MIME attachments. (At all.) They end up as
text blobs in the database. And worse, they end up mildly corrupted so
they need to be edited to be decoded.

* gnats makes it a nuisance to extract even inline patches from PRs.

* gnats has no way to prevent accidentally filing messages in old PRs,
and it's frequently necessary to hand-edit old PRs to clean up the
consequences.

* gnats accepts a wide range of misformatted incoming PRs, then
mangles them further and drops them into an internal queue needing
manual attention.

* gnats fairly frequently belches on incoming mail requiring
intervention from admins.

* By default gnats does not treat incoming confidential PRs as
confidential; it requires manual filtering in the surrounding email
logic.

* gnats has no support whatsoever for automatically handling bounced
mail.

* There's no way to disable sending mail to email addresses that are
known to be invalid.

* When a bug is closed, there's no way to disambiguate from its
  closed state whether it's fixed, invalid, obsolete, or otherwise
  "won't fix".

## User interface

* gnats has no ability to do anything by web besides display PRs, and
they display only as plain text. Things that you should be able to do
that you can't include:
   * filing comments
   * browsing from one PR to other related ones (either explicit links
from one PR to another, or retriving other PRs with similar
properties)
   * subscribing to PRs to get updates (even by email, let alone by RSS)

* The only way to do administrative operations is to run an editor on
the backend text file representation of a single bug. This means you
can't readily:
   * massedit PRs (e.g. put a lot of related PRs in feedback at once)
   * update someone's email address
   * move misfiled comments from one PR to another

* But you can't file a comment on a PR from the command line; you have
to send email.

* The nag mails that gnats sends to submitters are annoying to handle;
in particular just replying to them does not go anywhere useful.

* The nag mails that gnats sends to developers list a bunch of PRs but
do not list them in any kind of useful order; nor does gnats note
what's different since the previous one.

## Querying and search

* There's a web search form, but it's close to useless, partly because
it doesn't take input well and partly because the lists of results it
produces is unsorted, unstructured, and impossible to work with.

* The command-line interface supports search... using a custom query
"language" that's nearly impossible to use and that furthermore has
most of the same drawbacks as the web search page. In order to do
anything much useful you need to write your own scripts that wrap the
output.

* Finding stuff in the database is sufficiently hard that many people
consider it effectively impossible.

CVSweb for NetBSD wikisrc <wikimaster@NetBSD.org> software: FreeBSD-CVSweb