Modify ↓
Opened 17 years ago
Last modified 14 months 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 , 17 years ago
Component: | general → changeset view |
---|---|
Description: | modified (diff) |
Milestone: | → 0.11 |
Owner: | changed from | to
Version: | → devel |
comment:2 by , 16 years ago
Keywords: | verify added |
---|---|
Milestone: | 0.11-retriage → 0.11.6 |
comment:3 by , 10 years ago
Milestone: | next-minor-0.12.x → next-stable-1.0.x |
---|
comment:4 by , 9 years ago
Owner: | removed |
---|
comment:5 by , 8 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 , 4 years ago
Milestone: | next-stable-1.2.x → next-stable-1.4.x |
---|
Note:
See TracTickets
for help on using tickets.