Developer(s)Chad Walstrom
Initial release1992; 32 years ago (1992)[1]
Stable release
4.2.0 / February 28, 2015; 9 years ago (2015-02-28)
Written inC
Operating systemCross-platform
TypeBug tracking system

GNATS is the GNU project's issue-tracking software.

GNATS is a set of tools for tracking bugs reported by users to a central site. It allows problem report management and communication with users via various means. GNATS stores all the information about problem reports in its databases and provides tools for querying, editing, and maintenance of the databases.

GNATS is free software, distributed under the terms of the GNU General Public License.


GNATS is used by GNU packages[citation needed] and NetBSD.[2][3] The Apache Software Foundation used the software from 1996 to 2002,[4] and the Mutt project until 2006.[5] It is also used, or was used in the past, by the FreeBSD Project, OpenBSD, Juniper Networks, Nordic Optical Telescope, CERN, Green Bank Telescope, NRAO AIPS++, European Software Institute, and the BaBar Project at SLAC.[6]

In early June 2014, FreeBSD announced concrete plans to migrate from GNATS to Bugzilla, claiming that Bugzilla supports finer granularity for categories and keywords. Furthermore, the announcement states that GNATS is missing many features that people expect from a modern bug tracker.[7]

It has been described as having been "the cornerstone" of free software bug-tracking systems.[8][9]


GNATS was written by Heinz G. Seidl of Cygnus Solutions, inspired by BSD Unix's sendbug and filebug programs, and had its first stable release in 1992.[1] Initially, its only interface was via email, but multiple web and graphical interfaces were later added.[6] During the 1990s, other Cygnus employees rewrote it, and a further major rewrite was done for release 4, with other features contributed by users.[1][10][11][12]

Although GNATS is still in use, development slowed since the 4.1 release in 2005.[13] Several changes lingered in the developers' source code repository, and a 4.2 release was discussed in 2012[14] but no official release was made until some further development, leading to release 4.2.0 on 28 February 2015.[15]


Built as a client-server architecture, GNATS works with many interfaces (described below) including email, command line, and web interfaces. All GNATS databases and configuration can be stored in plain text files, which helps in the modularity of GNATS. Categorisation and recategorisation of bug reports is particularly simple.[16]


Four official interfaces exist for GNATS:[17]

A Web interface to query and open tickets, with GNATS running as a background process (a "daemon")
Emacs GNATS mode
An extension (a "major mode") for GNU Emacs and XEmacs allowing direct access to GNAT issue-trackers
send-pr / edit-pr / query-pr
The traditional command line interface to create, edit, and query Problem Reports
A cross-platform application, written in the Tcl/Tk language

Apart from these, custom ones can be developed such as OpenBSD's sendbug interface which collects system information and submits Problem Reports via email.

See also


  1. ^ a b c "gnats (7) man page". Retrieved 7 December 2016. Copyright (c) 1992
  2. ^ "current: NetBSD switching to the GNATS bug tracking system". NetBSD has switched from the BSD bugfiler to GNU GNATS to maintain our bug database. This change will allow NetBSD developers to track bugs throughout their life cycle
  3. ^ "GNATS Bug Database Summary". GNATS Bug Database Summary, Automatically generated on 5 Apr 2013 18:00:01 GMT
  4. ^ "archive gnats bug reports". archive gnats bug reports (...) Note : this is archived material. The gnats system is no longer in use.
  5. ^ "Bug #69157 "Support "gnats" bug tracker in Malone"". mutt bugs, which uses the "gnats" problem tracker. An example URL is:
  6. ^ a b "Hobby-Eberly Telescope Problem Report Management System Design". Retrieved 7 December 2016. A web interface and various modifications known as WWW Gnats has been developed by Danks and others. Various authors have modified the system for their own use
  7. ^ "Announcement of Migration from GNATS to Bugzilla on the FreeBSD mailing list". Bugzilla supports finer granularity for categories and keywords and over time we will adopt more of these, making it easier to filter bugs into specific target areas. It is now easy for multiple people to track a single bug, without having to have them assigned to custom mailing lists, add attachments to bugs, and so on. Many features that people expect from a modern bug tracker are simply not present in GNATS.
  8. ^ "Perl-based Bug Tracking". The GNATS/PRMS Gnu Bug Tracking System has been the cornerstone of Free Software bug tracking systems. The core is command-line, e-mail based, allowing additional tools and GUI wrappers to be created for it. These include wwwgnats, a web interface, and TkGnats, a Tk interface.
  9. ^ Sandred, Jan (14 March 2002). Managing Open Source Projects - Jan Sandred. ISBN 9780471189176. The GNU GNATS has been the cornerstone of open-source bug-tracking systems. (...) The core is command-line, email-based, allowing additional tools and GUI wrappers to be created for it. These include wwwgnats, a Web interface, and TkGnats, a Tk interface.
  10. ^ "GNU Stow Manual - Cygnus software". Retrieved 7 December 2016. Cygnus is a commercial supplier and supporter of GNU software. (...) Among the packages released by Cygnus are `gdb', `gnats', (...)
  11. ^ "Email from Brian Lenihan to "Dank" in October 1996". This is a version of which I modified for our use here at Progressive Networks.
  12. ^ "wwwgnats, a WWW Front End for Gnats, the GNU Bug Tracking System". Authors: Dan Kegel & Huy Le
  13. ^ "GNATS homepage". GNATS News: March 6, 2005: GNATS 4.1.0 has been released!
  14. ^ "GNU GNATS Hackathon - 2012-01-19 14:00-17:00 UTC". On Saturday, the 19th of January, Joel, Alex, and I will be collectively hacking on GNU GNATS with the following goals in mind: (...) * Cut the 4.2.0 version - which has been hanging out on CVS for years now.
  15. ^ "News: GNU GNATS". After 10 years, GNU GNATS has finally released a new version 4.2.0
  16. ^ "GNATS issue tracking system configuration howto". The advantage of GNATS over several other issue tracking system are : (1) GNATS offers client/server interface (...) (2) GNATS allows 'relocation' of issues or bugs (...) (3) GNATS uses a file-based back-end database (...)
  17. ^ "GNATS Frequently Asked Questions: Clients". Several client applications can be found in the GNATS distribution. The most important are Gnatsweb (a WWW interface to GNATS), TkGnats (a Tcl/Tk based interface), a GNATS mode for Emacs and XEmacs, and send-pr (the traditional command line interface that sends a PR by e-mail).