summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris McDonough <chrism@agendaless.com>2008-08-24 01:59:07 +0000
committerChris McDonough <chrism@agendaless.com>2008-08-24 01:59:07 +0000
commit0a6da3800b963b2104c8e10598ac7589a81f981e (patch)
treea462056f22bcff3f08d82cec98682e1dfac7df5c
parent2c647036d9ed5e5a27cb6b2a5700a8f0d3a7d2a7 (diff)
downloadpyramid-0a6da3800b963b2104c8e10598ac7589a81f981e.tar.gz
pyramid-0a6da3800b963b2104c8e10598ac7589a81f981e.tar.bz2
pyramid-0a6da3800b963b2104c8e10598ac7589a81f981e.zip
- Remove ``sampleapp`` sample application from bfg package itself.
- Remove dependency on FormEncode (only needed by sampleapp). - Fix paster template generation so that case-sensitivity is preserved for project vs. package name. - Depend on ``z3c.pt`` version 1.0a1 (which requires the ``[lxml]`` extra currently).
-rw-r--r--CHANGES.txt18
-rw-r--r--repoze/bfg/paster.py1
-rw-r--r--repoze/bfg/paster_template/+package+/run.py_tmpl6
-rw-r--r--repoze/bfg/paster_template/+package+/tests.py_tmpl8
-rw-r--r--repoze/bfg/paster_template/+project+.ini_tmpl (renamed from repoze/bfg/paster_template/+package+.ini_tmpl)0
-rw-r--r--repoze/bfg/paster_template/setup.py_tmpl4
-rw-r--r--repoze/bfg/sampleapp/__init__.py1
-rw-r--r--repoze/bfg/sampleapp/configure.zcml54
-rw-r--r--repoze/bfg/sampleapp/listeners.py6
-rw-r--r--repoze/bfg/sampleapp/models.py42
-rw-r--r--repoze/bfg/sampleapp/run.py11
-rw-r--r--repoze/bfg/sampleapp/templates/blog.pt22
-rw-r--r--repoze/bfg/sampleapp/templates/blog_entry.pt12
-rw-r--r--repoze/bfg/sampleapp/templates/blog_entry_add.pt29
-rw-r--r--repoze/bfg/sampleapp/templates/contents.pt6
-rw-r--r--repoze/bfg/sampleapp/views.py79
-rw-r--r--repoze/bfg/tests/test_router.py2
-rw-r--r--repoze/bfg/tests/test_zcml.py30
-rw-r--r--repoze/bfg/zcml.py2
-rw-r--r--setup.py10
20 files changed, 43 insertions, 300 deletions
diff --git a/CHANGES.txt b/CHANGES.txt
index 7a04efa08..7ce675b1d 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,10 +1,20 @@
Next release
+ - Remove ``sampleapp`` sample application from bfg package itself.
+
+ - Remove dependency on FormEncode (only needed by sampleapp).
+
+ - Fix paster template generation so that case-sensitivity is
+ preserved for project vs. package name.
+
+ - Depend on ``z3c.pt`` version 1.0a1 (which requires the ``[lxml]``
+ extra currently).
+
- Read and write a pickled ZCML actions list, stored as
- ``configure.zcml.pck`` next to the applications's "normal"
- configuration file. A given bfg app will usually start faster
- if it's able to read the pickle data. It fails gracefully
- to reading the real ZCML file if it cannot read the pickle.
+ ``configure.zcml.cache`` next to the applications's "normal"
+ configuration file. A given bfg app will usually start faster if
+ it's able to read the pickle data. It fails gracefully to reading
+ the real ZCML file if it cannot read the pickle.
0.3.1 (8/20/2008)
diff --git a/repoze/bfg/paster.py b/repoze/bfg/paster.py
index f574a1862..ab8ceeee9 100644
--- a/repoze/bfg/paster.py
+++ b/repoze/bfg/paster.py
@@ -4,5 +4,4 @@ from paste.util.template import paste_script_template_renderer
class BFGProjectTemplate(Template):
_template_dir = 'paster_template'
summary = 'repoze.bfg starter project'
- vars = []
template_renderer = staticmethod(paste_script_template_renderer)
diff --git a/repoze/bfg/paster_template/+package+/run.py_tmpl b/repoze/bfg/paster_template/+package+/run.py_tmpl
index b3c3d1ed7..4b3322bce 100644
--- a/repoze/bfg/paster_template/+package+/run.py_tmpl
+++ b/repoze/bfg/paster_template/+package+/run.py_tmpl
@@ -3,9 +3,9 @@ from repoze.bfg import get_options
def app(global_config, **kw):
# paster app config callback
- from {{project}}.models import get_root
- import {{ project}}
- return make_app(get_root, {{project}}, options=get_options(kw))
+ from {{package}}.models import get_root
+ import {{package}}
+ return make_app(get_root, {{package}}, options=get_options(kw))
if __name__ == '__main__':
from paste import httpserver
diff --git a/repoze/bfg/paster_template/+package+/tests.py_tmpl b/repoze/bfg/paster_template/+package+/tests.py_tmpl
index dc8dc11f3..22a7ee4e9 100644
--- a/repoze/bfg/paster_template/+package+/tests.py_tmpl
+++ b/repoze/bfg/paster_template/+package+/tests.py_tmpl
@@ -11,10 +11,10 @@ class ViewTests(unittest.TestCase):
# should explore ways to do that rather than rely on ZCML (see
# the repoze.bfg tests for inspiration).
self._cleanup()
- import {{project}}
+ import {{package}}
import zope.configuration.xmlconfig
zope.configuration.xmlconfig.file('configure.zcml',
- package={{project}})
+ package={{package}})
def tearDown(self):
self._cleanup()
@@ -25,13 +25,13 @@ class ViewTests(unittest.TestCase):
cleanUp()
def test_my_view(self):
- from {{project}}.views import my_view
+ from {{package}}.views import my_view
context = DummyContext()
request = DummyRequest()
result = my_view(context, request)
self.assertEqual(result.status, '200 OK')
body = result.app_iter[0]
- self.failUnless('Welcome to {{project}}' in body)
+ self.failUnless('Welcome to {{package}}' in body)
self.assertEqual(len(result.headerlist), 2)
self.assertEqual(result.headerlist[0],
('content-type', 'text/html; charset=UTF-8'))
diff --git a/repoze/bfg/paster_template/+package+.ini_tmpl b/repoze/bfg/paster_template/+project+.ini_tmpl
index 2d6c4d0a2..2d6c4d0a2 100644
--- a/repoze/bfg/paster_template/+package+.ini_tmpl
+++ b/repoze/bfg/paster_template/+project+.ini_tmpl
diff --git a/repoze/bfg/paster_template/setup.py_tmpl b/repoze/bfg/paster_template/setup.py_tmpl
index d2b4d575b..61a7302e4 100644
--- a/repoze/bfg/paster_template/setup.py_tmpl
+++ b/repoze/bfg/paster_template/setup.py_tmpl
@@ -35,10 +35,10 @@ setup(name='{{project}}',
tests_require=[
'repoze.bfg',
],
- test_suite="{{project}}",
+ test_suite="{{package}}",
entry_points = """\
[paste.app_factory]
- app = {{project}}.run:app
+ app = {{package}}.run:app
"""
)
diff --git a/repoze/bfg/sampleapp/__init__.py b/repoze/bfg/sampleapp/__init__.py
deleted file mode 100644
index ef5fe8b12..000000000
--- a/repoze/bfg/sampleapp/__init__.py
+++ /dev/null
@@ -1 +0,0 @@
-# a package
diff --git a/repoze/bfg/sampleapp/configure.zcml b/repoze/bfg/sampleapp/configure.zcml
deleted file mode 100644
index a5f27595e..000000000
--- a/repoze/bfg/sampleapp/configure.zcml
+++ /dev/null
@@ -1,54 +0,0 @@
-<configure xmlns="http://namespaces.zope.org/zope"
- xmlns:bfg="http://namespaces.repoze.org/bfg"
- i18n_domain="repoze.bfg">
-
- <include package="repoze.bfg" />
-
- <utility
- provides="repoze.bfg.interfaces.ISecurityPolicy"
- factory="repoze.bfg.security.RemoteUserACLSecurityPolicy"
- />
-
- <!-- the default view for a Blog -->
- <bfg:view
- for=".models.IBlog"
- view=".views.blog_default_view"
- permission="view"
- />
-
- <!-- the default view for a BlogEntry -->
- <bfg:view
- for=".models.IBlogEntry"
- view=".views.blog_entry_default_view"
- permission="view"
- />
-
- <!-- the add view for a BlogEntry -->
- <bfg:view
- for=".models.IBlog"
- view=".views.blog_entry_add_view"
- name="add_entry.html"
- permission="add"
- />
-
- <!-- the contents view for any mapping (shows dict members) -->
- <bfg:view
- for=".models.IMapping"
- view=".views.contents_view"
- name="contents.html"
- permission="manage"
- />
-
- <!-- event listener for a new request -->
- <subscriber
- for="repoze.bfg.interfaces.INewRequest"
- handler=".listeners.handle_new_request"
- />
-
- <!-- event listener for a new response -->
- <subscriber
- for="repoze.bfg.interfaces.INewResponse"
- handler=".listeners.handle_new_response"
- />
-
-</configure>
diff --git a/repoze/bfg/sampleapp/listeners.py b/repoze/bfg/sampleapp/listeners.py
deleted file mode 100644
index 7c80d314f..000000000
--- a/repoze/bfg/sampleapp/listeners.py
+++ /dev/null
@@ -1,6 +0,0 @@
-def handle_new_request(event):
- assert(hasattr(event, 'request'))
-
-def handle_new_response(event):
- assert(hasattr(event, 'response'))
-
diff --git a/repoze/bfg/sampleapp/models.py b/repoze/bfg/sampleapp/models.py
deleted file mode 100644
index 7da6f1033..000000000
--- a/repoze/bfg/sampleapp/models.py
+++ /dev/null
@@ -1,42 +0,0 @@
-from zope.interface import Interface
-from zope.interface import implements
-from zope.location.interfaces import ILocation
-from zope.location.location import Location
-
-from repoze.bfg.security import Everyone
-from repoze.bfg.security import Allow
-
-import datetime
-
-class IMapping(Interface):
- pass
-
-class IBlog(Interface):
- pass
-
-class Blog(dict, Location):
- __acl__ = [
- (Allow, Everyone, 'view'),
- (Allow, 'group:editors', 'add'),
- (Allow, 'group:editors', 'edit'),
- ]
- implements(IBlog, IMapping, ILocation)
-
-class IBlogEntry(Interface):
- pass
-
-class BlogEntry(object):
- implements(IBlogEntry)
- def __init__(self, title, body, author):
- self.title = title
- self.body = body
- self.author = author
- self.created = datetime.datetime.now()
-
-blog = Blog()
-blog['sample'] = BlogEntry('Sample Blog Entry',
- '<p>This is a sample blog entry</p>',
- 'chrism')
-def get_root(environ):
- return blog
-
diff --git a/repoze/bfg/sampleapp/run.py b/repoze/bfg/sampleapp/run.py
deleted file mode 100644
index df2ceca39..000000000
--- a/repoze/bfg/sampleapp/run.py
+++ /dev/null
@@ -1,11 +0,0 @@
-from repoze.bfg import make_app
-from repoze.bfg import sampleapp
-from repoze.bfg.sampleapp.models import get_root
-
-def main():
- app = make_app(get_root, sampleapp, options={'reload_templates':True})
- from paste import httpserver
- httpserver.serve(app, host='0.0.0.0', port='5432')
-
-if __name__ == '__main__':
- main()
diff --git a/repoze/bfg/sampleapp/templates/blog.pt b/repoze/bfg/sampleapp/templates/blog.pt
deleted file mode 100644
index b428374fc..000000000
--- a/repoze/bfg/sampleapp/templates/blog.pt
+++ /dev/null
@@ -1,22 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml"
- xmlns:tal="http://xml.zope.org/namespaces/tal">
-<head></head>
-<body>
- <h1 tal:content="name">Blog Name</h1>
- <table border="0">
- <thead>
- <th>Title</th>
- <th>Author</th>
- <th>Created</th>
- </thead>
- <tr tal:repeat="entry entries">
- <td><a href="${entry.name}/">${entry.title}</a></td>
- <td>${entry.author}</td>
- <td>${entry.created}</td>
- </tr>
- </table>
- <p tal:condition="can_add">
- <a href="add_entry.html">Add blog entry</a>
- </p>
-</body>
-</html>
diff --git a/repoze/bfg/sampleapp/templates/blog_entry.pt b/repoze/bfg/sampleapp/templates/blog_entry.pt
deleted file mode 100644
index 6614e4950..000000000
--- a/repoze/bfg/sampleapp/templates/blog_entry.pt
+++ /dev/null
@@ -1,12 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml"
- xmlns:tal="http://xml.zope.org/namespaces/tal">
-<head></head>
-<body>
- <div>
- <p><a href="..">Up</a></p>
- <h1>${title}</h1>
- <p>by ${author}</p>
- <div tal:content="structure body"></div>
- </div>
-</body>
-</html>
diff --git a/repoze/bfg/sampleapp/templates/blog_entry_add.pt b/repoze/bfg/sampleapp/templates/blog_entry_add.pt
deleted file mode 100644
index f06042c03..000000000
--- a/repoze/bfg/sampleapp/templates/blog_entry_add.pt
+++ /dev/null
@@ -1,29 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml"
- xmlns:tal="http://xml.zope.org/namespaces/tal">
-<head>
-</head>
-<body>
- <form action="${request.path_url}" method="POST">
- <h2 tal:condition="message" tal:content="message"></h2>
- <h1>Add a blog entry</h1>
- <table border="0">
- <tr>
- <th>Title</th>
- <td><input type="text" name="title" tal:attributes="value title"/></td>
- </tr>
- <tr>
- <th>Author</th>
- <td><input type="text" name="author" tal:attributes="value author"/></td>
- </tr>
- <tr>
- <th>Body</th>
- <td><textarea name="body" rows="10" cols="80" tal:content="body"
- ></textarea></td>
- </tr>
- <tr>
- <td><input type="submit" name="form.submitted" value="Add"/></td>
- </tr>
- </table>
- </form>
-</body>
-</html>
diff --git a/repoze/bfg/sampleapp/templates/contents.pt b/repoze/bfg/sampleapp/templates/contents.pt
deleted file mode 100644
index eaae20ed5..000000000
--- a/repoze/bfg/sampleapp/templates/contents.pt
+++ /dev/null
@@ -1,6 +0,0 @@
-<div xmlns="http://www.w3.org/1999/xhtml"
- xmlns:tal="http://xml.zope.org/namespaces/tal">
- <div tal:repeat="name context">
- <a href="${name}/">${name}</a>
- </div>
-</div>
diff --git a/repoze/bfg/sampleapp/views.py b/repoze/bfg/sampleapp/views.py
deleted file mode 100644
index 0f536f09f..000000000
--- a/repoze/bfg/sampleapp/views.py
+++ /dev/null
@@ -1,79 +0,0 @@
-import formencode
-import time
-
-from webob.exc import HTTPFound
-
-from repoze.bfg.template import render_template_to_response
-from repoze.bfg.sampleapp.models import BlogEntry
-from repoze.bfg.security import has_permission
-
-def datestring(dt):
- return dt.strftime('%Y-%m-%d %H:%M:%S')
-
-def blog_default_view(context, request):
- entrydata = []
-
- can_add = False
- if has_permission('add', context, request):
- can_add = True
- for name, entry in context.items():
- entrydata.append(
- {
- 'name':name,
- 'title':entry.title,
- 'author':entry.author,
- 'created':datestring(entry.created),
- 'message':request.params.get('message'),
- }
- )
-
- return render_template_to_response('templates/blog.pt',
- name=context.__name__,
- entries=entrydata,
- can_add=can_add)
-
-def blog_entry_default_view(context, request):
- info = {
- 'name':context.__name__,
- 'title':context.title,
- 'body':context.body,
- 'author':context.author,
- 'created':datestring(context.created),
- }
- return render_template_to_response('templates/blog_entry.pt', **info)
-
-class BlogAddSchema(formencode.Schema):
- allow_extra_fields = True
- author = formencode.validators.NotEmpty()
- body = formencode.validators.NotEmpty()
- title = formencode.validators.NotEmpty()
-
-def blog_entry_add_view(context, request):
- params = request.params
-
- message = None
-
- author = params.get('author', '')
- body = params.get('body', '')
- title = params.get('title', '')
- info = dict(request=request, author=author, body=body, title=title,
- message=None)
-
- if params.has_key('form.submitted'):
- schema = BlogAddSchema()
- try:
- form = schema.to_python(params)
- except formencode.validators.Invalid, why:
- message = str(why)
- info['message'] = message
- else:
- author, body, title = form['author'], form['body'], form['title']
- new_entry = BlogEntry(title, body, author)
- name = str(time.time())
- context[name] = new_entry
- return HTTPFound(location='/')
-
- return render_template_to_response('templates/blog_entry_add.pt', **info)
-
-def contents_view(context, request):
- return render_template_to_response('templates/contents.pt', context=context)
diff --git a/repoze/bfg/tests/test_router.py b/repoze/bfg/tests/test_router.py
index b2c5cb468..381091d56 100644
--- a/repoze/bfg/tests/test_router.py
+++ b/repoze/bfg/tests/test_router.py
@@ -276,7 +276,7 @@ class MakeAppTests(unittest.TestCase, PlacelessSetup):
from repoze.bfg.router import make_app
return make_app
- def test_sampleapp(self):
+ def test_fixtureapp(self):
from repoze.bfg.tests import fixtureapp
make_app = self._getFUT()
rootpolicy = make_rootpolicy(None)
diff --git a/repoze/bfg/tests/test_zcml.py b/repoze/bfg/tests/test_zcml.py
index 5fa5d6290..28ea04ff6 100644
--- a/repoze/bfg/tests/test_zcml.py
+++ b/repoze/bfg/tests/test_zcml.py
@@ -114,7 +114,7 @@ class TestViewDirective(unittest.TestCase, PlacelessSetup):
self.assertEqual(regadapt['args'][4], '')
self.assertEqual(regadapt['args'][5], None)
-class TestSampleApp(unittest.TestCase, PlacelessSetup):
+class TestFixtureApp(unittest.TestCase, PlacelessSetup):
def setUp(self):
PlacelessSetup.setUp(self)
@@ -122,7 +122,7 @@ class TestSampleApp(unittest.TestCase, PlacelessSetup):
PlacelessSetup.tearDown(self)
def test_registry_actions_can_be_pickled_and_unpickled(self):
- import repoze.bfg.sampleapp as package
+ import repoze.bfg.tests.fixtureapp as package
from zope.configuration import config
from zope.configuration import xmlconfig
context = config.ConfigurationMachine()
@@ -152,7 +152,7 @@ class TestZCMLPickling(unittest.TestCase, PlacelessSetup):
self.i += 1
self.packagepath = os.path.join(tempdir, modname)
fixturedir = package_path(package)
- pckname = os.path.join(fixturedir, 'configure.zcml.pck')
+ pckname = os.path.join(fixturedir, 'configure.zcml.cache')
if os.path.isfile(pckname):
os.remove(pckname)
shutil.copytree(fixturedir, self.packagepath)
@@ -175,7 +175,7 @@ class TestZCMLPickling(unittest.TestCase, PlacelessSetup):
import cPickle
from repoze.bfg.zcml import file_configure
self.assertEqual(False, file_configure('configure.zcml', self.module))
- picklename = os.path.join(self.packagepath, 'configure.zcml.pck')
+ picklename = os.path.join(self.packagepath, 'configure.zcml.cache')
self.failUnless(os.path.exists(picklename))
actions = cPickle.load(open(picklename, 'rb'))
self.failUnless(actions)
@@ -194,7 +194,7 @@ class TestZCMLPickling(unittest.TestCase, PlacelessSetup):
raise IOError
self.assertEqual(False,
file_configure('configure.zcml', self.module, dumpfail))
- picklename = os.path.join(self.packagepath, 'configure.zcml.pck')
+ picklename = os.path.join(self.packagepath, 'configure.zcml.cache')
self.failIf(os.path.exists(picklename))
def test_zcml_configure_writes_pickle_when_none_exists(self):
@@ -202,7 +202,7 @@ class TestZCMLPickling(unittest.TestCase, PlacelessSetup):
import cPickle
from repoze.bfg.zcml import zcml_configure
self.assertEqual(False, zcml_configure('configure.zcml', self.module))
- picklename = os.path.join(self.packagepath, 'configure.zcml.pck')
+ picklename = os.path.join(self.packagepath, 'configure.zcml.cache')
self.failUnless(os.path.exists(picklename))
actions = cPickle.load(open(picklename, 'rb'))
self.failUnless(actions)
@@ -211,7 +211,7 @@ class TestZCMLPickling(unittest.TestCase, PlacelessSetup):
import os
import cPickle
from repoze.bfg.zcml import zcml_configure
- picklename = os.path.join(self.packagepath, 'configure.zcml.pck')
+ picklename = os.path.join(self.packagepath, 'configure.zcml.cache')
f = open(picklename, 'wb')
cPickle.dump((), f)
f.close()
@@ -220,7 +220,7 @@ class TestZCMLPickling(unittest.TestCase, PlacelessSetup):
def test_zcml_configure_uses_file_configure_with_bad_pickle2(self):
import os
from repoze.bfg.zcml import zcml_configure
- picklename = os.path.join(self.packagepath, 'configure.zcml.pck')
+ picklename = os.path.join(self.packagepath, 'configure.zcml.cache')
f = open(picklename, 'wb')
f.write('garbage')
f.close()
@@ -232,7 +232,7 @@ class TestZCMLPickling(unittest.TestCase, PlacelessSetup):
import time
from repoze.bfg.zcml import zcml_configure
basename = os.path.join(self.packagepath, 'configure.zcml')
- picklename = os.path.join(self.packagepath, 'configure.zcml.pck')
+ picklename = os.path.join(self.packagepath, 'configure.zcml.cache')
self.assertEqual(False, zcml_configure('configure.zcml', self.module))
self.failUnless(os.path.exists(picklename))
actions = cPickle.load(open(picklename, 'rb'))
@@ -246,7 +246,7 @@ class TestZCMLPickling(unittest.TestCase, PlacelessSetup):
import time
from repoze.bfg.zcml import zcml_configure
basename = os.path.join(self.packagepath, 'another.zcml')
- picklename = os.path.join(self.packagepath, 'configure.zcml.pck')
+ picklename = os.path.join(self.packagepath, 'configure.zcml.cache')
self.assertEqual(False, zcml_configure('configure.zcml', self.module))
self.failUnless(os.path.exists(picklename))
actions = cPickle.load(open(picklename, 'rb'))
@@ -260,7 +260,7 @@ class TestZCMLPickling(unittest.TestCase, PlacelessSetup):
from repoze.bfg.zcml import zcml_configure
from zope.configuration.xmlconfig import ZopeXMLConfigurationError
basename = os.path.join(self.packagepath, 'another.zcml')
- picklename = os.path.join(self.packagepath, 'configure.zcml.pck')
+ picklename = os.path.join(self.packagepath, 'configure.zcml.cache')
self.assertEqual(False, zcml_configure('configure.zcml', self.module))
self.failUnless(os.path.exists(picklename))
actions = cPickle.load(open(picklename, 'rb'))
@@ -273,7 +273,7 @@ class TestZCMLPickling(unittest.TestCase, PlacelessSetup):
import os
from repoze.bfg.zcml import zcml_configure
from repoze.bfg.zcml import PVERSION
- picklename = os.path.join(self.packagepath, 'configure.zcml.pck')
+ picklename = os.path.join(self.packagepath, 'configure.zcml.cache')
f = open(picklename, 'wb')
import cPickle
data = (PVERSION+1, 0, [])
@@ -284,7 +284,7 @@ class TestZCMLPickling(unittest.TestCase, PlacelessSetup):
import os
from repoze.bfg.zcml import zcml_configure
from repoze.bfg.zcml import PVERSION
- picklename = os.path.join(self.packagepath, 'configure.zcml.pck')
+ picklename = os.path.join(self.packagepath, 'configure.zcml.cache')
f = open(picklename, 'wb')
import cPickle
data = (PVERSION, None, [])
@@ -296,7 +296,7 @@ class TestZCMLPickling(unittest.TestCase, PlacelessSetup):
from repoze.bfg.zcml import zcml_configure
from repoze.bfg.zcml import PVERSION
import time
- picklename = os.path.join(self.packagepath, 'configure.zcml.pck')
+ picklename = os.path.join(self.packagepath, 'configure.zcml.cache')
f = open(picklename, 'wb')
import cPickle
data = (PVERSION, time.time()+500, None)
@@ -310,7 +310,7 @@ class TestZCMLPickling(unittest.TestCase, PlacelessSetup):
from repoze.bfg.zcml import zcml_configure
from repoze.bfg.zcml import PVERSION
basename = os.path.join(self.packagepath, 'another.zcml')
- picklename = os.path.join(self.packagepath, 'configure.zcml.pck')
+ picklename = os.path.join(self.packagepath, 'configure.zcml.cache')
self.assertEqual(False, zcml_configure('configure.zcml', self.module))
self.failUnless(os.path.exists(picklename))
actions = cPickle.load(open(picklename, 'rb'))
diff --git a/repoze/bfg/zcml.py b/repoze/bfg/zcml.py
index 0bb049516..1493e532e 100644
--- a/repoze/bfg/zcml.py
+++ b/repoze/bfg/zcml.py
@@ -98,7 +98,7 @@ PVERSION = 0
def pickle_name(name, package):
path = package_path(package)
basename = os.path.join(path, name)
- return os.path.join(path, basename + '.pck')
+ return os.path.join(path, basename + '.cache')
def zcml_configure(name, package, load=cPickle.load):
""" Execute pickled zcml actions or fall back to parsing from file
diff --git a/setup.py b/setup.py
index 44aed8616..c526b3fa5 100644
--- a/setup.py
+++ b/setup.py
@@ -12,7 +12,7 @@
#
##############################################################################
-__version__ = '0.3.1'
+__version__ = '0.3.2'
import os
@@ -54,10 +54,8 @@ setup(name='repoze.bfg',
'zope.hookable',
'zope.event',
'WebOb',
- 'Paste',
- 'z3c.pt',
- 'FormEncode',
'PasteScript',
+ 'z3c.pt [lxml]',
'Routes',
],
tests_require=[
@@ -67,10 +65,8 @@ setup(name='repoze.bfg',
'zope.hookable',
'zope.event',
'WebOb',
+ 'z3c.pt [lxml]',
'Paste',
- 'z3c.pt',
- 'FormEncode',
- 'PasteScript',
'Routes',
'Sphinx',
'docutils',