Trouble Ticketing

Roundup – issue-tracking system

Roundup is a simple-to-use and install issue-tracking system with command-line, web and e-mail interfaces. It is based on the design from Ka-Ping Yee in the Software Carpentry “Track” design competition.

Roundup manages a number of issues (with flexible properties such as “description”, “priority”, and so on) and provides the ability to: (a) submit new issues, (b) find and edit existing issues, and (c) discuss issues with other participants.

The system will facilitate communication among the participants by managing discussions and notifying interested parties when issues are edited. One of the major design goals for Roundup that it be simple to get going. Roundup is therefore usable “out of the box” with any python 2.7 or 3.4+  installation. It doesn’t even need to be “installed” to be operational, though an install script is provided.

It comes with issue tracker templates (a classic bug/feature tracker and a minimal skeleton) and database back-ends including sqlite, mysql and postgresql.

Features include:

  • Simple to use:
    • accessible through the web (html, REST or XMLRPC), email, command-line or Python programs
    • may be used to track bugs, features, user feedback, sales opportunities, milestones, …
    • automatically keeps a full history of changes to issues with configurable verbosity and easy and access to information about who created or last modified any item in the database
    • issues have their own mini mailing list (nosy list) users may sign themselves up, there may be automatic signup for incoming email and users may handle their own password reset requests
  • Highly configurable:
    • Web interface HTML is fully editable.
    • Database schema is also fully editable (only the “user” class is required) with a full set of data types (including dates and many-to-many relations) across all storages available.
    • Authorization is fine grained and can be based on the properties of a user and resource (ABAC, PBAC (Attribute or Policy/Purpose Based Access Control)).
    • Customised automatic auditors and reactors may be written that perform actions before and after changes are made to entries in the database, or may veto the creation or modification of items in the database.
    • Samples are provided for all manner of configuration changes and customisations.
  • Fast, scalable:
    • With the sqlite, mysql and postgresql backends, roundup is also fast and scalable, easily handling thousands of issues and users with decent response times
    • Database indexes are automatically added for those backends that support them (sqlite, mysql and postgresql)
    • Indexed text searching giving fast responses to searches across all messages and indexed string properties
    • Support for the Xapian, Whoosh. sqlite or postgres full-text indexing engines for large trackers
  • Web interface:
    • Fully editable interfaces for listing and display of items.
    • Extendable to include wizards, parent/meta bug displays, …
    • Differentiates between anonymous, known and admin users.
    • Set up to require login, and may also only allow admin users to register new users.
    • Authentication of user registration and user-driven password resetting using email and one time keys.
    • Run using WSGI or through CGI as a normal cgi script, as a stand-alone web server, under mod_wsgi (mod_python is deprecated) or through Zope.
    • Searching may be performed using many constraints, including a full-text search of messages attached to issues.
    • File attachments (added through the web or email) are served up with the correct content-type and filename.
    • Email change messages appear to be sent by the person who made the change, but responses will go back through the nosy list by default.
    • Flexible access control built around Permissions and Roles with assigned Permissions.
    • Generates valid HTML4 or XHTML.
    • Detects concurrent user changes.
    • Saving and editing of user-defined queries which may optionally be shared with other users.
  • E-mail interface:
    • Set up using sendmail-like delivery alias, POP polling or mailbox polling.
    • Auto-register users who send in mail and aren’t known to roundup.
    • Nosy list configuration controls how people are added and when messages are sent to the list.
    • Auto-filing of “unformatted” messages into a particular class.
    • e-mail attachments are handled sanely, being attached to the issue they’re intended for, and forwarded on to the nosy list.
    • Sane handling of content-type and content-encoding of messages (text/plain preferred in all situations).
    • Email packages that display threading will show issue messages correctly threaded.
    • Send messages from multiple addresses and be associated with the same roundup username.
    • Built-in security features like TLS and APOP.
  • Command-line:
    • Interactively manage roundup databases.
    • Scriptable with standard shell scripting.
    • API available for other Python-based software.
    • Variety of sample shell scripts are provided (weekly reports, issue generation, …).
  • xmlrpc interface:
    • Simple remote tracker interface with basic HTTP authentication available at the /xmlrpc endpoint.
    • Provides same access to tracker as roundup-admin, but based on XMLRPC calls
  • RESTful interface
    • Accessible using basic HTTP authentication at /rest starting point.
    • Extend with new endpoints.
    • Authentication using JSON Web Tokens (JWT).
    • CORS support for use by third party web pages.

Support: Documentation
Developer: Richard Jones
License: A number of open source licenses


Roundup is written in Python. Learn Python with our recommended free books and free tutorials.

Return to Customer Service Trouble Ticketing | Return to Issue Tracking Systems

Popular series
Free and Open Source SoftwareThe largest compilation of the best free and open source software in the universe. Each article is supplied with a legendary ratings chart helping you to make informed decisions.
ReviewsHundreds of in-depth reviews offering our unbiased and expert opinion on software. We offer helpful and impartial information.
Alternatives to Proprietary SoftwareReplace proprietary software with open source alternatives: Google, Microsoft, Apple, Adobe, IBM, Autodesk, Oracle, Atlassian, Corel, Cisco, Intuit, and SAS.
GamesAwesome Free Linux Games Tools showcases a series of tools that making gaming on Linux a more pleasurable experience. This is a new series.
Artificial intelligence iconMachine Learning explores practical applications of machine learning and deep learning from a Linux perspective. We've written reviews of more than 40 self-hosted apps. All are free and open source.
Guide to LinuxNew to Linux? Read our Linux for Starters series. We start right at the basics and teach you everything you need to know to get started with Linux.
Alternatives to popular CLI tools showcases essential tools that are modern replacements for core Linux utilities.
System ToolsEssential Linux system tools focuses on small, indispensable utilities, useful for system administrators as well as regular users.
ProductivityLinux utilities to maximise your productivity. Small, indispensable tools, useful for anyone running a Linux machine.
AudioSurveys popular streaming services from a Linux perspective: Amazon Music Unlimited, Myuzi, Spotify, Deezer, Tidal.
Saving Money with LinuxSaving Money with Linux looks at how you can reduce your energy bills running Linux.
Home ComputersHome computers became commonplace in the 1980s. Emulate home computers including the Commodore 64, Amiga, Atari ST, ZX81, Amstrad CPC, and ZX Spectrum.
Now and ThenNow and Then examines how promising open source software fared over the years. It can be a bumpy ride.
Linux at HomeLinux at Home looks at a range of home activities where Linux can play its part, making the most of our time at home, keeping active and engaged.
Linux CandyLinux Candy reveals the lighter side of Linux. Have some fun and escape from the daily drudgery.
DockerGetting Started with Docker helps you master Docker, a set of platform as a service products that delivers software in packages called containers.
Android AppsBest Free Android Apps. We showcase free Android apps that are definitely worth downloading. There's a strict eligibility criteria for inclusion in this series.
Programming BooksThese best free books accelerate your learning of every programming language. Learn a new language today!
Programming TutorialsThese free tutorials offer the perfect tonic to our free programming books series.
Linux Around The WorldLinux Around The World showcases usergroups that are relevant to Linux enthusiasts. Great ways to meet up with fellow enthusiasts.
Stars and StripesStars and Stripes is an occasional series looking at the impact of Linux in the USA.
Notify of

This site uses Akismet to reduce spam. Learn how your comment data is processed.

1 Comment
Newest Most Voted
Inline Feedbacks
View all comments
John Rouillard
John Rouillard
1 year ago

Please update this entry.

It runs on python 3.6+ or python 2.7+. It has 5 templates including some designed for software bug tracking.

In addition to web browser access, it also has a REST interface for access from a single page app (SPA), javascript, or for communicating with other software