Modify ↓
Opened 18 years ago
Last modified 2 years ago
#5515 new defect
Empty changeset causes exception
| Reported by: | Owned by: | ||
|---|---|---|---|
| Priority: | normal | Milestone: | next-stable-1.6.x |
| Component: | version control/changeset view | Version: | devel |
| Severity: | normal | Keywords: | verify |
| Cc: | Branch: | ||
| Release Notes: | |||
| API Changes: | |||
| Internal Changes: | |||
Description (last modified by )
Context
- Reorganizing project
- Exported 2 svn repositories, server and client
- Created new svn repository
- Created 2 svn folders in new repository, server and client
- Did import into server and client folders
- Changed trac.ini to point to new repository, then did resync
- Browsed to project Timeline to look at changesets
- When I tried browse to changeset [1], got an internal error
- Browsing to other changesets worked fine
- I searched tickets for "changeset NoneType split" with no hits
- Search for "changeset NoneType" hit an unrelated ticket
Diagnostic Data
Trac detected an internal error:
AttributeError: 'NoneType' object has no attribute 'split'
Python Traceback
Most recent call last:
* File "c:\python25\lib\site-packages\Trac-0.11dev_r5661-py2.5.egg\trac\web\main.py", line 432, in dispatch_request
Code fragment:
427. if not env and env_error:
428. raise HTTPInternalError(env_error)
429. try:
430. try:
431. dispatcher = RequestDispatcher(env)
432. dispatcher.dispatch(req)
433. except RequestDone:
434. pass
435. return req._response or []
436. finally:
437. if not run_once:
Local variables:
Name Value
after [' except RequestDone:', ' pass', ' ...
before [' if not env and env_error:', ' raise ...
dispatcher <trac.web.main.RequestDispatcher object at 0x055836F0>
e AttributeError("'NoneType' object has no attribute 'split'",)
egg_cache None
env <trac.env.Environment object at 0x0556AEF0>
env_error None
env_name 'sqdb'
env_parent_dir 'D:/projects'
env_path 'D:/projects\\sqdb'
env_paths None
environ {'HTTP_AUTHORIZATION': 'Basic cGhpbnRvbjplcjFjYTE=', 'wsgi.multiprocess': ...
exc_info (<type 'exceptions.AttributeError'>, AttributeError("'NoneType' object has ...
filename 'c:\\python25\\lib\\site-packages\\Trac-0.11dev_r5661-py2.5.egg\\trac\\web\ ...
frames [{'function': 'dispatch_request', 'lines_before': [' if not env and ...
has_admin True
line ' dispatcher.dispatch(req)'
lineno 431
message u"AttributeError: 'NoneType' object has no attribute 'split'"
options {'TracUriRoot': '/projects', 'TracEnvParentDir': 'D:/projects'}
path_info ['changeset', '1']
req <Request "GET u'/changeset/1'">
request_uri '/projects/sqdb/changeset/1'
root_uri '/projects'
run_once False
script_url None
start_response <bound method ModPythonGateway._start_response of ...
tb <traceback object at 0x06E36198>
tb_hide None
traceback 'Traceback (most recent call last):\n File ...
* File "c:\python25\lib\site-packages\Trac-0.11dev_r5661-py2.5.egg\trac\web\main.py", line 217, in dispatch
Code fragment:
212. 'Do you have cookies enabled?')
213.
214. # Process the request and render the template
215. try:
216. try:
217. resp = chosen_handler.process_request(req)
218. if resp:
219. if len(resp) == 2: # Clearsilver
220. chrome.populate_hdf(req)
221. template, content_type = \
222. self._post_process_request(req, *resp)
Local variables:
Name Value
chosen_handler <trac.versioncontrol.web_ui.changeset.ChangesetModule object at ...
chrome <trac.web.chrome.Chrome object at 0x055838B0>
err (<type 'exceptions.AttributeError'>, AttributeError("'NoneType' object has ...
handler <trac.versioncontrol.web_ui.changeset.ChangesetModule object at ...
req <Request "GET u'/changeset/1'">
self <trac.web.main.RequestDispatcher object at 0x055836F0>
* File "c:\python25\lib\site-packages\Trac-0.11dev_r5661-py2.5.egg\trac\versioncontrol\web_ui\changeset.py", line 319, in process_request
Code fragment:
314. self._render_diff(req, filename, repos, data)
315. elif format == 'zip':
316. self._render_zip(req, filename, repos, data)
317.
318. # -- HTML format
319. self._render_html(req, repos, chgset, restricted, xhr, data)
320.
321. if chgset:
322. diff_params = 'new=%s' % new
323. else:
324. diff_params = unicode_urlencode({'new_path': new_path,
Local variables:
Name Value
chgset <trac.versioncontrol.cache.CachedChangeset object at 0x07019F90>
data {'changeset': <trac.versioncontrol.cache.CachedChangeset object at ...
diff_data {'style': 'inline', 'options': {'ignorecase': 0, 'ignoreblanklines': 0, ...
format None
new 1
new_path '/'
old None
old_path None
options ['-U2']
prev None
prev_path '/'
prev_rev None
repos <trac.versioncontrol.cache.CachedRepository object at 0x07014D50>
req <Request "GET u'/changeset/1'">
restricted False
self <trac.versioncontrol.web_ui.changeset.ChangesetModule object at ...
style 'inline'
xhr False
* File "c:\python25\lib\site-packages\Trac-0.11dev_r5661-py2.5.egg\trac\versioncontrol\web_ui\changeset.py", line 595, in _render_html
Code fragment:
590. info = None
591. changes.append(info) # the sequence should be immutable
592.
593. data.update({'has_diffs': has_diffs, 'changes': changes, 'xhr': xhr,
594. 'filestats': filestats,
595. 'files': files, 'location': self._get_location(files),
596. 'longcol': 'Revision', 'shortcol': 'r'})
597.
598. if xhr: # render and return the content only
599. stream = Chrome(self.env).render_template(req, 'changeset.html',
600. data, fragment=True)
Local variables:
Name Value
_changeset_title <function _changeset_title at 0x06F8D470>
_content_changes <function _content_changes at 0x06F17030>
_estimate_changes <function _estimate_changes at 0x06F174F0>
_prop_changes <function _prop_changes at 0x06F17B30>
annotated False
browser <trac.versioncontrol.web_ui.browser.BrowserModule object at 0x05583F70>
change 'add'
changes [{'new': {'path': u'', 'href': '/projects/sqdb/browser/?rev=1', 'rev': 1, ...
chgset <trac.versioncontrol.cache.CachedChangeset object at 0x07019F90>
context <Context u'[root], changeset:1' <Request "GET u'/changeset/1'">>
data {'changeset': <trac.versioncontrol.cache.CachedChangeset object at ...
diff_bytes 0
diff_files 0
diffs []
files [None]
filestats {'edit': 0, 'delete': 0, 'add': 1, 'copy': 0, 'move': 0}
get_changes <function get_changes at 0x06F8D370>
has_diffs False
info {'new': {'path': u'', 'href': '/projects/sqdb/browser/?rev=1', 'rev': 1, ...
kind 'dir'
new_node <trac.versioncontrol.svn_fs.SubversionNode object at 0x06FEBE70>
next_href '/projects/sqdb/changeset/2'
next_rev 2
node_info <function node_info at 0x06F174B0>
old_node None
oldest_rev 1
options {'ignorecase': 0, 'ignoreblanklines': 0, 'contextlines': 2, ...
path '/'
props []
repos <trac.versioncontrol.cache.CachedRepository object at 0x07014D50>
req <Request "GET u'/changeset/1'">
restricted False
rev 1
revprops {}
self <trac.versioncontrol.web_ui.changeset.ChangesetModule object at ...
show_diff True
show_diffs True
show_entry True
title 'Changeset 1'
xhr False
youngest_rev 6
* File "c:\python25\lib\site-packages\Trac-0.11dev_r5661-py2.5.egg\trac\versioncontrol\web_ui\changeset.py", line 732, in _get_location
System Information:
| User Agent: | Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.3) Gecko/20070309 Firefox/2.0.0.3 |
| Trac: | 0.11dev-r5661 |
| Python: | 2.5 (r25:51908, Sep 19 2006, 09:52:17) [MSC v.1310 32 bit (Intel)] |
| setuptools: | 0.6c6 |
| MySQL: | server: "5.0.41-community-nt", client: "5.0.27", thread-safe: 1| |
| MySQLdb: | 1.2.2 |
| Genshi: | 0.4.1 |
| Subversion: | 1.4.3 (r23084) |
| jQuery: | 1.1.2 |
Attachments (0)
Change History (7)
comment:1 by , 18 years ago
| Component: | general → changeset view |
|---|---|
| Description: | modified (diff) |
| Milestone: | → 0.11 |
| Owner: | changed from to |
| Version: | → devel |
comment:2 by , 17 years ago
| Keywords: | verify added |
|---|---|
| Milestone: | 0.11-retriage → 0.11.6 |
comment:3 by , 11 years ago
| Milestone: | next-minor-0.12.x → next-stable-1.0.x |
|---|
comment:4 by , 10 years ago
| Owner: | removed |
|---|
comment:5 by , 9 years ago
| Milestone: | next-stable-1.0.x → next-stable-1.2.x |
|---|
Moved ticket assigned to next-stable-1.0.x since maintenance of 1.0.x is coming to a close. Please move the ticket back if it's critical to fix on 1.0.x.
comment:6 by , 5 years ago
| Milestone: | next-stable-1.2.x → next-stable-1.4.x |
|---|
Note:
See TracTickets
for help on using tickets.


