Trac is an
open-source, web-based
project management
Project management is the process of supervising the work of a Project team, team to achieve all project goals within the given constraints. This information is usually described in project initiation documentation, project documentation, crea ...
and
bug tracking system. It has been adopted by a variety of organizations for use as a bug tracking system for both free and open-source software and proprietary projects and products.
Trac integrates with major
version control systems including (
"out of the box")
Subversion
Subversion () refers to a process by which the values and principles of a system in place are contradicted or reversed in an attempt to sabotage the established social order and its structures of Power (philosophy), power, authority, tradition, h ...
and
Git. Trac is used, among others, by
Django,
FFmpeg,
WebKit
WebKit is a browser engine primarily used in Apple's Safari web browser, as well as all web browsers on iOS and iPadOS. WebKit is also used by the PlayStation consoles starting with the PS3, the Tizen mobile operating systems, the Amazon K ...
,
0 A.D., and
WordPress
WordPress (WP, or WordPress.org) is a web content management system. It was originally created as a tool to publish blogs but has evolved to support publishing other web content, including more traditional websites, electronic mailing list, ma ...
.
Trac is available on all major
operating systems including
Windows
Windows is a Product lining, product line of Proprietary software, proprietary graphical user interface, graphical operating systems developed and marketed by Microsoft. It is grouped into families and subfamilies that cater to particular sec ...
via Installer or
Bitnami,
OS X via
MacPorts or
pkgsrc
pkgsrc (''package source'') is a package management system for Unix-like operating systems. It was forked from the FreeBSD ports collection in 1997 as the primary package management system for NetBSD. Since then it has evolved independently; in 1 ...
,
Debian
Debian () is a free and open-source software, free and open source Linux distribution, developed by the Debian Project, which was established by Ian Murdock in August 1993. Debian is one of the oldest operating systems based on the Linux kerne ...
,
Ubuntu
Ubuntu ( ) is a Linux distribution based on Debian and composed primarily of free and open-source software. Developed by the British company Canonical (company), Canonical and a community of contributors under a Meritocracy, meritocratic gover ...
,
Arch Linux or
FreeBSD, as well as on various
cloud hosting services.
History
Inspired by CVSTrac, Jonas Borgström and Daniel Lundin from Edgewall Software started writing ''svntrac'' in August 2003 using
SQLite and
Subversion
Subversion () refers to a process by which the values and principles of a system in place are contradicted or reversed in an attempt to sabotage the established social order and its structures of Power (philosophy), power, authority, tradition, h ...
.
In December 2003 they renamed it to ''Trac''. In February 2004 the Trac version was changed first from 0.0.1 to 0.1 and then directly from 0.1 to 0.5. That release was followed in March 2004 by 0.6 and 0.7, and 0.8 in November 2004.
Edgewall Software is an umbrella organization for hosting edgewall.org for the community to collaborate on developing open source Python software.
It used to offer software development, consulting and support services. Some of the earliest community members to collaborate in the open source development of Trac were Rocky Burt in March 2004, Christopher Lenz and Francois Harvey in May 2004, Christian Boos and Otavio Salvador in December 2004 and Mark Rowe March 2005.
In August 2005 the license was changed from
GPL-2.0-or-later to
BSD-3-Clause. The first release under this final license was Trac 0.9 in October 2005, which among other features introduced
PostgreSQL database support.
Trac 0.10, released in September 2006, was an important release that first introduced the component system that to this day allows plugins to extend and add features to Trac's core. Trac itself since this point consists mainly of optional plugin components that can be disabled or replaced entirely.
MySQL
MySQL () is an Open-source software, open-source relational database management system (RDBMS). Its name is a combination of "My", the name of co-founder Michael Widenius's daughter My, and "SQL", the acronym for Structured Query Language. A rel ...
database support is added as one such core component. This release added support for
version control systems other than Subversion by external plugins.
Mercurial support was provided through a separate plugin due to its GPL license restrictions.
Trac 0.11, released in June 2008, changed the HTML
template system from ClearSilver
to
Genshi, breaking compatibility with many of the older plugins.
Trac 0.12 was released in June 2010 and became a stable long term release with the latest point release 0.12.7 from July 2015. It added
internationalization and localization
In computing, internationalization and localization (American English, American) or internationalisation and localisation (British English, British), often abbreviated i18n and l10n respectively, are means of adapting to different languages, regi ...
support using ''Babel'', and allows using multiple version control repositories at once.
Trac 1.0 was released in September 2012,
the previous stable long term supported version with the latest point release 1.0.13 from September 2016. It included the previously external plugin for
Git version control support.
Trac 1.1.1 from February 2013 through 1.1.6 from July 2015 are releases without long-term support and compatibility guarantees, that turned into Trac 1.2 from November 2016.
Trac 1.4 from August 2019 was the last stable release running on Python 2.7. It uses the
Jinja template system.
Trac 1.6 from September 2023 is the current stable release and works exclusively on Python3. Many of the plugins have also been rewritten to work on Python3 as well as Jinja.
Core features
Trac offers a no-frills approach to
project management
Project management is the process of supervising the work of a Project team, team to achieve all project goals within the given constraints. This information is usually described in project initiation documentation, project documentation, crea ...
by deeply integrating
ticket tracking,
version control
Version control (also known as revision control, source control, and source code management) is the software engineering practice of controlling, organizing, and tracking different versions in history of computer files; primarily source code t ...
(for which multiple repositories per environment are supported), and
wiki
A wiki ( ) is a form of hypertext publication on the internet which is collaboratively edited and managed by its audience directly through a web browser. A typical wiki contains multiple pages that can either be edited by the public or l ...
. It allows
hyperlink
In computing, a hyperlink, or simply a link, is a digital reference providing direct access to Data (computing), data by a user (computing), user's point and click, clicking or touchscreen, tapping. A hyperlink points to a whole document or to ...
ing information between these systems, include wiki content directly in a ticket or list tickets automatically on wiki pages.
The ticket system can be used for tracking bugs, tasks, issues, incidents or any other kind of ticket. Customized reports can be generated from parametric stored
SQL queries or using an interactive ticket query system. There is also an integrated search engine and a fine-grained permission system.
Additional project management features include grouping tickets into milestones and a roadmap where the milestones and their progress are listed and visualized. The recent activity is shown on a timeline page, and users are notified by email or can subscribe to
RSS or
iCalendar feeds.
Additional features
Trac has a plugin system to add additional features and to integrate with external tools. Besides the core
SVN and Git support, Trac can connect via plugins to many other
version control
Version control (also known as revision control, source control, and source code management) is the software engineering practice of controlling, organizing, and tracking different versions in history of computer files; primarily source code t ...
systems, including
Bazaar
A bazaar or souk is a marketplace consisting of multiple small Market stall, stalls or shops, especially in the Middle East, the Balkans, Central Asia, North Africa and South Asia. They are traditionally located in vaulted or covered streets th ...
,
CVS,
Darcs,
Mercurial,
Monotone, and
Perforce.
Features provided by plugins include
Continuous integration
Continuous integration (CI) is the practice of integrating source code changes frequently and ensuring that the integrated codebase is in a workable state.
Typically, developers Merge (version control), merge changes to an Branching (revisio ...
, account management,
tags, spam filtering, blogs and discussion fora, and connectors for
XML-RPC
XML-RPC is a remote procedure call (RPC) protocol which uses XML to encode its calls and HTTP as a transport mechanism.Simon St. Laurent, Joe Johnston, Edd Dumbill. (June 2001) ''Programming Web Services with XML-RPC.'' O'Reilly. First Edition. ...
and
Pastebin.
Apache Bloodhound
Apache Bloodhound is a web-based
project management
Project management is the process of supervising the work of a Project team, team to achieve all project goals within the given constraints. This information is usually described in project initiation documentation, project documentation, crea ...
and
bug tracking system built on top of Trac.
The Bloodhound project was initially submitted to the Apache Incubator by
WANdisco
Cirata plc. (formerly known as WANdisco plc.) develops technology that moves large Internet of things, Internet of Things (IoT) datasets, edge data, and Hadoop. The company is dual-headquartered in Sheffield, England and San Ramon, California.
H ...
.
Bloodhound became a top-level Apache project in 2013.
Bloodhound added multi-project support to Trac.
According to the Bloodhound webpage, this project has been retired (August 2024).
See also
*
Comparison of project management software
*
Comparison of issue-tracking systems
*
Software configuration management
*
Agilo for Trac is an agile Scrum tool based on Trac.
*
Apache Allura Python based project management software
*
Kallithea
Kallithea (Greek language, Greek: Καλλιθέα, meaning "beautiful view") is a suburb in Athens#Athens Urban Area, Athens agglomeration and a municipality in South Athens (regional unit), south Athens regional unit. It is the eighth larges ...
Python based project management software with good code review support
*
Redmine though developed in
Ruby
Ruby is a pinkish-red-to-blood-red-colored gemstone, a variety of the mineral corundum ( aluminium oxide). Ruby is one of the most popular traditional jewelry gems and is very durable. Other varieties of gem-quality corundum are called sapph ...
its design was significantly influenced by Trac
Notes
References
External links
*
{{Wiki software
Free project management software
Free software programmed in Python
Free wiki software
Bug and issue tracking software
Cross-platform free software
2003 software
Software using the BSD license