Skip to main content

This package is a set of extensions to colander especially useful when implementing REST APIs.

Strict types

The colander_tools.strict module includes a series of strict types. Those types follow the Postel’s law: they are strict on serialize and loose on deserialize.

Included are:

  • Integer

  • Float

  • Boolean

  • String

  • Mapping

Byte types

The colander_tools.bytes module includes types serializing / deserializing encoded binary data.

Included are:

  • Base16Bytes

  • Base32Bytes

  • Base64Bytes

  • URLSafeBase64Bytes

Open mappings

The colander_tools.mapping module includes two Mapping subclasses that allow and validate arbitrary keys in addition to the values.

Included are:

  • OpenMapping: a mapping that allows you to specify the type of keys and the type of values separately;

  • SortedOpenMapping: an extension of OpenMapping that conserve the order of keys by deserializing to collections.OrderedDict.

Network addresses types

The colander_tools.netaddr module includes a series of types that serializes and deserializes network addresses (IP addresses, MAC addresses, etc.), powered by the netaddr package.

Null types

The colander_tools.null module includes a wrapper type that allows None as a value.

Serializable classes

The colander_tools.serializable module includes tools to bind Python classes to their schema.

Schema inheritance / sub-schemas

The colander_tools.subschema module includes tools to build schemas of things that can have different types / classes.

Timezone type

The colander_tools.timezone module includes a type for serializing and deserializing timezone identifiers like Europe/Amsterdam or Asia/Hong_Kong.

Download files

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

Source Distribution

colander_tools-0.7.0.tar.gz (5.9 kB view details)

Uploaded Source

File details

Details for the file colander_tools-0.7.0.tar.gz.

File metadata

File hashes

Hashes for colander_tools-0.7.0.tar.gz
Algorithm Hash digest
SHA256 32499b1a65e1b775b7b77ffc44c3e049e2c16a6b24b8803b570f5bf925d49c0b
MD5 b28c9c2012a848a35e45e11249ad3bf5
BLAKE2b-256 bda1bbfcd82373c390db1a49dcfbf3a1c609320c0634ba4dd19b4c9515b0332b

See more details on using hashes here.

Release history Release notifications | RSS feed

0.13.0

2 files

0.12.0

1 file

0.11.0

1 file

0.10.0

2 files

0.9.0

2 files

0.8.0

2 files

This release

0.7.0 This release

1 file

0.6.1

1 file

0.6.0

2 files

0.5.0

1 file

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page