diff --git a/doc/features.txt b/doc/features.txt
index a2aac6ac6a58ba46d361dcee0bae8d03a13fe538..e1fa98eef211cc0558041db7c496bf3419e3b141 100644 (file)
--- a/doc/features.txt
+++ b/doc/features.txt
Roundup Features
================
-
Roundup is a simple-to-use and -install issue-tracking system with
web, e-mail and command-line interfaces. It is based on the winning design
from Ka-Ping Yee in the Software Carpentry "Track" design competition.
+*simple to install*
+ - installation (including web interface) takes about 30 minutes
+ - instant-gratification ``python demo.py`` :)
+ - two templates included in the distribution for you to base your tracker on
+ - play with the demo, customise it and then use *it* as the template for
+ your production tracker
+ - requires *no* additional support software - python (2.3+ but not 3+) is
+ enough to get you going
+ - easy to set up higher-performance storage backends like sqlite_,
+ mysql_ and postgresql_
*simple to use*
- accessible through the web, email, command-line or Python programs
- may be used to track bugs, features, user feedback, sales opportunities,
- ...
- - keeps a full history of changes to issues
+ milestones, ...
+ - automatically keeps a full history of changes to issues with
+ configurable verbosity and easy 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
-*simple to install*
- - installation takes about 10 minutes for a basic installation
- - two "template" schemas included in the distribution for you to base your
- tracker on
+*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
+ - 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 full-text indexing engine for large trackers
+
+*documented*
+ - documentation exists for installation, upgrading, maintenance, users and
+ customisation
*web interface*
- - fully editable interfaces for indexing and display of items
+ - fully editable interfaces for listing and display of items
+ - extendable to include wizards, parent/meta bug displays, ...
- differentiates between anonymous, known and admin users
- may be set up to require login, and may also only allow admin users
to register new users
- - may be run through CGI as a normal cgi script, as a stand-alone
- web server, or through Zope
+ - authentication of user registration and user-driven password resetting
+ using email and one time keys
+ - may be run using WSGI or through CGI as a normal cgi script, as a
+ stand-alone web server, under mod_python 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 generated by roundup appear to be sent by the
person who made the change, but responses will go back through the nosy
- list by default (see `e-mail interface`_)
+ 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`*
+*e-mail interface*
- may be set up using sendmail-like delivery alias, POP polling or mailbox
polling
- - issues have their own mini mailing list (nosy list)
- may 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
threaded
- users may send in messages from multiple addresses and be associated
with the same roundup username
+ - built-in security features like TLS and APOP
*command-line*
- may be used to interactively manage roundup databases
- may be scripted using standard shell scripting
- roundup's API may also be used by other Python programs - a sample is
provided that runs once a day and emails people their assigned issues
+ - a variety of sample shell scripts are provided (weekly reports, issue
+ generation, ...)
-*highly configurable*
- - web interface HTML is fully editable
- - database schema is also fully editable
- - customised automatic auditors and reactors may be written that perform
- actions before and after changes are made to entries in the database
- - samples are provided for all types of configuration changes
+*xmlrpc interface*
+ - simple remote tracker interface with basic HTTP authentication
+ - provides same access to tracker as roundup-admin, but based on
+ XMLRPC calls
+
+.. _sqlite: http://www.hwaci.com/sw/sqlite/
+.. _mysql: http://sourceforge.net/projects/mysql-python
+.. _postgresql: http://initd.org/software/initd/psycopg