Skip to main content

Interfaces for Python

Project description

zope.interface README

This package is intended to be independently reusable in any Python project. It is maintained by the Zope Toolkit project.

This package provides an implementation of “object interfaces” for Python. Interfaces are a mechanism for labeling objects as conforming to a given API or contract. So, this package can be considered as implementation of the Design By Contract methodology support in Python.

For detailed documentation, please see http://docs.zope.org/zope.interface

zope.interface Changelog

3.6.3 (2011-05-26)

  • LP #570942: Now correctly compare interfaces from different modules but with the same names.

3.6.2 (2011-05-17)

  • Moved detailed documentation out-of-line from PyPI page, linking instead to http://docs.zope.org/zope.interface .

  • Fixes for small issues when running tests under Python 3.2 using zope.testrunner.

  • LP # 675064: Specify return value type for C optimizations module init under Python 3: undeclared value caused warnings, and segfaults on some 64 bit architectures.

  • setup.py now raises RuntimeError if you don’t have Distutils installed when running under Python 3.

3.6.1 (2010-05-03)

  • A non-ASCII character in the changelog made 3.6.0 uninstallable on Python 3 systems with another default encoding than UTF-8.

  • Fixed compiler warnings under GCC 4.3.3.

3.6.0 (2010-04-29)

  • LP #185974: Clear the cache used by Specificaton.get inside Specification.changed. Thanks to Jacob Holm for the patch.

  • Added support for Python 3.1. Contributors:

    Lennart Regebro Martin v Loewis Thomas Lotze Wolfgang Schnerring

    The 3.1 support is completely backwards compatible. However, the implements syntax used under Python 2.X does not work under 3.X, since it depends on how metaclasses are implemented and this has changed. Instead it now supports a decorator syntax (also under Python 2.X):

    class Foo:
        implements(IFoo)
        ...

    can now also be written:

    @implementor(IFoo):
    class Foo:
        ...

    There are 2to3 fixers available to do this change automatically in the zope.fixers package.

  • Python 2.3 is no longer supported.

3.5.4 (2009-12-23)

  • Use the standard Python doctest module instead of zope.testing.doctest, which has been deprecated.

3.5.3 (2009-12-08)

3.5.2 (2009-07-01)

  • BaseAdapterRegistry.unregister, unsubscribe: Remove empty portions of the data structures when something is removed. This avoids leaving references to global objects (interfaces) that may be slated for removal from the calling application.

3.5.1 (2009-03-18)

  • verifyObject: use getattr instead of hasattr to test for object attributes in order to let exceptions other than AttributeError raised by properties propagate to the caller

  • Add Sphinx-based documentation building to the package buildout configuration. Use the bin/docs command after buildout.

  • Improve package description a bit. Unify changelog entries formatting.

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

3.5.0 (2008-10-26)

  • Fixed declaration of _zope_interface_coptimizations, it’s not a top level package.

  • Add a DocTestSuite for odd.py module, so their tests are run.

  • Allow to bootstrap on Jython.

  • Fix https://bugs.launchpad.net/zope3/3.3/+bug/98388: ISpecification was missing a declaration for __iro__.

  • Added optional code optimizations support, which allows the building of C code optimizations to fail (Jython).

  • Replaced _flatten with a non-recursive implementation, effectively making it 3x faster.

3.4.1 (2007-10-02)

  • Fixed a setup bug that prevented installation from source on systems without setuptools.

3.4.0 (2007-07-19)

  • Final release for 3.4.0.

3.4.0b3 (2007-05-22)

  • Objects with picky custom comparison methods couldn’t be added to component registries. Now, when checking whether an object is already registered, identity comparison is used.

3.3.0.1 (2007-01-03)

  • Made a reference to OverflowWarning, which disappeared in Python 2.5, conditional.

3.3.0 (2007/01/03)

New Features

  • The adapter-lookup algorithim was refactored to make it much simpler and faster.

    Also, more of the adapter-lookup logic is implemented in C, making debugging of application code easier, since there is less infrastructre code to step through.

  • We now treat objects without interface declarations as if they declared that they provide zope.interface.Interface.

  • There are a number of richer new adapter-registration interfaces that provide greater control and introspection.

  • Added a new interface decorator to zope.interface that allows the setting of tagged values on an interface at definition time (see zope.interface.taggedValue).

Bug Fixes

  • A bug in multi-adapter lookup sometimes caused incorrect adapters to be returned.

3.2.0.2 (2006-04-15)

  • Fix packaging bug: ‘package_dir’ must be a relative path.

3.2.0.1 (2006-04-14)

  • Packaging change: suppress inclusion of ‘setup.cfg’ in ‘sdist’ builds.

3.2.0 (2006-01-05)

  • Corresponds to the verison of the zope.interface package shipped as part of the Zope 3.2.0 release.

3.1.0 (2005-10-03)

  • Corresponds to the verison of the zope.interface package shipped as part of the Zope 3.1.0 release.

  • Made attribute resolution order consistent with component lookup order, i.e. new-style class MRO semantics.

  • Deprecated ‘isImplementedBy’ and ‘isImplementedByInstancesOf’ APIs in favor of ‘implementedBy’ and ‘providedBy’.

3.0.1 (2005-07-27)

  • Corresponds to the verison of the zope.interface package shipped as part of the Zope X3.0.1 release.

  • Fixed a bug reported by James Knight, which caused adapter registries to fail occasionally to reflect declaration changes.

3.0.0 (2004-11-07)

  • Corresponds to the verison of the zope.interface package shipped as part of the Zope X3.0.0 release.

Release history Release notifications | RSS feed

Download files

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

Source Distribution

zope.interface-3.6.3.tar.gz (95.2 kB view details)

Uploaded Source

Built Distributions

zope.interface-3.6.3.win-amd64-py2.7.exe (356.5 kB view details)

Uploaded Source

zope.interface-3.6.3.win-amd64-py2.6.exe (356.5 kB view details)

Uploaded Source

zope.interface-3.6.3.win32-py2.7.exe (328.3 kB view details)

Uploaded Source

zope.interface-3.6.3.win32-py2.6.exe (328.3 kB view details)

Uploaded Source

zope.interface-3.6.3-py2.7-win-amd64.egg (210.7 kB view details)

Uploaded Egg

zope.interface-3.6.3-py2.7-win32.egg (209.9 kB view details)

Uploaded Egg

zope.interface-3.6.3-py2.6-win-amd64.egg (211.2 kB view details)

Uploaded Egg

zope.interface-3.6.3-py2.6-win32.egg (210.4 kB view details)

Uploaded Egg

zope.interface-3.6.3-py2.5-win32.egg (209.8 kB view details)

Uploaded Egg

zope.interface-3.6.3-py2.4-win32.egg (211.3 kB view details)

Uploaded Egg

File details

Details for the file zope.interface-3.6.3.tar.gz.

File metadata

File hashes

Hashes for zope.interface-3.6.3.tar.gz
Algorithm Hash digest
SHA256 0cfd3e0cd1ecae113010d4bd7f3bd89931554849118dd20c73870c22ae3a52a3
MD5 954a56113b491b5856b9e78424ba0922
BLAKE2b-256 0e67adc69b6934ede6c061dff1c7758f45b6b9134a4603e53bd948ae08bbaa1c

See more details on using hashes here.

File details

Details for the file zope.interface-3.6.3.win-amd64-py2.7.exe.

File metadata

File hashes

Hashes for zope.interface-3.6.3.win-amd64-py2.7.exe
Algorithm Hash digest
SHA256 6a872c927f1eacc5463b2ea84f4e53e66328d9b0e4675d829284eef0697797ba
MD5 9a62d841413fadf07759c98610f3cbe3
BLAKE2b-256 715fff933e4569a4e02d5f08504e13cad0ffe7ec015b426f0899b64d7ed8338e

See more details on using hashes here.

File details

Details for the file zope.interface-3.6.3.win-amd64-py2.6.exe.

File metadata

File hashes

Hashes for zope.interface-3.6.3.win-amd64-py2.6.exe
Algorithm Hash digest
SHA256 84b5d2d1927476aa95f90232db129c4fc292d8e07a57c7cb1353299493f5ee13
MD5 fa6306e2fc4c476112ad75cb9e310fcb
BLAKE2b-256 b4422aa7ae3b66492c9ddb47976a9412808c80f107dfd8971dc6d17f4d94d169

See more details on using hashes here.

File details

Details for the file zope.interface-3.6.3.win32-py2.7.exe.

File metadata

File hashes

Hashes for zope.interface-3.6.3.win32-py2.7.exe
Algorithm Hash digest
SHA256 50937d9cab7d3d63a1859089bb3f6ae048653e54aae2e5eb7995a5a223b25813
MD5 41857b9592ff4f19c960095af9b527d0
BLAKE2b-256 d71274a7ab7050074f62ef8ce2b211269b46f44730c63b9c8fe139bef4eade90

See more details on using hashes here.

File details

Details for the file zope.interface-3.6.3.win32-py2.6.exe.

File metadata

File hashes

Hashes for zope.interface-3.6.3.win32-py2.6.exe
Algorithm Hash digest
SHA256 687590438470e79fe698b0cda3fcc6739584cdd699e3e9fb08b7e34dadaa4b72
MD5 1cb14fa9c61bc5758130ebb9f32ca36c
BLAKE2b-256 8d643de68471b80fd93682dc8904ce4be92d683efef79925d15c52029b73b369

See more details on using hashes here.

File details

Details for the file zope.interface-3.6.3-py2.7-win-amd64.egg.

File metadata

File hashes

Hashes for zope.interface-3.6.3-py2.7-win-amd64.egg
Algorithm Hash digest
SHA256 6f5ec03d8fcf20c353f956088db4343a1f503dec7cf5d89058a6ba97560b6375
MD5 394c96391884feeec1c7de7535c050e2
BLAKE2b-256 c71e463c230025c913f12a9016cac987df35f35aa1153d71da08906940600814

See more details on using hashes here.

File details

Details for the file zope.interface-3.6.3-py2.7-win32.egg.

File metadata

File hashes

Hashes for zope.interface-3.6.3-py2.7-win32.egg
Algorithm Hash digest
SHA256 c715a8476d75f751bdab45a699cfe5b12145c8e56b8d97874d222e2454a9fa88
MD5 458902c21a57ec70f5e264cefd38409b
BLAKE2b-256 8d56105d0e67f517bd4d4cfdb1ed10f2f63f02d7b5092051d1e1b61f96f7f500

See more details on using hashes here.

File details

Details for the file zope.interface-3.6.3-py2.6-win-amd64.egg.

File metadata

File hashes

Hashes for zope.interface-3.6.3-py2.6-win-amd64.egg
Algorithm Hash digest
SHA256 4c3a955862470bc8a510106ff9d594e828ab305d9cd3f8f4124f2ada06ef9ecf
MD5 beab1cb06197f9354d13e3a3062a35e7
BLAKE2b-256 8b166fc5e87ac81ee4fd87079d48e970a3bd748a0638b2891265bf66c983162f

See more details on using hashes here.

File details

Details for the file zope.interface-3.6.3-py2.6-win32.egg.

File metadata

File hashes

Hashes for zope.interface-3.6.3-py2.6-win32.egg
Algorithm Hash digest
SHA256 4af42b290ed7dacde8e4a692c929a5a4fc83dcebb9fbd791f8470ee0b17325fb
MD5 cc6b2d0d8e50d13c86ee1f2183d3c5ac
BLAKE2b-256 dcd53606e75cea462e4ad0b7798df89793a363a157afdeb3e76b8a4e29d3d8f4

See more details on using hashes here.

File details

Details for the file zope.interface-3.6.3-py2.5-win32.egg.

File metadata

File hashes

Hashes for zope.interface-3.6.3-py2.5-win32.egg
Algorithm Hash digest
SHA256 ab0fd3c1acf60158ce5a9ad99d17abc596947b659fae6e8739d1032e394d7ac5
MD5 a37ccec3e738c7f5b4c3e52d994697ab
BLAKE2b-256 3d252c3f97f4ba1355a70404e106fb0425881c794eb469bc8971907f5996ed05

See more details on using hashes here.

File details

Details for the file zope.interface-3.6.3-py2.4-win32.egg.

File metadata

File hashes

Hashes for zope.interface-3.6.3-py2.4-win32.egg
Algorithm Hash digest
SHA256 14544b1612ee10bb51f86033943d79f33417683eb267bc9ba256cd99af34d734
MD5 3d7c6b5d07b22a2e707258af04578224
BLAKE2b-256 8c3d331d0f2ddd1445a4b83335109ddcce83e606afd2b65b527d304bf86dab96

See more details on using hashes here.

Supported by

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