[Checkins] SVN: zope.contentprovider/trunk/ clean deps in setup,
fire beforeupdateevent in tales expression
Bernd Dorn
bernd.dorn at lovelysystems.com
Sat May 5 04:53:38 EDT 2007
Log message for revision 75493:
clean deps in setup, fire beforeupdateevent in tales expression
Changed:
U zope.contentprovider/trunk/buildout.cfg
U zope.contentprovider/trunk/setup.py
U zope.contentprovider/trunk/src/zope/contentprovider/README.txt
U zope.contentprovider/trunk/src/zope/contentprovider/tales.py
-=-
Modified: zope.contentprovider/trunk/buildout.cfg
===================================================================
--- zope.contentprovider/trunk/buildout.cfg 2007-05-05 07:28:29 UTC (rev 75492)
+++ zope.contentprovider/trunk/buildout.cfg 2007-05-05 08:53:36 UTC (rev 75493)
@@ -6,4 +6,4 @@
[test]
recipe = zc.recipe.testrunner
-eggs = zope.contentprovider
+eggs = zope.contentprovider [test]
Modified: zope.contentprovider/trunk/setup.py
===================================================================
--- zope.contentprovider/trunk/setup.py 2007-05-05 07:28:29 UTC (rev 75492)
+++ zope.contentprovider/trunk/setup.py 2007-05-05 08:53:36 UTC (rev 75493)
@@ -34,20 +34,22 @@
"templates and METAL macros, content provider"
"objects are dynamically looked up based on"
"the setup/configuration of the application.",
-
packages=find_packages('src'),
package_dir = {'': 'src'},
-
namespace_packages=['zope',],
- tests_require = ['zope.testing',
- 'zope.security',
- 'zope.app'],
- install_requires=['zope.interface',
- 'zope.component',
+ extras_require = dict(test=['zope.app.pagetemplate',
+ 'zope.app.testing',
+ 'zope.security',
+ 'zope.testing',
+ ]),
+ install_requires=['zope.component',
+ 'zope.event',
+ 'zope.interface',
+ 'zope.location',
'zope.publisher',
'zope.schema',
- 'zope.tales'],
+ 'zope.tales',
+ ],
include_package_data = True,
-
zip_safe = False,
)
Modified: zope.contentprovider/trunk/src/zope/contentprovider/README.txt
===================================================================
--- zope.contentprovider/trunk/src/zope/contentprovider/README.txt 2007-05-05 07:28:29 UTC (rev 75492)
+++ zope.contentprovider/trunk/src/zope/contentprovider/README.txt 2007-05-05 08:53:36 UTC (rev 75493)
@@ -343,9 +343,13 @@
>>> content = Content()
-Finally we look up the view and render it:
+Finally we look up the view and render it. Note that a
+BeforeUpdateEvent is fired - this event should always be fired before
+any contentprovider is updated.
>>> from zope.publisher.browser import TestRequest
+ >>> events = []
+ >>> zope.component.provideHandler(events.append, (None, ))
>>> request = TestRequest()
>>> view = zope.component.getMultiAdapter((content, request),
@@ -363,6 +367,8 @@
</body>
</html>
+ >>> events
+ [<zope.contentprovider.interfaces.BeforeUpdateEvent object at ...>]
Failure to lookup a Content Provider
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Modified: zope.contentprovider/trunk/src/zope/contentprovider/tales.py
===================================================================
--- zope.contentprovider/trunk/src/zope/contentprovider/tales.py 2007-05-05 07:28:29 UTC (rev 75492)
+++ zope.contentprovider/trunk/src/zope/contentprovider/tales.py 2007-05-05 08:53:36 UTC (rev 75493)
@@ -20,6 +20,7 @@
import zope.component
import zope.interface
import zope.schema
+import zope.event
from zope.tales import expressions
from zope.contentprovider import interfaces
@@ -72,6 +73,7 @@
addTALNamespaceData(provider, econtext)
# Stage 1: Do the state update.
+ zope.event.notify(interfaces.BeforeUpdateEvent(provider))
provider.update()
# Stage 2: Render the HTML content.
More information about the Checkins
mailing list