Skip to main content
Documentation Status Travis-CI Build Status AppVeyor Build Status Coverage Status Code Quality Status Scrtinizer Status
PyPI Package latest release PyPI Package monthly downloads PyPI Wheel Supported versions Supported imlementations

An example package. Replace this with a proper project description. Generated with https://github.com/ionelmc/cookiecutter-pylibrary

  • Free software: BSD license

Installation

pip install lazy-object-proxy

Documentation

https://python-lazy-object-proxy.readthedocs.org/

Development

To run the all tests run:

tox

Benchmarks

The tested implementations:

  • lazy_object_proxy.slots.Proxy, available as lazy_object_proxy.Proxy if the C extension is not available.

  • lazy_object_proxy.cext.Proxy, available as lazy_object_proxy.Proxy.

  • objproxies - fork of PJE’s ProxyTypes with Python 3 support. [1]

  • SimpleLazyObject from Django. [1]

  • lazy_object_proxy.simple.Proxy - uses the non-data descriptor trick. [1]

For Python 2.7:

------ benchmark: min 5 rounds (of min 25.00us), 5.00s max time, timer: time.clock -----
Name (time in ns)                Min        Max       Mean    StdDev  Rounds  Iterations
----------------------------------------------------------------------------------------
test_perf[slots]            705.3837  3091.0072   720.4805   27.2588  180453          38
test_perf[cext]              93.6346   278.9731    95.1876    2.5474  164373         312
test_perf[simple]           398.1636  1863.2017   405.4325   13.1411  207521          59
test_perf[django]           471.6515   983.0809   480.4264   10.2059  193043          53
test_perf[objproxies]      1204.7003  4818.8010  1475.3419  114.8213   55898           1
----------------------------------------------------------------------------------------

For Python 3.4:

-- benchmark: min 5 rounds (of min 25.00us), 5.00s max time, timer: time.perf_counter --
Name (time in ns)                 Min        Max       Mean   StdDev  Rounds  Iterations
----------------------------------------------------------------------------------------
test_perf[slots]             803.1335  2728.8286   826.0882  20.5562  182436          33
test_perf[cext]              103.2911   254.4223   104.6869   2.6294  164373         277
test_perf[simple]            448.6894  2040.6147   462.0342  17.1546  218443          49
test_perf[django]            518.3013  1225.7125   532.0523  14.4672  218443          43
test_perf[objproxies]       1116.8575  3827.4331  1157.8419  43.9602  174755          24
----------------------------------------------------------------------------------------

For PyPy 2.4:

Note that the mean difference between simple, django and objproxies is smaller the standard deviance, thus it cannot be considered.

------ benchmark: min 5 rounds (of min 25.00us), 15.00s max time, timer: time.clock ----
Name (time in ns)                   Min        Max     Mean   StdDev  Rounds  Iterations
----------------------------------------------------------------------------------------
test_perf[slots]                 1.9577   260.2979   2.2457   0.4882  498050       15384
test_perf[simple]               31.3536  4374.4246  34.7433  11.7566  478894         999
test_perf[django]               32.5269  4443.8381  35.8729  16.9071  461157        1000
test_perf[objproxies]           33.1293  4529.3718  36.7435  13.3377  452773        1000
----------------------------------------------------------------------------------------

Changelog

1.0.0 (2014-12-27)

  • General code cleanup

  • A faster pure-python Proxy implementation (lazy_object_proxy.simple.Proxy) to be used where the C extension is not available. It’s not a complete proxy so it’s never available as lazy_object_proxy.Proxy.

0.1.0 (2014-06-10)

  • First release on PyPI.

Metadata

Release files for lazy-object-proxy 1.0.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 lazy-object-proxy 1.0.0
File Size Uploaded
lazy-object-proxy-1.0.0.tar.gz 30.2 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for lazy-object-proxy 1.0.0
File
lazy_object_proxy-1.0.0-cp34-none-win_amd64.whl CPython 3.4 none Windows x86-64 Details
lazy_object_proxy-1.0.0-cp34-none-win32.whl CPython 3.4 none Windows x86-32 Details
lazy_object_proxy-1.0.0-cp33-none-win_amd64.whl CPython 3.3 none Windows x86-64 Details
lazy_object_proxy-1.0.0-cp33-none-win32.whl CPython 3.3 none Windows x86-32 Details
lazy_object_proxy-1.0.0-cp27-none-win_amd64.whl CPython 2.7 none Windows x86-64 Details
lazy_object_proxy-1.0.0-cp27-none-win32.whl CPython 2.7 none Windows x86-32 Details

Total release size: 168.1 kB

Release files / lazy-object-proxy-1.0.0.tar.gz

Download URL lazy-object-proxy-1.0.0.tar.gz
Size 30.2 kB
Tags Source
SHA-256 checksum
How to use checksums
c7896e024aaeea77076a45d3b27a21b666d61852236a9c2960203098028ecbcf
BLAKE2b-256 checksum
How to use checksums
984e1d3f11e08c9131b41e7faea1169d23b568416d7c22554325d89e4bd41e36
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / lazy_object_proxy-1.0.0-cp34-none-win_amd64.whl

Download URL lazy_object_proxy-1.0.0-cp34-none-win_amd64.whl
Size 23.5 kB
Tags CPython 3.4 Windows x86-64
SHA-256 checksum
How to use checksums
90c65c094cbcdf03fb5b01fe3fd7feaa1d3161e16572d46009370de7964eed36
BLAKE2b-256 checksum
How to use checksums
1885955f1e953c83edb2848980fe177febeb98ac603fc1d9723d460220bd163d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / lazy_object_proxy-1.0.0-cp34-none-win32.whl

Download URL lazy_object_proxy-1.0.0-cp34-none-win32.whl
Size 22.4 kB
Tags CPython 3.4 Windows x86-32
SHA-256 checksum
How to use checksums
b828d615b79d9ff543c6c98c5cd5a6803eaeec0f57cc16cfc184c8916e64ee6c
BLAKE2b-256 checksum
How to use checksums
74ff5594f0efe630bfb5ae2c1a1de8ba9e6bb8c9d21ea88b1410508d3fd9a2f0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / lazy_object_proxy-1.0.0-cp33-none-win_amd64.whl

Download URL lazy_object_proxy-1.0.0-cp33-none-win_amd64.whl
Size 23.5 kB
Tags CPython 3.3 Windows x86-64
SHA-256 checksum
How to use checksums
a1917b7e257232feeccdf691726d67c43d3b18c102738df3e2794a1d4ecb0e01
BLAKE2b-256 checksum
How to use checksums
95978e74cd7cbef6acd72541e6dc212c3598469224c73c3d9f99015228ca6370
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / lazy_object_proxy-1.0.0-cp33-none-win32.whl

Download URL lazy_object_proxy-1.0.0-cp33-none-win32.whl
Size 22.4 kB
Tags CPython 3.3 Windows x86-32
SHA-256 checksum
How to use checksums
e2d0d4f407d1ac5dc83837a7ae4dd11b18f9eafe0430e00a6b654c19eada02f3
BLAKE2b-256 checksum
How to use checksums
264e3e1fb9e957d1268ef396b1d25d6e8eb77fefaa5e339dfb6f8af43b5ad19c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / lazy_object_proxy-1.0.0-cp27-none-win_amd64.whl

Download URL lazy_object_proxy-1.0.0-cp27-none-win_amd64.whl
Size 23.6 kB
Tags CPython 2.7 Windows x86-64
SHA-256 checksum
How to use checksums
1e993aa317df3eb09fc37eb09929812fbfc411a218df6a2ad6a98981d5b975a1
BLAKE2b-256 checksum
How to use checksums
6d893ae0ef5a140c5f0a89b4443ff37807b0ecdc8e4b96fc3594d5cc14c329a7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / lazy_object_proxy-1.0.0-cp27-none-win32.whl

Download URL lazy_object_proxy-1.0.0-cp27-none-win32.whl
Size 22.5 kB
Tags CPython 2.7 Windows x86-32
SHA-256 checksum
How to use checksums
63152ae516945c510c34122d8bfde280b8879273122ef731ac7629321c6350f6
BLAKE2b-256 checksum
How to use checksums
b837b5cbc270b31523ccb66c5edfc83cc6452f65020c7a6b9cc6d8ade38f7c89
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

1.8.0

19 release files

1.7.1

37 release files

1.7.0

37 release files

1.6.0

22 release files

1.5.2

24 release files

1.5.1

22 release files

1.4.3

21 release files

1.4.2

18 release files

1.4.1

18 release files

1.2.2

16 release files

1.2.1

11 release files

1.2.0

7 release files

1.1.0

7 release files

1.0.2

7 release files

1.0.1

7 release files

This release

1.0.0 This release

7 release files

0.1.0

7 release files

0.0.1

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