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, powered by the pytz package.

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.13.0.tar.gz (9.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

colander_tools-0.13.0-py2.py3-none-any.whl (11.9 kB view details)

Uploaded Python 2Python 3

File details

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

File metadata

  • Download URL: colander_tools-0.13.0.tar.gz
  • Upload date:
  • Size: 9.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.6

File hashes

Hashes for colander_tools-0.13.0.tar.gz
Algorithm Hash digest
SHA256 f0eb89f426d207514c31b5d1927e8729f740956552d1bb295844194560da45bf
MD5 e7dd30f8f0b715b98d7bad1794883bf4
BLAKE2b-256 bbbe894cce3d1ee234941e1eb7f853dc935fb30fa1c59631104357630282dba5

See more details on using hashes here.

File details

Details for the file colander_tools-0.13.0-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for colander_tools-0.13.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 5bf6bae174dae88706c30ebe243f76f3d0f03c799f21debe40c8f660aae54252
MD5 7154e6f9002e416bac57381b480ed350
BLAKE2b-256 58d1834359a8b659416418b2ca659d926a40f19966e108696eaf820bf9ee2e6d

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.13.0 This release

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

0.7.0

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