Commit 34ffba90 authored by Stephan Richter's avatar Stephan Richter

Get ready for release.

parent ace7f1ad
=======
CHANGES
=======
3.5.0 (2007-10-11)
------------------
- Updated package meta-data.
3.5.0a1 (2007-06-29)
--------------------
* Updated bootstrap script to current version.
* Store length of ``BTreeContainer`` in its own ``Length`` object for faster
``__len__`` implementation of huge containers.
3.4.0a1 (2007-04-22)
--------------------
- Initial release as a separate project, corresponds to ``zope.app.container``
from Zope 3.4.0a1.
This package define interfaces of container components, and provides
sample container implementations such as a BTreeContainer and
OrderedContainer.
Changes
=======
3.5.0a1 (2007-06-29)
--------------------
* Updated bootstrap script to current version.
* Store length of BTreeContainer in its own Length object for faster
__len__ implementation of huge containers.
3.4.0a1 (2007-04-22)
--------------------
Initial release as a separate project, corresponds to
zope.app.container from Zope 3.4.0a1
[buildout]
develop = .
develop = .
parts = test
find-links = http://download.zope.org/distribution/
[test]
recipe = zc.recipe.testrunner
defaults = ['--tests-pattern', '^f?tests$']
eggs = zope.app.container [test]
......@@ -18,18 +18,40 @@ $Id$
import os
from setuptools import setup, find_packages, Extension
def read(*rnames):
return open(os.path.join(os.path.dirname(__file__), *rnames)).read()
setup(name='zope.app.container',
version = '3.5.0a2',
url='http://cheeseshop.python.org/pypi/zope.app.container',
license='ZPL 2.1',
description='Zope container',
version = '3.5.0',
author='Zope Corporation and Contributors',
author_email='zope3-dev@zope.org',
long_description=open('README.txt').read(),
description='Zope Container',
long_description=(
read('README.txt')
+ '\n\n' +
'Detailed Documentation\n'
'**********************\n'
+ '\n\n' +
read('src', 'zope', 'app', 'container', 'constraints.txt')
+ '\n\n' +
read('CHANGES.txt')
),
keywords = "zope3 container",
classifiers = [
'Development Status :: 5 - Production/Stable',
'Environment :: Web Environment',
'Intended Audience :: Developers',
'License :: OSI Approved :: Zope Public License',
'Programming Language :: Python',
'Natural Language :: English',
'Operating System :: OS Independent',
'Topic :: Internet :: WWW/HTTP',
'Framework :: Zope3'],
url='http://cheeseshop.python.org/pypi/zope.app.container',
license='ZPL 2.1',
packages=find_packages('src'),
package_dir = {'': 'src'},
namespace_packages=['zope', 'zope.app'],
ext_modules=[Extension("zope.app.container._zope_app_container_contained",
[os.path.join("src", "zope", "app", "container",
"_zope_app_container_contained.c")
......@@ -40,7 +62,6 @@ setup(name='zope.app.container',
'zope.app.securitypolicy',
'zope.app.zcmlfiles',
'zope.app.file']),
namespace_packages=['zope', 'zope.app'],
install_requires=['setuptools',
'zope.interface',
'zope.deprecation',
......@@ -66,6 +87,5 @@ setup(name='zope.app.container',
'ZODB3',
],
include_package_data = True,
zip_safe = False,
)
......@@ -7,7 +7,7 @@ containers an item can be placed in. We express these constraints in
interfaces. Let's define some container and item interfaces:
>>> from zope.app.container.interfaces import IContainer, IContained
>>> from zope.app.container.constraints import containers, contains
>>> from zope.app.container.constraints import containers, contains
>>> class IBuddyFolder(IContainer):
... contains('.IBuddy')
......@@ -22,7 +22,7 @@ define IBuddy, we can use IBuddyFolder directly:
>>> class IBuddy(IContained):
... containers(IBuddyFolder)
Now, with these interfaces in place, we can define Buddy and
BuddyFolder classes and verify that we can put buddies in buddy
folders:
......@@ -93,5 +93,5 @@ could have defined these in the opposite order:
>>> checkFactory(Contacts(), 'x', Factory(Buddy))
False
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment