Trac
Encyclopedia
Trac is an open source
, web-based project management
and bug-tracking tool. The program is inspired by CVSTrac, and was originally named svntrac due to its ability to interface with Subversion. It is developed and maintained by Edgewall Software.
Trac is written in the Python programming language
. Until mid-2005, it was available under the GNU General Public License
; since version 0.9, it has been released under a modified BSD license. Both are free software licenses.
ing information between a bug database, revision control
and wiki
content. It also serves as a web
interface to the following revision control
systems: Subversion, Git
, Mercurial
, Bazaar, Perforce
and Darcs
. Prior to version 0.11 the web front end presentation of Trac was handled by the ClearSilver template system
. Starting with 0.11 an in-house template system called Genshi
is used, although compatibility with ClearSilver based plugins will remain for several versions.
Other features include:
Among the users of Trac is NASA
's Jet Propulsion Laboratory
, which reports that it uses this tool to manage various deep space and near space projects; Twisted
, an asynchronous networking framework implemented in Python; the Dojo Toolkit
, one of the popular Open source
JavaScript library
projects; Piwik
, a free software equivalent to services like Google Analytics
; and WordPress
, the popular blogging platform, all use Trac for bug tracking and as a source tree viewer. Some projects also use Trac's wiki.
Open source
The term open source describes practices in production and development that promote access to the end product's source materials. Some consider open source a philosophy, others consider it a pragmatic methodology...
, web-based project management
Project management
Project management is the discipline of planning, organizing, securing, and managing resources to achieve specific goals. A project is a temporary endeavor with a defined beginning and end , undertaken to meet unique goals and objectives, typically to bring about beneficial change or added value...
and bug-tracking tool. The program is inspired by CVSTrac, and was originally named svntrac due to its ability to interface with Subversion. It is developed and maintained by Edgewall Software.
Trac is written in the Python programming language
Python (programming language)
Python is a general-purpose, high-level programming language whose design philosophy emphasizes code readability. Python claims to "[combine] remarkable power with very clear syntax", and its standard library is large and comprehensive...
. Until mid-2005, it was available under the GNU General Public License
GNU General Public License
The GNU General Public License is the most widely used free software license, originally written by Richard Stallman for the GNU Project....
; since version 0.9, it has been released under a modified BSD license. Both are free software licenses.
Features
Trac allows hyperlinkHyperlink
In computing, a hyperlink is a reference to data that the reader can directly follow, or that is followed automatically. A hyperlink points to a whole document or to a specific element within a document. Hypertext is text with hyperlinks...
ing information between a bug database, revision control
Revision control
Revision control, also known as version control and source control , is the management of changes to documents, programs, and other information stored as computer files. It is most commonly used in software development, where a team of people may change the same files...
and wiki
Wiki
A wiki is a website that allows the creation and editing of any number of interlinked web pages via a web browser using a simplified markup language or a WYSIWYG text editor. Wikis are typically powered by wiki software and are often used collaboratively by multiple users. Examples include...
content. It also serves as a web
World Wide Web
The World Wide Web is a system of interlinked hypertext documents accessed via the Internet...
interface to the following revision control
Revision control
Revision control, also known as version control and source control , is the management of changes to documents, programs, and other information stored as computer files. It is most commonly used in software development, where a team of people may change the same files...
systems: Subversion, Git
Git (software)
Git is a distributed revision control system with an emphasis on speed. Git was initially designed and developed by Linus Torvalds for Linux kernel development. Every Git working directory is a full-fledged repository with complete history and full revision tracking capabilities, not dependent on...
, Mercurial
Mercurial
Mercurial is a cross-platform, distributed revision control tool for software developers. It is mainly implemented using the Python programming language, but includes a binary diff implementation written in C. It is supported on Windows and Unix-like systems, such as FreeBSD, Mac OS X and Linux...
, Bazaar, Perforce
Perforce
Perforce is a commercial, proprietary, centralized revision control system developed by Perforce Software, Inc.-Architecture:Perforce is a client/server system.The server manages a central database and a master repository of file versions....
and Darcs
Darcs
Darcs is a distributed revision control system created by David Roundy; it was designed to replace traditional, centralized source control systems such as CVS and Subversion...
. Prior to version 0.11 the web front end presentation of Trac was handled by the ClearSilver template system
Web template system
A Web template system describes the software and methodologies used to produce web pages and for deployment on websites and delivery over the Internet. Such systems process web templates, using a template engine...
. Starting with 0.11 an in-house template system called Genshi
Genshi (templating language)
Genshi is a template engine for XML-based vocabularies written inPython. Genshi is used to easily insert generated output into XML-based languages, usually HTML, and reuse elements between documents...
is used, although compatibility with ClearSilver based plugins will remain for several versions.
Other features include:
- Project management (Roadmap, Milestones, etc.)
- Ticket system (bug tracking, tasks, etc.)
- Fine-grained permissions (since 0.11)
- Timeline of all recent activity
- Wiki (syntax similar to MoinMoinMoinMoinMoinMoin is a wiki engine implemented in Python, initially based on the PikiPiki wiki engine. The MoinMoin code is licensed under the GNU General Public License v2, or any later version .A number of organizations use MoinMoin to run public wikis,...
) - Customized reporting
- VCS web interface
- RSS Feeds
- Multiple project support (planned for post-1.0 versions)
- Environment extensibility (via Python plugins)
- iCalendarICalendariCalendar is a computer file format which allows Internet users to send meeting requests and tasks to other Internet users, via email, or sharing files with an extension of .ics...
export - Multiple Repository Support per environment (since 0.12)
- Interface localizationLocalizationLocalization or localisation, and represented as a numeronym as L10n, may refer to:* Language localization, the process of translating a product into different languages or adapting a product for a specific country or region...
s (since 0.12)
Adoption
Trac is reported to have more than 450 major installations worldwide.Among the users of Trac is NASA
NASA
The National Aeronautics and Space Administration is the agency of the United States government that is responsible for the nation's civilian space program and for aeronautics and aerospace research...
's Jet Propulsion Laboratory
Jet Propulsion Laboratory
Jet Propulsion Laboratory is a federally funded research and development center and NASA field center located in the San Gabriel Valley area of Los Angeles County, California, United States. The facility is headquartered in the city of Pasadena on the border of La Cañada Flintridge and Pasadena...
, which reports that it uses this tool to manage various deep space and near space projects; Twisted
Twisted (software)
Twisted is an event-driven network programming framework written in Python and licensed under the MIT License.Twisted projects variously support TCP, UDP, SSL/TLS, IP Multicast, Unix domain sockets, a large number of protocols , and much more...
, an asynchronous networking framework implemented in Python; the Dojo Toolkit
Dojo Toolkit
Dojo Toolkit is an open source modular JavaScript library designed to ease the rapid development of cross-platform, JavaScript/Ajax-based applications and web sites. It was started by Alex Russell, Dylan Schiemann, David Schontzler, and others in 2004 and is dual-licensed under the modified BSD...
, one of the popular Open source
Open source
The term open source describes practices in production and development that promote access to the end product's source materials. Some consider open source a philosophy, others consider it a pragmatic methodology...
JavaScript library
JavaScript library
A JavaScript library is a library of pre-written JavaScript which allows for easier development of JavaScript-based applications, especially for AJAX and other web-centric technologies....
projects; Piwik
Piwik
Piwik is an open source web analytics system written by a team of international developers, and runs on a PHP/MySQL webserver. Piwik is used by over 250,000 websites and is translated in more than 45 languages....
, a free software equivalent to services like Google Analytics
Google Analytics
Google Analytics is a free service offered by Google that generates detailed statistics about the visitors to a website. The product is aimed at marketers as opposed to webmasters and technologists from which the industry of web analytics originally grew. It is the most widely used website...
; and WordPress
WordPress
WordPress is a free and open source blogging tool and publishing platform powered by PHP and MySQL. It is often customized into a content management system . It has many features including a plug-in architecture and a template system. WordPress is used by over 14.7% of Alexa Internet's "top 1...
, the popular blogging platform, all use Trac for bug tracking and as a source tree viewer. Some projects also use Trac's wiki.
See also
- List of project management software
- Comparison of issue tracking systemsComparison of issue tracking systemsThis article is a comparison of issue tracking systems which are notable, including bug tracking systems, help desk and service desk issue tracking systems, and asset management systems...
- Software configuration managementSoftware configuration managementIn software engineering, software configuration management is the task of tracking and controlling changes in the software. Configuration management practices include revision control and the establishment of baselines....
- TracExplorerTracExplorerTracExplorer is a Trac client, implemented as an addin for Microsoft Visual Studio 2005, 2008+. It is released under the GPL v3 License.-Features:* Provides the ability to view and manipulate tickets on your Trac system in Visual Studio...
- Visual Studio and TortoiseSvn Bugtraq Integration
External links
- Trac Project home page
- Edgewall Software Home
- Trac Hacks
- Trac and Subversion (SVN) on FreeBSD – Installation and Configuration Guide that covers Trac and Subversion combination on FreeBSD servers