I received an internal error when trying to assign an already assigned admin permission to a subject. I would have expected an error message informing me the permission was already assigned. Here is the trace log:
Python Traceback
Traceback (most recent call last):
File "/usr/local/python/lib/python2.4/site-packages/trac/web/main.py", line 339, in dispatch_request
dispatcher.dispatch(req)
File "/usr/local/python/lib/python2.4/site-packages/trac/web/main.py", line 224, in dispatch
resp = chosen_handler.process_request(req)
File "/usr/local/python-2.4/lib/python2.4/site-packages/TracWebAdmin-0.1.1dev_r2765-py2.4.egg/webadmin/web_ui.py", line 106, in process_request
path_info)
File "/usr/local/python-2.4/lib/python2.4/site-packages/TracWebAdmin-0.1.1dev_r2765-py2.4.egg/webadmin/perm.py", line 45, in process_admin_request
perm.grant_permission(subject, action)
File "/usr/local/python/lib/python2.4/site-packages/trac/perm.py", line 190, in grant_permission
self.store.grant_permission(username, action)
File "/usr/local/python/lib/python2.4/site-packages/trac/perm.py", line 143, in grant_permission
(username, action))
File "/usr/local/python/lib/python2.4/site-packages/trac/db/util.py", line 47, in execute
return self.cursor.execute(sql_escape_percent(sql), args)
File "/usr/local/python/lib/python2.4/site-packages/trac/db/sqlite_backend.py", line 44, in execute
args or [])
File "/usr/local/python/lib/python2.4/site-packages/trac/db/sqlite_backend.py", line 36, in _rollback_on_error
return function(self, *args, **kwargs)
IntegrityError: columns username, action are not unique
Right, the error message could be more "friendly".