Skip to main content

zope.proxy

Latest Version https://travis-ci.org/zopefoundation/zope.proxy.png?branch=master Documentation Status

Proxies are special objects which serve as mostly-transparent wrappers around another object, intervening in the apparent behavior of the wrapped object only when necessary to apply the policy (e.g., access checking, location brokering, etc.) for which the proxy is responsible.

zope.proxy is implemented via a C extension module, which lets it do things like lie about its own __class__ that are difficult in pure Python (and were completely impossible before metaclasses). It also proxies all the internal slots (such as __int__/__str__/__add__).

Complete documentation is at https://zopeproxy.readthedocs.io

Changes

4.3.0 (2017-09-13)

  • Fix a potential rare crash when deallocating proxies. See issue 20.

  • Drop support for Python 3.3.

  • Drop support for “python setup.py test”.

  • 100% test coverage.

  • Fix indexing pure-Python proxies with slices under Python 3, and restore the use of __getslice__ (if implemented by the target’s type) under Python 2. Previously, pure-Python proxies would fail with an AttributeError when given a slice on Python 3, and on Python 2, a custom __getslice__ was ignored. See issue 21.

4.2.1 (2017-04-23)

  • Make the pure-Python implementation of sameProxiedObjects handle zope.security proxies. See issue 15.

  • Add support for Python 3.6.

4.2.0 (2016-05-05)

  • Correctly strip zope.security proxies in removeAllProxies. See issue 13.

  • Avoid poisoning the user’s global wheel cache when testing PURE_PYTHON environments under tox,

  • Drop support for Python 2.6 and 3.2.

  • Add support for Python 3.5.

4.1.6 (2015-06-02)

  • Make subclasses of ProxyBase properly delegate __module__ to the wrapped object. This fixes some zope.interface lookups under PyPy.

  • Make the pure-Python implementation of ProxyBase properly report the zope.interface interfaces implemented by builtin types like list. This fixes some zope.interface lookups under PyPy.

4.1.5 (2015-05-19)

  • Make the C implementation proxy __unicode__ correctly.

  • Make the C implementation use the standard methods to proxy int and float.

  • Make the pure Python implementation handle descriptors defined in subclasses like the C version. See https://github.com/zopefoundation/zope.proxy/issues/5.

4.1.4 (2014-03-19)

  • Add support for Python 3.4.

  • Update bootstrap.py to version 2.2.

4.1.3 (2013-03-12)

  • Fix interface object introspection in PyPy. For some reason PyPy makes attributes available despite the restrictive __slots__ declaration.

  • Add a bunch of tests surrounding interface lookup and adaptation.

4.1.2 (2013-03-11)

  • Make PyProxyBase.__iter__() return the result of PyProxyBase._wrapped.__iter__ if available, otherwise falling back to Python internals. The previous implementation always created a generator.

  • In PyProxyBase.__setattr__(), allow setting of properties on the proxy itself. This is needed to properly allow proxy extensions as was evidenced int he zope.security.decorator module.

4.1.1 (2012-12-31)

  • Fleshed out PyPI Trove classifiers.

4.1.0 (2012-12-19)

  • Enable compilation of dependent modules under Py3k.

  • Replace use of PyCObject APIs with equivalent PyCapsule APIs, except under Python 2.6.

    N.B. This change is an ABI incompatibility under Python 2.7:

    extensions built under Python 2.7 against 4.0.x versions of zope.proxy must be rebuilt.

4.0.1 (2012-11-21)

  • Add support for Python 3.3.

4.0.0 (2012-06-06)

  • Add support for PyPy.

    N.B.: the C extension is not built under PyPy.

  • Add a pure-Python reference / fallback implementations of zope.proxy.ProxyBase and the proxy module API functions.

    N.B.: the pure-Python proxy implements all regular features of ProxyBase; however, it does not exclude access to the wrapped object in the same way that the C version does. If you need that information hiding (e.g., to implement security sandboxing), you still need to use the C version.

  • Add support for continuous integration using tox and jenkins.

  • 100% unit test coverage.

  • Add Sphinx documentation: moved doctest examples to API reference.

  • Add ‘setup.py docs’ alias (installs Sphinx and dependencies).

  • Add ‘setup.py dev’ alias (runs setup.py develop plus installs nose and coverage).

  • Replace deprecated zope.interface.implements usage with equivalent zope.interface.implementer decorator.

  • Drop support for Python 2.4 and 2.5.

  • Add Python 3.2 support.

3.6.1 (2010-07-06)

  • Make tests compatible with Python 2.7.

3.6.0 (2010-04-30)

  • Remove test extra and the remaining dependency on zope.testing.

  • Remove use of ‘zope.testing.doctestunit’ in favor of stdlib’s ‘doctest.

3.5.0 (2009/01/31)

  • Add support to bootstrap on Jython.

  • Use zope.container instead of zope.app.container.

3.4.2 (2008/07/27)

  • Make C code compatible with Python 2.5 on 64bit architectures.

3.4.1 (2008/06/24)

  • Bug: Update setup.py script to conform to common layout. Also updated some of the fields.

  • Bug: Honor pre-cooked indices for tuples and lists in the __getslice__() and __setslice__() methods. See http://docs.python.org/ref/sequence-methods.html.

3.4.0 (2007/07/12)

  • Feature: Add a decorator module that supports declaring interfaces on proxies that get blended with the interfaces of the things they proxy.

3.3.0 (2006/12/20)

  • Corresponds to the verison of the zope.proxy package shipped as part of the Zope 3.3.0 release.

3.2.0 (2006/01/05)

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

3.0.0 (2004/11/07)

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

Metadata

Release files for zope.proxy 4.3.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for zope.proxy 4.3.0
File Size Uploaded
zope.proxy-4.3.0.tar.gz 43.7 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for zope.proxy 4.3.0
File
zope.proxy-4.3.0-cp36-cp36m-win_amd64.whl CPython 3.6 CPython 3.6 pymalloc Windows x86-64 Details
zope.proxy-4.3.0-cp36-cp36m-win32.whl CPython 3.6 CPython 3.6 pymalloc Windows x86-32 Details
zope.proxy-4.3.0-cp35-cp35m-win_amd64.whl CPython 3.5 CPython 3.5 pymalloc Windows x86-64 Details
zope.proxy-4.3.0-cp35-cp35m-win32.whl CPython 3.5 CPython 3.5 pymalloc Windows x86-32 Details
zope.proxy-4.3.0-cp34-cp34m-win_amd64.whl CPython 3.4 CPython 3.4 pymalloc Windows x86-64 Details
zope.proxy-4.3.0-cp34-cp34m-win32.whl CPython 3.4 CPython 3.4 pymalloc Windows x86-32 Details
zope.proxy-4.3.0-cp33-cp33m-win_amd64.whl CPython 3.3 CPython 3.3 pymalloc Windows x86-64 Details
zope.proxy-4.3.0-cp33-cp33m-win32.whl CPython 3.3 CPython 3.3 pymalloc Windows x86-32 Details
zope.proxy-4.3.0-cp27-cp27m-win_amd64.whl CPython 2.7 CPython 2.7 pymalloc Windows x86-64 Details
zope.proxy-4.3.0-cp27-cp27m-win32.whl CPython 2.7 CPython 2.7 pymalloc Windows x86-32 Details
zope.proxy-4.3.0-cp27-cp27m-macosx_10_12_x86_64.whl CPython 2.7 CPython 2.7 pymalloc macOS 10.12+ x86-64 Details

Total release size: 508.8 kB

Release files / zope.proxy-4.3.0.tar.gz

Download URL zope.proxy-4.3.0.tar.gz
Size 43.7 kB
Tags Source
SHA-256 checksum
How to use checksums
09b16e9644263d4ec9ade78fa0ae21590463a96eefe641150a184cd6931671ac
BLAKE2b-256 checksum
How to use checksums
e6a7885eb04322fae6a382cdc484864ad153043df2c3c5397194298d1910b40b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / zope.proxy-4.3.0-cp36-cp36m-win_amd64.whl

Download URL zope.proxy-4.3.0-cp36-cp36m-win_amd64.whl
Size 43.8 kB
Tags CPython 3.6 CPython 3.6 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
5fe970e27fc5628e9107cc230eb47bfe88a62fbf108459b88f06322b4d14bd44
BLAKE2b-256 checksum
How to use checksums
dffbaf8c19c986e508e548b4a35deed72443e7afd6f2657868e1b36e9574885b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / zope.proxy-4.3.0-cp36-cp36m-win32.whl

Download URL zope.proxy-4.3.0-cp36-cp36m-win32.whl
Size 42.7 kB
Tags CPython 3.6 CPython 3.6 pymalloc Windows x86-32
SHA-256 checksum
How to use checksums
16186f5aeb85fc2c0ccb82fc1fdf1f8f00db9ac78e9419b4750857987557cb6d
BLAKE2b-256 checksum
How to use checksums
ee4010ebe24dfa23d5b6af71b1ed8596cd7a10539c8c51d76bd9e7d70200d0c4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / zope.proxy-4.3.0-cp35-cp35m-win_amd64.whl

Download URL zope.proxy-4.3.0-cp35-cp35m-win_amd64.whl
Size 43.8 kB
Tags CPython 3.5 CPython 3.5 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
a41f18cec707c2e01ec71bc3bad967b59f946423dbefd1944c218160d35e29e1
BLAKE2b-256 checksum
How to use checksums
4c870afb440807f8708ac3a35ad5eb18645a9e6cd50f0d77262d0a5b7703e8b9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / zope.proxy-4.3.0-cp35-cp35m-win32.whl

Download URL zope.proxy-4.3.0-cp35-cp35m-win32.whl
Size 42.7 kB
Tags CPython 3.5 CPython 3.5 pymalloc Windows x86-32
SHA-256 checksum
How to use checksums
addc4df4be1745bd3169d1b468def60139f0315e4c6a752ad18143428cc44171
BLAKE2b-256 checksum
How to use checksums
9e25d34fc55a0a9a9c1017e6bb77b71d5e9777130522654f7496f5deec17ba0b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / zope.proxy-4.3.0-cp34-cp34m-win_amd64.whl

Download URL zope.proxy-4.3.0-cp34-cp34m-win_amd64.whl
Size 41.2 kB
Tags CPython 3.4 CPython 3.4 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
ef803561d8730c30ed837b8be8d9a66d15b1ebf51035f3e9e7c3b0c60f958809
BLAKE2b-256 checksum
How to use checksums
6fda2f31a9ce0487664f0e73757dff2b629c6ae4ad8af0d2b204a11263113ed3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / zope.proxy-4.3.0-cp34-cp34m-win32.whl

Download URL zope.proxy-4.3.0-cp34-cp34m-win32.whl
Size 41.2 kB
Tags CPython 3.4 CPython 3.4 pymalloc Windows x86-32
SHA-256 checksum
How to use checksums
7c501080cc7a78b1ff2d1b54910a545d033f81f1a15cf2c4c13df4c73b4ee64e
BLAKE2b-256 checksum
How to use checksums
ed7861bd0ce2e1715390ce55ec80a0c0284809b9bc2bd439442ca39288d79d73
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / zope.proxy-4.3.0-cp33-cp33m-win_amd64.whl

Download URL zope.proxy-4.3.0-cp33-cp33m-win_amd64.whl
Size 41.2 kB
Tags CPython 3.3 CPython 3.3 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
232ca3903514a7135ba365c3d2e7fecde9bc76177426b1b6b3327c4bce60e663
BLAKE2b-256 checksum
How to use checksums
c4fe1a639a9b36ee6279261bf3253e3f091d09346736f09fe439282207059986
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / zope.proxy-4.3.0-cp33-cp33m-win32.whl

Download URL zope.proxy-4.3.0-cp33-cp33m-win32.whl
Size 41.2 kB
Tags CPython 3.3 CPython 3.3 pymalloc Windows x86-32
SHA-256 checksum
How to use checksums
cd163702a6d1afb6dfe9906dfbae1857b55eec5866687e941775ca98ba10d80a
BLAKE2b-256 checksum
How to use checksums
ac220ac518716a0fb6a8035686838712a2b6a5a07465a1b6a6bc3ba26d9f9a10
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / zope.proxy-4.3.0-cp27-cp27m-win_amd64.whl

Download URL zope.proxy-4.3.0-cp27-cp27m-win_amd64.whl
Size 42.1 kB
Tags CPython 2.7 CPython 2.7 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
80faea40d7b98d956c6c09e29d4afe8a7184e2faea8b98aa7786bc0fd440e4d4
BLAKE2b-256 checksum
How to use checksums
61d3ef27a90aaffc3c9681bfb90dd58180e291974cf37c8b38ced0cc85f4952a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / zope.proxy-4.3.0-cp27-cp27m-win32.whl

Download URL zope.proxy-4.3.0-cp27-cp27m-win32.whl
Size 41.7 kB
Tags CPython 2.7 CPython 2.7 pymalloc Windows x86-32
SHA-256 checksum
How to use checksums
b78883258a4b36190dd3067c9eacf5123af3b523c42c077f1e954773d5e86875
BLAKE2b-256 checksum
How to use checksums
aaad893cb94db5d0b57016f7fa9d9a87f34beb19c5b247645911d2aca6636306
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / zope.proxy-4.3.0-cp27-cp27m-macosx_10_12_x86_64.whl

Download URL zope.proxy-4.3.0-cp27-cp27m-macosx_10_12_x86_64.whl
Size 43.6 kB
Tags CPython 2.7 CPython 2.7 pymalloc macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
4842e04846c0ade06b9a1018143e9ed58aa39f07bd59952104c241993908f0e2
BLAKE2b-256 checksum
How to use checksums
d37e31f954534d9e8a9b7a675e74d4d4a1bf5c14a1d6fc4f62579796938b2d66
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

7.3

35 release files

7.2

35 release files

7.1

31 release files

7.0

31 release files

6.1

37 release files

6.0

37 release files

5.3

36 release files

5.2

36 release files

5.1

32 release files

5.0.0

30 release files

4.6.1

36 release files

4.5.1

38 release files

4.5.0

36 release files

4.4.0

30 release files

4.3.5

40 release files

4.3.4

40 release files

4.3.3

39 release files

4.3.2

11 release files

This release

4.3.0 This release

12 release files

4.2.1

17 release files

4.1.5

21 release files

4.1.4

21 release files

4.1.3

17 release files

4.1.2

17 release files

4.1.1

17 release files

4.1.0

17 release files

4.0.1

17 release files

3.6.0

7 release files

3.5.0

7 release files

3.4.2

7 release files

3.4.1

7 release files

3.4.0

8 release files

3.3.0

3 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page