﻿ticket,summary,type,release,owner,status,created,modified,_description,_reporter
4072,Error message after following setup instructions,defect,0.11,David Henry,new,2008-11-11T17:17:07+01:00,2009-06-09T14:25:30+02:00,"Quoth the server:

{{{
Unsupported version control system ""svnsync"": Can't find an appropriate component, maybe the corresponding plugin was not enabled?
}}}

It is possible I have mis-configured something.  The trac.ini has 

{{{
svnsyncplugin.* = enabled
}}}

I have svnsync on the server and available on the system path

Both servers are windows 2k3, SVN 1.5,  What other information is helpful?

Thanks!
",David Henry
4109,AttributeError: 'module' object has no attribute 'mknod',defect,0.11,,new,2008-11-17T13:01:19+01:00,2015-04-22T19:51:21+02:00,"Hi,

I get this error when I try to use svnsync-plugin on XP

Python Traceback
Most recent call last:

    * File ""C:\Python25\Lib\site-packages\trac\web\main.py"", line 432, in _dispatch_request
      Code fragment:
       427. try:
       428. if not env and env_error:
       429. raise HTTPInternalError(env_error)
       430. try:
       431. dispatcher = RequestDispatcher(env)
       432. dispatcher.dispatch(req)
       433. except RequestDone:
       434. pass
       435. resp = req._response or []
       436.  
       437. 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 0x0167ED30>
      e 	AttributeError(""'module' object has no attribute 'mknod'"",)
      env 	<trac.env.Environment object at 0x016A9730>
      env_error 	None
      exc_info 	(<type 'exceptions.AttributeError'>, AttributeError(""'module' object has ...
      filename 	'C:\\Python25\\Lib\\site-packages\\trac\\web\\main.py'
      frames 	[{'function': '_dispatch_request', 'lines_before': [u' try:', u' ...
      has_admin 	True
      line 	u' dispatcher.dispatch(req)'
      lineno 	431
      message 	u""AttributeError: 'module' object has no attribute 'mknod'""
      req 	<Request ""GET u'/report'"">
      resp 	[]
      tb 	<traceback object at 0x01695148>
      tb_hide 	None
      traceback 	'Traceback (most recent call last):\n File ...
    * File ""C:\Python25\Lib\site-packages\trac\web\main.py"", line 174, in dispatch
      Code fragment:
       169. if not req.path_info or req.path_info == '/':
       170. chosen_handler = self.default_handler
       171. # pre-process any incoming request, whether a handler
       172. # was found or not
       173. chosen_handler = self._pre_process_request(req,
       174. chosen_handler)
       175. except TracError, e:
       176. raise HTTPInternalError(e)
       177. if not chosen_handler:
       178. if req.path_info.endswith('/'):
       179. # Strip trailing / and redirect
      Local variables:
      Name	Value
      chosen_handler 	<trac.ticket.report.ReportModule object at 0x0167EB50>
      chrome 	<trac.web.chrome.Chrome object at 0x0167E3F0>
      err 	(<type 'exceptions.AttributeError'>, AttributeError(""'module' object has ...
      handler 	<trac.ticket.report.ReportModule object at 0x0167EB50>
      req 	<Request ""GET u'/report'"">
      self 	<trac.web.main.RequestDispatcher object at 0x0167ED30>
    * File ""C:\Python25\Lib\site-packages\trac\web\main.py"", line 295, in _pre_process_request
      Code fragment:
       290. req.outcookie['trac_form_token']['secure'] = True
       291. return req.outcookie['trac_form_token'].value
       292.  
       293. def _pre_process_request(self, req, chosen_handler):
       294. for filter_ in self.filters:
       295. chosen_handler = filter_.pre_process_request(req, chosen_handler)
       296. return chosen_handler
       297.  
       298. def _post_process_request(self, req, *args):
       299. nbargs = len(args)
       300. resp = args
      Local variables:
      Name	Value
      chosen_handler 	<trac.ticket.report.ReportModule object at 0x0167EB50>
      filter_ 	<trac.versioncontrol.api.RepositoryManager object at 0x0167E9B0>
      req 	<Request ""GET u'/report'"">
      self 	<trac.web.main.RequestDispatcher object at 0x0167ED30>
    * File ""C:\Python25\Lib\site-packages\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=e.message))
        91.
      Local variables:
      Name	Value
      Chrome 	<class 'trac.web.chrome.Chrome'>
      add_warning 	<function add_warning at 0x0118E330>
      handler 	<trac.ticket.report.ReportModule object at 0x0167EB50>
      req 	<Request ""GET u'/report'"">
      self 	<trac.versioncontrol.api.RepositoryManager object at 0x0167E9B0>
    * File ""C:\Python25\Lib\site-packages\trac\versioncontrol\api.py"", line 157, in get_repository
      Code fragment:
       152. repos = self._cache[tid]
       153. else:
       154. rtype, rdir = self.repository_type, self.repository_dir
       155. if not os.path.isabs(rdir):
       156. rdir = os.path.join(self.env.path, rdir)
       157. repos = self._connector.get_repository(rtype, rdir, authname)
       158. self._cache[tid] = repos
       159. return repos
       160. finally:
       161. self._lock.release()
       162.  
      Local variables:
      Name	Value
      authname 	'anonymous'
      candidates 	[(8, <svnsyncplugin.svnsyncplugin.SvnsyncConnector object at 0x0144B850>), ...
      connector 	<svnsyncplugin.svnsyncplugin.SvnsyncConnector object at 0x0144B850>
      db 	<trac.db.pool.PooledConnection object at 0x0168F508>
      prio 	8
      rdir 	u'C:\\ETAP_svnsyncrep'
      repos_type 	'svnsync'
      rtype 	u'svnsync'
      self 	<trac.versioncontrol.api.RepositoryManager object at 0x0167E9B0>
      tid 	2508
    * File ""c:\python25\lib\site-packages\svnsyncplugin-0.1.2-py2.5.egg\svnsyncplugin\svnsyncplugin.py"", line 35, in get_repository
      Code fragment:
        30. def get_repository(self, repos_type, repos_dir, authname):
        31. assert repos_type == 'svnsync'
        32.  
        33. # sync the repository
        34. directory = self.env.config.get('trac', 'repository_dir')
        35. svnsync.sync(directory, self.repository_url, logger=self.env.log.info)
        36.  
        37. repos = SubversionRepository(repos_dir, None, self.log)
        38. return repos
        39.
        40. ### methods particular to SvnsyncConnector
      Local variables:
      Name	Value
      authname 	'anonymous'
      directory 	u'C:\\ETAP_svnsyncrep'
      repos_dir 	u'C:\\ETAP_svnsyncrep'
      repos_type 	u'svnsync'
      self 	<svnsyncplugin.svnsyncplugin.SvnsyncConnector object at 0x0144B850>
    * File ""c:\python25\lib\site-packages\svnsyncplugin-0.1.2-py2.5.egg\svnsyncplugin\svnsync.py"", line 82, in sync
      Code fragment:
        77. if logger:
        78. logger('repository changed! %s -> %s' % (url, repository.strip()))
        79. logger('resyncing to new repository')
        80. import shutil
        81. shutil.rmtree(directory)
        82. sync(directory, repository, username, logger=logger)
        83.  
        84. return sh('svnsync', 'sync', repo, logger=logger)
        85.  
        86. if __name__ == '__main__':
        87. import optparse
      Local variables:
      Name	Value
      directory 	u'C:\\ETAP_svnsyncrep'
      logger 	<bound method Logger.info of <logging.Logger instance at 0x011FC3F0>>
      propget 	('', ""svn: Unable to open an ra_local session to URL\r\nsvn: Unable to ...
      repo 	u'file:///C:/ETAP_svnsyncrep'
      repository 	u'P:\\ETAP_TDP1_2\\.repository'
      shutil 	<module 'shutil' from 'C:\Python25\lib\shutil.pyc'>
      url 	''
      username 	'svnsync'
    * File ""c:\python25\lib\site-packages\svnsyncplugin-0.1.2-py2.5.egg\svnsyncplugin\svnsync.py"", line 66, in sync
      Code fragment:
        61.  
        62. def sync(directory, repository, username='svnsync', logger=None):
        63.  
        64. # create the mirror if it doesn't exist
        65. if not os.path.exists(directory):
        66. retval = create(directory, repository, username, logger=logger)
        67. if retval[-1] != 0:
        68. return retval
        69.  
        70. repo = file_uri(directory)
        71.  
      Local variables:
      Name	Value
      directory 	u'C:\\ETAP_svnsyncrep'
      logger 	<bound method Logger.info of <logging.Logger instance at 0x011FC3F0>>
      repository 	u'P:\\ETAP_TDP1_2\\.repository'
      username 	'svnsync'
    * File ""c:\python25\lib\site-packages\svnsyncplugin-0.1.2-py2.5.egg\svnsyncplugin\svnsync.py"", line 49, in create
      Code fragment:
        44.  
        45. filename = 'pre-revprop-change'
        46. if os in windows:
        47. filename += '.bat'
        48. filename = os.path.join(directory, 'hooks', filename)
        49. os.mknod(filename, 0770)
        50. f = file(filename, 'w')
        51. if os in windows:
        52. print >> f, ''
        53. else:
        54. print >> f, '#!/bin/sh'
      Local variables:
      Name	Value
      directory 	u'C:\\ETAP_svnsyncrep'
      filename 	u'C:\\ETAP_svnsyncrep\\hooks\\pre-revprop-change'
      logger 	<bound method Logger.info of <logging.Logger instance at 0x011FC3F0>>
      repository 	u'P:\\ETAP_TDP1_2\\.repository'
      username 	'svnsync'

File ""C:\Python25\Lib\site-packages\trac\web\main.py"", line 432, in _dispatch_request
  dispatcher.dispatch(req)
File ""C:\Python25\Lib\site-packages\trac\web\main.py"", line 174, in dispatch
  chosen_handler)
File ""C:\Python25\Lib\site-packages\trac\web\main.py"", line 295, in _pre_process_request
  chosen_handler = filter_.pre_process_request(req, chosen_handler)
File ""C:\Python25\Lib\site-packages\trac\versioncontrol\api.py"", line 86, in pre_process_request
  self.get_repository(req.authname).sync()
File ""C:\Python25\Lib\site-packages\trac\versioncontrol\api.py"", line 157, in get_repository
  repos = self._connector.get_repository(rtype, rdir, authname)
File ""c:\python25\lib\site-packages\svnsyncplugin-0.1.2-py2.5.egg\svnsyncplugin\svnsyncplugin.py"", line 35, in get_repository
  svnsync.sync(directory, self.repository_url, logger=self.env.log.info)
File ""c:\python25\lib\site-packages\svnsyncplugin-0.1.2-py2.5.egg\svnsyncplugin\svnsync.py"", line 82, in sync
  sync(directory, repository, username, logger=logger)
File ""c:\python25\lib\site-packages\svnsyncplugin-0.1.2-py2.5.egg\svnsyncplugin\svnsync.py"", line 66, in sync
  retval = create(directory, repository, username, logger=logger)
File ""c:\python25\lib\site-packages\svnsyncplugin-0.1.2-py2.5.egg\svnsyncplugin\svnsync.py"", line 49, in create
  os.mknod(filename, 0770)

System Information:
Trac: 	0.11.2
Python: 	2.5.2 (r252:60911, Feb 21 2008, 13:11:45) [MSC v.1310 32 bit (Intel)]
setuptools: 	0.6c9
SQLite: 	3.3.4
pysqlite: 	2.3.2
Genshi: 	0.5
Pygments: 	0.11.1
jQuery:	1.2.6
",thesorcerer
6962,Support Trac browser quickjump feature,enhancement,0.11,,new,2010-04-10T05:57:03+02:00,2015-04-22T19:51:21+02:00,"I have added support for Trac browser [http://trac.edgewall.org/wiki/VcRefactoring/BrowserQuickjump quickjump feature] (the one that manifests as a ""Visit"" dropdown list in source browser).

The patch is attached.",dfl
7110,SvnSync doesn't support for multiple repositories,defect,0.12,,new,2010-05-12T06:40:32+02:00,2015-04-22T19:51:21+02:00,"any way to deal with it?

Also upgrade to 0.12?",anonymous
10039,TypeError: 'NoneType' object is unsubscriptable,defect,0.11,Christof Hanke,new,2012-05-21T08:40:08+02:00,2012-10-27T12:00:02+02:00,"==== How to Reproduce ====

While doing a GET operation on `/search`, Trac issued an internal error.

''(please provide additional details here)''

Request parameters:
{{{
{}
}}}

User agent: `Mozilla/5.0 (Windows NT 5.1; rv:12.0) Gecko/20100101 Firefox/12.0`

==== System Information ====
|| '''`Trac`''' || `0.12` ||
|| '''`Babel`''' || `0.9.6` ||
|| '''`Genshi`''' || `0.6` ||
|| '''`MySQL`''' || `server: ""5.1.52"", client: ""5.1.52"", thread-safe: 1` ||
|| '''`MySQLdb`''' || `1.2.3` ||
|| '''`Pygments`''' || `1.1.1` ||
|| '''`Python`''' || `2.6.6 (r266:84292, Dec  7 2011, 20:38:36) ` [[br]] `[GCC 4.4.6 20110731 (Red Hat 4.4.6-3)]` ||
|| '''`pytz`''' || `2010h` ||
|| '''`setuptools`''' || `0.6` ||
|| '''`Subversion`''' || `1.6.11 (r934486)` ||
|| '''`Subversion`''' || `1.6.11 (r934486)` ||
|| '''`jQuery`''' || `1.4.2` ||

==== Enabled Plugins ====
|| '''`svnsyncplugin`''' || `0.1.2` ||

==== Python Traceback ====
{{{
Traceback (most recent call last):
  File ""/usr/lib/python2.6/site-packages/Trac-0.12-py2.6.egg/trac/web/main.py"", line 513, in _dispatch_request
    dispatcher.dispatch(req)
  File ""/usr/lib/python2.6/site-packages/Trac-0.12-py2.6.egg/trac/web/main.py"", line 200, in dispatch
    chosen_handler)
  File ""/usr/lib/python2.6/site-packages/Trac-0.12-py2.6.egg/trac/web/main.py"", line 346, in _pre_process_request
    chosen_handler = filter_.pre_process_request(req, chosen_handler)
  File ""/usr/lib/python2.6/site-packages/Trac-0.12-py2.6.egg/trac/versioncontrol/api.py"", line 330, in pre_process_request
    repo = self.get_repository(reponame)
  File ""/usr/lib/python2.6/site-packages/Trac-0.12-py2.6.egg/trac/versioncontrol/api.py"", line 526, in get_repository
    repos = connector.get_repository(rtype, rdir, repoinfo.copy())
  File ""/usr/lib/python2.6/site-packages/svnsyncplugin-0.1.2-py2.6.egg/svnsyncplugin/svnsyncplugin.py"", line 37, in get_repository
    repos = SubversionRepository(repos_dir, None, self.log)
  File ""/usr/lib/python2.6/site-packages/Trac-0.12-py2.6.egg/trac/versioncontrol/svn_fs.py"", line 344, in __init__
    Repository.__init__(self, name, params, log)
  File ""/usr/lib/python2.6/site-packages/Trac-0.12-py2.6.egg/trac/versioncontrol/api.py"", line 730, in __init__
    self.reponame = params['name']
TypeError: 'NoneType' object is unsubscriptable
}}}",admin
3824,Sync from authentificated repository,enhancement,0.11,,new,2008-09-29T10:05:19+02:00,2015-04-22T19:51:21+02:00,"I want to use trac with a remote repository where i've just a user account. I'm not administrator of this repository.

The plugin SvnsyncPlugin seems to not permit to define a specific username & password to access to the remote repository.

Can you propose this enhancement ? 

Thanks for your support.",david@…
