[Python-modules-team] Bug#574640: Freshly bootstrapped applications do not work (nor do my older ones)
Enrico Zini
enrico at debian.org
Fri Mar 19 16:44:54 UTC 2010
Package: python-turbogears2
Version: 2.0.3-1
Severity: serious
Hello,
thank you for maintaining TurboGears2.
For some reason, it now refuses to work. I quickstart a project, run it,
and I always get 404s:
$ curl localhost:8080
<html>
<head>
<title>404 Not Found</title>
</head>
<body>
<h1>404 Not Found</h1>
The resource could not be found.<br /><br />
</body>
Here is the full quickstart, setup-app and serve log:
$ paster quickstart crap
Enter package name [crap]:
Do you need authentication and authorization in this project? [yes]
Selected and implied templates:
tg.devtools#turbogears2 TurboGears 2.0 Standard Quickstart Template
Variables:
auth: sqlalchemy
egg: crap
geo: None
package: crap
project: crap
sqlalchemy: True
sqlobject: False
tgversion: 2.0.3
Creating template turbogears2
Creating directory ./crap
Recursing into +package+
Creating ./crap/crap/
Copying __init__.py to ./crap/crap/__init__.py
Replace 0 bytes with 47 bytes (0/0 lines changed; 2 lines added)
Copying __init__.py_tmpl to ./crap/crap/__init__.py
Recursing into config
Creating ./crap/crap/config/
Copying __init__.py_tmpl to ./crap/crap/config/__init__.py
Copying app_cfg.py_tmpl to ./crap/crap/config/app_cfg.py
Copying deployment.ini_tmpl_tmpl to ./crap/crap/config/deployment.ini_tmpl
Copying environment.py_tmpl to ./crap/crap/config/environment.py
Copying middleware.py_tmpl to ./crap/crap/config/middleware.py
Recursing into controllers
Creating ./crap/crap/controllers/
Copying __init__.py_tmpl to ./crap/crap/controllers/__init__.py
Copying controller.template_tmpl to ./crap/crap/controllers/controller.template
Copying error.py_tmpl to ./crap/crap/controllers/error.py
Copying root.py_tmpl to ./crap/crap/controllers/root.py
Copying secure.py_tmpl to ./crap/crap/controllers/secure.py
Copying template.py_tmpl to ./crap/crap/controllers/template.py
Recursing into i18n
Creating ./crap/crap/i18n/
Recursing into ru
Creating ./crap/crap/i18n/ru/
Recursing into LC_MESSAGES
Creating ./crap/crap/i18n/ru/LC_MESSAGES/
Copying +package+.po_tmpl to ./crap/crap/i18n/ru/LC_MESSAGES/crap.po
Recursing into lib
Creating ./crap/crap/lib/
Copying __init__.py_tmpl to ./crap/crap/lib/__init__.py
Copying app_globals.py_tmpl to ./crap/crap/lib/app_globals.py
Copying base.py_tmpl to ./crap/crap/lib/base.py
Copying helpers.py_tmpl to ./crap/crap/lib/helpers.py
Recursing into model
Creating ./crap/crap/model/
Copying __init__.py_tmpl to ./crap/crap/model/__init__.py
Copying auth.py_tmpl to ./crap/crap/model/auth.py
Copying model.template_tmpl to ./crap/crap/model/model.template
Recursing into public
Creating ./crap/crap/public/
Recursing into css
Creating ./crap/crap/public/css/
Copying style.css to ./crap/crap/public/css/style.css
Copying favicon.ico to ./crap/crap/public/favicon.ico
Recursing into images
Creating ./crap/crap/public/images/
Copying contentbg.png to ./crap/crap/public/images/contentbg.png
Copying error.png to ./crap/crap/public/images/error.png
Copying header_inner2.png to ./crap/crap/public/images/header_inner2.png
Copying headerbg.png to ./crap/crap/public/images/headerbg.png
Copying info.png to ./crap/crap/public/images/info.png
Copying inputbg.png to ./crap/crap/public/images/inputbg.png
Copying loginbg.png to ./crap/crap/public/images/loginbg.png
Copying loginbottombg.png to ./crap/crap/public/images/loginbottombg.png
Copying loginheader-left.png to ./crap/crap/public/images/loginheader-left.png
Copying loginheader-right.png to ./crap/crap/public/images/loginheader-right.png
Copying menu-item-actibg-first.png to ./crap/crap/public/images/menu-item-actibg-first.png
Copying menu-item-actibg.png to ./crap/crap/public/images/menu-item-actibg.png
Copying menu-item-border.png to ./crap/crap/public/images/menu-item-border.png
Copying menubg.png to ./crap/crap/public/images/menubg.png
Copying ok.png to ./crap/crap/public/images/ok.png
Copying pagebg.png to ./crap/crap/public/images/pagebg.png
Copying star.png to ./crap/crap/public/images/star.png
Copying strype2.png to ./crap/crap/public/images/strype2.png
Copying under_the_hood_blue.png to ./crap/crap/public/images/under_the_hood_blue.png
Copying warning.png to ./crap/crap/public/images/warning.png
Recursing into templates
Creating ./crap/crap/templates/
Copying __init__.py to ./crap/crap/templates/__init__.py
Copying about.html to ./crap/crap/templates/about.html
Copying authentication.html to ./crap/crap/templates/authentication.html
Copying debug.html to ./crap/crap/templates/debug.html
Copying error.html to ./crap/crap/templates/error.html
Copying footer.html to ./crap/crap/templates/footer.html
Copying header.html to ./crap/crap/templates/header.html
Copying index.html to ./crap/crap/templates/index.html
Copying login.html to ./crap/crap/templates/login.html
Copying master.html to ./crap/crap/templates/master.html
Copying sidebars.html to ./crap/crap/templates/sidebars.html
Recursing into tests
Creating ./crap/crap/tests/
Copying __init__.py_tmpl to ./crap/crap/tests/__init__.py
Recursing into functional
Creating ./crap/crap/tests/functional/
Copying __init__.py_tmpl to ./crap/crap/tests/functional/__init__.py
Copying test_authentication.py_tmpl to ./crap/crap/tests/functional/test_authentication.py
Copying test_root.py_tmpl to ./crap/crap/tests/functional/test_root.py
Recursing into models
Creating ./crap/crap/tests/models/
Copying __init__.py_tmpl to ./crap/crap/tests/models/__init__.py
Copying test_auth.py_tmpl to ./crap/crap/tests/models/test_auth.py
Copying websetup.py_tmpl to ./crap/crap/websetup.py
Copying MANIFEST.in_tmpl to ./crap/MANIFEST.in
Copying README.txt_tmpl to ./crap/README.txt
Copying __init__.py to ./crap/__init__.py
Copying development.ini_tmpl to ./crap/development.ini
Recursing into ez_setup
Creating ./crap/ez_setup/
Copying README.txt to ./crap/ez_setup/README.txt
Copying __init__.py to ./crap/ez_setup/__init__.py
Copying setup.cfg_tmpl to ./crap/setup.cfg
Copying setup.py_tmpl to ./crap/setup.py
Copying test.ini_tmpl to ./crap/test.ini
Running /usr/bin/python setup.py egg_info
running egg_info
writing requirements to crap.egg-info/requires.txt
writing crap.egg-info/PKG-INFO
writing top-level names to crap.egg-info/top_level.txt
writing dependency_links to crap.egg-info/dependency_links.txt
writing entry points to crap.egg-info/entry_points.txt
writing paster_plugins to crap.egg-info/paster_plugins.txt
reading manifest file 'crap.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
writing manifest file 'crap.egg-info/SOURCES.txt'
$
$ cd crap/
crap$ paster setup-app development.ini
Running setup_config() from crap.websetup
Creating tables
16:41:13,006 INFO [sqlalchemy.engine.base.Engine.0x...1850] PRAGMA table_info("tg_permission")
16:41:13,007 INFO [sqlalchemy.engine.base.Engine.0x...1850] ()
16:41:13,007 INFO [sqlalchemy.engine.base.Engine.0x...1850] PRAGMA table_info("tg_group")
16:41:13,007 INFO [sqlalchemy.engine.base.Engine.0x...1850] ()
16:41:13,008 INFO [sqlalchemy.engine.base.Engine.0x...1850] PRAGMA table_info("tg_group_permission")
16:41:13,008 INFO [sqlalchemy.engine.base.Engine.0x...1850] ()
16:41:13,008 INFO [sqlalchemy.engine.base.Engine.0x...1850] PRAGMA table_info("tg_user")
16:41:13,008 INFO [sqlalchemy.engine.base.Engine.0x...1850] ()
16:41:13,008 INFO [sqlalchemy.engine.base.Engine.0x...1850] PRAGMA table_info("tg_user_group")
16:41:13,008 INFO [sqlalchemy.engine.base.Engine.0x...1850] ()
16:41:13,009 INFO [sqlalchemy.engine.base.Engine.0x...1850]
CREATE TABLE tg_permission (
permission_id INTEGER NOT NULL,
permission_name VARCHAR(16) NOT NULL,
description VARCHAR(255),
PRIMARY KEY (permission_id),
UNIQUE (permission_name)
)
16:41:13,009 INFO [sqlalchemy.engine.base.Engine.0x...1850] ()
16:41:13,032 INFO [sqlalchemy.engine.base.Engine.0x...1850] COMMIT
16:41:13,034 INFO [sqlalchemy.engine.base.Engine.0x...1850]
CREATE TABLE tg_group (
group_id INTEGER NOT NULL,
group_name VARCHAR(16) NOT NULL,
display_name VARCHAR(255),
created TIMESTAMP,
PRIMARY KEY (group_id),
UNIQUE (group_name)
)
16:41:13,034 INFO [sqlalchemy.engine.base.Engine.0x...1850] ()
16:41:13,054 INFO [sqlalchemy.engine.base.Engine.0x...1850] COMMIT
16:41:13,055 INFO [sqlalchemy.engine.base.Engine.0x...1850]
CREATE TABLE tg_group_permission (
group_id INTEGER,
permission_id INTEGER,
FOREIGN KEY(group_id) REFERENCES tg_group (group_id) ON DELETE CASCADE ON UPDATE CASCADE,
FOREIGN KEY(permission_id) REFERENCES tg_permission (permission_id) ON DELETE CASCADE ON UPDATE CASCADE
)
16:41:13,055 INFO [sqlalchemy.engine.base.Engine.0x...1850] ()
16:41:13,059 INFO [sqlalchemy.engine.base.Engine.0x...1850] COMMIT
16:41:13,060 INFO [sqlalchemy.engine.base.Engine.0x...1850]
CREATE TABLE tg_user (
user_id INTEGER NOT NULL,
user_name VARCHAR(16) NOT NULL,
email_address VARCHAR(255) NOT NULL,
display_name VARCHAR(255),
password VARCHAR(80),
created TIMESTAMP,
PRIMARY KEY (user_id),
UNIQUE (user_name),
UNIQUE (email_address)
)
16:41:13,060 INFO [sqlalchemy.engine.base.Engine.0x...1850] ()
16:41:13,067 INFO [sqlalchemy.engine.base.Engine.0x...1850] COMMIT
16:41:13,068 INFO [sqlalchemy.engine.base.Engine.0x...1850]
CREATE TABLE tg_user_group (
user_id INTEGER,
group_id INTEGER,
FOREIGN KEY(user_id) REFERENCES tg_user (user_id) ON DELETE CASCADE ON UPDATE CASCADE,
FOREIGN KEY(group_id) REFERENCES tg_group (group_id) ON DELETE CASCADE ON UPDATE CASCADE
)
16:41:13,068 INFO [sqlalchemy.engine.base.Engine.0x...1850] ()
16:41:13,091 INFO [sqlalchemy.engine.base.Engine.0x...1850] COMMIT
16:41:13,112 INFO [sqlalchemy.engine.base.Engine.0x...1850] BEGIN
16:41:13,113 INFO [sqlalchemy.engine.base.Engine.0x...1850] INSERT INTO tg_permission (permission_name, description) VALUES (?, ?)
16:41:13,113 INFO [sqlalchemy.engine.base.Engine.0x...1850] [u'manage', u'This permission give an administrative right to the bearer']
16:41:13,114 INFO [sqlalchemy.engine.base.Engine.0x...1850] INSERT INTO tg_user (user_name, email_address, display_name, password, created) VALUES (?, ?, ?, ?, ?)
16:41:13,115 INFO [sqlalchemy.engine.base.Engine.0x...1850] [u'manager', u'manager at somedomain.com', u'Example manager', u'0275f4906a8e92946518a6a7a806f6768cd617cad8e5d6380beb7ca93f6ca630f33961ee9e7a074a', '2010-03-19 16:41:13.114791']
16:41:13,116 INFO [sqlalchemy.engine.base.Engine.0x...1850] INSERT INTO tg_user (user_name, email_address, display_name, password, created) VALUES (?, ?, ?, ?, ?)
16:41:13,116 INFO [sqlalchemy.engine.base.Engine.0x...1850] [u'editor', u'editor at somedomain.com', u'Example editor', u'1f096f0daf97c7ad703ba871c67c55415fd84f3226076ac05af0f845dea3b2be20a132d277cf6717', '2010-03-19 16:41:13.116129']
16:41:13,117 INFO [sqlalchemy.engine.base.Engine.0x...1850] INSERT INTO tg_group (group_name, display_name, created) VALUES (?, ?, ?)
16:41:13,117 INFO [sqlalchemy.engine.base.Engine.0x...1850] [u'managers', u'Managers Group', '2010-03-19 16:41:13.117342']
16:41:13,118 INFO [sqlalchemy.engine.base.Engine.0x...1850] INSERT INTO tg_user_group (user_id, group_id) VALUES (?, ?)
16:41:13,118 INFO [sqlalchemy.engine.base.Engine.0x...1850] [1, 1]
16:41:13,120 INFO [sqlalchemy.engine.base.Engine.0x...1850] INSERT INTO tg_group_permission (group_id, permission_id) VALUES (?, ?)
16:41:13,120 INFO [sqlalchemy.engine.base.Engine.0x...1850] [1, 1]
16:41:13,121 INFO [sqlalchemy.engine.base.Engine.0x...1850] COMMIT
Successfully setup
crap$ paster serve development.ini
Starting server in PID 20466.
serving on http://127.0.0.1:8080
16:41:21,800 INFO [tg.i18n] Set request language to []
16:41:21,800 INFO [tg.i18n] Language []: not supported by FormEncode
16:41:21,802 INFO [tg.i18n] Set request language to []
16:41:21,803 INFO [tg.i18n] Language []: not supported by FormEncode
Ciao,
Enrico
-- System Information:
Debian Release: squeeze/sid
APT prefers testing
APT policy: (500, 'testing')
Architecture: amd64 (x86_64)
Kernel: Linux 2.6.32-trunk-amd64 (SMP w/2 CPU cores)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash
Versions of packages python-turbogears2 depends on:
ii python-genshi 0.5.1-2+b1 Python XML-based template engine
ii python-pylons 0.10~b1-1 Python web framework emphasizing f
ii python-repoze.tm2 1.0a4-2 Zope-like transaction manager via
ii python-repoze.what-plugins 20090531-2 authorization framework for Python
ii python-support 1.0.6.1 automated rebuilding support for P
ii python-toscawidgets 0.9.7.2-1 Python framework for building reus
ii python-turbojson 1.2.1-4 Plugin to use JSON templates in Py
ii python-weberror 0.10.2-1 Python web error handling and exce
ii python-webflash 0.1a9-3 Portable flash messages for Python
Versions of packages python-turbogears2 recommends:
ii python-pysqlite2 2.5.5-3+b1 Python interface to SQLite 3
ii python-tg.devtools 2.0.2-1 developer tools for the TurboGears
Versions of packages python-turbogears2 suggests:
pn python-elixir <none> (no description available)
-- no debconf information
More information about the Python-modules-team
mailing list