lazr.delegates
Easily write objects that delegate behavior
Decision gist · record as of 2026-08-14
Yes, if you are already using zope.interface or building systems that rely on interface-based design and composition. The package is stable, actively maintained, has no known vulnerabilities, and installs with minimal friction. It is most valuable in projects that benefit from explicit delegation and interface contracts; for simple wrapping without interface requirements, standard Python patterns may suffice.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Low friction installation with a single pure-Python dependency (zope.interface).
- Package is actively maintained with a recent release and supports current Python versions from 3.8 through 3.14.
License · maintenance · safety
LGPL v3 (copyleft) — Licensed under LGPL v3 (copyleft). Any modifications to this package must be released under the same license, and derivative works must provide source code access to users.
last release 2026-08-01 (13 days)
0 known vulnerabilities (OSV.dev, 2026-08-14) · 661,121 downloads/mo, #5,453 on PyPI
Alternatives
Verify before relying
pip install lazr-delegates
from lazr.delegates import delegates
from zope.interface import Interface, implementer
class IBase(Interface):
pass
@implementer(IBase)
class Base:
def method(self):
return 'base'
@implementer(IBase)
@delegates('_base')
class Wrapper:
def __init__(self, base):
self._base = base- Whether the package provides decorators or explicit delegation configuration beyond what the description states
- Performance characteristics when delegating across many methods or in high-call-volume scenarios
- Interaction patterns with zope.interface's advanced features (adapters, utilities, etc.)
What it is and what it does
lazr.delegates is a utility for the object composition pattern, letting you create wrapper objects that forward calls to an underlying object while maintaining interface contracts through zope.interface. It reduces boilerplate when you need to add behavior to an existing object without modifying it directly—common in plugin systems, decorators, and layered architectures.
The package works by helping you declare which object to delegate to and automatically handling method/property forwarding. It relies on zope.interface to ensure the wrapper still satisfies the original interface contract. With a single runtime dependency and support for Python 3.8 through 3.14, it integrates cleanly into projects already using the Zope ecosystem or those adopting interface-based design.
Use it for
- Add logging or caching behavior to an existing object without modifying its class
- Build plugin systems where decorators wrap core objects with additional functionality
- Implement proxy or adapter patterns while maintaining type safety through interfaces
- Create layered architectures where each layer wraps and extends the layer below
- Compose behavior from multiple objects while presenting a unified interface to callers
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you are already using zope.interface or building systems that rely on interface-based design and composition.
The package is stable, actively maintained, has no known vulnerabilities, and installs with minimal friction. It is most valuable in projects that benefit from explicit delegation and interface contracts; for simple wrapping without interface requirements, standard Python patterns may suffice.
Install
lazr-delegates on PyPI
Before you install
Low friction installation with a single pure-Python dependency (zope.interface). Package is actively maintained with a recent release and supports current Python versions from 3.8 through 3.14.
License in practice
Licensed under LGPL v3 (copyleft). Any modifications to this package must be released under the same license, and derivative works must provide source code access to users.
Quickstart
pip install lazr-delegates
from lazr.delegates import delegates
from zope.interface import Interface, implementer
class IBase(Interface):
pass
@implementer(IBase)
class Base:
def method(self):
return 'base'
@implementer(IBase)
@delegates('_base')
class Wrapper:
def __init__(self, base):
self._base = base
Verify before relying
- Whether the package provides decorators or explicit delegation configuration beyond what the description states
- Performance characteristics when delegating across many methods or in high-call-volume scenarios
- Interaction patterns with zope.interface's advanced features (adapters, utilities, etc.)
Package facts
| License | LGPL v3 copyleft |
| Python support | Supports the current Python release >=3.8 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 1 packagezope.interface |
| Maintenance | Actively maintained 13 days since the last release |
| First released | |
| Downloads | 661,121 / month, #5,453 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 5 - Production/StableIntended Audience :: DevelopersLicense :: OSI Approved :: GNU Library or Lesser General Public License (LGPL)Operating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9 |
Evidence: lazr_delegates-4.0.0-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “object delegation pattern”
- lazr.delegatesSimplifies creating wrapper objects that delegate method and property…
- langgraph-supervisorBuilds hierarchical multi-agent systems where a supervisor agent…
- subagents-pydantic-aiAdds multi-agent delegation to Pydantic AI agents, letting you spawn…
Give your agent the search over MCP, or paste the wish link into any chat.
More Software Development packages
Provides backported and experimental type hints for Python 3.9+, allowing use of newer typing features on older Python versions and enabling early experimentation with type system PEPs before they enter the standard library.
NumPy provides an N-dimensional array object and a comprehensive suite of mathematical, linear algebra, Fourier transform, and random number functions for scientific computing in Python.
FastAPI is a Python web framework for building REST APIs using type hints, with automatic request validation, serialization, and interactive API documentation.
Provides a way to document function parameters, class attributes, return types, and variables inline using Python's `Annotated` type hint syntax instead of traditional docstrings.
Typer builds command-line applications from Python functions using type hints, automatically generating help text, argument parsing, and shell completion.
Install it if you are building CLIs in Python.
Distlib provides low-level packaging utilities for building, distributing, and managing Python software—including metadata handling, version specifiers, wheel support, script installation, and dependency resolution.
See also lazr.restfulclient · lazr.uri · lazr.config · subagents-pydantic-ai · wirerope · zope.proxy · xlocal · iterproxy · langgraph-supervisor · zope.annotation