zope.globalrequest
Global way of retrieving the currently active request.
Decision gist · record as of 2026-08-14
Yes, if you are actively developing or maintaining Plone or Zope applications. The package is stable, has no known vulnerabilities, and installs with low friction. No, if you are starting a new Zope3 project or prefer explicit dependency injection patterns. The aging maintenance status (336 days since last release) is not a blocker for a stable utility, but verify that your Zope/Plone version is compatible before relying on it for new projects.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python 3.9 or later.
- Intended for use within Zope or Plone web frameworks; behavior outside those contexts is not documented.
- Low friction installation with a pure-Python wheel.
License · maintenance · safety
ZPL (unclear) — Licensed under ZPL (Zope Public License), which is OSI-approved. License treatment is marked unclear in the fact sheet, so verify the specific terms if your project has strict licensing requirements.
last release 2025-09-12 (336 days) · last repo commit 2025-09-12 · 2 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 125,023 downloads/mo, #11,839 on PyPI
Alternatives
Verify before relying
pip install zope.globalrequest
from zope.globalrequest import getRequest
request = getRequest()- Whether getRequest() returns None or raises an exception when called outside an active Zope request context.
- Performance implications of global request retrieval in high-concurrency scenarios.
- Compatibility with async/ASGI-based Zope deployments.
What it is and what it does
zope.globalrequest is a small utility that exposes a single function, getRequest(), to retrieve the currently active HTTP request object in Zope and Plone web applications without threading it through function parameters. It works by hooking into Zope's request-handling machinery via zope.publisher and zope.traversing.
The package is explicitly designed for the Zope/Plone ecosystem, where it serves as a convenience for accessing request context. The Zope3 framework itself discourages this pattern in favor of explicit dependency injection, so this package is most relevant for legacy Plone codebases or projects that prioritize pragmatism over strict separation of concerns. It has no external dependencies beyond the Zope framework stack itself.
Use it for
- Retrieve the current HTTP request in Plone add-ons without modifying function signatures throughout the codebase.
- Access request headers, form data, or session information from deeply nested utility functions in Zope applications.
- Migrate legacy Plone code that relies on implicit request availability to modern Python versions.
- Implement request-scoped caching or logging in Zope middleware without explicit parameter passing.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you are actively developing or maintaining Plone or Zope applications.
The package is stable, has no known vulnerabilities, and installs with low friction. No, if you are starting a new Zope3 project or prefer explicit dependency injection patterns. The aging maintenance status (336 days since last release) is not a blocker for a stable utility, but verify that your Zope/Plone version is compatible before relying on it for new projects.
Install
zope-globalrequest on PyPI
Before you install
Low friction installation with a pure-Python wheel. Maintenance is aging—last release was 336 days ago—but the package remains active on the Zope Foundation repository and supports current Python versions (3.9–3.13).
Requires Python 3.9 or later. Intended for use within Zope or Plone web frameworks; behavior outside those contexts is not documented.
License in practice
Licensed under ZPL (Zope Public License), which is OSI-approved. License treatment is marked unclear in the fact sheet, so verify the specific terms if your project has strict licensing requirements.
Quickstart
pip install zope.globalrequest
from zope.globalrequest import getRequest
request = getRequest()
Verify before relying
- Whether getRequest() returns None or raises an exception when called outside an active Zope request context.
- Performance implications of global request retrieval in high-concurrency scenarios.
- Compatibility with async/ASGI-based Zope deployments.
Package facts
| License | ZPL unclear |
| Python support | Supports the current Python release >=3.9 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 4 packagessetuptoolszope.interfacezope.publisherzope.traversing |
| Maintenance | Aging 336 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 125,023 / month, #11,839 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/StableEnvironment :: Web EnvironmentFramework :: PloneFramework :: Zope :: 3Framework :: Zope :: 5Intended Audience :: DevelopersIntended Audience :: Other AudienceIntended Audience :: System AdministratorsLicense :: OSI Approved :: Zope Public LicenseOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.9Programming Language :: Python :: Implementation :: CPython |
Evidence: zope_globalrequest-3.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 › “zope request context”
- zope.globalrequestProvides a function to retrieve the currently active request object…
- z3c.ptz3c.pt is a fast ZPT (Zope Page Template) engine that compiles…
- zope.locationProvides a structural location system for Zope 3 objects using…
Give your agent the search over MCP, or paste the wish link into any chat.
More Application Frameworks packages
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.
Textual is a Python framework for building cross-platform user interfaces that run in the terminal or web browser using a modern, component-based API.
Install it if you're developing CLI tools, dashboards, or interactive terminal applications.
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.
Build and connect to Model Context Protocol servers that expose tools, resources, and prompts to LLM applications over stdio, HTTP, or SSE transports.
Install it if you need to build or connect to servers.
Werkzeug is a WSGI utility library providing request/response objects, URL routing, an interactive debugger, HTTP utilities, and a development server for building web applications.
See also zope.annotation · zope.ptresource · zope.size · zope.proxy · zope.viewlet · zope.testbrowser · Zope · zope.lifecycleevent · zope.filerepresentation · Persistence