# HG changeset patch # User Marcin Kuzminski # Date 1266501086 -3600 # Node ID 2620dac853adedaffef20b8ee5d9073889a196ec # Parent ad0dd39042256f34b9799c979d70ccbf4a1a6408 added autoconfig loading diff -r ad0dd3904225 -r 2620dac853ad pylons_app.log --- a/pylons_app.log Thu Feb 18 14:13:45 2010 +0100 +++ b/pylons_app.log Thu Feb 18 14:51:26 2010 +0100 @@ -7208,3 +7208,243 @@ 14:13:16,096 DEBUG [pylons.controllers.core] Calling 'view' method with keyword args: **{'start_response': , 'environ': {'routes.route': , 'HTTP_COOKIE': 'pylons_app=ec1f911f486328328b82fe62b9ecfb8c8e67ce074366ad71ec9c1fedd2deef3b48609ea4', 'pylons.routes_dict': {'action': u'view', 'controller': u'hg', 'path_info': 'static/hgicon.png'}, 'beaker.get_session': >, 'SCRIPT_NAME': '', 'webob.adhoc_attrs': {'language': 'en-us'}, 'REQUEST_METHOD': 'GET', 'PATH_INFO': '/static/hgicon.png', 'SERVER_PROTOCOL': 'HTTP/1.1', 'QUERY_STRING': '', 'paste.throw_errors': True, 'pylons.action_method': >, 'CONTENT_LENGTH': '0', 'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7', 'HTTP_USER_AGENT': 'Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.2pre) Gecko/20100216 Ubuntu/9.10 (karmic) Namoroka/3.6.2pre', 'HTTP_CONNECTION': 'keep-alive', 'beaker.cache': , 'SERVER_NAME': '127.0.0.1', 'REMOTE_ADDR': '127.0.0.1', 'pylons.environ_config': {'session': 'beaker.session', 'cache': 'beaker.cache'}, 'pylons.pylons': , 'wsgi.url_scheme': 'http', 'wsgiorg.routing_args': (, {'action': u'view', 'controller': u'hg', 'path_info': 'static/hgicon.png'}), 'SERVER_PORT': '5000', 'weberror.evalexception': , 'pylons.controller': , 'paste.evalexception': , 'wsgi.input': , 'HTTP_HOST': '127.0.0.1:5000', 'beaker.session': {'_accessed_time': 1266498796.096786, '_creation_time': 1266498791.9932499}, 'wsgi.multithread': True, 'routes.url': , 'HTTP_ACCEPT': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 'wsgi.version': (1, 0), 'paste.registry': , 'wsgi.run_once': False, 'wsgi.errors': ', mode 'w' at 0x7f4a985881c8>, 'wsgi.multiprocess': False, 'HTTP_ACCEPT_LANGUAGE': 'en-us,en;q=0.5', 'CONTENT_TYPE': '', 'paste.httpserver.thread_pool': , 'HTTP_ACCEPT_ENCODING': 'gzip,deflate', 'HTTP_KEEP_ALIVE': '115'}} 14:13:16,997 DEBUG [pylons.controllers.core] Merging pylons.response headers into start_response call, status: 200 Script output follows 14:13:16,997 DEBUG [pylons.controllers.core] Response assumed to be WSGI content, returning un-touched +14:15:30,530 DEBUG [pylons.configuration] Initializing configuration, package: 'pylons_app' +14:15:30,530 DEBUG [pylons.configuration] Pushing process configuration +14:15:30,534 DEBUG [pylons.configuration] Adding mako engine with alias None and {'myghty.data_dir': '/home/marcink/python_workspace/hg_app/data/templates', 'mako.directories': ['/home/marcink/python_workspace/hg_app/pylons_app/templates'], 'myghty.component_root': [{'templates': '/home/marcink/python_workspace/hg_app/pylons_app/templates'}], 'kid.encoding': 'utf-8', 'kid.assume_encoding': 'utf-8', 'mako.module_directory': '/home/marcink/python_workspace/hg_app/data/templates', 'myghty.allow_globals': ['c', 'config', 'g', 'h', 'render', 'request', 'session', 'translator', 'ungettext', '_', 'N_'], 'myghty.output_encoding': 'utf-8', 'myghty.raise_error': True, 'mako.output_encoding': 'utf-8', 'mako.filesystem_checks': True} options +14:15:30,534 DEBUG [pylons.configuration] Loaded mako template engine as the default template renderer +14:15:30,537 DEBUG [pylons.templating] Initialized Buffet object +14:15:30,538 DEBUG [pylons.templating] Adding mako template language for use with Buffet +14:15:30,538 DEBUG [routes.middleware] Initialized with method overriding = True, and path info altering = True +14:15:30,540 DEBUG [paste.httpserver.ThreadPool] Started new worker 139986443634960: Initial worker pool +14:15:30,541 DEBUG [paste.httpserver.ThreadPool] Started new worker 139986435242256: Initial worker pool +14:15:30,541 DEBUG [paste.httpserver.ThreadPool] Started new worker 139986426849552: Initial worker pool +14:15:30,541 DEBUG [paste.httpserver.ThreadPool] Started new worker 139986418456848: Initial worker pool +14:15:30,541 DEBUG [paste.httpserver.ThreadPool] Started new worker 139986410064144: Initial worker pool +14:15:30,542 DEBUG [paste.httpserver.ThreadPool] Started new worker 139986401671440: Initial worker pool +14:15:30,542 DEBUG [paste.httpserver.ThreadPool] Started new worker 139986393278736: Initial worker pool +14:15:30,542 DEBUG [paste.httpserver.ThreadPool] Started new worker 139986384886032: Initial worker pool +14:15:30,542 DEBUG [paste.httpserver.ThreadPool] Started new worker 139986376493328: Initial worker pool +14:15:30,543 DEBUG [paste.httpserver.ThreadPool] Started new worker 139986368100624: Initial worker pool +14:47:31,905 DEBUG [paste.httpserver.ThreadPool] Added task (0 tasks queued) +14:47:31,907 DEBUG [routes.middleware] Matched GET /add/test +14:47:31,907 DEBUG [routes.middleware] Route path: '/add/{new_repo:[a-z0-9\. _-]*}', defaults: {'action': u'add_repo', 'controller': u'hg'} +14:47:31,908 DEBUG [routes.middleware] Match dict: {'action': u'add_repo', 'new_repo': u'test', 'controller': u'hg'} +14:47:31,908 DEBUG [pylons.wsgiapp] Setting up Pylons stacked object globals +14:47:31,909 DEBUG [pylons.wsgiapp] Resolved URL to controller: u'hg' +14:47:32,035 DEBUG [pylons.wsgiapp] Found controller, module: 'pylons_app.controllers.hg', class: 'HgController' +14:47:32,035 DEBUG [pylons.wsgiapp] Controller appears to be a class, instantiating +14:47:32,035 DEBUG [pylons.wsgiapp] Calling controller class with WSGI interface +14:47:32,036 DEBUG [pylons.controllers.core] Looking for u'add_repo' method to handle the request +14:47:32,036 DEBUG [pylons.controllers.core] Calling 'add_repo' method with keyword args: **{'new_repo': u'test'} +14:47:32,036 DEBUG [pylons.controllers.core] Assuming controller returned an iterable, setting it as pylons.response.app_iter +14:47:32,036 DEBUG [pylons.controllers.core] Calling Response object to return WSGI data +14:48:18,628 DEBUG [pylons.configuration] Initializing configuration, package: 'pylons_app' +14:48:18,628 DEBUG [pylons.configuration] Pushing process configuration +14:48:18,631 DEBUG [pylons.configuration] Adding mako engine with alias None and {'myghty.data_dir': '/home/marcink/python_workspace/hg_app/data/templates', 'mako.directories': ['/home/marcink/python_workspace/hg_app/pylons_app/templates'], 'myghty.component_root': [{'templates': '/home/marcink/python_workspace/hg_app/pylons_app/templates'}], 'kid.encoding': 'utf-8', 'kid.assume_encoding': 'utf-8', 'mako.module_directory': '/home/marcink/python_workspace/hg_app/data/templates', 'myghty.allow_globals': ['c', 'config', 'g', 'h', 'render', 'request', 'session', 'translator', 'ungettext', '_', 'N_'], 'myghty.output_encoding': 'utf-8', 'myghty.raise_error': True, 'mako.output_encoding': 'utf-8', 'mako.filesystem_checks': True} options +14:48:18,631 DEBUG [pylons.configuration] Loaded mako template engine as the default template renderer +14:48:18,635 DEBUG [pylons.templating] Initialized Buffet object +14:48:18,635 DEBUG [pylons.templating] Adding mako template language for use with Buffet +14:48:18,636 DEBUG [routes.middleware] Initialized with method overriding = True, and path info altering = True +14:48:18,638 DEBUG [paste.httpserver.ThreadPool] Started new worker 139766760069392: Initial worker pool +14:48:18,638 DEBUG [paste.httpserver.ThreadPool] Started new worker 139766751676688: Initial worker pool +14:48:18,640 DEBUG [paste.httpserver.ThreadPool] Started new worker 139766743283984: Initial worker pool +14:48:18,640 DEBUG [paste.httpserver.ThreadPool] Started new worker 139766734891280: Initial worker pool +14:48:18,640 DEBUG [paste.httpserver.ThreadPool] Started new worker 139766726498576: Initial worker pool +14:48:18,640 DEBUG [paste.httpserver.ThreadPool] Started new worker 139766718105872: Initial worker pool +14:48:18,641 DEBUG [paste.httpserver.ThreadPool] Started new worker 139766709713168: Initial worker pool +14:48:18,641 DEBUG [paste.httpserver.ThreadPool] Started new worker 139766701320464: Initial worker pool +14:48:18,641 DEBUG [paste.httpserver.ThreadPool] Started new worker 139766692927760: Initial worker pool +14:48:18,641 DEBUG [paste.httpserver.ThreadPool] Started new worker 139766684535056: Initial worker pool +14:48:20,795 DEBUG [paste.httpserver.ThreadPool] Added task (0 tasks queued) +14:48:20,798 DEBUG [routes.middleware] Matched GET /add/test +14:48:20,798 DEBUG [routes.middleware] Route path: '/add/{new_repo:[a-z0-9\. _-]*}', defaults: {'action': u'add_repo', 'controller': u'hg'} +14:48:20,798 DEBUG [routes.middleware] Match dict: {'action': u'add_repo', 'new_repo': u'test', 'controller': u'hg'} +14:48:20,798 DEBUG [pylons.wsgiapp] Setting up Pylons stacked object globals +14:48:20,799 DEBUG [pylons.wsgiapp] Resolved URL to controller: u'hg' +14:48:20,863 DEBUG [pylons.wsgiapp] Found controller, module: 'pylons_app.controllers.hg', class: 'HgController' +14:48:20,863 DEBUG [pylons.wsgiapp] Controller appears to be a class, instantiating +14:48:20,864 DEBUG [pylons.wsgiapp] Calling controller class with WSGI interface +14:48:20,864 DEBUG [pylons.controllers.core] Looking for u'add_repo' method to handle the request +14:48:20,864 DEBUG [pylons.controllers.core] Calling 'add_repo' method with keyword args: **{'new_repo': u'test'} +14:48:20,898 INFO [pylons_app.controllers.hg] test repo is free for creation +14:48:20,898 INFO [pylons_app.controllers.hg] test repo is free for creation +14:48:20,899 INFO [pylons_app.controllers.hg] creating repo test +14:48:20,899 INFO [pylons_app.controllers.hg] creating repo test +14:48:20,903 DEBUG [pylons.controllers.core] Assuming controller returned an iterable, setting it as pylons.response.app_iter +14:48:20,904 DEBUG [pylons.controllers.core] Calling Response object to return WSGI data +14:48:23,472 DEBUG [paste.httpserver.ThreadPool] Added task (0 tasks queued) +14:48:23,473 DEBUG [routes.middleware] Matched GET / +14:48:23,473 DEBUG [routes.middleware] Route path: '/{path_info:.*}', defaults: {'action': u'view', 'controller': u'hg', 'path_info': u'/'} +14:48:23,473 DEBUG [routes.middleware] Match dict: {'action': u'view', 'controller': u'hg', 'path_info': u'/'} +14:48:23,474 DEBUG [pylons.wsgiapp] Setting up Pylons stacked object globals +14:48:23,474 DEBUG [pylons.wsgiapp] Resolved URL to controller: u'hg' +14:48:23,474 DEBUG [pylons.wsgiapp] Controller appears to be a class, instantiating +14:48:23,474 DEBUG [pylons.wsgiapp] Calling controller class with WSGI interface +14:48:23,475 DEBUG [pylons.controllers.core] Looking for u'view' method to handle the request +14:48:23,475 DEBUG [pylons.controllers.core] Calling 'view' method with keyword args: **{'start_response': , 'environ': {'routes.route': , 'HTTP_REFERER': 'http://127.0.0.1:5000/add/test', 'pylons.routes_dict': {'action': u'view', 'controller': u'hg', 'path_info': u'/'}, 'beaker.get_session': >, 'SCRIPT_NAME': '', 'webob.adhoc_attrs': {'language': 'en-us'}, 'REQUEST_METHOD': 'GET', 'PATH_INFO': u'/', 'SERVER_PROTOCOL': 'HTTP/1.1', 'QUERY_STRING': '', 'paste.throw_errors': True, 'pylons.action_method': >, 'CONTENT_LENGTH': '0', 'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7', 'HTTP_USER_AGENT': 'Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.2pre) Gecko/20100216 Ubuntu/9.10 (karmic) Namoroka/3.6.2pre', 'HTTP_CONNECTION': 'keep-alive', 'HTTP_COOKIE': 'pylons_app=ec1f911f486328328b82fe62b9ecfb8c8e67ce074366ad71ec9c1fedd2deef3b48609ea4', 'SERVER_NAME': '127.0.0.1', 'REMOTE_ADDR': '127.0.0.1', 'pylons.environ_config': {'session': 'beaker.session', 'cache': 'beaker.cache'}, 'pylons.pylons': , 'wsgi.url_scheme': 'http', 'beaker.cache': , 'wsgiorg.routing_args': (, {'action': u'view', 'controller': u'hg', 'path_info': u'/'}), 'SERVER_PORT': '5000', 'weberror.evalexception': , 'pylons.controller': , 'paste.evalexception': , 'wsgi.input': , 'HTTP_HOST': '127.0.0.1:5000', 'beaker.session': {'_accessed_time': 1266500903.475585, '_creation_time': 1266500903.475585}, 'wsgi.multithread': True, 'routes.url': , 'HTTP_ACCEPT': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 'wsgi.version': (1, 0), 'paste.registry': , 'wsgi.run_once': False, 'wsgi.errors': ', mode 'w' at 0x7f1e007211c8>, 'wsgi.multiprocess': False, 'HTTP_ACCEPT_LANGUAGE': 'en-us,en;q=0.5', 'CONTENT_TYPE': '', 'paste.httpserver.thread_pool': , 'HTTP_ACCEPT_ENCODING': 'gzip,deflate', 'HTTP_KEEP_ALIVE': '115'}} +14:48:24,356 DEBUG [pylons.controllers.core] Merging pylons.response headers into start_response call, status: 200 Script output follows +14:48:24,386 DEBUG [pylons.controllers.core] Response assumed to be WSGI content, returning un-touched +14:48:24,455 DEBUG [paste.httpserver.ThreadPool] Added task (0 tasks queued) +14:48:24,456 DEBUG [routes.middleware] Matched GET /static/style-gitweb.css +14:48:24,456 DEBUG [routes.middleware] Route path: '/{path_info:.*}', defaults: {'action': u'view', 'controller': u'hg', 'path_info': u'/'} +14:48:24,457 DEBUG [routes.middleware] Match dict: {'action': u'view', 'controller': u'hg', 'path_info': 'static/style-gitweb.css'} +14:48:24,457 DEBUG [pylons.wsgiapp] Setting up Pylons stacked object globals +14:48:24,457 DEBUG [pylons.wsgiapp] Resolved URL to controller: u'hg' +14:48:24,458 DEBUG [pylons.wsgiapp] Controller appears to be a class, instantiating +14:48:24,458 DEBUG [pylons.wsgiapp] Calling controller class with WSGI interface +14:48:24,458 DEBUG [pylons.controllers.core] Looking for u'view' method to handle the request +14:48:24,458 DEBUG [pylons.controllers.core] Calling 'view' method with keyword args: **{'start_response': , 'environ': {'routes.route': , 'HTTP_REFERER': 'http://127.0.0.1:5000/', 'pylons.routes_dict': {'action': u'view', 'controller': u'hg', 'path_info': 'static/style-gitweb.css'}, 'beaker.get_session': >, 'SCRIPT_NAME': '', 'webob.adhoc_attrs': {'language': 'en-us'}, 'REQUEST_METHOD': 'GET', 'PATH_INFO': '/static/style-gitweb.css', 'SERVER_PROTOCOL': 'HTTP/1.1', 'QUERY_STRING': '', 'paste.throw_errors': True, 'pylons.action_method': >, 'CONTENT_LENGTH': '0', 'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7', 'HTTP_USER_AGENT': 'Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.2pre) Gecko/20100216 Ubuntu/9.10 (karmic) Namoroka/3.6.2pre', 'HTTP_CONNECTION': 'keep-alive', 'HTTP_COOKIE': 'pylons_app=ec1f911f486328328b82fe62b9ecfb8c8e67ce074366ad71ec9c1fedd2deef3b48609ea4', 'SERVER_NAME': '127.0.0.1', 'REMOTE_ADDR': '127.0.0.1', 'pylons.environ_config': {'session': 'beaker.session', 'cache': 'beaker.cache'}, 'pylons.pylons': , 'wsgi.url_scheme': 'http', 'beaker.cache': , 'wsgiorg.routing_args': (, {'action': u'view', 'controller': u'hg', 'path_info': 'static/style-gitweb.css'}), 'SERVER_PORT': '5000', 'weberror.evalexception': , 'pylons.controller': , 'paste.evalexception': , 'wsgi.input': , 'HTTP_HOST': '127.0.0.1:5000', 'beaker.session': {'_accessed_time': 1266500904.458766, '_creation_time': 1266500903.475585}, 'wsgi.multithread': True, 'routes.url': , 'HTTP_ACCEPT': 'text/css,*/*;q=0.1', 'wsgi.version': (1, 0), 'paste.registry': , 'wsgi.run_once': False, 'wsgi.errors': ', mode 'w' at 0x7f1e007211c8>, 'wsgi.multiprocess': False, 'HTTP_ACCEPT_LANGUAGE': 'en-us,en;q=0.5', 'CONTENT_TYPE': '', 'paste.httpserver.thread_pool': , 'HTTP_ACCEPT_ENCODING': 'gzip,deflate', 'HTTP_KEEP_ALIVE': '115'}} +14:48:25,577 DEBUG [pylons.controllers.core] Merging pylons.response headers into start_response call, status: 200 Script output follows +14:48:25,577 DEBUG [pylons.controllers.core] Response assumed to be WSGI content, returning un-touched +14:48:27,424 DEBUG [paste.httpserver.ThreadPool] Added task (0 tasks queued) +14:48:27,425 DEBUG [routes.middleware] Matched GET /static/hgicon.png +14:48:27,426 DEBUG [routes.middleware] Route path: '/{path_info:.*}', defaults: {'action': u'view', 'controller': u'hg', 'path_info': u'/'} +14:48:27,426 DEBUG [routes.middleware] Match dict: {'action': u'view', 'controller': u'hg', 'path_info': 'static/hgicon.png'} +14:48:27,426 DEBUG [pylons.wsgiapp] Setting up Pylons stacked object globals +14:48:27,427 DEBUG [pylons.wsgiapp] Resolved URL to controller: u'hg' +14:48:27,427 DEBUG [pylons.wsgiapp] Controller appears to be a class, instantiating +14:48:27,427 DEBUG [pylons.wsgiapp] Calling controller class with WSGI interface +14:48:27,427 DEBUG [pylons.controllers.core] Looking for u'view' method to handle the request +14:48:27,427 DEBUG [pylons.controllers.core] Calling 'view' method with keyword args: **{'start_response': , 'environ': {'routes.route': , 'HTTP_COOKIE': 'pylons_app=ec1f911f486328328b82fe62b9ecfb8c8e67ce074366ad71ec9c1fedd2deef3b48609ea4', 'pylons.routes_dict': {'action': u'view', 'controller': u'hg', 'path_info': 'static/hgicon.png'}, 'beaker.get_session': >, 'SCRIPT_NAME': '', 'webob.adhoc_attrs': {'language': 'en-us'}, 'REQUEST_METHOD': 'GET', 'PATH_INFO': '/static/hgicon.png', 'SERVER_PROTOCOL': 'HTTP/1.1', 'QUERY_STRING': '', 'paste.throw_errors': True, 'pylons.action_method': >, 'CONTENT_LENGTH': '0', 'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7', 'HTTP_USER_AGENT': 'Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.2pre) Gecko/20100216 Ubuntu/9.10 (karmic) Namoroka/3.6.2pre', 'HTTP_CONNECTION': 'keep-alive', 'beaker.cache': , 'SERVER_NAME': '127.0.0.1', 'REMOTE_ADDR': '127.0.0.1', 'pylons.environ_config': {'session': 'beaker.session', 'cache': 'beaker.cache'}, 'pylons.pylons': , 'wsgi.url_scheme': 'http', 'wsgiorg.routing_args': (, {'action': u'view', 'controller': u'hg', 'path_info': 'static/hgicon.png'}), 'SERVER_PORT': '5000', 'weberror.evalexception': , 'pylons.controller': , 'paste.evalexception': , 'wsgi.input': , 'HTTP_HOST': '127.0.0.1:5000', 'beaker.session': {'_accessed_time': 1266500907.4276941, '_creation_time': 1266500903.475585}, 'wsgi.multithread': True, 'routes.url': , 'HTTP_ACCEPT': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 'wsgi.version': (1, 0), 'paste.registry': , 'wsgi.run_once': False, 'wsgi.errors': ', mode 'w' at 0x7f1e007211c8>, 'wsgi.multiprocess': False, 'HTTP_ACCEPT_LANGUAGE': 'en-us,en;q=0.5', 'CONTENT_TYPE': '', 'paste.httpserver.thread_pool': , 'HTTP_ACCEPT_ENCODING': 'gzip,deflate', 'HTTP_KEEP_ALIVE': '115'}} +14:48:28,329 DEBUG [pylons.controllers.core] Merging pylons.response headers into start_response call, status: 200 Script output follows +14:48:28,329 DEBUG [pylons.controllers.core] Response assumed to be WSGI content, returning un-touched +14:49:27,774 DEBUG [pylons.configuration] Initializing configuration, package: 'pylons_app' +14:49:27,774 DEBUG [pylons.configuration] Pushing process configuration +14:49:27,778 DEBUG [pylons.configuration] Adding mako engine with alias None and {'myghty.data_dir': '/home/marcink/python_workspace/hg_app/data/templates', 'mako.directories': ['/home/marcink/python_workspace/hg_app/pylons_app/templates'], 'myghty.component_root': [{'templates': '/home/marcink/python_workspace/hg_app/pylons_app/templates'}], 'kid.encoding': 'utf-8', 'kid.assume_encoding': 'utf-8', 'mako.module_directory': '/home/marcink/python_workspace/hg_app/data/templates', 'myghty.allow_globals': ['c', 'config', 'g', 'h', 'render', 'request', 'session', 'translator', 'ungettext', '_', 'N_'], 'myghty.output_encoding': 'utf-8', 'myghty.raise_error': True, 'mako.output_encoding': 'utf-8', 'mako.filesystem_checks': True} options +14:49:27,778 DEBUG [pylons.configuration] Loaded mako template engine as the default template renderer +14:49:27,782 DEBUG [pylons.templating] Initialized Buffet object +14:49:27,782 DEBUG [pylons.templating] Adding mako template language for use with Buffet +14:49:27,782 DEBUG [routes.middleware] Initialized with method overriding = True, and path info altering = True +14:49:27,784 DEBUG [paste.httpserver.ThreadPool] Started new worker 140269308057872: Initial worker pool +14:49:27,785 DEBUG [paste.httpserver.ThreadPool] Started new worker 140269299665168: Initial worker pool +14:49:27,785 DEBUG [paste.httpserver.ThreadPool] Started new worker 140269291272464: Initial worker pool +14:49:27,785 DEBUG [paste.httpserver.ThreadPool] Started new worker 140269282879760: Initial worker pool +14:49:27,785 DEBUG [paste.httpserver.ThreadPool] Started new worker 140269274487056: Initial worker pool +14:49:27,786 DEBUG [paste.httpserver.ThreadPool] Started new worker 140269266094352: Initial worker pool +14:49:27,786 DEBUG [paste.httpserver.ThreadPool] Started new worker 140269257701648: Initial worker pool +14:49:27,786 DEBUG [paste.httpserver.ThreadPool] Started new worker 140269249308944: Initial worker pool +14:49:27,786 DEBUG [paste.httpserver.ThreadPool] Started new worker 140269240916240: Initial worker pool +14:49:27,787 DEBUG [paste.httpserver.ThreadPool] Started new worker 140269232523536: Initial worker pool +14:49:43,821 DEBUG [paste.httpserver.ThreadPool] Added task (0 tasks queued) +14:49:43,824 DEBUG [routes.middleware] Matched GET /add/test2 +14:49:43,824 DEBUG [routes.middleware] Route path: '/add/{new_repo:[a-z0-9\. _-]*}', defaults: {'action': u'add_repo', 'controller': u'hg'} +14:49:43,825 DEBUG [routes.middleware] Match dict: {'action': u'add_repo', 'new_repo': u'test2', 'controller': u'hg'} +14:49:43,825 DEBUG [pylons.wsgiapp] Setting up Pylons stacked object globals +14:49:43,826 DEBUG [pylons.wsgiapp] Resolved URL to controller: u'hg' +14:49:43,906 DEBUG [pylons.wsgiapp] Found controller, module: 'pylons_app.controllers.hg', class: 'HgController' +14:49:43,908 DEBUG [pylons.wsgiapp] Controller appears to be a class, instantiating +14:49:43,908 DEBUG [pylons.wsgiapp] Calling controller class with WSGI interface +14:49:43,908 DEBUG [pylons.controllers.core] Looking for u'add_repo' method to handle the request +14:49:43,909 DEBUG [pylons.controllers.core] Calling 'add_repo' method with keyword args: **{'new_repo': u'test2'} +14:49:43,957 INFO [pylons_app.controllers.hg] test2 repo is free for creation +14:49:43,957 INFO [pylons_app.controllers.hg] test2 repo is free for creation +14:49:43,957 INFO [pylons_app.controllers.hg] creating repo test2 in /home/marcink/python_workspace/**/test2 +14:49:43,957 INFO [pylons_app.controllers.hg] creating repo test2 in /home/marcink/python_workspace/**/test2 +14:49:43,962 DEBUG [pylons.controllers.core] Assuming controller returned an iterable, setting it as pylons.response.app_iter +14:49:43,962 DEBUG [pylons.controllers.core] Calling Response object to return WSGI data +14:50:36,802 DEBUG [pylons.configuration] Initializing configuration, package: 'pylons_app' +14:50:36,802 DEBUG [pylons.configuration] Pushing process configuration +14:50:36,805 DEBUG [pylons.configuration] Adding mako engine with alias None and {'myghty.data_dir': '/home/marcink/python_workspace/hg_app/data/templates', 'mako.directories': ['/home/marcink/python_workspace/hg_app/pylons_app/templates'], 'myghty.component_root': [{'templates': '/home/marcink/python_workspace/hg_app/pylons_app/templates'}], 'kid.encoding': 'utf-8', 'kid.assume_encoding': 'utf-8', 'mako.module_directory': '/home/marcink/python_workspace/hg_app/data/templates', 'myghty.allow_globals': ['c', 'config', 'g', 'h', 'render', 'request', 'session', 'translator', 'ungettext', '_', 'N_'], 'myghty.output_encoding': 'utf-8', 'myghty.raise_error': True, 'mako.output_encoding': 'utf-8', 'mako.filesystem_checks': True} options +14:50:36,805 DEBUG [pylons.configuration] Loaded mako template engine as the default template renderer +14:50:36,809 DEBUG [pylons.templating] Initialized Buffet object +14:50:36,809 DEBUG [pylons.templating] Adding mako template language for use with Buffet +14:50:36,810 DEBUG [routes.middleware] Initialized with method overriding = True, and path info altering = True +14:50:36,812 DEBUG [paste.httpserver.ThreadPool] Started new worker 139820631587088: Initial worker pool +14:50:36,812 DEBUG [paste.httpserver.ThreadPool] Started new worker 139820623194384: Initial worker pool +14:50:36,812 DEBUG [paste.httpserver.ThreadPool] Started new worker 139820614801680: Initial worker pool +14:50:36,812 DEBUG [paste.httpserver.ThreadPool] Started new worker 139820606408976: Initial worker pool +14:50:36,813 DEBUG [paste.httpserver.ThreadPool] Started new worker 139820598016272: Initial worker pool +14:50:36,813 DEBUG [paste.httpserver.ThreadPool] Started new worker 139820589623568: Initial worker pool +14:50:36,813 DEBUG [paste.httpserver.ThreadPool] Started new worker 139820581230864: Initial worker pool +14:50:36,813 DEBUG [paste.httpserver.ThreadPool] Started new worker 139820572838160: Initial worker pool +14:50:36,814 DEBUG [paste.httpserver.ThreadPool] Started new worker 139820564445456: Initial worker pool +14:50:36,814 DEBUG [paste.httpserver.ThreadPool] Started new worker 139820556052752: Initial worker pool +14:50:48,060 DEBUG [paste.httpserver.ThreadPool] Added task (0 tasks queued) +14:50:48,063 DEBUG [routes.middleware] Matched GET /add/test2 +14:50:48,063 DEBUG [routes.middleware] Route path: '/add/{new_repo:[a-z0-9\. _-]*}', defaults: {'action': u'add_repo', 'controller': u'hg'} +14:50:48,063 DEBUG [routes.middleware] Match dict: {'action': u'add_repo', 'new_repo': u'test2', 'controller': u'hg'} +14:50:48,063 DEBUG [pylons.wsgiapp] Setting up Pylons stacked object globals +14:50:48,064 DEBUG [pylons.wsgiapp] Resolved URL to controller: u'hg' +14:50:48,120 DEBUG [pylons.wsgiapp] Found controller, module: 'pylons_app.controllers.hg', class: 'HgController' +14:50:48,120 DEBUG [pylons.wsgiapp] Controller appears to be a class, instantiating +14:50:48,120 DEBUG [pylons.wsgiapp] Calling controller class with WSGI interface +14:50:48,120 DEBUG [pylons.controllers.core] Looking for u'add_repo' method to handle the request +14:50:48,120 DEBUG [pylons.controllers.core] Calling 'add_repo' method with keyword args: **{'new_repo': u'test2'} +14:50:48,156 INFO [pylons_app.controllers.hg] test2 repo is free for creation +14:50:48,156 INFO [pylons_app.controllers.hg] test2 repo is free for creation +14:50:48,156 INFO [pylons_app.controllers.hg] creating repo test2 in /home/marcink/python_workspace/test2 +14:50:48,156 INFO [pylons_app.controllers.hg] creating repo test2 in /home/marcink/python_workspace/test2 +14:50:48,405 DEBUG [pylons.controllers.core] Assuming controller returned an iterable, setting it as pylons.response.app_iter +14:50:48,406 DEBUG [pylons.controllers.core] Calling Response object to return WSGI data +14:50:53,654 DEBUG [paste.httpserver.ThreadPool] Added task (0 tasks queued) +14:50:53,655 DEBUG [routes.middleware] Matched GET / +14:50:53,655 DEBUG [routes.middleware] Route path: '/{path_info:.*}', defaults: {'action': u'view', 'controller': u'hg', 'path_info': u'/'} +14:50:53,655 DEBUG [routes.middleware] Match dict: {'action': u'view', 'controller': u'hg', 'path_info': u'/'} +14:50:53,656 DEBUG [pylons.wsgiapp] Setting up Pylons stacked object globals +14:50:53,656 DEBUG [pylons.wsgiapp] Resolved URL to controller: u'hg' +14:50:53,656 DEBUG [pylons.wsgiapp] Controller appears to be a class, instantiating +14:50:53,656 DEBUG [pylons.wsgiapp] Calling controller class with WSGI interface +14:50:53,657 DEBUG [pylons.controllers.core] Looking for u'view' method to handle the request +14:50:53,657 DEBUG [pylons.controllers.core] Calling 'view' method with keyword args: **{'start_response': , 'environ': {'routes.route': , 'HTTP_REFERER': 'http://127.0.0.1:5000/add/test2', 'pylons.routes_dict': {'action': u'view', 'controller': u'hg', 'path_info': u'/'}, 'beaker.get_session': >, 'SCRIPT_NAME': '', 'webob.adhoc_attrs': {'language': 'en-us'}, 'REQUEST_METHOD': 'GET', 'PATH_INFO': u'/', 'SERVER_PROTOCOL': 'HTTP/1.1', 'QUERY_STRING': '', 'paste.throw_errors': True, 'pylons.action_method': >, 'CONTENT_LENGTH': '0', 'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7', 'HTTP_USER_AGENT': 'Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.2pre) Gecko/20100216 Ubuntu/9.10 (karmic) Namoroka/3.6.2pre', 'HTTP_CONNECTION': 'keep-alive', 'HTTP_COOKIE': 'pylons_app=ec1f911f486328328b82fe62b9ecfb8c8e67ce074366ad71ec9c1fedd2deef3b48609ea4', 'SERVER_NAME': '127.0.0.1', 'REMOTE_ADDR': '127.0.0.1', 'pylons.environ_config': {'session': 'beaker.session', 'cache': 'beaker.cache'}, 'pylons.pylons': , 'wsgi.url_scheme': 'http', 'beaker.cache': , 'wsgiorg.routing_args': (, {'action': u'view', 'controller': u'hg', 'path_info': u'/'}), 'SERVER_PORT': '5000', 'weberror.evalexception': , 'pylons.controller': , 'paste.evalexception': , 'wsgi.input': , 'HTTP_HOST': '127.0.0.1:5000', 'beaker.session': {'_accessed_time': 1266501053.6575689, '_creation_time': 1266501053.6575689}, 'wsgi.multithread': True, 'routes.url': , 'HTTP_ACCEPT': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 'wsgi.version': (1, 0), 'paste.registry': , 'wsgi.run_once': False, 'wsgi.errors': ', mode 'w' at 0x7f2a8b7031c8>, 'wsgi.multiprocess': False, 'HTTP_ACCEPT_LANGUAGE': 'en-us,en;q=0.5', 'CONTENT_TYPE': '', 'paste.httpserver.thread_pool': , 'HTTP_ACCEPT_ENCODING': 'gzip,deflate', 'HTTP_KEEP_ALIVE': '115'}} +14:50:54,621 DEBUG [pylons.controllers.core] Merging pylons.response headers into start_response call, status: 200 Script output follows +14:50:54,651 DEBUG [pylons.controllers.core] Response assumed to be WSGI content, returning un-touched +14:50:54,672 DEBUG [paste.httpserver.ThreadPool] Added task (0 tasks queued) +14:50:54,681 DEBUG [routes.middleware] Matched GET /static/style-gitweb.css +14:50:54,681 DEBUG [routes.middleware] Route path: '/{path_info:.*}', defaults: {'action': u'view', 'controller': u'hg', 'path_info': u'/'} +14:50:54,728 DEBUG [routes.middleware] Match dict: {'action': u'view', 'controller': u'hg', 'path_info': 'static/style-gitweb.css'} +14:50:54,729 DEBUG [pylons.wsgiapp] Setting up Pylons stacked object globals +14:50:54,729 DEBUG [pylons.wsgiapp] Resolved URL to controller: u'hg' +14:50:54,729 DEBUG [pylons.wsgiapp] Controller appears to be a class, instantiating +14:50:54,729 DEBUG [pylons.wsgiapp] Calling controller class with WSGI interface +14:50:54,729 DEBUG [pylons.controllers.core] Looking for u'view' method to handle the request +14:50:54,730 DEBUG [pylons.controllers.core] Calling 'view' method with keyword args: **{'start_response': , 'environ': {'routes.route': , 'HTTP_REFERER': 'http://127.0.0.1:5000/', 'pylons.routes_dict': {'action': u'view', 'controller': u'hg', 'path_info': 'static/style-gitweb.css'}, 'beaker.get_session': >, 'SCRIPT_NAME': '', 'webob.adhoc_attrs': {'language': 'en-us'}, 'REQUEST_METHOD': 'GET', 'PATH_INFO': '/static/style-gitweb.css', 'SERVER_PROTOCOL': 'HTTP/1.1', 'QUERY_STRING': '', 'paste.throw_errors': True, 'pylons.action_method': >, 'CONTENT_LENGTH': '0', 'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7', 'HTTP_USER_AGENT': 'Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.2pre) Gecko/20100216 Ubuntu/9.10 (karmic) Namoroka/3.6.2pre', 'HTTP_CONNECTION': 'keep-alive', 'HTTP_COOKIE': 'pylons_app=ec1f911f486328328b82fe62b9ecfb8c8e67ce074366ad71ec9c1fedd2deef3b48609ea4', 'SERVER_NAME': '127.0.0.1', 'REMOTE_ADDR': '127.0.0.1', 'pylons.environ_config': {'session': 'beaker.session', 'cache': 'beaker.cache'}, 'pylons.pylons': , 'wsgi.url_scheme': 'http', 'beaker.cache': , 'wsgiorg.routing_args': (, {'action': u'view', 'controller': u'hg', 'path_info': 'static/style-gitweb.css'}), 'SERVER_PORT': '5000', 'weberror.evalexception': , 'pylons.controller': , 'paste.evalexception': , 'wsgi.input': , 'HTTP_HOST': '127.0.0.1:5000', 'beaker.session': {'_accessed_time': 1266501054.730284, '_creation_time': 1266501053.6575689}, 'wsgi.multithread': True, 'routes.url': , 'HTTP_ACCEPT': 'text/css,*/*;q=0.1', 'wsgi.version': (1, 0), 'paste.registry': , 'wsgi.run_once': False, 'wsgi.errors': ', mode 'w' at 0x7f2a8b7031c8>, 'wsgi.multiprocess': False, 'HTTP_ACCEPT_LANGUAGE': 'en-us,en;q=0.5', 'CONTENT_TYPE': '', 'paste.httpserver.thread_pool': , 'HTTP_ACCEPT_ENCODING': 'gzip,deflate', 'HTTP_KEEP_ALIVE': '115'}} +14:50:55,614 DEBUG [pylons.controllers.core] Merging pylons.response headers into start_response call, status: 200 Script output follows +14:50:55,614 DEBUG [pylons.controllers.core] Response assumed to be WSGI content, returning un-touched +14:50:57,677 DEBUG [paste.httpserver.ThreadPool] Added task (0 tasks queued) +14:50:57,680 DEBUG [routes.middleware] Matched GET /static/hgicon.png +14:50:57,680 DEBUG [routes.middleware] Route path: '/{path_info:.*}', defaults: {'action': u'view', 'controller': u'hg', 'path_info': u'/'} +14:50:57,681 DEBUG [routes.middleware] Match dict: {'action': u'view', 'controller': u'hg', 'path_info': 'static/hgicon.png'} +14:50:57,682 DEBUG [pylons.wsgiapp] Setting up Pylons stacked object globals +14:50:57,683 DEBUG [pylons.wsgiapp] Resolved URL to controller: u'hg' +14:50:57,684 DEBUG [pylons.wsgiapp] Controller appears to be a class, instantiating +14:50:57,684 DEBUG [pylons.wsgiapp] Calling controller class with WSGI interface +14:50:57,685 DEBUG [pylons.controllers.core] Looking for u'view' method to handle the request +14:50:57,685 DEBUG [pylons.controllers.core] Calling 'view' method with keyword args: **{'start_response': , 'environ': {'routes.route': , 'HTTP_COOKIE': 'pylons_app=ec1f911f486328328b82fe62b9ecfb8c8e67ce074366ad71ec9c1fedd2deef3b48609ea4', 'pylons.routes_dict': {'action': u'view', 'controller': u'hg', 'path_info': 'static/hgicon.png'}, 'beaker.get_session': >, 'SCRIPT_NAME': '', 'webob.adhoc_attrs': {'language': 'en-us'}, 'REQUEST_METHOD': 'GET', 'PATH_INFO': '/static/hgicon.png', 'SERVER_PROTOCOL': 'HTTP/1.1', 'QUERY_STRING': '', 'paste.throw_errors': True, 'pylons.action_method': >, 'CONTENT_LENGTH': '0', 'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7', 'HTTP_USER_AGENT': 'Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.2pre) Gecko/20100216 Ubuntu/9.10 (karmic) Namoroka/3.6.2pre', 'HTTP_CONNECTION': 'keep-alive', 'beaker.cache': , 'SERVER_NAME': '127.0.0.1', 'REMOTE_ADDR': '127.0.0.1', 'pylons.environ_config': {'session': 'beaker.session', 'cache': 'beaker.cache'}, 'pylons.pylons': , 'wsgi.url_scheme': 'http', 'wsgiorg.routing_args': (, {'action': u'view', 'controller': u'hg', 'path_info': 'static/hgicon.png'}), 'SERVER_PORT': '5000', 'weberror.evalexception': , 'pylons.controller': , 'paste.evalexception': , 'wsgi.input': , 'HTTP_HOST': '127.0.0.1:5000', 'beaker.session': {'_accessed_time': 1266501057.686095, '_creation_time': 1266501053.6575689}, 'wsgi.multithread': True, 'routes.url': , 'HTTP_ACCEPT': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 'wsgi.version': (1, 0), 'paste.registry': , 'wsgi.run_once': False, 'wsgi.errors': ', mode 'w' at 0x7f2a8b7031c8>, 'wsgi.multiprocess': False, 'HTTP_ACCEPT_LANGUAGE': 'en-us,en;q=0.5', 'CONTENT_TYPE': '', 'paste.httpserver.thread_pool': , 'HTTP_ACCEPT_ENCODING': 'gzip,deflate', 'HTTP_KEEP_ALIVE': '115'}} +14:50:58,643 DEBUG [pylons.controllers.core] Merging pylons.response headers into start_response call, status: 200 Script output follows +14:50:58,644 DEBUG [pylons.controllers.core] Response assumed to be WSGI content, returning un-touched +14:51:00,331 DEBUG [paste.httpserver.ThreadPool] Added task (0 tasks queued) +14:51:00,346 DEBUG [routes.middleware] Matched GET /test2/ +14:51:00,346 DEBUG [routes.middleware] Route path: '/{path_info:.*}', defaults: {'action': u'view', 'controller': u'hg', 'path_info': u'/'} +14:51:00,347 DEBUG [routes.middleware] Match dict: {'action': u'view', 'controller': u'hg', 'path_info': 'test2/'} +14:51:00,348 DEBUG [pylons.wsgiapp] Setting up Pylons stacked object globals +14:51:00,349 DEBUG [pylons.wsgiapp] Resolved URL to controller: u'hg' +14:51:00,350 DEBUG [pylons.wsgiapp] Controller appears to be a class, instantiating +14:51:00,350 DEBUG [pylons.wsgiapp] Calling controller class with WSGI interface +14:51:00,350 DEBUG [pylons.controllers.core] Looking for u'view' method to handle the request +14:51:00,351 DEBUG [pylons.controllers.core] Calling 'view' method with keyword args: **{'start_response': , 'environ': {'routes.route': , 'HTTP_REFERER': 'http://127.0.0.1:5000/', 'pylons.routes_dict': {'action': u'view', 'controller': u'hg', 'path_info': 'test2/'}, 'beaker.get_session': >, 'SCRIPT_NAME': '', 'webob.adhoc_attrs': {'language': 'en-us'}, 'REQUEST_METHOD': 'GET', 'PATH_INFO': '/test2/', 'SERVER_PROTOCOL': 'HTTP/1.1', 'QUERY_STRING': '', 'paste.throw_errors': True, 'pylons.action_method': >, 'CONTENT_LENGTH': '0', 'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7', 'HTTP_USER_AGENT': 'Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.2pre) Gecko/20100216 Ubuntu/9.10 (karmic) Namoroka/3.6.2pre', 'HTTP_CONNECTION': 'keep-alive', 'HTTP_COOKIE': 'pylons_app=ec1f911f486328328b82fe62b9ecfb8c8e67ce074366ad71ec9c1fedd2deef3b48609ea4', 'SERVER_NAME': '127.0.0.1', 'REMOTE_ADDR': '127.0.0.1', 'pylons.environ_config': {'session': 'beaker.session', 'cache': 'beaker.cache'}, 'pylons.pylons': , 'wsgi.url_scheme': 'http', 'beaker.cache': , 'wsgiorg.routing_args': (, {'action': u'view', 'controller': u'hg', 'path_info': 'test2/'}), 'SERVER_PORT': '5000', 'weberror.evalexception': , 'pylons.controller': , 'paste.evalexception': , 'wsgi.input': , 'HTTP_HOST': '127.0.0.1:5000', 'beaker.session': {'_accessed_time': 1266501060.3517771, '_creation_time': 1266501053.6575689}, 'wsgi.multithread': True, 'routes.url': , 'HTTP_ACCEPT': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 'wsgi.version': (1, 0), 'paste.registry': , 'wsgi.run_once': False, 'wsgi.errors': ', mode 'w' at 0x7f2a8b7031c8>, 'wsgi.multiprocess': False, 'HTTP_ACCEPT_LANGUAGE': 'en-us,en;q=0.5', 'CONTENT_TYPE': '', 'paste.httpserver.thread_pool': , 'HTTP_ACCEPT_ENCODING': 'gzip,deflate', 'HTTP_KEEP_ALIVE': '115'}} +14:51:01,254 DEBUG [pylons.controllers.core] Merging pylons.response headers into start_response call, status: 200 Script output follows +14:51:01,257 DEBUG [pylons.controllers.core] Response assumed to be WSGI content, returning un-touched +14:51:01,304 DEBUG [paste.httpserver.ThreadPool] Added task (0 tasks queued) +14:51:01,306 DEBUG [routes.middleware] Matched GET /static/style-gitweb.css +14:51:01,306 DEBUG [routes.middleware] Route path: '/{path_info:.*}', defaults: {'action': u'view', 'controller': u'hg', 'path_info': u'/'} +14:51:01,306 DEBUG [routes.middleware] Match dict: {'action': u'view', 'controller': u'hg', 'path_info': 'static/style-gitweb.css'} +14:51:01,306 DEBUG [pylons.wsgiapp] Setting up Pylons stacked object globals +14:51:01,307 DEBUG [pylons.wsgiapp] Resolved URL to controller: u'hg' +14:51:01,307 DEBUG [pylons.wsgiapp] Controller appears to be a class, instantiating +14:51:01,307 DEBUG [pylons.wsgiapp] Calling controller class with WSGI interface +14:51:01,307 DEBUG [pylons.controllers.core] Looking for u'view' method to handle the request +14:51:01,307 DEBUG [pylons.controllers.core] Calling 'view' method with keyword args: **{'start_response': , 'environ': {'routes.route': , 'HTTP_REFERER': 'http://127.0.0.1:5000/test2/', 'pylons.routes_dict': {'action': u'view', 'controller': u'hg', 'path_info': 'static/style-gitweb.css'}, 'beaker.get_session': >, 'SCRIPT_NAME': '', 'webob.adhoc_attrs': {'language': 'en-us'}, 'REQUEST_METHOD': 'GET', 'PATH_INFO': '/static/style-gitweb.css', 'SERVER_PROTOCOL': 'HTTP/1.1', 'QUERY_STRING': '', 'paste.throw_errors': True, 'pylons.action_method': >, 'CONTENT_LENGTH': '0', 'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7', 'HTTP_USER_AGENT': 'Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.2pre) Gecko/20100216 Ubuntu/9.10 (karmic) Namoroka/3.6.2pre', 'HTTP_CONNECTION': 'keep-alive', 'HTTP_COOKIE': 'pylons_app=ec1f911f486328328b82fe62b9ecfb8c8e67ce074366ad71ec9c1fedd2deef3b48609ea4', 'SERVER_NAME': '127.0.0.1', 'REMOTE_ADDR': '127.0.0.1', 'pylons.environ_config': {'session': 'beaker.session', 'cache': 'beaker.cache'}, 'pylons.pylons': , 'wsgi.url_scheme': 'http', 'beaker.cache': , 'wsgiorg.routing_args': (, {'action': u'view', 'controller': u'hg', 'path_info': 'static/style-gitweb.css'}), 'SERVER_PORT': '5000', 'weberror.evalexception': , 'pylons.controller': , 'paste.evalexception': , 'wsgi.input': , 'HTTP_HOST': '127.0.0.1:5000', 'beaker.session': {'_accessed_time': 1266501061.3081, '_creation_time': 1266501053.6575689}, 'wsgi.multithread': True, 'routes.url': , 'HTTP_ACCEPT': 'text/css,*/*;q=0.1', 'wsgi.version': (1, 0), 'paste.registry': , 'wsgi.run_once': False, 'wsgi.errors': ', mode 'w' at 0x7f2a8b7031c8>, 'wsgi.multiprocess': False, 'HTTP_ACCEPT_LANGUAGE': 'en-us,en;q=0.5', 'CONTENT_TYPE': '', 'paste.httpserver.thread_pool': , 'HTTP_ACCEPT_ENCODING': 'gzip,deflate', 'HTTP_KEEP_ALIVE': '115'}} +14:51:02,219 DEBUG [pylons.controllers.core] Merging pylons.response headers into start_response call, status: 200 Script output follows +14:51:02,220 DEBUG [pylons.controllers.core] Response assumed to be WSGI content, returning un-touched +14:51:04,300 DEBUG [paste.httpserver.ThreadPool] Added task (0 tasks queued) +14:51:04,302 DEBUG [routes.middleware] Matched GET /static/hgicon.png +14:51:04,302 DEBUG [routes.middleware] Route path: '/{path_info:.*}', defaults: {'action': u'view', 'controller': u'hg', 'path_info': u'/'} +14:51:04,302 DEBUG [routes.middleware] Match dict: {'action': u'view', 'controller': u'hg', 'path_info': 'static/hgicon.png'} +14:51:04,302 DEBUG [pylons.wsgiapp] Setting up Pylons stacked object globals +14:51:04,303 DEBUG [pylons.wsgiapp] Resolved URL to controller: u'hg' +14:51:04,303 DEBUG [pylons.wsgiapp] Controller appears to be a class, instantiating +14:51:04,303 DEBUG [pylons.wsgiapp] Calling controller class with WSGI interface +14:51:04,303 DEBUG [pylons.controllers.core] Looking for u'view' method to handle the request +14:51:04,303 DEBUG [pylons.controllers.core] Calling 'view' method with keyword args: **{'start_response': , 'environ': {'routes.route': , 'HTTP_COOKIE': 'pylons_app=ec1f911f486328328b82fe62b9ecfb8c8e67ce074366ad71ec9c1fedd2deef3b48609ea4', 'pylons.routes_dict': {'action': u'view', 'controller': u'hg', 'path_info': 'static/hgicon.png'}, 'beaker.get_session': >, 'SCRIPT_NAME': '', 'webob.adhoc_attrs': {'language': 'en-us'}, 'REQUEST_METHOD': 'GET', 'PATH_INFO': '/static/hgicon.png', 'SERVER_PROTOCOL': 'HTTP/1.1', 'QUERY_STRING': '', 'paste.throw_errors': True, 'pylons.action_method': >, 'CONTENT_LENGTH': '0', 'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7', 'HTTP_USER_AGENT': 'Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.2pre) Gecko/20100216 Ubuntu/9.10 (karmic) Namoroka/3.6.2pre', 'HTTP_CONNECTION': 'keep-alive', 'beaker.cache': , 'SERVER_NAME': '127.0.0.1', 'REMOTE_ADDR': '127.0.0.1', 'pylons.environ_config': {'session': 'beaker.session', 'cache': 'beaker.cache'}, 'pylons.pylons': , 'wsgi.url_scheme': 'http', 'wsgiorg.routing_args': (, {'action': u'view', 'controller': u'hg', 'path_info': 'static/hgicon.png'}), 'SERVER_PORT': '5000', 'weberror.evalexception': , 'pylons.controller': , 'paste.evalexception': , 'wsgi.input': , 'HTTP_HOST': '127.0.0.1:5000', 'beaker.session': {'_accessed_time': 1266501064.303968, '_creation_time': 1266501053.6575689}, 'wsgi.multithread': True, 'routes.url': , 'HTTP_ACCEPT': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 'wsgi.version': (1, 0), 'paste.registry': , 'wsgi.run_once': False, 'wsgi.errors': ', mode 'w' at 0x7f2a8b7031c8>, 'wsgi.multiprocess': False, 'HTTP_ACCEPT_LANGUAGE': 'en-us,en;q=0.5', 'CONTENT_TYPE': '', 'paste.httpserver.thread_pool': , 'HTTP_ACCEPT_ENCODING': 'gzip,deflate', 'HTTP_KEEP_ALIVE': '115'}} +14:51:05,186 DEBUG [pylons.controllers.core] Merging pylons.response headers into start_response call, status: 200 Script output follows +14:51:05,186 DEBUG [pylons.controllers.core] Response assumed to be WSGI content, returning un-touched diff -r ad0dd3904225 -r 2620dac853ad pylons_app/controllers/hg.py --- a/pylons_app/controllers/hg.py Thu Feb 18 14:13:45 2010 +0100 +++ b/pylons_app/controllers/hg.py Thu Feb 18 14:51:26 2010 +0100 @@ -14,7 +14,7 @@ from mercurial import ui, hg from mercurial.error import RepoError - +from ConfigParser import ConfigParser #http://bel-epa.com/hg/ #def make_web_app(): # repos = "hgwebdir.config" @@ -46,7 +46,19 @@ class HgController(BaseController): def _check_repo(self, repo_name): - repos_path = '/home/marcink/python_workspace' + + p = os.path.dirname(__file__) + config_path = os.path.join(p, '../..', 'hgwebdir.config') + print config_path + + cp = ConfigParser() + + cp.read(config_path) + repos_path = cp.get('paths', '/').replace("**", '') + + if not repos_path: + raise Exception('Could not read config !') + self.repo_path = os.path.join(repos_path, repo_name) try: @@ -66,7 +78,7 @@ raise Exception('undefined repo_name of repo') if self._check_repo(repo_name): - log.info('creating repo %s', repo_name) + log.info('creating repo %s in %s', repo_name, self.repo_path) cmd = """mkdir %s && hg init %s""" \ % (self.repo_path, self.repo_path) os.popen(cmd) diff -r ad0dd3904225 -r 2620dac853ad pylons_app/tests/configparser_test.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/pylons_app/tests/configparser_test.py Thu Feb 18 14:51:26 2010 +0100 @@ -0,0 +1,11 @@ +import os +p = os.path.dirname(__file__) +repos = os.path.join(p, '../..', 'hgwebdir.config') +#repos = "/home/marcink/python_workspace/hg_app/hgwebdir.config" +print repos +from ConfigParser import ConfigParser + +cp = ConfigParser() + +cp.read(repos) +print cp.get('paths', '/')