Mercurial > p > roundup > code
comparison README.TXT @ 53:a117296dd59c
renamed the text files so that they're recognised as text files on windows
added INSTALL.TXT
| author | Richard Jones <richard@users.sourceforge.net> |
|---|---|
| date | Mon, 23 Jul 2001 08:55:04 +0000 |
| parents | |
| children | 8233840961e3 |
comparison
equal
deleted
inserted
replaced
| 52:33bfce110d1e | 53:a117296dd59c |
|---|---|
| 1 Roundup | |
| 2 ======= | |
| 3 | |
| 4 | |
| 5 1. License | |
| 6 ========== | |
| 7 This software is released under the GNU GPL. The copyright is held by Bizar | |
| 8 Software Pty Ltd (http://www.bizarsoftware.com.au). | |
| 9 | |
| 10 The stylesheet included with this package has been copied from the Zope | |
| 11 management interface and presumably belongs to Digital Creations. | |
| 12 | |
| 13 | |
| 14 2. Installation | |
| 15 =============== | |
| 16 For installation notes, please see the file INSTALL.TXT | |
| 17 | |
| 18 | |
| 19 3. Usage | |
| 20 ======== | |
| 21 The system is designed to accessed through the command-line, e-mail or web | |
| 22 interface. | |
| 23 | |
| 24 3.1 Command-line | |
| 25 ---------------- | |
| 26 The command-line tool is called "roundup-admin" and is used for most low-level | |
| 27 database manipulations such as: | |
| 28 . creating a database instance | |
| 29 . redefining the list of products ("create" and "retire" commands) | |
| 30 . adding users manually, or setting their passwords ("create" and "set") | |
| 31 . other stuff - run it with no arguments to get a better description of | |
| 32 what it does. | |
| 33 | |
| 34 | |
| 35 3.2 E-mail | |
| 36 ---------- | |
| 37 See the docstring at the start of the roundup/mailgw.py source file. | |
| 38 | |
| 39 | |
| 40 3.3 Web | |
| 41 ------- | |
| 42 Hopefully, this interface is pretty self-explanatory... | |
| 43 | |
| 44 Index views may be modified by the following arguments: | |
| 45 :sort - sort by prop name, optionally preceeded with '-' | |
| 46 to give descending or nothing for ascending sorting. | |
| 47 :group - group by prop name, optionally preceeded with '-' or | |
| 48 to sort in descending or nothing for ascending order. | |
| 49 :filter - selects which props should be displayed in the filter | |
| 50 section. Default is all. | |
| 51 :columns - selects the columns that should be displayed. | |
| 52 Default is all. | |
| 53 propname - selects the values the node properties given by propname | |
| 54 must have (very basic search/filter). | |
| 55 | |
| 56 | |
| 57 | |
| 58 3. Design | |
| 59 ========= | |
| 60 This software was written according to the specification found at | |
| 61 http://software-carpentry.codesourcery.com/entries/second-round/track/Roundup/ | |
| 62 | |
| 63 ... with some modifications. I've marked these in the source with 'XXX' | |
| 64 comments when I remember to. | |
| 65 | |
| 66 In short: | |
| 67 Class.find() - may match multiple properties, uses keyword args. | |
| 68 | |
| 69 Class.filter() - isn't in the spec and it's very useful to have at the Class | |
| 70 level. | |
| 71 | |
| 72 CGI interface index view specifier layout part - lose the '+' from the | |
| 73 sorting arguments (it's a reserved URL character ;). Just made no | |
| 74 prefix mean ascending and '-' prefix descending. | |
| 75 | |
| 76 ItemClass - renamed to IssueClass to better match it only having one | |
| 77 hypderdb class "issue". Allowing > 1 hyperdb class breaks the | |
| 78 "superseder" multilink (since it can only link to one thing, and we'd | |
| 79 want bugs to link to support and vice-versa). | |
| 80 | |
| 81 templates - the call="link()" is handled by special-case mechanisms in my | |
| 82 top-level CGI handler. In a nutshell, the handler looks for a method on | |
| 83 itself called 'index%s' or 'item%s' where %s is a class. Most items | |
| 84 pass on to the templating mechanism, but the file class _always_ does | |
| 85 downloading. It'll probably stay this way too... | |
| 86 | |
| 87 template - call="link(property)" may be used to link "the current node" | |
| 88 (from an index) - the link text is the property specified. | |
| 89 | |
| 90 template - added functions that I found very useful: List, History and | |
| 91 Submit. | |
| 92 | |
| 93 template - items must specify the message lists, history, etc. Having them | |
| 94 by default was sometimes not wanted. | |
| 95 | |
| 96 template - index view determines its default columns from the template's | |
| 97 <property> tags. | |
| 98 | |
| 99 template - menu() and field() look awfully similar now .... ;) | |
| 100 | |
| 101 roundup.py - the command-line tool has a lot more commands at its disposal | |
| 102 | |
| 103 | |
| 104 | |
| 105 4. TODO | |
| 106 ======= | |
| 107 Most of the TODO items are captured in comments in the code. In summary: | |
| 108 | |
| 109 in general: | |
| 110 . better error handling (nicer messages for users) | |
| 111 . possibly revert the entire damn thing to 1.5.2 ... :( | |
| 112 roundup.py: | |
| 113 . getopt() for command line | |
| 114 . default init db in some way? | |
| 115 hyperdb: | |
| 116 . transaction support | |
| 117 roundupdb: | |
| 118 . split the file storage into multiple files | |
| 119 roundup-mailgw: | |
| 120 . errors as attachments | |
| 121 . snip signatures? | |
| 122 server: | |
| 123 . check the source file timestamps before reloading | |
| 124 date: | |
| 125 . blue Date.__sub__ needs food, badly | |
| 126 config | |
| 127 . default to blank config in distribution and warn appropriately | |
| 128 roundup_cgi | |
| 129 . searching | |
| 130 . keep form fields in form on bad submission - only clear it if all ok | |
| 131 . messages should have the roundup CGI URL in them | |
| 132 | |
| 133 | |
| 134 5. Known Bugs | |
| 135 ============= | |
| 136 | |
| 137 date: | |
| 138 . date subtraction doesn't work correctly "if the dates cross leap years, | |
| 139 phases of the moon, ..." | |
| 140 | |
| 141 filter: | |
| 142 . incorrectly embeds hidden fields for filters being displayed - and | |
| 143 doesn't use the existing values for filters being displayed either. | |
| 144 | |
| 145 | |
| 146 6. Author | |
| 147 ========= | |
| 148 richard@bizarsoftware.com.au | |
| 149 | |
| 150 | |
| 151 7. Thanks | |
| 152 ========= | |
| 153 Well, Ping, of course ;) | |
| 154 | |
| 155 Anthony Baxter, for some good first-release feedback. And then continuing | |
| 156 support through development on sourceforge. | |
| 157 |
