Skip to main content

A simple schema-based serialization and deserialization library

Project description

Colander

An extensible package which can be used to:

  • deserialize and validate a data structure composed of strings, mappings, and lists.

  • serialize an arbitrary data structure to a data structure composed of strings, mappings, and lists.

Please see http://docs.repoze.org/colander for further documentation.

Changes

0.5.2 (2010-04-09)

  • Add Email and Regex validators (courtesy Steve Howe).

  • Raise a colander.Invalid error if a colander.SequenceSchema is created with more than one member.

  • Add Function validator.

  • Fix bug in serialization of non-Unicode values in the String class.

  • Get rid of pserialize in favor of making serialize always partially serialize.

  • Get rid of pdeserialize: it existed only for symmetry. We’ll add something like it back later if we need it.

0.5.1 (2010-04-02)

  • The constructor arguments to a the colander.Schema class are now sent to the constructed SchemaNode rather than to the type it represents.

  • Allow colander.Date and colander.DateTime invalid error messages to be customized.

  • Add a pos argument to the colander.Invalid.add method.

  • Add a __setitem__ method to the colander.Invalid class.

  • The colander.Mapping constructor keyword argument unknown_keys has been renamed to unknown.

  • Allow colander.Mapping type to accept a new constructor argument: partial.

  • New interface methods required by types and schema nodes: pserialize and pdeserialize. These partially serialize or partially deserialize a value (the definition of “partial” is up to the type).

0.5 (2010-03-31)

  • 0.4 was mispackaged (CHANGES.txt missing); no code changes from 0.4 however.

0.4 (2010-03-30)

  • Add colander.DateTime and colander.Date data types.

  • Depend on the iso8601 package for date support.

0.3 (2010-03-29)

  • Subnodes of a schema node are now kept in the children attribute rather than the nodes attribute.

  • Add an sdefault property to colander.SchemaNode objects.

  • Add a clone method to colander.SchemaNode objects.

  • Add a __str__ method to the colander.Invalid exception that prints an error summary.

  • Various error message improvements.

  • Add colander.Length validator class.

0.2 (2010-03-23)

  • Make nodetype overrideable.

  • Add __getitem__ to SchemaNode.

  • Fix OneOf message.

  • Capitalize node titles.

  • Deal with empty strings in String, Boolean, and Float types.

  • Introduce description; make title the same as name.

  • Remove copy method from schemanode.

  • Allow schema nodes to have titles.

  • The term “structure” is too overloaded to use for schema purposes: structure -> schema node.

  • Make Sequence more like Tuple and Mapping (it uses a substructure rather than a structure parameter to denote its type).

  • Add __repr__ and copy methods to structure.

  • Add accept_scalar flag to Sequence.

0.1 (2010-03-14)

  • Initial release.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

colander-0.5.2.tar.gz (35.9 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page