Code

renamed the text files so that they're recognised as text files on windows
authorrichard <richard@57a73879-2fb5-44c3-a270-3262357dd7e2>
Mon, 23 Jul 2001 08:55:04 +0000 (08:55 +0000)
committerrichard <richard@57a73879-2fb5-44c3-a270-3262357dd7e2>
Mon, 23 Jul 2001 08:55:04 +0000 (08:55 +0000)
added INSTALL.TXT

git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@57 57a73879-2fb5-44c3-a270-3262357dd7e2

CHANGES [deleted file]
CHANGES.TXT [new file with mode: 0644]
INSTALL.TXT [new file with mode: 0644]
README [deleted file]
README.TXT [new file with mode: 0644]

diff --git a/CHANGES b/CHANGES
deleted file mode 100644 (file)
index 9d394c6..0000000
--- a/CHANGES
+++ /dev/null
@@ -1,62 +0,0 @@
-2001-07-11 - 0.1.0
- . Needed a bug tracking system. Looked around. Tried to install many
-   Perl-based systems, to no avail. Got tired of waiting for Roundup to be
-   released. Had just finished major product project, so needed something
-   different for a while. Roundup here I come...
-
-
-2001-07-18 - 0.1.1
- . Initial version release with consent of Roundup spec author, Ka-Ping Yee:
-   "Amazing!  Nice work.  I'll watch for the source code on your website."
-
-
-2001-07-18 - 0.1.2
- . Set default index to ?:group=priority&:columns=activity,status,title so
-   the priority column isn't displayed.
- . Thanks Anthony:
-   . added notes to the README about Python prerequisites
-   . added check to roundup.py, roundup.cgi, server.py and roundup-mailgw.py
-     for python 2+ - and made the file itself parseable by 1.5.2 ;)
-   . python 2.0 didn't have the default args for the time module functions.
-   . better handling of db directory in initDB
- . Sorting on the extra properties defined by roundupdb classes was broken
-   due to the caching used. May now sort on activity and creation
-   properties, etc.
- . Set the default index to sort on activity
-
-
-2001-07-19 - 0.1.3
- . Reldate now takes an argument "pretty" - when true, it pretty-prints the
-   interval generated up to 5 days, then pretty-prints the date of last
-   activity. The issue index and item now use the pretty format.
- . Classes list for admin user in CGI interface.
- . Made the view configuration more accessible, neater and more realistic.
- . Fixed list view grouping handling grouping by a Multilink or String or Link
-   value of None or Date, ...  (mind you, sorting by Date???)
- . Fixed bug in the plain formatter when a Link was None.
- . Fixed ordering of list view column headings.
- . Fixed list view column heading sort links - and limited the number of
-   columns to sort by to 2.
- . Added searching by glob to StringType filtering -
-    ^text  - search for text at start of fields
-    text$  - search for text at end of fields
-    ^text$ - exactly match text in fields
-    te*xt  - search for text matching "te"<any characters>"xt"
-    te?xt  - search for text matching "te"<any one character>"xt"
- . Added more fields to the issue.filter and issue.index templates
-
-
-2001-07-19 - 0.1.4
- . Fixed bug in re generation in the filter (I hadn't finished the code ;)
- . Fixed handling of None String property in grouped list headings
- . Fixed adding new issue with no change note
- . Added an issue priority of support
- . Fixed values in text input fields which contained quotes (") are now
-   quoted.
- . Fixed a bug in the hyperdb filter - wrong variable names in the error
-   message.
- . Major reshuffle of code to allow multiple roundup instances and a
-   single, site-packages -based installation. Also allows multiple database
-   back-ends.
- . moved the bin/ proggies into the top dir, so that it all works
-   out-of-the-box
diff --git a/CHANGES.TXT b/CHANGES.TXT
new file mode 100644 (file)
index 0000000..9d394c6
--- /dev/null
@@ -0,0 +1,62 @@
+2001-07-11 - 0.1.0
+ . Needed a bug tracking system. Looked around. Tried to install many
+   Perl-based systems, to no avail. Got tired of waiting for Roundup to be
+   released. Had just finished major product project, so needed something
+   different for a while. Roundup here I come...
+
+
+2001-07-18 - 0.1.1
+ . Initial version release with consent of Roundup spec author, Ka-Ping Yee:
+   "Amazing!  Nice work.  I'll watch for the source code on your website."
+
+
+2001-07-18 - 0.1.2
+ . Set default index to ?:group=priority&:columns=activity,status,title so
+   the priority column isn't displayed.
+ . Thanks Anthony:
+   . added notes to the README about Python prerequisites
+   . added check to roundup.py, roundup.cgi, server.py and roundup-mailgw.py
+     for python 2+ - and made the file itself parseable by 1.5.2 ;)
+   . python 2.0 didn't have the default args for the time module functions.
+   . better handling of db directory in initDB
+ . Sorting on the extra properties defined by roundupdb classes was broken
+   due to the caching used. May now sort on activity and creation
+   properties, etc.
+ . Set the default index to sort on activity
+
+
+2001-07-19 - 0.1.3
+ . Reldate now takes an argument "pretty" - when true, it pretty-prints the
+   interval generated up to 5 days, then pretty-prints the date of last
+   activity. The issue index and item now use the pretty format.
+ . Classes list for admin user in CGI interface.
+ . Made the view configuration more accessible, neater and more realistic.
+ . Fixed list view grouping handling grouping by a Multilink or String or Link
+   value of None or Date, ...  (mind you, sorting by Date???)
+ . Fixed bug in the plain formatter when a Link was None.
+ . Fixed ordering of list view column headings.
+ . Fixed list view column heading sort links - and limited the number of
+   columns to sort by to 2.
+ . Added searching by glob to StringType filtering -
+    ^text  - search for text at start of fields
+    text$  - search for text at end of fields
+    ^text$ - exactly match text in fields
+    te*xt  - search for text matching "te"<any characters>"xt"
+    te?xt  - search for text matching "te"<any one character>"xt"
+ . Added more fields to the issue.filter and issue.index templates
+
+
+2001-07-19 - 0.1.4
+ . Fixed bug in re generation in the filter (I hadn't finished the code ;)
+ . Fixed handling of None String property in grouped list headings
+ . Fixed adding new issue with no change note
+ . Added an issue priority of support
+ . Fixed values in text input fields which contained quotes (") are now
+   quoted.
+ . Fixed a bug in the hyperdb filter - wrong variable names in the error
+   message.
+ . Major reshuffle of code to allow multiple roundup instances and a
+   single, site-packages -based installation. Also allows multiple database
+   back-ends.
+ . moved the bin/ proggies into the top dir, so that it all works
+   out-of-the-box
diff --git a/INSTALL.TXT b/INSTALL.TXT
new file mode 100644 (file)
index 0000000..4d236f4
--- /dev/null
@@ -0,0 +1,82 @@
+                                    Roundup
+                                    =======
+
+
+Installation
+===============
+These instructions work on redhat 6.2 and mandrake 8.0 - with the caveat
+that these systems don't come with python 2.0 or newer installed, so you'll
+have to upgrade python before this stuff will work.
+
+Roundup is configurable using a localconfig.py file in the instance home.
+It may have the following variable declarations:
+  
+  MAILHOST - The SMTP mail host that roundup will use to send mail
+  MAIL_DOMAIN - The domain name used for email addresses
+
+Any further configuration should be possible by editing the instance home's
+__init__.py directly.
+
+The email addresses used by the system by default are:
+
+  issue_tracker@MAIL_DOMAIN  - submissions of issues
+  roundup-admin@MAIL_DOMAIN  - roundup's internal use (problems, etc)
+
+
+Prerequisites
+-----------------
+Either:
+ . Python 2.0 with pydoc installed. See http://www.lfw.org/ for pydoc.
+or
+ . Python 2.1
+
+Both need the anydbm or bsddb module.
+
+
+
+Initial Setup
+=============
+
+Instance
+--------
+Try "./roundup-admin init" :)
+
+
+Mail
+----
+Set up a mail alias called "issue_tracker" as:
+  "|/usr/bin/python /home/httpd/html/roundup/roundup-mailgw <instance_home>"
+
+In some installations (e.g. RedHat 6.2 I think) you'll need to set up smrsh
+so sendmail will accept the pipe command. In that case, symlink
+/etc/smrsh/python to /usr/bin/python and change the command to:
+  "|python /home/httpd/html/roundup/roundup-mailgw <instance_home>"
+
+
+Web Interface
+-------------
+This software will work through apache or stand-alone.
+
+Stand-alone:
+ 1. Edit roundup-server at the top - ROUNDUP_INSTANCE_HOMES needs to know
+    about your instance.
+ 2. "./roundup-server [hostname port]"   (hostname may be "")
+ 3. Load up the page "/" using the port number you set.
+
+Apache:
+ 1. Make sure roundup.cgi is executable. Edit it at the top -
+    ROUNDUP_INSTANCE_HOMES needs to know about your instance.
+ 2. Edit your /etc/httpd/conf/httpd.conf and make sure that the
+    /home/httpd/html/roundup/roundup.cgi script will be treated as a CGI
+    script.
+ 3. Add the following to your /etc/httpd/conf/httpd.conf:
+------8<------- snip here ------8<-------
+RewriteEngine on
+RewriteCond %{HTTP:Authorization} ^(.*)
+RewriteRule ^/roundup/roundup.cgi(.*) /home/httpd/html/roundup/roundup.cgi$1 [e=HTTP_CGI_AUTHORIZATION:%1,t=application/x-httpd-cgi,l]
+------8<------- snip here ------8<-------
+   note: the RewriteRule must be on one line - no breaks
+ 4. Re-start your apache to re-load the config
+ 5. Load up the page "/roundup/roundup.cgi/"
+
+
diff --git a/README b/README
deleted file mode 100644 (file)
index 45a6b9c..0000000
--- a/README
+++ /dev/null
@@ -1,157 +0,0 @@
-                                    Roundup
-                                    =======
-
-
-1. License
-==========
-This software is released under the GNU GPL. The copyright is held by Bizar
-Software Pty Ltd (http://www.bizarsoftware.com.au).
-
-The stylesheet included with this package has been copied from the Zope
-management interface and presumably belongs to Digital Creations.
-
-
-2. Installation
-===============
-For installation notes, please see the file INSTALL.TXT
-
-
-3. Usage
-========
-The system is designed to accessed through the command-line, e-mail or web
-interface.
-
-3.1 Command-line
-----------------
-The command-line tool is called "roundup-admin" and is used for most low-level
-database manipulations such as:
- . creating a database instance
- . redefining the list of products ("create" and "retire" commands)
- . adding users manually, or setting their passwords ("create" and "set")
- . other stuff - run it with no arguments to get a better description of
-   what it does.
-
-
-3.2 E-mail
-----------
-See the docstring at the start of the roundup/mailgw.py source file.
-
-
-3.3 Web
--------
-Hopefully, this interface is pretty self-explanatory...
-
-Index views may be modified by the following arguments:
-    :sort    - sort by prop name, optionally preceeded with '-'
-            to give descending or nothing for ascending sorting.
-    :group   - group by prop name, optionally preceeded with '-' or
-            to sort in descending or nothing for ascending order.
-    :filter  - selects which props should be displayed in the filter
-            section. Default is all.
-    :columns - selects the columns that should be displayed.
-            Default is all.
-    propname - selects the values the node properties given by propname
-             must have (very basic search/filter).
-
-
-
-3. Design
-=========
-This software was written according to the specification found at
- http://software-carpentry.codesourcery.com/entries/second-round/track/Roundup/
-
-... with some modifications. I've marked these in the source with 'XXX'
-comments when I remember to.
-
-In short:
- Class.find() - may match multiple properties, uses keyword args.
-
- Class.filter() - isn't in the spec and it's very useful to have at the Class
-    level.
- CGI interface index view specifier layout part - lose the '+' from the
-    sorting arguments (it's a reserved URL character ;). Just made no
-    prefix mean ascending and '-' prefix descending.
-
- ItemClass - renamed to IssueClass to better match it only having one
-    hypderdb class "issue". Allowing > 1 hyperdb class breaks the
-    "superseder" multilink (since it can only link to one thing, and we'd
-    want bugs to link to support and vice-versa).
-
- templates - the call="link()" is handled by special-case mechanisms in my
-    top-level CGI handler. In a nutshell, the handler looks for a method on
-    itself called 'index%s' or 'item%s' where %s is a class. Most items
-    pass on to the templating mechanism, but the file class _always_ does
-    downloading. It'll probably stay this way too...
-
- template - call="link(property)" may be used to link "the current node"
-    (from an index) - the link text is the property specified.
-
- template - added functions that I found very useful: List, History and
-    Submit.
-
- template - items must specify the message lists, history, etc. Having them
-    by default was sometimes not wanted.
-
- template - index view determines its default columns from the template's
-    <property> tags.
-
- template - menu() and field() look awfully similar now .... ;)
-
- roundup.py - the command-line tool has a lot more commands at its disposal
-
-
-
-4. TODO
-=======
-Most of the TODO items are captured in comments in the code. In summary:
-
-in general:
-  . better error handling (nicer messages for users)
-  . possibly revert the entire damn thing to 1.5.2 ... :(
-roundup.py:
-  . getopt() for command line
-  . default init db in some way?
-hyperdb:
-  . transaction support
-roundupdb:
-  . split the file storage into multiple files
-roundup-mailgw:
-  . errors as attachments
-  . snip signatures?
-server:
-  . check the source file timestamps before reloading
-date:
-  . blue Date.__sub__ needs food, badly
-config
-  . default to blank config in distribution and warn appropriately
-roundup_cgi
-  . searching
-  . keep form fields in form on bad submission - only clear it if all ok
-  . messages should have the roundup CGI URL in them
-
-
-5. Known Bugs
-=============
-
-date:
-  . date subtraction doesn't work correctly "if the dates cross leap years,
-    phases of the moon, ..."
-
-filter:
-  . incorrectly embeds hidden fields for filters being displayed - and
-    doesn't use the existing values for filters being displayed either.
-
-
-6. Author
-=========
-richard@bizarsoftware.com.au
-
-
-7. Thanks
-=========
-Well, Ping, of course ;)
-
-Anthony Baxter, for some good first-release feedback. And then continuing
-support through development on sourceforge.
-
diff --git a/README.TXT b/README.TXT
new file mode 100644 (file)
index 0000000..45a6b9c
--- /dev/null
@@ -0,0 +1,157 @@
+                                    Roundup
+                                    =======
+
+
+1. License
+==========
+This software is released under the GNU GPL. The copyright is held by Bizar
+Software Pty Ltd (http://www.bizarsoftware.com.au).
+
+The stylesheet included with this package has been copied from the Zope
+management interface and presumably belongs to Digital Creations.
+
+
+2. Installation
+===============
+For installation notes, please see the file INSTALL.TXT
+
+
+3. Usage
+========
+The system is designed to accessed through the command-line, e-mail or web
+interface.
+
+3.1 Command-line
+----------------
+The command-line tool is called "roundup-admin" and is used for most low-level
+database manipulations such as:
+ . creating a database instance
+ . redefining the list of products ("create" and "retire" commands)
+ . adding users manually, or setting their passwords ("create" and "set")
+ . other stuff - run it with no arguments to get a better description of
+   what it does.
+
+
+3.2 E-mail
+----------
+See the docstring at the start of the roundup/mailgw.py source file.
+
+
+3.3 Web
+-------
+Hopefully, this interface is pretty self-explanatory...
+
+Index views may be modified by the following arguments:
+    :sort    - sort by prop name, optionally preceeded with '-'
+            to give descending or nothing for ascending sorting.
+    :group   - group by prop name, optionally preceeded with '-' or
+            to sort in descending or nothing for ascending order.
+    :filter  - selects which props should be displayed in the filter
+            section. Default is all.
+    :columns - selects the columns that should be displayed.
+            Default is all.
+    propname - selects the values the node properties given by propname
+             must have (very basic search/filter).
+
+
+
+3. Design
+=========
+This software was written according to the specification found at
+ http://software-carpentry.codesourcery.com/entries/second-round/track/Roundup/
+
+... with some modifications. I've marked these in the source with 'XXX'
+comments when I remember to.
+
+In short:
+ Class.find() - may match multiple properties, uses keyword args.
+
+ Class.filter() - isn't in the spec and it's very useful to have at the Class
+    level.
+ CGI interface index view specifier layout part - lose the '+' from the
+    sorting arguments (it's a reserved URL character ;). Just made no
+    prefix mean ascending and '-' prefix descending.
+
+ ItemClass - renamed to IssueClass to better match it only having one
+    hypderdb class "issue". Allowing > 1 hyperdb class breaks the
+    "superseder" multilink (since it can only link to one thing, and we'd
+    want bugs to link to support and vice-versa).
+
+ templates - the call="link()" is handled by special-case mechanisms in my
+    top-level CGI handler. In a nutshell, the handler looks for a method on
+    itself called 'index%s' or 'item%s' where %s is a class. Most items
+    pass on to the templating mechanism, but the file class _always_ does
+    downloading. It'll probably stay this way too...
+
+ template - call="link(property)" may be used to link "the current node"
+    (from an index) - the link text is the property specified.
+
+ template - added functions that I found very useful: List, History and
+    Submit.
+
+ template - items must specify the message lists, history, etc. Having them
+    by default was sometimes not wanted.
+
+ template - index view determines its default columns from the template's
+    <property> tags.
+
+ template - menu() and field() look awfully similar now .... ;)
+
+ roundup.py - the command-line tool has a lot more commands at its disposal
+
+
+
+4. TODO
+=======
+Most of the TODO items are captured in comments in the code. In summary:
+
+in general:
+  . better error handling (nicer messages for users)
+  . possibly revert the entire damn thing to 1.5.2 ... :(
+roundup.py:
+  . getopt() for command line
+  . default init db in some way?
+hyperdb:
+  . transaction support
+roundupdb:
+  . split the file storage into multiple files
+roundup-mailgw:
+  . errors as attachments
+  . snip signatures?
+server:
+  . check the source file timestamps before reloading
+date:
+  . blue Date.__sub__ needs food, badly
+config
+  . default to blank config in distribution and warn appropriately
+roundup_cgi
+  . searching
+  . keep form fields in form on bad submission - only clear it if all ok
+  . messages should have the roundup CGI URL in them
+
+
+5. Known Bugs
+=============
+
+date:
+  . date subtraction doesn't work correctly "if the dates cross leap years,
+    phases of the moon, ..."
+
+filter:
+  . incorrectly embeds hidden fields for filters being displayed - and
+    doesn't use the existing values for filters being displayed either.
+
+
+6. Author
+=========
+richard@bizarsoftware.com.au
+
+
+7. Thanks
+=========
+Well, Ping, of course ;)
+
+Anthony Baxter, for some good first-release feedback. And then continuing
+support through development on sourceforge.
+