[Checkins] SVN: zope.lifecycleevent/tags/3.5.1/ Tag 3.5.1.
Dan Korostelev
nadako at gmail.com
Mon Mar 9 14:30:24 EDT 2009
Log message for revision 97712:
Tag 3.5.1.
Changed:
A zope.lifecycleevent/tags/3.5.1/
D zope.lifecycleevent/tags/3.5.1/CHANGES.txt
A zope.lifecycleevent/tags/3.5.1/CHANGES.txt
D zope.lifecycleevent/tags/3.5.1/README.txt
A zope.lifecycleevent/tags/3.5.1/README.txt
D zope.lifecycleevent/tags/3.5.1/setup.py
A zope.lifecycleevent/tags/3.5.1/setup.py
D zope.lifecycleevent/tags/3.5.1/src/zope/lifecycleevent/README.txt
A zope.lifecycleevent/tags/3.5.1/src/zope/lifecycleevent/README.txt
D zope.lifecycleevent/tags/3.5.1/src/zope/lifecycleevent/__init__.py
A zope.lifecycleevent/tags/3.5.1/src/zope/lifecycleevent/__init__.py
-=-
Deleted: zope.lifecycleevent/tags/3.5.1/CHANGES.txt
===================================================================
--- zope.lifecycleevent/trunk/CHANGES.txt 2009-03-09 17:08:06 UTC (rev 97710)
+++ zope.lifecycleevent/tags/3.5.1/CHANGES.txt 2009-03-09 18:30:24 UTC (rev 97712)
@@ -1,22 +0,0 @@
-Change History
-==============
-
-3.5.1 (unreleased)
-------------------
-
-- Remove deprecated code and thus remove dependency on zope.deferredimport.
-
-- Change package's mailing list address to zope-dev at zope.org, as
- zope3-dev at zope.org is now retired.
-
-3.5.0 (2009-01-31)
-------------------
-
-- Remove old module declarations from classes.
-
-- Use zope.container instead of zope.app.container.
-
-3.4.0 (2007-09-01)
-------------------
-
-Initial release as an independent package
Copied: zope.lifecycleevent/tags/3.5.1/CHANGES.txt (from rev 97711, zope.lifecycleevent/trunk/CHANGES.txt)
===================================================================
--- zope.lifecycleevent/tags/3.5.1/CHANGES.txt (rev 0)
+++ zope.lifecycleevent/tags/3.5.1/CHANGES.txt 2009-03-09 18:30:24 UTC (rev 97712)
@@ -0,0 +1,25 @@
+=======
+CHANGES
+=======
+
+3.5.1 (2009-03-09)
+------------------
+
+- Remove deprecated code and thus remove dependency on zope.deferredimport.
+
+- Change package's mailing list address to zope-dev at zope.org, as
+ zope3-dev at zope.org is now retired.
+
+- Update package's description and documentation.
+
+3.5.0 (2009-01-31)
+------------------
+
+- Remove old module declarations from classes.
+
+- Use zope.container instead of zope.app.container.
+
+3.4.0 (2007-09-01)
+------------------
+
+Initial release as an independent package
Deleted: zope.lifecycleevent/tags/3.5.1/README.txt
===================================================================
--- zope.lifecycleevent/trunk/README.txt 2009-03-09 17:08:06 UTC (rev 97710)
+++ zope.lifecycleevent/tags/3.5.1/README.txt 2009-03-09 18:30:24 UTC (rev 97712)
@@ -1,13 +0,0 @@
-zope.lifecycleevent
-*******************
-
-.. contents::
-
-Overview
-========
-
-In Zope 3, events are used by components to inform each other about
-relevant new objects and object modifications.
-
-To keep all subscribers up to date it is indispensable that the life
-cycle of an object is accompanied by various events.
Copied: zope.lifecycleevent/tags/3.5.1/README.txt (from rev 97711, zope.lifecycleevent/trunk/README.txt)
===================================================================
--- zope.lifecycleevent/tags/3.5.1/README.txt (rev 0)
+++ zope.lifecycleevent/tags/3.5.1/README.txt 2009-03-09 18:30:24 UTC (rev 97712)
@@ -0,0 +1 @@
+See src/zope/lifecycleevent/README.txt.
Deleted: zope.lifecycleevent/tags/3.5.1/setup.py
===================================================================
--- zope.lifecycleevent/trunk/setup.py 2009-03-09 17:08:06 UTC (rev 97710)
+++ zope.lifecycleevent/tags/3.5.1/setup.py 2009-03-09 18:30:24 UTC (rev 97712)
@@ -1,73 +0,0 @@
-##############################################################################
-#
-# Copyright (c) 2006 Zope Corporation and Contributors.
-# All Rights Reserved.
-#
-# This software is subject to the provisions of the Zope Public License,
-# Version 2.1 (ZPL). A copy of the ZPL should accompany this distribution.
-# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
-# WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
-# FOR A PARTICULAR PURPOSE.
-#
-##############################################################################
-"""Setup for zope.lifecycleevent package
-
-$Id$
-"""
-
-import os
-
-from setuptools import setup, find_packages
-
-def read(*rnames):
- return open(os.path.join(os.path.dirname(__file__), *rnames)).read()
-
-long_description = (
- read('README.txt')
- + '\n' +
- read('CHANGES.txt')
- + '\n' +
- 'Detailed Documentation\n'
- '**********************\n'
- + '\n' +
- read('src', 'zope', 'lifecycleevent', 'README.txt')
- + '\n' +
- 'Download\n'
- '********\n'
- )
-
-setup(
- name='zope.lifecycleevent',
- version='3.5.1dev',
- url='http://pypi.python.org/pypi/zope.lifecycleevent',
- author='Zope Corporation and Contributors',
- author_email='zope-dev at zope.org',
- license='ZPL 2.1',
- classifiers=[
- 'Development Status :: 5 - Production/Stable',
- 'Intended Audience :: Developers',
- 'License :: OSI Approved :: Zope Public License',
- 'Programming Language :: Python',
- 'Operating System :: OS Independent',
- 'Topic :: Internet :: WWW/HTTP',
- 'Topic :: Software Development',
- ],
- description='Life-cycle events',
- long_description=long_description,
-
- packages=find_packages('src'),
- package_dir={'': 'src'},
- namespace_packages=['zope',],
- include_package_data=True,
- install_requires=['setuptools',
- 'zope.interface',
- 'zope.component',
- 'zope.event'],
- extras_require=dict(
- test = ['zope.annotation',
- 'zope.dublincore',
- 'zope.container',]
- ),
- zip_safe=False,
- )
Copied: zope.lifecycleevent/tags/3.5.1/setup.py (from rev 97711, zope.lifecycleevent/trunk/setup.py)
===================================================================
--- zope.lifecycleevent/tags/3.5.1/setup.py (rev 0)
+++ zope.lifecycleevent/tags/3.5.1/setup.py 2009-03-09 18:30:24 UTC (rev 97712)
@@ -0,0 +1,60 @@
+##############################################################################
+#
+# Copyright (c) 2006 Zope Corporation and Contributors.
+# All Rights Reserved.
+#
+# This software is subject to the provisions of the Zope Public License,
+# Version 2.1 (ZPL). A copy of the ZPL should accompany this distribution.
+# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
+# WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
+# FOR A PARTICULAR PURPOSE.
+#
+##############################################################################
+"""Setup for zope.lifecycleevent package
+
+$Id$
+"""
+import os
+from setuptools import setup, find_packages
+
+def read(*rnames):
+ return open(os.path.join(os.path.dirname(__file__), *rnames)).read()
+
+setup(
+ name='zope.lifecycleevent',
+ version='3.5.1',
+ url='http://pypi.python.org/pypi/zope.lifecycleevent',
+ author='Zope Corporation and Contributors',
+ author_email='zope-dev at zope.org',
+ license='ZPL 2.1',
+ classifiers=[
+ 'Development Status :: 5 - Production/Stable',
+ 'Intended Audience :: Developers',
+ 'License :: OSI Approved :: Zope Public License',
+ 'Programming Language :: Python',
+ 'Operating System :: OS Independent',
+ 'Topic :: Internet :: WWW/HTTP',
+ 'Topic :: Software Development',
+ ],
+ description='Object life-cycle events',
+ long_description=\
+ read('src', 'zope', 'lifecycleevent', 'README.txt')
+ + '\n\n' +
+ read('CHANGES.txt'),
+
+ packages=find_packages('src'),
+ package_dir={'': 'src'},
+ namespace_packages=['zope',],
+ include_package_data=True,
+ install_requires=['setuptools',
+ 'zope.interface',
+ 'zope.component',
+ 'zope.event'],
+ extras_require=dict(
+ test = ['zope.annotation',
+ 'zope.dublincore',
+ 'zope.container',]
+ ),
+ zip_safe=False,
+ )
Deleted: zope.lifecycleevent/tags/3.5.1/src/zope/lifecycleevent/README.txt
===================================================================
--- zope.lifecycleevent/trunk/src/zope/lifecycleevent/README.txt 2009-03-09 17:08:06 UTC (rev 97710)
+++ zope.lifecycleevent/tags/3.5.1/src/zope/lifecycleevent/README.txt 2009-03-09 18:30:24 UTC (rev 97712)
@@ -1,70 +0,0 @@
-Life-cycle events
-=================
-
-In Zope 3, events are used by components to inform each other about
-relevant new objects and object modifications.
-
-To keep all subscribers up to date it is indispensable that the life
-cycle of an object is accompanied by various events.
-
- >>> from zope.event import notify
- >>> from zope.lifecycleevent import ObjectCreatedEvent, ObjectModifiedEvent
-
- >>> class Sample(object) :
- ... "Test class"
-
- >>> obj = Sample()
- >>> notify(ObjectCreatedEvent(obj))
-
- >>> obj.modified = True
- >>> notify(ObjectModifiedEvent(obj))
-
-Zope 3's Dublin Core Metadata for instance, rely on the bare
-ObjectCreatedEvent and ObjectModifiedEvent to record creation and
-modification times. Other event consumers like catalogs and caches may
-need more information to update themselves in an efficient manner. The
-necessary information can be provided as optional modification
-descriptions of the ObjectModifiedEvent.
-
-Some examples:
-
- >>> from zope.interface import Interface, Attribute, implements
- >>> class IFile(Interface):
- ... data = Attribute("Data")
- ...
-
- >>> class File(object):
- ... implements(IFile)
- ...
-
- >>> file = File()
- >>> file.data = "123"
- >>> notify(ObjectModifiedEvent(obj, IFile))
-
-This says that we modified something via IFile. Note that an interface is an
-acceptable description. In fact, we might allow pretty much anything as a
-description and it depends on your needs what kind of descriptions
-you use.
-
-In the following we use an IAttributes description to describe in more detail
-which parts of an object where modified :
-
- >>> file.data = "456"
-
- >>> from zope.dublincore.interfaces import IZopeDublinCore
- >>> from zope.interface import directlyProvides
- >>> from zope.annotation.interfaces import IAttributeAnnotatable
- >>> directlyProvides(file, IAttributeAnnotatable)
-
- >>> IZopeDublinCore(file).title = u"New title"
- >>> IZopeDublinCore(file).title = u"New description"
-
- >>> from zope.lifecycleevent import Attributes
- >>> event = ObjectModifiedEvent(
- ... obj,
- ... Attributes(IFile, 'data'),
- ... Attributes(IZopeDublinCore, 'title', 'description'),
- ... )
- >>> notify(event)
-
-This says we modified the file data and the DC title and description.
Copied: zope.lifecycleevent/tags/3.5.1/src/zope/lifecycleevent/README.txt (from rev 97711, zope.lifecycleevent/trunk/src/zope/lifecycleevent/README.txt)
===================================================================
--- zope.lifecycleevent/tags/3.5.1/src/zope/lifecycleevent/README.txt (rev 0)
+++ zope.lifecycleevent/tags/3.5.1/src/zope/lifecycleevent/README.txt 2009-03-09 18:30:24 UTC (rev 97712)
@@ -0,0 +1,71 @@
+=================
+Life-cycle events
+=================
+
+In Zope 3, events are used by components to inform each other about
+relevant new objects and object modifications.
+
+To keep all subscribers up to date it is indispensable that the life
+cycle of an object is accompanied by various events.
+
+ >>> from zope.event import notify
+ >>> from zope.lifecycleevent import ObjectCreatedEvent, ObjectModifiedEvent
+
+ >>> class Sample(object) :
+ ... "Test class"
+
+ >>> obj = Sample()
+ >>> notify(ObjectCreatedEvent(obj))
+
+ >>> obj.modified = True
+ >>> notify(ObjectModifiedEvent(obj))
+
+Zope 3's Dublin Core Metadata for instance, rely on the bare
+ObjectCreatedEvent and ObjectModifiedEvent to record creation and
+modification times. Other event consumers like catalogs and caches may
+need more information to update themselves in an efficient manner. The
+necessary information can be provided as optional modification
+descriptions of the ObjectModifiedEvent.
+
+Some examples:
+
+ >>> from zope.interface import Interface, Attribute, implements
+ >>> class IFile(Interface):
+ ... data = Attribute("Data")
+ ...
+
+ >>> class File(object):
+ ... implements(IFile)
+ ...
+
+ >>> file = File()
+ >>> file.data = "123"
+ >>> notify(ObjectModifiedEvent(obj, IFile))
+
+This says that we modified something via IFile. Note that an interface is an
+acceptable description. In fact, we might allow pretty much anything as a
+description and it depends on your needs what kind of descriptions
+you use.
+
+In the following we use an IAttributes description to describe in more detail
+which parts of an object where modified :
+
+ >>> file.data = "456"
+
+ >>> from zope.dublincore.interfaces import IZopeDublinCore
+ >>> from zope.interface import directlyProvides
+ >>> from zope.annotation.interfaces import IAttributeAnnotatable
+ >>> directlyProvides(file, IAttributeAnnotatable)
+
+ >>> IZopeDublinCore(file).title = u"New title"
+ >>> IZopeDublinCore(file).title = u"New description"
+
+ >>> from zope.lifecycleevent import Attributes
+ >>> event = ObjectModifiedEvent(
+ ... obj,
+ ... Attributes(IFile, 'data'),
+ ... Attributes(IZopeDublinCore, 'title', 'description'),
+ ... )
+ >>> notify(event)
+
+This says we modified the file data and the DC title and description.
Deleted: zope.lifecycleevent/tags/3.5.1/src/zope/lifecycleevent/__init__.py
===================================================================
--- zope.lifecycleevent/trunk/src/zope/lifecycleevent/__init__.py 2009-03-09 17:08:06 UTC (rev 97710)
+++ zope.lifecycleevent/tags/3.5.1/src/zope/lifecycleevent/__init__.py 2009-03-09 18:30:24 UTC (rev 97712)
@@ -1,110 +0,0 @@
-##############################################################################
-#
-# Copyright (c) 2001, 2002 Zope Corporation and Contributors.
-# All Rights Reserved.
-#
-# This software is subject to the provisions of the Zope Public License,
-# Version 2.1 (ZPL). A copy of the ZPL should accompany this distribution.
-# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
-# WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
-# FOR A PARTICULAR PURPOSE.
-#
-##############################################################################
-"""Life cycle events
-
-$Id$
-"""
-__docformat__ = 'restructuredtext'
-
-import zope.component.interfaces
-from zope.component import subscribers
-from zope.interface import implements
-from zope.event import notify
-from zope.lifecycleevent.interfaces import IObjectCreatedEvent
-from zope.lifecycleevent.interfaces import IObjectModifiedEvent
-from zope.lifecycleevent.interfaces import IObjectCopiedEvent
-from zope.lifecycleevent.interfaces import IAttributes, ISequence
-
-
-class ObjectCreatedEvent(zope.component.interfaces.ObjectEvent):
- """An object has been created"""
-
- implements(IObjectCreatedEvent)
-
-
-class Attributes(object) :
- """
- Describes modified attributes of an interface.
-
- >>> from zope.dublincore.interfaces import IZopeDublinCore
- >>> desc = Attributes(IZopeDublinCore, "title", "description")
- >>> desc.interface == IZopeDublinCore
- True
- >>> 'title' in desc.attributes
- True
-
- """
-
- implements(IAttributes)
-
- def __init__(self, interface, *attributes) :
- self.interface = interface
- self.attributes = attributes
-
-
-class Sequence(object) :
- """
- Describes modified keys of an interface.
-
- >>> from zope.container.interfaces import IContainer
- >>> desc = Sequence(IContainer, 'foo', 'bar')
- >>> desc.interface == IContainer
- True
- >>> desc.keys
- ('foo', 'bar')
-
- """
-
- implements(ISequence)
-
- def __init__(self, interface, *keys) :
- self.interface = interface
- self.keys = keys
-
-class ObjectModifiedEvent(zope.component.interfaces.ObjectEvent):
- """An object has been modified"""
-
- implements(IObjectModifiedEvent)
-
- def __init__(self, object, *descriptions) :
- """
- Init with a list of modification descriptions.
-
- >>> from zope.interface import implements, Interface, Attribute
- >>> class ISample(Interface) :
- ... field = Attribute("A test field")
- >>> class Sample(object) :
- ... implements(ISample)
-
- >>> obj = Sample()
- >>> obj.field = 42
- >>> notify(ObjectModifiedEvent(obj, Attributes(ISample, "field")))
-
- """
- super(ObjectModifiedEvent, self).__init__(object)
- self.descriptions = descriptions
-
-
-def modified(object, *descriptions):
- notify(ObjectModifiedEvent(object, *descriptions))
-
-
-class ObjectCopiedEvent(ObjectCreatedEvent):
- """An object has been copied"""
-
- implements(IObjectCopiedEvent)
-
- def __init__(self, object, original):
- super(ObjectCopiedEvent, self).__init__(object)
- self.original = original
Copied: zope.lifecycleevent/tags/3.5.1/src/zope/lifecycleevent/__init__.py (from rev 97711, zope.lifecycleevent/trunk/src/zope/lifecycleevent/__init__.py)
===================================================================
--- zope.lifecycleevent/tags/3.5.1/src/zope/lifecycleevent/__init__.py (rev 0)
+++ zope.lifecycleevent/tags/3.5.1/src/zope/lifecycleevent/__init__.py 2009-03-09 18:30:24 UTC (rev 97712)
@@ -0,0 +1,110 @@
+##############################################################################
+#
+# Copyright (c) 2001, 2002 Zope Corporation and Contributors.
+# All Rights Reserved.
+#
+# This software is subject to the provisions of the Zope Public License,
+# Version 2.1 (ZPL). A copy of the ZPL should accompany this distribution.
+# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
+# WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
+# FOR A PARTICULAR PURPOSE.
+#
+##############################################################################
+"""Life cycle events
+
+$Id$
+"""
+__docformat__ = 'restructuredtext'
+
+import zope.component.interfaces
+from zope.interface import implements
+from zope.event import notify
+
+from zope.lifecycleevent.interfaces import IObjectCreatedEvent
+from zope.lifecycleevent.interfaces import IObjectModifiedEvent
+from zope.lifecycleevent.interfaces import IObjectCopiedEvent
+from zope.lifecycleevent.interfaces import IAttributes, ISequence
+
+
+class ObjectCreatedEvent(zope.component.interfaces.ObjectEvent):
+ """An object has been created"""
+
+ implements(IObjectCreatedEvent)
+
+
+class Attributes(object) :
+ """
+ Describes modified attributes of an interface.
+
+ >>> from zope.dublincore.interfaces import IZopeDublinCore
+ >>> desc = Attributes(IZopeDublinCore, "title", "description")
+ >>> desc.interface == IZopeDublinCore
+ True
+ >>> 'title' in desc.attributes
+ True
+
+ """
+
+ implements(IAttributes)
+
+ def __init__(self, interface, *attributes) :
+ self.interface = interface
+ self.attributes = attributes
+
+
+class Sequence(object) :
+ """
+ Describes modified keys of an interface.
+
+ >>> from zope.container.interfaces import IContainer
+ >>> desc = Sequence(IContainer, 'foo', 'bar')
+ >>> desc.interface == IContainer
+ True
+ >>> desc.keys
+ ('foo', 'bar')
+
+ """
+
+ implements(ISequence)
+
+ def __init__(self, interface, *keys) :
+ self.interface = interface
+ self.keys = keys
+
+class ObjectModifiedEvent(zope.component.interfaces.ObjectEvent):
+ """An object has been modified"""
+
+ implements(IObjectModifiedEvent)
+
+ def __init__(self, object, *descriptions) :
+ """
+ Init with a list of modification descriptions.
+
+ >>> from zope.interface import implements, Interface, Attribute
+ >>> class ISample(Interface) :
+ ... field = Attribute("A test field")
+ >>> class Sample(object) :
+ ... implements(ISample)
+
+ >>> obj = Sample()
+ >>> obj.field = 42
+ >>> notify(ObjectModifiedEvent(obj, Attributes(ISample, "field")))
+
+ """
+ super(ObjectModifiedEvent, self).__init__(object)
+ self.descriptions = descriptions
+
+
+def modified(object, *descriptions):
+ notify(ObjectModifiedEvent(object, *descriptions))
+
+
+class ObjectCopiedEvent(ObjectCreatedEvent):
+ """An object has been copied"""
+
+ implements(IObjectCopiedEvent)
+
+ def __init__(self, object, original):
+ super(ObjectCopiedEvent, self).__init__(object)
+ self.original = original
More information about the Checkins
mailing list