Roundup (issue tracker)

Roundup (issue tracker)

*"For other uses of the phrase "Round Up" see Round Up (disambiguation)"

Roundup is an open-source issue or bug tracking system featuring a command-line, web and e-mail interface. It is written in Python and designed to be highly customizable [The primary user interface is the web interface. A so-called classic tracker template is distributed as the standard template and data structure set, but can be used as a starting point for customization] . Roundup was designed by Ka-Ping Yee for the Software Carpentry project and is currently being developed under the direction of Richard Jones. It is currently the issue tracker for the Python programming language itself [ [http://wiki.python.org/moin/TrackerDocs/ TrackerDocs - PythonInfo Wiki ] ] .

Features

The standard configuration of Roundup features:

* a web interface for viewing, editing and searching issues
* a Mail gateway allowing creation and changing of issues [ [http://roundup.sourceforge.net/doc-1.0/design.html#e-mail-user-interface E-Mail User Interface] , Roundup design description]
* a database abstraction layer, currently supporting (among others) Python's built-in "anydbm" module, PostgreSQL, MySQL and SQLite
* issue-specific "nosy lists", used for e-mail notifications and conversation (each issue effectively becoming a mini mailing list) [ [http://zesty.ca/sc-roundup.html#discuss Design of Nosy Lists] ]
* an authorization system [ [http://roundup.sourceforge.net/doc-1.0/design.html#access-control access control] , Roundup design description] , based on roles (of users), classes and objects
* an interactive shell for backup and restore tasks and for manipulation of objects

Roundup runs as a daemon process, CGI script [usage via CGI is rare and not recommended, for performance reasons] or alternatively using mod_python.

Concepts

Roundup is customized by changing the contents of the tracker instance directory:

Database schema

The database schema is defined in a Python file in the tracker instance's root directory; it isre-read whenever the server is started anew. When changes are found (e.g. new attributes), the tables of the underlying RDBS are altered accordingly.

Page templates

Roundup uses the Template Attribute Language (TAL) known from Zope to create HTML or XHTML output. Some templates are used for several classes, e.g. _generic.index.html, which allows (authorized) users to change the objects of all classes which lack an own index template.

When an „issue123“ is requested, this "designator" is split in the "issue" class and the id „123“ [ [http://roundup.sourceforge.net/doc-1.0/design.html#identifiers-and-designators identifiers and designators] , Roundup design description] . By default an „item“ template is chosen: First, an issue.item.html template file is looked for; if it can't be found, _generic.item.html is used as a fallback option. If this is missing equally, an error occurs.

Detectors

Many Roundup functions, including some of the standard functionality, are implemented using so-called "detectors" [ [http://roundup.sourceforge.net/doc-1.0/design.html#detector-interface detector interface] , Roundup design description] , which are located in the „detectors“ sub-directory of the tracker instance. They are Python subroutines which have access to the object to change (if already created) and the requested attribute changes.

Detectors are distinguished between "auditors" and "reactors". Auditors are used primarily for several automatic changes (in the standard configuration, the "assignedto" user is automagically added to the "nosy list" of the issue), and to refuse un-allowed changes; reactors are executed thereafter and used e.g. for the e-mail notification feature, sending notification mails to all users interested in a certain issue when a comment is added to it.

Detectors are triggered whenever one of the actions
* create
* set (change of attributes)
* retire
* restoreis requested. They can be used to create an elaborated custom workflow.

Extensions

The instance subdirectory „extensions“ can hold additional files which are needed for extended functionalities which can't (conveniently) be done with TAL; even totally new actions are possible.

Python modules which are used by both detectors and extensions can be put in the „lib“ subdirectory

See also

* Comparison of ticket-tracking systems
* Software Carpentry project

External links

* [http://roundup.sourceforge.net/ project site at sourceforge]
* Ka-Ping Yee's [http://zesty.ca/sc-roundup.html design proposal]
* Ka-Ping Yee's [http://zesty.ca/sc-roundup-2.html implementation guide]
* [http://www.python.org/pycon/2005/papers/12/Roundup-PyCon-2005/pycon_roundup.html Roundup Issue Tracker - PyCon 2005 Presentation]

References


Wikimedia Foundation. 2010.

Игры ⚽ Поможем написать курсовую

Look at other dictionaries:

  • Roundup (Bugtracker) — Entwickler Richard Jones Aktuelle Version 1.4.19 (15. Juli 2011) Betriebssystem Alle auf denen Python läuft. Lizenz Verschiedene Freie Software Lizenzen …   Deutsch Wikipedia

  • Issue-Tracking-System — Ein Issue Tracking System (TTS; Synonyme: Help Desk System, Serviceticket System, Ticketing System, Task Tracking System, Support Ticketing System, Trouble Ticket System, teilweise auch Fallbearbeitungssystem) ist eine Art von Software, um… …   Deutsch Wikipedia

  • Comparison of issue-tracking systems — This 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. The comparison includes client server application,… …   Wikipedia

  • Mantis Bug Tracker — Screenshot  MantisBT Actual Work …   Wikipedia

  • Round Up (disambiguation) — Round up, or roundup , may refer to:Animals*The process of mustering animals into an area so they can be caught or treated etc., as in: **Pendleton Round Up, a rodeo in Oregon **Rattlesnake Round Up, in Sweetwater, Texas **Surin Elephant Round up …   Wikipedia

  • METAL — The Macro Expansion Template Attribute Language complements TAL, providing macros which allow the reuse of code across template files. Both were created for Zope but are used in other Python projects as well. Overview METAL complements TAL with… …   Wikipedia

  • Template Attribute Language — The Template Attribute Language (TAL) is a templating language aimed to generate HTML and XML pages. Its main goal is to simplify the collaboration of programmers and designers by templates being proper HTML (or XML, respectively) which can be… …   Wikipedia

  • List of software license violations — This is list of software license violations. Software that violated license * Alloksoft [http://ffmpeg.mplayerhq.hu/shame.html FFmpeg Hall of Shame:] ] [ [http://roundup.mplayerhq.hu/roundup/ffmpeg/issue438 Issue 438: License Violation by… …   Wikipedia

  • Сравнение систем отслеживания ошибок — Эта страница содержит сравнение как систем отслеживания ошибок так и систем управления проектами. Содержание 1 Системы управления проектами 2 Системы отслеживания ошибок …   Википедия

  • JIRA — Développeur Atlassian Software Systems Dernière version …   Wikipédia en Français

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”