Hi,
I am also encountering the same problem as jtaylor and I am running
the same configuration as the poster in this thread:
http://groups.google.com/group/google-appengine/browse_frm/thread/9e9f3715a866b754
(Installed GAE SDK 1.1.9 on Mac OS X 10.5.6 running Python 2.5.1)
I had no problems with GAE prior to this update.
I have posted relevant code/error msgs below, the primary error msg
(the bottom line) is as follows:
<class 'google.appengine.tools.dev_appserver.InvalidAppConfigError'>:
Application configuration could not be read from "/Users/robertwarren/
Documents/workspace/BioVenturist/BioVenturist/bioventurist_v0.2/
app.yaml"
Any suggestions as to how to begin fixing this issue would be
appreciated.
Here is my app.yaml:
application: bioventurist
version: 1
runtime: python
api_version: 1
handlers:
- url: /media
static_dir: media
- url: /static
static_dir: static
- url: /bvapp/static
static_dir: bvapp/static
- url: /img
static_dir: static/img
- url: /img/(.*)
static_files: static/img/\1
upload: static/img/(.*)
- url: /.*
script: common/appenginepatch/main.py
And the error msg:
A problem occurred in a Python script. Here is the sequence of
function calls leading up to the error, in the order they occurred.
/Applications/GoogleAppEngineLauncher.app/Contents/Resources/
GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/
google/appengine/tools/dev_appserver.py in _HandleRequest
(self=<google.appengine.tools.dev_appserver.DevAppServerRequestHandler
instance at 0x10c99e0>)
2709 infile,
2710 outfile,
2711 base_env_dict=env_dict)
2712 finally:
2713 self.module_manager.UpdateModuleFileModificationTimes
()
base_env_dict undefined, env_dict = {'APPLICATION_ID': 'bioventurist',
'CURRENT_VERSION_ID': '1.1', 'REMOTE_ADDR': '127.0.0.1',
'REQUEST_METHOD': 'GET', 'SERVER_NAME': 'localhost', 'SERVER_PORT':
'8082', 'SERVER_PROTOCOL': 'HTTP/1.0', 'SERVER_SOFTWARE': 'Development/
1.0'}
/Applications/GoogleAppEngineLauncher.app/Contents/Resources/
GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/
google/appengine/tools/dev_appserver.py in Dispatch
(self=<google.appengine.tools.dev_appserver.MatcherDispatcher object
at 0x10e5890>, relative_url='/', path=None, headers=<mimetools.Message
instance at 0x10f1148>, infile=<cStringIO.StringI object at
0x10d20e0>, outfile=<cStringIO.StringO object at 0x10e5820>,
base_env_dict={'APPLICATION_ID': 'bioventurist', 'CURRENT_VERSION_ID':
'1.1', 'REMOTE_ADDR': '127.0.0.1', 'REQUEST_METHOD': 'GET',
'SERVER_NAME': 'localhost', 'SERVER_PORT': '8082', 'SERVER_PROTOCOL':
'HTTP/1.0', 'SERVER_SOFTWARE': 'Development/1.0'})
378 infile,
379 outfile,
380
base_env_dict=base_env_dict)
381
382 if forward:
base_env_dict = {'APPLICATION_ID': 'bioventurist',
'CURRENT_VERSION_ID': '1.1', 'REMOTE_ADDR': '127.0.0.1',
'REQUEST_METHOD': 'GET', 'SERVER_NAME': 'localhost', 'SERVER_PORT':
'8082', 'SERVER_PROTOCOL': 'HTTP/1.0', 'SERVER_SOFTWARE': 'Development/
1.0'}
/Applications/GoogleAppEngineLauncher.app/Contents/Resources/
GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/
google/appengine/tools/dev_appserver.py in Dispatch
(self=<google.appengine.tools.dev_appserver.CGIDispatcher object at
0x10e5af0>, relative_url='/', path='common/appenginepatch/main.py',
headers=<mimetools.Message instance at 0x10f1148>,
infile=<cStringIO.StringI object at 0x10d20e0>,
outfile=<cStringIO.StringO object at 0x10e5820>, base_env_dict=
{'APPLICATION_ID': 'bioventurist', 'CURRENT_VERSION_ID': '1.1',
'REMOTE_ADDR': '127.0.0.1', 'REQUEST_METHOD': 'GET', 'SERVER_NAME':
'localhost', 'SERVER_PORT': '8082', 'SERVER_PROTOCOL': 'HTTP/1.0',
'SERVER_SOFTWARE': 'Development/1.0'})
1996 infile,
1997 outfile,
1998 self._module_dict)
1999 handler.AddDebuggingConsole(relative_url, env, outfile)
2000 finally:
self = <google.appengine.tools.dev_appserver.CGIDispatcher object at
0x10e5af0>, self._module_dict = {'__main__': <module
'common.appenginepatch.main' from '/User...bioventurist_v0.2/common/
appenginepatch/main.py'>, 'aecmd': <module 'aecmd' from '/Users/
robertwarren/Docume...oventurist_v0.2/common/appenginepatch/
aecmd.pyc'>, 'appenginepatcher.aecmd': None,
'
appenginepatcher.google': None, 'appenginepatcher.os': None,
'appenginepatcher.sys': None, 'codecs': <module 'codecs' from '/System/
Library/Framework...framework/Versions/2.5/lib/python2.5/codecs.pyc'>,
'common': <module 'common' from '/Users/robertwarren/Docum...Venturist/
bioventurist_v0.2/common/__init__.pyc'>, 'common.appenginepatch':
<module 'common.appenginepatch' from '/Users/rob...nturist_v0.2/common/
appenginepatch/__init__.pyc'>, 'common.appenginepatch.main': <module
'common.appenginepatch.main' from '/User...bioventurist_v0.2/common/
appenginepatch/main.py'>, ...}
/Applications/GoogleAppEngineLauncher.app/Contents/Resources/
GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/
google/appengine/tools/dev_appserver.py in ExecuteCGI(root_path='/
Users/robertwarren/Documents/workspace/BioVenturist/BioVenturist/
bioventurist_v0.2', handler_path='common/appenginepatch/main.py',
cgi_path='/Users/robertwarren/Documents/workspace/BioVentu...t/
bioventurist_v0.2/common/appenginepatch/main.py', env=
{'APPLICATION_ID': 'bioventurist', 'AUTH_DOMAIN': '
gmail.com',
'CONTENT_LENGTH': '', 'CONTENT_TYPE': 'application/x-www-form-
urlencoded', 'CURRENT_VERSION_ID': '1.1', 'GATEWAY_INTERFACE': 'CGI/
1.1', 'HTTP_ACCEPT': 'text/html,application/xhtml+xml,application/
xml;q=0.9,*/*;q=0.8', 'HTTP_ACCEPT_CHARSET':
'ISO-8859-1,utf-8;q=0.7,*;q=0.7', 'HTTP_ACCEPT_LANGUAGE': 'en-
us,en;q=0.5', 'HTTP_CONNECTION': 'keep-alive', ...},
infile=<cStringIO.StringI object at 0x10d20e0>,
outfile=<cStringIO.StringO object at 0x10e5820>, module_dict=
{'__main__': <module 'common.appenginepatch.main' from '/
User...bioventurist_v0.2/common/appenginepatch/main.py'>, 'aecmd':
<module 'aecmd' from '/Users/robertwarren/Docume...oventurist_v0.2/
common/appenginepatch/aecmd.pyc'>, 'appenginepatcher.aecmd': None,
'
appenginepatcher.google': None, 'appenginepatcher.os': None,
'appenginepatcher.sys': None, 'codecs': <module 'codecs' from '/System/
Library/Framework...framework/Versions/2.5/lib/python2.5/codecs.pyc'>,
'common': <module 'common' from '/Users/robertwarren/Docum...Venturist/
bioventurist_v0.2/common/__init__.pyc'>, 'common.appenginepatch':
<module 'common.appenginepatch' from '/Users/rob...nturist_v0.2/common/
appenginepatch/__init__.pyc'>, 'common.appenginepatch.main': <module
'common.appenginepatch.main' from '/User...bioventurist_v0.2/common/
appenginepatch/main.py'>, ...}, exec_script=<function
ExecuteOrImportScript at 0x10cbc70>)
1914 logging.debug('Executing CGI with env:\n%s', pprint.pformat
(env))
1915 try:
1916 reset_modules = exec_script(handler_path, cgi_path, hook)
1917 except SystemExit, e:
1918 logging.debug('CGI exited with status: %s', e)
reset_modules = True, exec_script = <function ExecuteOrImportScript at
0x10cbc70>, handler_path = 'common/appenginepatch/main.py', cgi_path =
'/Users/robertwarren/Documents/workspace/BioVentu...t/
bioventurist_v0.2/common/appenginepatch/main.py', hook =
<google.appengine.tools.dev_appserver.HardenedModulesHook object at
0x10e5bf0>
/Applications/GoogleAppEngineLauncher.app/Contents/Resources/
GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/
google/appengine/tools/dev_appserver.py in ExecuteOrImportScript
(handler_path='common/appenginepatch/main.py', cgi_path='/Users/
robertwarren/Documents/workspace/BioVentu...t/bioventurist_v0.2/common/
appenginepatch/main.py',
import_hook=<google.appengine.tools.dev_appserver.HardenedModulesHook
object at 0x10e5bf0>)
1810 try:
1811 if module_code:
1812 exec module_code in script_module.__dict__
1813 else:
1814 script_module.main()
module_code = <code object <module> at 0x10b6bf0, file "/
Users...rist_v0.2/common/appenginepatch/main.py", line 2>,
script_module = <module 'common.appenginepatch.main' from '/
User...bioventurist_v0.2/common/appenginepatch/main.py'>,
script_module.__dict__ = {'__builtins__': {'ArithmeticError': <type
'exceptions.ArithmeticError'>, 'AssertionError': <type
'exceptions.AssertionError'>, 'AttributeError': <type
'exceptions.AttributeError'>, 'BaseException': <type
'exceptions.BaseException'>, 'DeprecationWarning': <type
'exceptions.DeprecationWarning'>, 'EOFError': <type
'exceptions.EOFError'>, 'Ellipsis': Ellipsis, 'EnvironmentError':
<type 'exceptions.EnvironmentError'>, 'Exception': <type
'exceptions.Exception'>, 'False': False, ...}, '__doc__': None,
'__file__': '/Users/robertwarren/Documents/workspace/BioVentu...t/
bioventurist_v0.2/common/appenginepatch/main.py', '__loader__':
<google.appengine.tools.dev_appserver.HardenedModulesHook object at
0x25f190>, '__name__': 'common.appenginepatch.main', 'current_dir': '/
Users/robertwarren/Documents/workspace/BioVentu...Venturist/
bioventurist_v0.2/common/appenginepatch', 'os': <module 'os' from '/
System/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/
os.pyc'>, 'setup_project': <function setup_project at 0x10eacf0>,
'sys': <module 'sys' (built-in)>}
/Users/robertwarren/Documents/workspace/BioVenturist/BioVenturist/
bioventurist_v0.2/common/appenginepatch/main.py in ()
7
8 from aecmd import setup_project
9 setup_project()
10
11 from appenginepatcher.patch import patch_all, setup_logging
setup_project = <function setup_project at 0x10eacf0>
/Users/robertwarren/Documents/workspace/BioVenturist/BioVenturist/
bioventurist_v0.2/common/appenginepatch/aecmd.py in setup_project()
107
108 def setup_project():
109 from appenginepatcher import on_production_server
110
111 # Remove the standard version of Django if the user wants to
override it.
appenginepatcher undefined, on_production_server undefined
/Applications/GoogleAppEngineLauncher.app/Contents/Resources/
GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/
google/appengine/tools/dev_appserver.py in decorate
(self=<google.appengine.tools.dev_appserver.HardenedModulesHook object
at 0x10e5bf0>, *args=('appenginepatcher',), **kwargs={})
980 self._indent_level += 1
981 try:
982 return func(self, *args, **kwargs)
983 finally:
984 self._indent_level -= 1
func = <function load_module at 0x10cb9b0>, self =
<google.appengine.tools.dev_appserver.HardenedModulesHook object at
0x10e5bf0>, args = ('appenginepatcher',), kwargs = {}
/Applications/GoogleAppEngineLauncher.app/Contents/Resources/
GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/
google/appengine/tools/dev_appserver.py in load_module
(self=<google.appengine.tools.dev_appserver.HardenedModulesHook object
at 0x10e5bf0>, fullname='appenginepatcher')
1570 search_path = parent_module.__path__
1571
1572 return self.FindAndLoadModule(submodule, fullname,
search_path)
1573
1574 @Trace
self = <google.appengine.tools.dev_appserver.HardenedModulesHook
object at 0x10e5bf0>, self.FindAndLoadModule = <bound method
HardenedModulesHook.decorate of <g...pserver.HardenedModulesHook
object at 0x10e5bf0>>, submodule = 'appenginepatcher', fullname =
'appenginepatcher', search_path = None
/Applications/GoogleAppEngineLauncher.app/Contents/Resources/
GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/
google/appengine/tools/dev_appserver.py in decorate
(self=<google.appengine.tools.dev_appserver.HardenedModulesHook object
at 0x10e5bf0>, *args=('appenginepatcher', 'appenginepatcher', None),
**kwargs={})
980 self._indent_level += 1
981 try:
982 return func(self, *args, **kwargs)
983 finally:
984 self._indent_level -= 1
func = <function FindAndLoadModule at 0x10cb7b0>, self =
<google.appengine.tools.dev_appserver.HardenedModulesHook object at
0x10e5bf0>, args = ('appenginepatcher', 'appenginepatcher', None),
kwargs = {}
/Applications/GoogleAppEngineLauncher.app/Contents/Resources/
GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/
google/appengine/tools/dev_appserver.py in FindAndLoadModule
(self=<google.appengine.tools.dev_appserver.HardenedModulesHook object
at 0x10e5bf0>, submodule='appenginepatcher',
submodule_fullname='appenginepatcher', search_path=None)
1478 source_file,
1479 pathname,
1480 description)
1481
1482 module.__loader__ = self
description = ('', '', 5)
/Applications/GoogleAppEngineLauncher.app/Contents/Resources/
GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/
google/appengine/tools/dev_appserver.py in decorate
(self=<google.appengine.tools.dev_appserver.HardenedModulesHook object
at 0x10e5bf0>, *args=('appenginepatcher', None, '/Users/robertwarren/
Documents/workspace/BioVentu...urist_v0.2/common/appenginepatch/
appenginepatcher', ('', '', 5)), **kwargs={})
980 self._indent_level += 1
981 try:
982 return func(self, *args, **kwargs)
983 finally:
984 self._indent_level -= 1
func = <function LoadModuleRestricted at 0x10cb730>, self =
<google.appengine.tools.dev_appserver.HardenedModulesHook object at
0x10e5bf0>, args = ('appenginepatcher', None, '/Users/robertwarren/
Documents/workspace/BioVentu...urist_v0.2/common/appenginepatch/
appenginepatcher', ('', '', 5)), kwargs = {}
/Applications/GoogleAppEngineLauncher.app/Contents/Resources/
GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/
google/appengine/tools/dev_appserver.py in LoadModuleRestricted
(self=<google.appengine.tools.dev_appserver.HardenedModulesHook object
at 0x10e5bf0>, submodule_fullname='appenginepatcher',
source_file=None, pathname='/Users/robertwarren/Documents/workspace/
BioVentu...urist_v0.2/common/appenginepatch/appenginepatcher',
description=('', '', 5))
1428 source_file,
1429 pathname,
1430 description)
1431 except:
1432 if submodule_fullname in self._module_dict:
description = ('', '', 5)
/Users/robertwarren/Documents/workspace/BioVenturist/BioVenturist/
bioventurist_v0.2/common/appenginepatch/appenginepatcher/__init__.py
in ()
7 from google.appengine.tools import dev_appserver
8 from aecmd import PROJECT_DIR
9 appconfig, unused = dev_appserver.LoadAppConfig(PROJECT_DIR,
{})
10 appid = appconfig.application
11 except ImportError:
appconfig undefined, unused undefined, dev_appserver = None,
dev_appserver.LoadAppConfig undefined, PROJECT_DIR = None
/Applications/GoogleAppEngineLauncher.app/Contents/Resources/
GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/
google/appengine/tools/dev_appserver.py in LoadAppConfig(root_path='/
Users/robertwarren/Documents/workspace/BioVenturist/BioVenturist/
bioventurist_v0.2', module_dict={}, cache=None, static_caching=True,
read_app_config=<function ReadAppConfig at 0x10ce470>,
create_matcher=<function CreateURLMatcherFromMaps at 0x10ce4b0>)
2928
2929 try:
2930 config = read_app_config(appinfo_path,
appinfo.LoadSingleAppInfo)
2931
2932 if static_caching:
config undefined, read_app_config = <function ReadAppConfig at
0x10ce470>, appinfo_path = '/Users/robertwarren/Documents/workspace/
BioVenturist/BioVenturist/bioventurist_v0.2/app.yaml', global appinfo
= <module 'google.appengine.api.appinfo' from '/Ap...ogle_appengine/
google/appengine/api/appinfo.pyc'>, appinfo.LoadSingleAppInfo =
<function LoadSingleAppInfo at 0x69be30>
/Applications/GoogleAppEngineLauncher.app/Contents/Resources/
GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/
google/appengine/tools/dev_appserver.py in ReadAppConfig
(appinfo_path='/Users/robertwarren/Documents/workspace/BioVenturist/
BioVenturist/bioventurist_v0.2/app.yaml', parse_app_config=<function
LoadSingleAppInfo at 0x69be30>)
2796 except IOError, e:
2797 raise InvalidAppConfigError(
2798 'Application configuration could not be read from "%s"' %
appinfo_path)
2799
2800
appinfo_path = '/Users/robertwarren/Documents/workspace/BioVenturist/
BioVenturist/bioventurist_v0.2/app.yaml'
<class 'google.appengine.tools.dev_appserver.InvalidAppConfigError'>:
Application configuration could not be read from "/Users/robertwarren/
Documents/workspace/BioVenturist/BioVenturist/bioventurist_v0.2/
app.yaml"