Skip to main content

five.grok

Introduction

five.grok is a development layer for Zope, based on Grok framework concepts.

The development techniques are similar to the ones used with Grok framework.

It is based on grokcore namespace packages that were factored out of Grok framework.

Implemented features

Coming from Grok, the following components are available to Zope developers:

  • Zope 3 Component (Adapter, Global utilities, Subscribers),

  • Permissions,

  • Views and Viewlets,

  • Skins and resources directories,

  • Page Templates (using the Zope Page Templates),

  • Formlib forms (optional, you need to include the extra form),

  • Local sites and local utilities,

  • Annotations,

  • Layout (optional, you need to include the extra layout).

All those components are available with exactly the same syntax than in grok. You just have to do:

from five import grok

Instead of:

import grok

Installation

After adding the dependency to five.grok in your project, you have to load the following ZCML:

<include package="five.grok" />

More information

You can refer to the Grok website: http://grok.zope.org/, and the Grok documentation: http://grok.zope.org/documentation/.

You can check the doctest included in sources as well.

Changelog

4.0 (2025-02-15)

  • Drop support for pkg_resources namespace and replace it with PEP 420 native namespace. Caution: This change requires to switch all packages in the five namespace to versions using a PEP 420 namespace.

  • Add support for Python 3.12, 3.13.

  • Drop support for Python 3.7, 3.8.

3.0 (2023-06-29)

  • Drop support for Python 2.7, 3.5, 3.6.

2.0 (2023-03-15)

  • Pin five.localsitemanager>=2.0. Avoids problems with newer version comparison in setuptools 8.0. [maurits]

  • Add support for Python 3.7, 3.8, 3.9, 3.10, 3.11.

  • Add support for Zope >= 4.

  • Drop support for Zope 2.13.

1.3.2 (2012-08-17)

  • Add an optional support for grokcore.layout, with the extra layout.

1.3.1 (2012-05-02)

  • Make formlib support optional. This is not included by default. If you whish to use formlib, you need to include the extra form for five.grok. Example: five.grok [form] >= 1.3.1.

  • Fix the redirect method to properly work. Unlike in Zope 3, it doesn’t support trusted.

1.3.0 (2011-11-07)

  • Clean up code, update dependencies and tests, this release only works with Zope 2.13. [thefunny42]

1.2.0 (2011-01-22)

  • Require five.formlib for Zope 2.13 compatibility. This requires Zope 2.12.3 or later. [elro]

1.1.2 (2010-08-04)

  • Fixed problem with unrestrictedTraverse() and files in subfolders of grokked resource directories. This fix also depends on fixes in Zope 2.12.6 or later. [optilude]

1.1.1 (2010-02-04)

  • Fix namespace override in ZopeTwoPageTemplate, i.e. let users override ‘view’ for instance using the namespace method of a Grok view class. This bug was introduced in the 1.1 release. [thefunny42]

1.1 (2009-11-16)

  • Update code and tests to work with Zope 2.12. People using Zope 2.10 and 2.11 should keep using five.grok 1.0. [thefunny42 and optilude]

  • Update to martian 0.11.1, grokcore.annotation 1.1 and grokcore.site 1.1, grokcore.view to 1.12.2. [vincentfretin]

  • Local utility implements IAttributeAnnotatable, IContext like in grokcore.site. [thefunny42]

1.0 (2009-09-17)

  • Define an IFiveGrokAPI. [thefunny42]

  • Fix the broken url method on views. [thefunny42]

  • Reverted the CodeView base class, see grokcore.view changelog for more details. CodeView is still available as a backwards compatibility alias for View. Please update all references to CodeView to View. [vincentfretin]

1.0b2 (2009-07-21)

  • Added dependency on grokcore.view 1.9, grokcore.viewlet 1.1 and grokcore.formlib 1.2, and support for the new CodeView from grokcore.View. [optilude]

1.0b1 (2009-06-30)

  • Added support for annotations with grokcore.annotation. [thefunny42]

  • Added support for local site and utilities with grokcore.site. [thefunny42]

  • Fix grok.EditForm when used with grokcore.formlib 1.1. The Apply action was gone. [thefunny42]

  • Let static resource directories allow access to unprotected subattributes to avoid authorisation problems when accessing them from protected code. [optilude]

  • Do not create static resource directories if the ‘static’ directory does not actually exist. [optilude]

1.0a2 (2008-11-23)

  • Added support for viewlets with grokcore.viewlet. [thefunny42]

  • Added support for the DirectoryResource component (new in grokcore.view 1.2). [thefunny42]

  • Added support for using Zope 2 templates by default when doing from five import grok and using grok.PageTemplateFile (being consistent with grok.PageTemplate). [thefunny42]

  • Added a convenient grok.Container. [thefunny42]

  • Fix AutoFields (and form grokker) not to include OFS Zope 2 defined fields by default. This use to add a lot of buggy and wanted fields. [thefunny42]

1.0a1 (2008-10-22)

  • Added support for formlib forms with grokcore.formlib. [thefunny42]

  • Added support for static resource directory. [thefunny42]

  • Added support for inline templates and made Zope 2 template semantics the default when doing from five import grok and using grok.PageTemplate. [optilude]

  • Added override to make templates use Five’s ViewPageTemplateFile instead of the one from zope.app.pagetemplate. [optilude]

  • Added grokcore.view support with tests. [regebro, jfroche, gotcha et al.]

  • Added tests for grok.subscriber directive. [kamon]

  • Initial release (tests for adapters and utilities, initial support for views). [regebro, gotcha]

Release files for five.grok 4.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 five.grok 4.0
File Size Uploaded
five_grok-4.0.tar.gz 30.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for five.grok 4.0
File Interpreter ABI Platform
five.grok-4.0-py3-none-any.whl Python 3 none any Details

Total release size: 76.9 kB

Release files / five_grok-4.0.tar.gz

Download URL five_grok-4.0.tar.gz
Size 30.7 kB
Tags Source
SHA-256 checksum
How to use checksums
b030d1bbac48c69a782ea1d1e563528b3e1b72bf6e39d74e3f8c21c9b3ddb973
BLAKE2b-256 checksum
How to use checksums
4bcd297b62b6b95fee3c0d7faa95d7279e3a7b6362a04add140fbf81441dac03
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.11.11

Release files / five.grok-4.0-py3-none-any.whl

Download URL five.grok-4.0-py3-none-any.whl
Size 46.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
859d475da83ee9f4c2354befab3fa5fb1fcfebf0aa9a63f5496c736ac9bd6623
BLAKE2b-256 checksum
How to use checksums
58047783c85f378f1930721bc735332368fb36c27c09d5859c466ca62a9b0e67
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.11.11

Release history Release notifications | RSS feed

This release

4.0 This release

2 release files

3.0

2 release files

2.0

2 release files

1.3.2

1 release file

1.3.1

1 release file

1.3.0

1 release file

1.2.0

1 release file

1.1.2

1 release file

1.1.1

1 release file

1.1

1 release file

1.0

1 release file

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