I just try the plugin version 0.11 on trac 0.11.1, 0.11.5 and trunk, and I allways get this error:
Please, note that trac works fine if using SVN as backend.
Trac detected an internal error:
ProgrammingError: You must not use 8-bit bytestrings unless you use a text_factory that can interpret 8-bit bytestrings (like text_factory = str). It is highly recommended that you instead just switch your application to Unicode strings.
Most recent call last:
* File "/usr/lib/python2.5/site-packages/Trac-0.12dev_r8263-py2.5.egg/trac/web/main.py", line 464, in _dispatch_request
Code fragment:
459. try:
460. if not env and env_error:
461. raise HTTPInternalError(env_error)
462. try:
463. dispatcher = RequestDispatcher(env)
464. dispatcher.dispatch(req)
465. except RequestDone:
466. pass
467. resp = req._response or []
468.
469. except HTTPException, e:
Local variables:
Name Value
after [u' except RequestDone:', u' pass', u' resp = ...
before [u' try:', u' if not env and env_error:', u' raise ...
dispatcher <trac.web.main.RequestDispatcher object at 0x8bb984c>
e ProgrammingError('You must not use 8-bit bytestrings unless you use a ...
env <trac.env.Environment object at 0x875060c>
env_error None
exc_info (<class 'pysqlite2.dbapi2.ProgrammingError'>, ProgrammingError('You must ...
filename '/usr/lib/python2.5/site-packages/Trac-0.12dev_r8263-py2.5.egg/trac/web/mai ...
frames [{'function': '_dispatch_request', 'lines_before': [u' try:', u' ...
has_admin True
line u' dispatcher.dispatch(req)'
lineno 463
message u'ProgrammingError: You must not use 8-bit bytestrings unless you use a ...
req <Request "GET u'/login'">
resp []
tb <traceback object at 0x8e09694>
tb_hide None
traceback u'Traceback (most recent call last):\n File ...
* File "/usr/lib/python2.5/site-packages/Trac-0.12dev_r8263-py2.5.egg/trac/web/main.py", line 181, in dispatch
Code fragment:
176. if not req.path_info or req.path_info == '/':
177. chosen_handler = self.default_handler
178. # pre-process any incoming request, whether a handler
179. # was found or not
180. chosen_handler = self._pre_process_request(req,
181. chosen_handler)
182. except TracError, e:
183. raise HTTPInternalError(e)
184. if not chosen_handler:
185. if req.path_info.endswith('/'):
186. # Strip trailing / and redirect
Local variables:
Name Value
chosen_handler <trac.web.auth.LoginModule object at 0x8bb9bac>
chrome <trac.web.chrome.Chrome object at 0x8b6de4c>
err (<class 'pysqlite2.dbapi2.ProgrammingError'>, ProgrammingError('You must ...
handler <trac.web.auth.LoginModule object at 0x8bb9bac>
req <Request "GET u'/login'">
self <trac.web.main.RequestDispatcher object at 0x8bb984c>
* File "/usr/lib/python2.5/site-packages/Trac-0.12dev_r8263-py2.5.egg/trac/web/main.py", line 317, in _pre_process_request
Code fragment:
312. req.outcookie['trac_form_token']['secure'] = True
313. return req.outcookie['trac_form_token'].value
314.
315. def _pre_process_request(self, req, chosen_handler):
316. for filter_ in self.filters:
317. chosen_handler = filter_.pre_process_request(req, chosen_handler)
318. return chosen_handler
319.
320. def _post_process_request(self, req, *args):
321. nbargs = len(args)
322. resp = args
Local variables:
Name Value
chosen_handler <trac.web.auth.LoginModule object at 0x8bb9bac>
filter_ <trac.versioncontrol.api.RepositoryManager object at 0x8bb9dac>
req <Request "GET u'/login'">
self <trac.web.main.RequestDispatcher object at 0x8bb984c>
* File "/usr/lib/python2.5/site-packages/Trac-0.12dev_r8263-py2.5.egg/trac/versioncontrol/api.py", line 86, in pre_process_request
Code fragment:
81.
82. def pre_process_request(self, req, handler):
83. from trac.web.chrome import Chrome, add_warning
84. if handler is not Chrome(self.env):
85. try:
86. self.get_repository(req.authname).sync()
87. except TracError, e:
88. add_warning(req, _("Can't synchronize with the repository "
89. "(%(error)s). Look in the Trac log for more "
90. "information.", error=to_unicode(e.message)))
91.
Local variables:
Name Value
Chrome <class 'trac.web.chrome.Chrome'>
add_warning <function add_warning at 0x8803b54>
handler <trac.web.auth.LoginModule object at 0x8bb9bac>
req <Request "GET u'/login'">
self <trac.versioncontrol.api.RepositoryManager object at 0x8bb9dac>
* File "/usr/lib/python2.5/site-packages/Trac-0.12dev_r8263-py2.5.egg/trac/versioncontrol/cache.py", line 213, in sync
Code fragment:
208. cursor.execute("INSERT INTO node_change "
209. " (rev,path,node_type,change_type, "
210. " base_path,base_rev) "
211. "VALUES (%s,%s,%s,%s,%s,%s)",
212. (str(next_youngest),
213. path, kind, action, bpath, brev))
214.
215. # 1.3. iterate (1.1 should always succeed now)
216. self.youngest = next_youngest
217. next_youngest = self.repos.next_rev(next_youngest)
218.
Local variables:
Name Value
action 'A'
actionmap {'edit': 'E', 'add': 'A', 'move': 'M', 'copy': 'C', 'delete': 'D'}
authz <trac.versioncontrol.api.Authorizer object at 0x8d89bac>
bpath ''
brev None
cset <tracext.git.git_fs.GitChangeset object at 0x8cf0aac>
cursor <trac.db.util.IterableCursor object at 0x8e3f12c>
db <trac.db.pool.PooledConnection object at 0x8e0984c>
feedback None
key 'youngest_rev'
kind 'F'
kindmap {'file': 'F', 'dir': 'D'}
metadata {u'youngest_rev': u'', u'repository_dir': u'git:/home/www/git/test/.git'}
name u'youngest_rev'
next_youngest 'b4c60abd772d7c8192b8cf3f46d44978eccdc7b0'
path 'doc/analysis/Metodolog\xc3\x83\xc2\xada de almacenamiento de datos en el ...
repos_youngest '73f1a95e8d2a161987c16d56cb223e40666ee63b'
repository_dir u'git:/home/www/git/test/.git'
self <tracext.git.git_fs.CachedRepository2 object at 0x8d5a0ec>
value u''
* File "/usr/lib/python2.5/site-packages/Trac-0.12dev_r8263-py2.5.egg/trac/db/util.py", line 59, in execute
Code fragment:
54. return self.cursor.execute(sql)
55. except Exception, e:
56. self.log.debug('execute exception: %r', e)
57. raise
58. if args:
59. return self.cursor.execute(sql_escape_percent(sql), args)
60. return self.cursor.execute(sql)
61.
62. def executemany(self, sql, args=None):
63. if self.log:
64. self.log.debug('SQL: %r', sql)
Local variables:
Name Value
args ('b4c60abd772d7c8192b8cf3f46d44978eccdc7b0', ...
self <trac.db.util.IterableCursor object at 0x8e3f12c>
sql 'INSERT INTO node_change (rev,path,node_type,change_type, ...
* File "/usr/lib/python2.5/site-packages/Trac-0.12dev_r8263-py2.5.egg/trac/db/sqlite_backend.py", line 59, in execute
Code fragment:
54. raise
55. def execute(self, sql, args=None):
56. if args:
57. sql = sql % (('?',) * len(args))
58. return self._rollback_on_error(sqlite.Cursor.execute, sql,
59. args or [])
60. def executemany(self, sql, args=None):
61. if args:
62. sql = sql % (('?',) * len(args[0]))
63. return self._rollback_on_error(sqlite.Cursor.executemany, sql,
64. args or [])
Local variables:
Name Value
args ('b4c60abd772d7c8192b8cf3f46d44978eccdc7b0', ...
self <trac.db.sqlite_backend.PyFormatCursor object at 0x880a2fc>
sql 'INSERT INTO node_change (rev,path,node_type,change_type, ...
* File "/usr/lib/python2.5/site-packages/Trac-0.12dev_r8263-py2.5.egg/trac/db/sqlite_backend.py", line 51, in _rollback_on_error