Skip to main content

Interface module that verifies both providers and callers

Project description

Jute is an interface module for Python 3 that verifies both providers and receivers of the interface.

Although duck typing is generally considered the Pythonic way of dealing with object compatibility, it assumes that syntactic compatibility implies semantic compatibility. Interfaces provide an explicit way to express semantic compatibility.

Most existing interface modules for Python (e.g. abc and zope.interface) check that implementing classes provide all the attributes specified in the interface. But they ignore the other side of the contract, failing to ensure that the receiver of the interface only calls operations specified by the interface.

The jute module allows verification of both providers of the interface and receivers of the interface, to ensure that code works with any provider of the interface, not just the provider with which it was tested.

Documentation is available at http://jute.readthedocs.org/

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

jute-0.2.1.tar.gz (8.5 kB view details)

Uploaded Source

File details

Details for the file jute-0.2.1.tar.gz.

File metadata

  • Download URL: jute-0.2.1.tar.gz
  • Upload date:
  • Size: 8.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for jute-0.2.1.tar.gz
Algorithm Hash digest
SHA256 41fde0c78dd1b018ba92329351ebc9dff0a0145cf501ce4c0b9dd7c39724f9ff
MD5 ab732a03109fb2a494980a260812eba4
BLAKE2b-256 3dccd1a6b1f66b4a544e4b895054b322240a1d5eddba307177b457fb44d38052

See more details on using hashes here.

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