Not Logged In

zope.schema 4.4.2

zope.schema README

Schemas extend the notion of interfaces to detailed descriptions of
Attributes (but not methods). Every schema is an interface and
specifies the public fields of an object. A field roughly
corresponds to an attribute of a Python object. But a Field provides
space for at least a title and a description. It can also constrain
its value and provide a validation method. Besides you can optionally
specify characteristics such as its value being read-only or not
required.

zope.schema Changelog

4.4.2 (2014-09-04)

4.4.1 (2014-03-19)

Added support for Python 3.4.

4.4.0 (2014-01-22)

Add an event on field properties to notify that a field has been updated.
This event enables definition of subscribers based on an event, a context
and a field. The event contains also the old value and the new value.
(also see package zope.schemaevent that define a field event handler)

4.3.3 (2014-01-06)

Add the ability to swallow ValueErrors when rendering a SimpleVocabulary,
allowing for cases where vocabulary items may be duplicated (e.g., due to
user input).

It was a pain that ConstraintNotSatisfied did not tell the field name.

4.3.2 (2013-02-24)

Fix Python 2.6 support. (Forgot to run tox with all environments before last
release.)

4.3.1 (2013-02-24)

Make sure that we do not fail during bytes decoding of term token when
generated from a bytes value by ignoring all errors. (Another option would
have been to hexlify the value, but that would break way too many tests.)

4.3.0 (2013-02-24)

Fixed a bug where bytes values were turned into tokens inproperly in
Python 3.

4.1.1 (2012-03-23)

Remove trailing slash in MANIFEST.in, it causes Winbot to crash.

4.1.0 (2012-03-23)

Add TreeVocabulary for nested tree-like vocabularies.

Fix broken Object field validation where the schema contains a Choice with
ICountextSourceBinder source. In this case the vocabulary was not iterable
because the field was not bound and the source binder didn’t return the
real vocabulary. Added simple test for IContextSourceBinder validation. But a
test with an Object field with a schema using a Choice with
IContextSourceBinder is still missing.

4.0.1 (2011-11-14)

Fix bug in fromUnicode method of DottedName which would fail
validation on being given unicode. Introduced in 4.0.0.

4.0.0 (2011-11-09)

Fix deprecated unittest methods.

Port to Python 3. This adds a dependency on six and removes support for
Python 2.5.

3.8.1 (2011-09-23)

fix broken Object field validation. Previous version was using a volatile
property on object field values which ends in a ForbiddenAttribute error
on security proxied objects.

3.8.0 (2011-03-18)

Implemented a defaultFactory attribute for all fields. It is a callable
that can be used to compute default values. The simplest case is:

Date(defaultFactory=datetime.date.today)

If the factory needs a context to compute a sensible default value, then it
must provide IContextAwareDefaultFactory, which can be used as follows:

3.7.1 (2010-12-25)

The validation token, used in the validation of schema with Object
Field to avoid infinite recursion, has been renamed.
__schema_being_validated became _v_schema_being_validated,
a volatile attribute, to avoid persistency and therefore,
read/write conflicts.

Add vocabularyName attribute to the IChoice interface, change
“vocabulary” attribute description to be more sensible, making it
zope.schema.Field instead of plain zope.interface.Attribute.

Make IBool interface of Bool more important than IFromUnicode so adapters
registered for IBool take precendence over adapters registered for
IFromUnicode.

3.5.3 (2009-03-10)

Make Choice and Bool fields implement IFromUnicode interface, because
they do provide the fromUnicode method.

Change package’s mailing list address to zope-dev at zope.org, as
zope3-dev at zope.org is now retired.

Fix package’s documentation formatting. Change package’s description.

Add buildout part that builds Sphinx-generated documentation.

Remove zpkg-related file.

3.5.2 (2009-02-04)

Made validation tests compatible with Python 2.5 again (hopefully not
breaking Python 2.4)

Added an __all__ package attribute to expose documentation.

3.5.1 (2009-01-31)

Stop using the old old set type.

Make tests compatible and silent with Python 2.4.

Fix __cmp__ method in ValidationError. Show some side effects based on the
existing __cmp__ implementation. See validation.txt

Make ‘repr’ of the ValidationError and its subclasses more sensible. This
may require you to adapt your doctests for the new style, but now it makes
much more sense for debugging for developers.

3.5.0a2 (2008-12-11)

Move zope.testing to “test” extras_require, as it is not needed
for zope.schema itself.

Change the order of classes in SET_TYPES tuple, introduced in
previous release to one that was in 3.4 (SetType, set), because
third-party code could be dependent on that order. The one
example is z3c.form’s converter.

3.5.0a1 (2008-10-10)

Added the doctests to the long description.

Removed use of deprecated ‘sets’ module when running under Python 2.6.