handle Reject in the web interface too
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2198 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2198 57a73879-2fb5-44c3-a270-3262357dd7e2
add and use Reject exception (sf bug 700265)
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2197 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2197 57a73879-2fb5-44c3-a270-3262357dd7e2
duh
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2196 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2196 57a73879-2fb5-44c3-a270-3262357dd7e2
bah, file renaming
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2195 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2195 57a73879-2fb5-44c3-a270-3262357dd7e2
*** empty log message ***
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2194 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2194 57a73879-2fb5-44c3-a270-3262357dd7e2
make the reactor an auditor, clean up docstring
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2193 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2193 57a73879-2fb5-44c3-a270-3262357dd7e2
*** empty log message ***
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2192 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2192 57a73879-2fb5-44c3-a270-3262357dd7e2
have bounce_message do the error_messages_to heavy-lifting
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2191 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2191 57a73879-2fb5-44c3-a270-3262357dd7e2
clarification
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2190 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2190 57a73879-2fb5-44c3-a270-3262357dd7e2
Did a couple of things:
o- Did the proper doc thing, under Richard's stern disciplinary action
- Updated Changes.txt
- Updated Customizing doc
- Took a change out of upgrading.txt that didn't need to be there
- Made config.py be the same as the minimal config.py
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2189 57a73879-2fb5-44c3-a270-3262357dd7e2
o- Did the proper doc thing, under Richard's stern disciplinary action
- Updated Changes.txt
- Updated Customizing doc
- Took a change out of upgrading.txt that didn't need to be there
- Made config.py be the same as the minimal config.py
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2189 57a73879-2fb5-44c3-a270-3262357dd7e2
Adding a new reactor, for supporting Internet Explorer's kludge in not
allowing .eml to be opened (and giving you no clues as to why it's not
opening it, either. :P). Read detectors/filereactor.py for more information.
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2188 57a73879-2fb5-44c3-a270-3262357dd7e2
allowing .eml to be opened (and giving you no clues as to why it's not
opening it, either. :P). Read detectors/filereactor.py for more information.
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2188 57a73879-2fb5-44c3-a270-3262357dd7e2
Added the ability to toggle where error messages go.
They either go to the user (default, for backwards compatibility), the
dispatcher, or both. These are able to be toggled via settings in config.py.
Please refer to upgrading.txt for more details. (And Richard, let me know
if I've done anything wrong with this checkin. :))
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2187 57a73879-2fb5-44c3-a270-3262357dd7e2
They either go to the user (default, for backwards compatibility), the
dispatcher, or both. These are able to be toggled via settings in config.py.
Please refer to upgrading.txt for more details. (And Richard, let me know
if I've done anything wrong with this checkin. :))
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2187 57a73879-2fb5-44c3-a270-3262357dd7e2
In the classes method of HTMLDatabase, the variable 'm' was undefined.
I modified the unused list 'r' to be 'm' so now the code appears to function
correctly.
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2186 57a73879-2fb5-44c3-a270-3262357dd7e2
I modified the unused list 'r' to be 'm' so now the code appears to function
correctly.
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2186 57a73879-2fb5-44c3-a270-3262357dd7e2
*** empty log message ***
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2185 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2185 57a73879-2fb5-44c3-a270-3262357dd7e2
fix Link HTML field()
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2184 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2184 57a73879-2fb5-44c3-a270-3262357dd7e2
*cough* look over there...
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2183 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2183 57a73879-2fb5-44c3-a270-3262357dd7e2
*** empty log message ***
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2182 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2182 57a73879-2fb5-44c3-a270-3262357dd7e2
Boolean HTML templating was broken
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2181 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2181 57a73879-2fb5-44c3-a270-3262357dd7e2
added CSV download of index / search results
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2180 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2180 57a73879-2fb5-44c3-a270-3262357dd7e2
add line to rego email to help URL detection (sf bug 906247)
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2177 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2177 57a73879-2fb5-44c3-a270-3262357dd7e2
minor pre-release / test fixes
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2175 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2175 57a73879-2fb5-44c3-a270-3262357dd7e2
sigh.. not python2.3 yet
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2174 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2174 57a73879-2fb5-44c3-a270-3262357dd7e2
pre-release stuff
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2173 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2173 57a73879-2fb5-44c3-a270-3262357dd7e2
more metakit fixes
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2172 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2172 57a73879-2fb5-44c3-a270-3262357dd7e2
more metakit fixes
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2171 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2171 57a73879-2fb5-44c3-a270-3262357dd7e2
Fix some tests.
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2170 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2170 57a73879-2fb5-44c3-a270-3262357dd7e2
*** empty log message ***
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2169 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2169 57a73879-2fb5-44c3-a270-3262357dd7e2
MySQL migration of old backend database to new, typed database complete.
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2168 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2168 57a73879-2fb5-44c3-a270-3262357dd7e2
*** empty log message ***
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2167 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2167 57a73879-2fb5-44c3-a270-3262357dd7e2
Implemented proper datatypes in mysql and postgresql backends (well,
sqlite too, but that doesn't care).
Probably should use BOOLEAN instead of INTEGER for the Boolean props.
Need to fix a bizzaro MySQL error (gee, how unusual)
Need to finish MySQL migration from "version 1" database schemas.
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2166 57a73879-2fb5-44c3-a270-3262357dd7e2
sqlite too, but that doesn't care).
Probably should use BOOLEAN instead of INTEGER for the Boolean props.
Need to fix a bizzaro MySQL error (gee, how unusual)
Need to finish MySQL migration from "version 1" database schemas.
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2166 57a73879-2fb5-44c3-a270-3262357dd7e2
minor doc edits
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2165 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2165 57a73879-2fb5-44c3-a270-3262357dd7e2
make sure email signature starts on a newline (sf bug 919759)
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2163 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2163 57a73879-2fb5-44c3-a270-3262357dd7e2
sqlite doesn't need external locking
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2162 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2162 57a73879-2fb5-44c3-a270-3262357dd7e2
That's the last of the RDBMS migration steps done! Yay!
Note that the code currently has some unit testing issues:
- Metakit needs some attention in a couple of areas
- RDBMS backends are having trouble ordering their journal entries
correctly. I'm going to be migrating them to use TIMESTAMP for the date
column, but that's not necessarily going to fix things as mysql and
postgresql both appear to have second granularity. Sqlite will ignore
the data type as usual ;)
Next up is the datatype-ification of the RDBMS backends. Part of that will
involve the migration to numeric IDs, which will also be done in the *dbm
backends (already done in metakit). The ID exposed *above* the hyperdb
will be String, since so many things assume a string ID now.
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2161 57a73879-2fb5-44c3-a270-3262357dd7e2
Note that the code currently has some unit testing issues:
- Metakit needs some attention in a couple of areas
- RDBMS backends are having trouble ordering their journal entries
correctly. I'm going to be migrating them to use TIMESTAMP for the date
column, but that's not necessarily going to fix things as mysql and
postgresql both appear to have second granularity. Sqlite will ignore
the data type as usual ;)
Next up is the datatype-ification of the RDBMS backends. Part of that will
involve the migration to numeric IDs, which will also be done in the *dbm
backends (already done in metakit). The ID exposed *above* the hyperdb
will be String, since so many things assume a string ID now.
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2161 57a73879-2fb5-44c3-a270-3262357dd7e2
Part-way to having the metakit backend handle "content" property changes.
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2159 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2159 57a73879-2fb5-44c3-a270-3262357dd7e2
This is my attempt to include the "actor" property in the metakit backend
- though I'm not at all confident that migration is handled. I'll try to
test this out though (I'll be doing that with *all* the backends before
0.7 goes out ;)
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2158 57a73879-2fb5-44c3-a270-3262357dd7e2
- though I'm not at all confident that migration is handled. I'll try to
test this out though (I'll be doing that with *all* the backends before
0.7 goes out ;)
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2158 57a73879-2fb5-44c3-a270-3262357dd7e2
A few big changes in this commit:
1. The current indexer has been moved to backends/indexer_dbm in
anticipation of my writing an indexer_rdbms,
2. Changed indexer invocation during create / set to follow the pattern
set by the metakit backend, which was much cleaner, and
3. The "content" property of FileClass is now mutable in all but the
metakit backend.
Metakit needs to be changed to support the editing of "content". Hey, and
I learnt today that the metakit backend implements its own indexer. How
about that... :)
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2157 57a73879-2fb5-44c3-a270-3262357dd7e2
1. The current indexer has been moved to backends/indexer_dbm in
anticipation of my writing an indexer_rdbms,
2. Changed indexer invocation during create / set to follow the pattern
set by the metakit backend, which was much cleaner, and
3. The "content" property of FileClass is now mutable in all but the
metakit backend.
Metakit needs to be changed to support the editing of "content". Hey, and
I learnt today that the metakit backend implements its own indexer. How
about that... :)
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2157 57a73879-2fb5-44c3-a270-3262357dd7e2
doc fix
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2156 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2156 57a73879-2fb5-44c3-a270-3262357dd7e2
*** empty log message ***
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2155 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2155 57a73879-2fb5-44c3-a270-3262357dd7e2
handle bad multilink input at item creation time better (sf bug 917834)
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2152 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2152 57a73879-2fb5-44c3-a270-3262357dd7e2
Finished implementation of session and one-time-key stores for RDBMS
backends. Refactored the API of sessions and their interaction with the
backend database a fair bit too.
Added some session tests. Nothing testing ageing yet, 'cos that's a pain
inna ass to test :)
Note: metakit backend still uses the *dbm implementation. It might
want to implement its own session store some day, as it'll be faster than
the *dbm one.
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2151 57a73879-2fb5-44c3-a270-3262357dd7e2
backends. Refactored the API of sessions and their interaction with the
backend database a fair bit too.
Added some session tests. Nothing testing ageing yet, 'cos that's a pain
inna ass to test :)
Note: metakit backend still uses the *dbm implementation. It might
want to implement its own session store some day, as it'll be faster than
the *dbm one.
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2151 57a73879-2fb5-44c3-a270-3262357dd7e2
*** empty log message ***
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2150 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2150 57a73879-2fb5-44c3-a270-3262357dd7e2
simpler test
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2149 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2149 57a73879-2fb5-44c3-a270-3262357dd7e2
permission fix for anonymous
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2148 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2148 57a73879-2fb5-44c3-a270-3262357dd7e2
Added the "actor" property. Metakit backend not done (still not confident
I know how it's supposed to work ;)
Currently it will come up as NULL in the RDBMS backends for older items.
The *dbm backends will look up the journal. I hope to remedy the former
before 0.7's release.
Fixed a bunch of migration issues in the rdbms backends while I was at it
(index changes for key prop changes) and simplified the class table update
code for RDBMSes that have "alter table" in their command set (ie. not
sqlite) ... migration from "version 1" to "version 2" still hasn't
actually been tested yet though.
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2147 57a73879-2fb5-44c3-a270-3262357dd7e2
I know how it's supposed to work ;)
Currently it will come up as NULL in the RDBMS backends for older items.
The *dbm backends will look up the journal. I hope to remedy the former
before 0.7's release.
Fixed a bunch of migration issues in the rdbms backends while I was at it
(index changes for key prop changes) and simplified the class table update
code for RDBMSes that have "alter table" in their command set (ie. not
sqlite) ... migration from "version 1" to "version 2" still hasn't
actually been tested yet though.
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2147 57a73879-2fb5-44c3-a270-3262357dd7e2
security fixes and doc updates
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2146 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2146 57a73879-2fb5-44c3-a270-3262357dd7e2
make mysql / postgresql work again. beginnings of otk/session store in rdbmses
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2145 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2145 57a73879-2fb5-44c3-a270-3262357dd7e2
*** empty log message ***
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2143 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2143 57a73879-2fb5-44c3-a270-3262357dd7e2
info for installing the CSV module
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2139 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2139 57a73879-2fb5-44c3-a270-3262357dd7e2
*** empty log message ***
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2138 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2138 57a73879-2fb5-44c3-a270-3262357dd7e2
*** empty log message ***
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2137 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2137 57a73879-2fb5-44c3-a270-3262357dd7e2
Use assertRaises instead of introducing _nocheck machinery into assertRaisesMessage.
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2136 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2136 57a73879-2fb5-44c3-a270-3262357dd7e2
Unittestgui changed their interface, they no longer support the
minimal option.
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2135 57a73879-2fb5-44c3-a270-3262357dd7e2
minimal option.
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2135 57a73879-2fb5-44c3-a270-3262357dd7e2
*** empty log message ***
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2132 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2132 57a73879-2fb5-44c3-a270-3262357dd7e2
cgi exceptions fix
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2131 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2131 57a73879-2fb5-44c3-a270-3262357dd7e2
query saving fix
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2130 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2130 57a73879-2fb5-44c3-a270-3262357dd7e2
test fix
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2129 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2129 57a73879-2fb5-44c3-a270-3262357dd7e2
email charset fixes
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2128 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2128 57a73879-2fb5-44c3-a270-3262357dd7e2
nicer invalid property error in HTML templating
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2125 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2125 57a73879-2fb5-44c3-a270-3262357dd7e2
*** empty log message ***
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2123 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2123 57a73879-2fb5-44c3-a270-3262357dd7e2
Missed checkin.
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2122 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2122 57a73879-2fb5-44c3-a270-3262357dd7e2
forward-port from maint branch
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2121 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2121 57a73879-2fb5-44c3-a270-3262357dd7e2
forward-port of fix from maint-0-6
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2118 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2118 57a73879-2fb5-44c3-a270-3262357dd7e2
document and make easier the actions-returning-content idiom
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2115 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2115 57a73879-2fb5-44c3-a270-3262357dd7e2
Forward-porting of fixes from the maintenance branch.
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2114 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2114 57a73879-2fb5-44c3-a270-3262357dd7e2
A classes key can now be changed in the metakit backend. This was fixed
by changing the name of the index table to "_%(classname).%(key)" and
by removing the old table and reindexing on key changes.
This fixes all open metakit regression tests.
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2109 57a73879-2fb5-44c3-a270-3262357dd7e2
by changing the name of the index table to "_%(classname).%(key)" and
by removing the old table and reindexing on key changes.
This fixes all open metakit regression tests.
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2109 57a73879-2fb5-44c3-a270-3262357dd7e2
Added __doc__ strings to back_metakit.
These are pretty much the standard __doc__ strings from the HyperDB
and Class classes.
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2108 57a73879-2fb5-44c3-a270-3262357dd7e2
These are pretty much the standard __doc__ strings from the HyperDB
and Class classes.
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2108 57a73879-2fb5-44c3-a270-3262357dd7e2
missed one
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2106 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2106 57a73879-2fb5-44c3-a270-3262357dd7e2
fixed bug in args to new DateHTMLProperty in the local() method (sf bug 901444)
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2105 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2105 57a73879-2fb5-44c3-a270-3262357dd7e2
Eudora can't handle utf-8 headers. We love Eudora. (sf bug 900046)
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2103 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2103 57a73879-2fb5-44c3-a270-3262357dd7e2
*** empty log message ***
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2102 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2102 57a73879-2fb5-44c3-a270-3262357dd7e2
fixes to some unit tests, and a cleanup
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2101 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2101 57a73879-2fb5-44c3-a270-3262357dd7e2
fix permission handling around rego
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2100 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2100 57a73879-2fb5-44c3-a270-3262357dd7e2
tweaks to make un-quoted-printable-aware readers bitch and moan to me less
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2099 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2099 57a73879-2fb5-44c3-a270-3262357dd7e2
Times in 'Date Value' examples were all out by 5 hours.
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2097 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2097 57a73879-2fb5-44c3-a270-3262357dd7e2
test fixes
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2096 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2096 57a73879-2fb5-44c3-a270-3262357dd7e2
don't insert spaces into designators, it just confuses users (sf bug 898087)
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2094 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2094 57a73879-2fb5-44c3-a270-3262357dd7e2
proper fix this time
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2089 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2089 57a73879-2fb5-44c3-a270-3262357dd7e2
safer logging from HTTP server (sf bug 896917
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2088 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2088 57a73879-2fb5-44c3-a270-3262357dd7e2
Call actions in a different way so we won't hide any bad TypeErrors.
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2087 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2087 57a73879-2fb5-44c3-a270-3262357dd7e2
Remove duplication in permission handling:
* Use execute() as a Template Method, with permission() and handle() as the hook methods.
* Provide a default implementation for the permission() method, which checks for self.permissionType, if the attribute is defined.
* New hasPermission() method which checks whether the current user has a permission on the current class
editItemPermission method:
* Better error message when user is editing roles when they shouldn't be.
* Extracted isEditingSelf(), which checks whether a user is editing his/her own details.
* Use hasPermission method.
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2086 57a73879-2fb5-44c3-a270-3262357dd7e2
* Use execute() as a Template Method, with permission() and handle() as the hook methods.
* Provide a default implementation for the permission() method, which checks for self.permissionType, if the attribute is defined.
* New hasPermission() method which checks whether the current user has a permission on the current class
editItemPermission method:
* Better error message when user is editing roles when they shouldn't be.
* Extracted isEditingSelf(), which checks whether a user is editing his/her own details.
* Use hasPermission method.
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2086 57a73879-2fb5-44c3-a270-3262357dd7e2
Update customization examples too, expand upgrade notice a bit.
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2085 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2085 57a73879-2fb5-44c3-a270-3262357dd7e2
Update documentation for the client.py split and add an upgrade notice.
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2084 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2084 57a73879-2fb5-44c3-a270-3262357dd7e2
Add backwards compatible action handling.
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2083 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2083 57a73879-2fb5-44c3-a270-3262357dd7e2
Simple version of collision detection, with tests and a new generic template for classic and minimal.
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2082 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2082 57a73879-2fb5-44c3-a270-3262357dd7e2
Add change entry for client.py split.
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2081 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2081 57a73879-2fb5-44c3-a270-3262357dd7e2
Fix last commit to make editing/creating items work again.
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2080 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2080 57a73879-2fb5-44c3-a270-3262357dd7e2
forward-porting of fixed edit action / parsePropsFromForm to handle index-page edits better
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2078 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2078 57a73879-2fb5-44c3-a270-3262357dd7e2
added new example
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2077 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2077 57a73879-2fb5-44c3-a270-3262357dd7e2
tweaking
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2075 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2075 57a73879-2fb5-44c3-a270-3262357dd7e2
documentation cleanup
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2073 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2073 57a73879-2fb5-44c3-a270-3262357dd7e2
Move out parts of client.py to new modules:
* actions.py - the xxxAction and xxxPermission functions refactored into Action classes
* exceptions.py - all exceptions
* form_parser.py - parsePropsFromForm & extractFormList in a FormParser class
Also added some new tests for the Actions.
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2072 57a73879-2fb5-44c3-a270-3262357dd7e2
* actions.py - the xxxAction and xxxPermission functions refactored into Action classes
* exceptions.py - all exceptions
* form_parser.py - parsePropsFromForm & extractFormList in a FormParser class
Also added some new tests for the Actions.
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2072 57a73879-2fb5-44c3-a270-3262357dd7e2
maintenance -> admin guide
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2071 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2071 57a73879-2fb5-44c3-a270-3262357dd7e2
if you're going to enforce class-level permissions, then enforce them at the class level
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2070 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2070 57a73879-2fb5-44c3-a270-3262357dd7e2
fix for new mailer API
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2069 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2069 57a73879-2fb5-44c3-a270-3262357dd7e2
fixed roundup-reminder script to use default schema (thanks Klamer Schutte)
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2067 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2067 57a73879-2fb5-44c3-a270-3262357dd7e2
clarification
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2066 57a73879-2fb5-44c3-a270-3262357dd7e2
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2066 57a73879-2fb5-44c3-a270-3262357dd7e2
added testPasswordUnset
as metakit doesn't handle null values.
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2064 57a73879-2fb5-44c3-a270-3262357dd7e2
as metakit doesn't handle null values.
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2064 57a73879-2fb5-44c3-a270-3262357dd7e2
Changed to 1.56
13 worked-around a current metakit bug, so retiring properties now
works correctly.
metakit 2.9.2 has a bug when using "find" on ordered views,
using multiple arguments for find doesn't work.
Known Current Bugs:
You can't change a class' key properly.
This shouldn't be too hard to fix.
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2063 57a73879-2fb5-44c3-a270-3262357dd7e2
13 worked-around a current metakit bug, so retiring properties now
works correctly.
metakit 2.9.2 has a bug when using "find" on ordered views,
using multiple arguments for find doesn't work.
Known Current Bugs:
You can't change a class' key properly.
This shouldn't be too hard to fix.
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2063 57a73879-2fb5-44c3-a270-3262357dd7e2
1 Added an explicit close to the Indexer class. This was handled
by garbage collection before.
2 Added an MKBackendError exception that gets thrown on some metakit errors.
Should there be a general rdbms exception?
3 Added a sanity check when creating metakit tables in __getview
There are some test cases that create columns of the same name
with different metakit types. This can cause crashing issues with
older version of metakit. We catch these before hand and raise
an exception.
4 metakit db's cannot be weakref'd so this was removed
5 fixed a metakit.append, metakit must append lists, objects or
dictionaries, it can't handle scalars.
sv.append(int(entry))
became
sv.append((int(entry),))
6 To make it easier to compare to the other backends
Class.keyname is changed to Class.key
7 Fixed Class.lookup, sometimes it would claim that a valid
row was not valid (an _isdel row _property of 0 would
be reported as 1) This is because metakit's view.find
operation was returning bad results. This should be
view.select or view.find on a single property.
8 calling create with no parameters raises a value error
I'm not sure if this is appropriate, but it fixes
a regression test :)
9 The get method was only converting results for commited
values. uncommited values were not being converted
using the metakit conversion table
10 Added a check to the Class.__init__ to raise a ValueError
if the database already has a class of the same name.
11 Boolean and Number types can now have null values. This
is a backwards incompatible fix in that old databases
won't work correctly.
The fix is simple. For a boolean column, 0 is now None
1 is False (returns 0)
2 is True (returns 1)
For a numeric column, 0 is now None
values 0 get returned as value-1
values < 0 get returned as value
Set the BACKWARDS_COMPATIBLE flag to False to enable this fix.
12 Enumerated READ and READWRITE for the getview and getindexedview
These will probably be removed because they are not used
Known Current Bugs:
It is currently is not possible to retire an id with name X
and add a new unretired property with name X.
Confused? Here is the regression test:
self.assertRaises(ValueError, self.db.user.create)
newid = self.db.user.create(username="spam")
self.assertEqual(self.db.user.lookup('spam'), newid)
self.db.commit()
self.assertEqual(self.db.user.lookup('spam'), newid)
self.db.user.retire(newid)
self.assertRaises(KeyError, self.db.user.lookup, 'spam')
# use the key again now that the old is retired (metakit FAILS!!)
newid2 = self.db.user.create(username="spam")
self.assertNotEqual(newid, newid2)
# try to restore old node. this shouldn't succeed!
self.assertRaises(KeyError, self.db.user.restore, newid)
self.assertRaises(TypeError, self.db.issue.lookup, 'fubar')
Boolean and number values will not return None (now fixed but
breaks backwards compatibility)
This causes some regression tests to fix, namely:
def testPasswordUnset(self):
x = password.Password('x')
nid = self.db.user.create(username='foo', password=x)
self.db.user.set(nid, assignable=None)
self.assertEqual(self.db.user.get(nid, "assignable"), None)
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2062 57a73879-2fb5-44c3-a270-3262357dd7e2
by garbage collection before.
2 Added an MKBackendError exception that gets thrown on some metakit errors.
Should there be a general rdbms exception?
3 Added a sanity check when creating metakit tables in __getview
There are some test cases that create columns of the same name
with different metakit types. This can cause crashing issues with
older version of metakit. We catch these before hand and raise
an exception.
4 metakit db's cannot be weakref'd so this was removed
5 fixed a metakit.append, metakit must append lists, objects or
dictionaries, it can't handle scalars.
sv.append(int(entry))
became
sv.append((int(entry),))
6 To make it easier to compare to the other backends
Class.keyname is changed to Class.key
7 Fixed Class.lookup, sometimes it would claim that a valid
row was not valid (an _isdel row _property of 0 would
be reported as 1) This is because metakit's view.find
operation was returning bad results. This should be
view.select or view.find on a single property.
8 calling create with no parameters raises a value error
I'm not sure if this is appropriate, but it fixes
a regression test :)
9 The get method was only converting results for commited
values. uncommited values were not being converted
using the metakit conversion table
10 Added a check to the Class.__init__ to raise a ValueError
if the database already has a class of the same name.
11 Boolean and Number types can now have null values. This
is a backwards incompatible fix in that old databases
won't work correctly.
The fix is simple. For a boolean column, 0 is now None
1 is False (returns 0)
2 is True (returns 1)
For a numeric column, 0 is now None
values 0 get returned as value-1
values < 0 get returned as value
Set the BACKWARDS_COMPATIBLE flag to False to enable this fix.
12 Enumerated READ and READWRITE for the getview and getindexedview
These will probably be removed because they are not used
Known Current Bugs:
It is currently is not possible to retire an id with name X
and add a new unretired property with name X.
Confused? Here is the regression test:
self.assertRaises(ValueError, self.db.user.create)
newid = self.db.user.create(username="spam")
self.assertEqual(self.db.user.lookup('spam'), newid)
self.db.commit()
self.assertEqual(self.db.user.lookup('spam'), newid)
self.db.user.retire(newid)
self.assertRaises(KeyError, self.db.user.lookup, 'spam')
# use the key again now that the old is retired (metakit FAILS!!)
newid2 = self.db.user.create(username="spam")
self.assertNotEqual(newid, newid2)
# try to restore old node. this shouldn't succeed!
self.assertRaises(KeyError, self.db.user.restore, newid)
self.assertRaises(TypeError, self.db.issue.lookup, 'fubar')
Boolean and number values will not return None (now fixed but
breaks backwards compatibility)
This causes some regression tests to fix, namely:
def testPasswordUnset(self):
x = password.Password('x')
nid = self.db.user.create(username='foo', password=x)
self.db.user.set(nid, assignable=None)
self.assertEqual(self.db.user.get(nid, "assignable"), None)
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2062 57a73879-2fb5-44c3-a270-3262357dd7e2