{ "info": { "author": "Lennart Regebro, Godefroid Chapelle", "author_email": "grok-dev@zope.org", "bugtrack_url": null, "classifiers": [ "Environment :: Web Environment", "Framework :: Zope2", "Intended Audience :: Developers", "License :: OSI Approved :: Zope Public License", "Programming Language :: Python", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "five.grok\n=========\n\n.. contents::\n\nIntroduction\n------------\n\n`five.grok` is a development layer for Zope 2, based on Grok framework\nconcepts.\n\nThe development techniques are similar to the ones used with Grok\nframework.\n\nIt is based on `grokcore` namespace packages that were factored out of Grok\nframework.\n\nImplemented features\n--------------------\n\nComing from Grok, the following components are available to Zope 2\ndevelopers:\n\n- Zope 3 Component (Adapter, Global utilities, Subscribers),\n\n- Permissions,\n\n- Views and Viewlets,\n\n- Skins and resources directories,\n\n- Page Templates (using the Zope 2 Page Templates),\n\n- Formlib forms (optional, you need to include the extra ``form``),\n\n- Local sites and local utilities,\n\n- Annotations,\n\n- Layout (optional, you need to include the extra ``layout``).\n\nAll those components are available with exactly the same syntax than\nin grok. You just have to do::\n\n from five import grok\n\nInstead of::\n\n import grok\n\nInstallation\n------------\n\nAfter adding the dependency to ``five.grok`` in your project, you have\nto load the following ZCML::\n\n \n\nNote\n~~~~\n\nAnd for this release we recommend to pin down the following version in\nyour buildout::\n\n five.formlib = 1.0.4\n five.localsitemanager = 2.0.5\n grokcore.annotation = 1.3\n grokcore.component = 2.5\n grokcore.formlib = 1.9\n grokcore.layout = 1.5.1\n grokcore.security = 1.6.1\n grokcore.site = 1.6.1\n grokcore.view = 2.7\n grokcore.viewlet = 1.10.1\n martian = 0.14\n\n\nZope 2.13 is required. If you wish to use a previous version of Zope\n2, look at five.grok 1.0 for Zope 2.10.x or five.grok 1.2 for Zope 2.12.x.\n\n\nMore information\n----------------\n\nYou can refer to the Grok website: http://grok.zope.org/, and the Grok\ndocumentation: http://grok.zope.org/documentation/.\n\nYou can check the doctest included in sources as well.\n\nChangelog\n=========\n\n1.3.2 (2012-08-17)\n------------------\n\n- Add an optional support for ``grokcore.layout``, with the extra\n ``layout``.\n\n1.3.1 (2012-05-02)\n------------------\n\n- Make formlib support optional. This is not included by default. If\n you whish to use formlib, you need to include the extra ``form`` for\n ``five.grok``. Example: ``five.grok [form] >= 1.3.1``.\n\n- Fix the redirect method to properly work. Unlike in Zope 3, it\n doesn't support trusted.\n\n1.3.0 (2011-11-07)\n------------------\n\n- Clean up code, update dependencies and tests, this release only\n works with Zope 2.13. [thefunny42]\n\n\n1.2.0 (2011-01-22)\n------------------\n\n- Require five.formlib for Zope 2.13 compatibility. This requires Zope 2.12.3\n or later.\n [elro]\n\n1.1.2 (2010-08-04)\n------------------\n\n- Fixed problem with unrestrictedTraverse() and files in subfolders of grokked\n resource directories. This fix also depends on fixes in Zope 2.12.6 or\n later.\n [optilude]\n\n1.1.1 (2010-02-04)\n------------------\n\n- Fix namespace override in ZopeTwoPageTemplate, i.e. let users\n override 'view' for instance using the namespace method of a Grok\n view class. This bug was introduced in the 1.1 release.\n [thefunny42]\n\n\n1.1 (2009-11-16)\n----------------\n\n- Update code and tests to work with Zope 2.12. People using Zope 2.10\n and 2.11 should keep using five.grok 1.0.\n [thefunny42 and optilude]\n\n- Update to martian 0.11.1, `grokcore.annotation`_ 1.1 and\n `grokcore.site`_ 1.1, `grokcore.view`_ to 1.12.2.\n [vincentfretin]\n\n- Local utility implements IAttributeAnnotatable, IContext like in\n `grokcore.site`_.\n [thefunny42]\n\n\n1.0 (2009-09-17)\n----------------\n\n- Define an IFiveGrokAPI.\n [thefunny42]\n\n- Fix the broken ``url`` method on views.\n [thefunny42]\n\n- Reverted the CodeView base class, see grokcore.view changelog for\n more details.\n ``CodeView`` is still available as a backwards compatibility alias\n for ``View``. Please update all references to ``CodeView`` to\n ``View``.\n [vincentfretin]\n\n\n1.0b2 (2009-07-21)\n------------------\n\n- Added dependency on grokcore.view 1.9, grokcore.viewlet 1.1 and\n grokcore.formlib 1.2, and support for the new CodeView from grokcore.View.\n [optilude]\n\n\n1.0b1 (2009-06-30)\n------------------\n\n- Added support for annotations with `grokcore.annotation`_.\n [thefunny42]\n\n- Added support for local site and utilities with `grokcore.site`_.\n [thefunny42]\n\n- Fix grok.EditForm when used with grokcore.formlib 1.1.\n The Apply action was gone.\n [thefunny42]\n\n- Let static resource directories allow access to unprotected subattributes\n to avoid authorisation problems when accessing them from protected code.\n [optilude]\n\n- Do not create static resource directories if the 'static' directory does\n not actually exist.\n [optilude]\n\n\n1.0a2 (2008-11-23)\n------------------\n\n- Added support for viewlets with `grokcore.viewlet`_.\n [thefunny42]\n\n- Added support for the DirectoryResource component (new in\n `grokcore.view`_ 1.2).\n [thefunny42]\n\n- Added support for using Zope 2 templates by default when doing ``from\n five import grok`` and using grok.PageTemplateFile (being consistent\n with grok.PageTemplate).\n [thefunny42]\n\n- Added a convenient grok.Container.\n [thefunny42]\n\n- Fix AutoFields (and form grokker) not to include OFS Zope 2 defined\n fields by default. This use to add a lot of buggy and wanted\n fields.\n [thefunny42]\n\n\n1.0a1 (2008-10-22)\n------------------\n\n- Added support for formlib forms with `grokcore.formlib`_.\n [thefunny42]\n\n- Added support for static resource directory.\n [thefunny42]\n\n- Added support for inline templates and made Zope 2 template semantics\n the default when doing ``from five import grok`` and using\n grok.PageTemplate.\n [optilude]\n\n- Added override to make templates use Five's ViewPageTemplateFile instead\n of the one from zope.app.pagetemplate.\n [optilude]\n\n- Added `grokcore.view`_ support with tests.\n [regebro, jfroche, gotcha et al.]\n\n- Added tests for grok.subscriber directive.\n [kamon]\n\n- Initial release (tests for adapters and utilities, initial support for\n views).\n [regebro, gotcha]\n\n.. _grokcore.annotation: http://pypi.python.org/pypi/grokcore.annotation\n.. _grokcore.site: http://pypi.python.org/pypi/grokcore.site\n.. _grokcore.view: http://pypi.python.org/pypi/grokcore.view\n.. _grokcore.viewlet: http://pypi.python.org/pypi/grokcore.viewlet\n.. _grokcore.formlib: http://pypi.python.org/pypi/grokcore.formlib", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://svn.zope.org/five.grok/", "keywords": "zope2 grok", "license": "ZPL", "maintainer": null, "maintainer_email": null, "name": "five.grok", "package_url": "https://pypi.org/project/five.grok/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/five.grok/", "project_urls": { "Download": "UNKNOWN", "Homepage": "http://svn.zope.org/five.grok/" }, "release_url": "https://pypi.org/project/five.grok/1.3.2/", "requires_dist": null, "requires_python": null, "summary": "Grok-like layer for Zope 2", "version": "1.3.2" }, "last_serial": 723368, "releases": { "1.0": [ { "comment_text": "", "digests": { "md5": "ca5a0013bf75453ef8530862828ed08f", "sha256": "8a1962df694897ba37dd95c8b468571e076b80f656906127b747a5fdcb2c77bf" }, "downloads": -1, "filename": "five.grok-1.0.tar.gz", "has_sig": false, "md5_digest": "ca5a0013bf75453ef8530862828ed08f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 27603, "upload_time": "2009-09-17T15:06:07", "url": "https://files.pythonhosted.org/packages/a5/c2/3a2941fe8a248c20f712b056dbd2b4847c18dfba13c96c938b97ff62c0f4/five.grok-1.0.tar.gz" } ], "1.0a1": [ { "comment_text": "", "digests": { "md5": "6678bb819187b0ae713177341cf52152", "sha256": "2cb06748f89e1ba6c858841ca2ede8323922eb8a5d1063f0701ac9b985ad7f5c" }, "downloads": -1, "filename": "five.grok-1.0a1.tar.gz", "has_sig": false, "md5_digest": "6678bb819187b0ae713177341cf52152", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16988, "upload_time": "2008-10-22T14:45:03", "url": "https://files.pythonhosted.org/packages/76/0d/d3c609cece3fa108bac60ae5a03c3873ec4cc86db658db9731b0ccd5c98d/five.grok-1.0a1.tar.gz" } ], "1.0a2": [ { "comment_text": "", "digests": { "md5": "02c51176cbd258375ecf094ca24219f2", "sha256": "f83d57b2449f4f0692e09c8f520ef86579498835cf5d64353cb62b7fc18890bf" }, "downloads": -1, "filename": "five.grok-1.0a2.tar.gz", "has_sig": false, "md5_digest": "02c51176cbd258375ecf094ca24219f2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 23226, "upload_time": "2008-11-23T00:56:58", "url": "https://files.pythonhosted.org/packages/a9/92/0d02c4cfe3b32737f59f75418061a30fc2092390cd1a859d90ac501add1b/five.grok-1.0a2.tar.gz" } ], "1.0b1": [ { "comment_text": "", "digests": { "md5": "13d37d189c4e9c0476de2c14ccd4c1c0", "sha256": "80d81046643b56fbbff9f2dde7c443764aaaf272771bfbebd42fd3c90854d39f" }, "downloads": -1, "filename": "five.grok-1.0b1.tar.gz", "has_sig": false, "md5_digest": "13d37d189c4e9c0476de2c14ccd4c1c0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26402, "upload_time": "2009-06-30T19:57:00", "url": "https://files.pythonhosted.org/packages/52/2d/8ae1540cd1f8f66ea9f46b128a04d03c1d28038656e78bed6cae315745a8/five.grok-1.0b1.tar.gz" } ], "1.0b2": [ { "comment_text": "", "digests": { "md5": "c49d329638752bcbe28426b250c4714f", "sha256": "8a94f2905f867fb3711ab61c009bc076cd2d0143eed2cea0f45503441b7fd636" }, "downloads": -1, "filename": "five.grok-1.0b2.tar.gz", "has_sig": false, "md5_digest": "c49d329638752bcbe28426b250c4714f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 27844, "upload_time": "2009-07-21T16:54:26", "url": "https://files.pythonhosted.org/packages/1c/4b/a0808869dfb6c20aaac8ef79ddabc8266cebe1bd2d2f1847d6a82941a2db/five.grok-1.0b2.tar.gz" } ], "1.1": [ { "comment_text": "", "digests": { "md5": "7cb67c49d86de9a2c966ba0a1167fb24", "sha256": "9368dff0f69f09043e24aaf0c609eaf2da39c89b0269d21638c44b225bc573cf" }, "downloads": -1, "filename": "five.grok-1.1.tar.gz", "has_sig": false, "md5_digest": "7cb67c49d86de9a2c966ba0a1167fb24", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 27261, "upload_time": "2009-11-16T10:52:19", "url": "https://files.pythonhosted.org/packages/cc/8f/c4314462edae4233e98be3776f075befa80ad325ecee33593bcd3d111b89/five.grok-1.1.tar.gz" } ], "1.1.1": [ { "comment_text": "", "digests": { "md5": "ce17f2e1d8f015c716501b1dc9a2503a", "sha256": "164f00d12d1153beccdf38cc203252e9ddf7347fc095a0c42126ea7140117616" }, "downloads": -1, "filename": "five.grok-1.1.1.tar.gz", "has_sig": false, "md5_digest": "ce17f2e1d8f015c716501b1dc9a2503a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24809, "upload_time": "2010-02-04T15:51:49", "url": "https://files.pythonhosted.org/packages/ce/3a/b06940b923f79b37d8fb1692c6082396db9ef7a9804d96d48422a60a9912/five.grok-1.1.1.tar.gz" } ], "1.1.2": [ { "comment_text": "", "digests": { "md5": "37505aa34c7dae2d52873f185c3ae5de", "sha256": "60757b0f225fe59a66f50a7644bd80aa6e562802a4a3014c8883a809f8b323ad" }, "downloads": -1, "filename": "five.grok-1.1.2.zip", "has_sig": true, "md5_digest": "37505aa34c7dae2d52873f185c3ae5de", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 57738, "upload_time": "2010-08-05T07:03:55", "url": "https://files.pythonhosted.org/packages/0a/41/44654c3303773e4bdaa9404e973498b546f72094bf3c732251d734649133/five.grok-1.1.2.zip" } ], "1.2.0": [ { "comment_text": "", "digests": { "md5": "b99c3017f3a487dc2a8b7b0b310ee8cf", "sha256": "44f5d53782e429fb81b0434184e0a3f818b30a6c092fffed41dcc1940b0f0d63" }, "downloads": -1, "filename": "five.grok-1.2.0.zip", "has_sig": true, "md5_digest": "b99c3017f3a487dc2a8b7b0b310ee8cf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 57897, "upload_time": "2011-01-22T23:08:19", "url": "https://files.pythonhosted.org/packages/c5/15/11ef030016fa47bc2698e448403c812ee37c5d1e1971d5fb8e0df4e79939/five.grok-1.2.0.zip" } ], "1.3.0": [ { "comment_text": "", "digests": { "md5": "a6fff893a674d4ac272bb540e15b3352", "sha256": "fd28584fd209a011d36eb781f6231e626d99eb2f64e1b240b2885c20729e3362" }, "downloads": -1, "filename": "five.grok-1.3.0.tar.gz", "has_sig": false, "md5_digest": "a6fff893a674d4ac272bb540e15b3352", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24107, "upload_time": "2011-11-07T11:59:46", "url": "https://files.pythonhosted.org/packages/f3/d1/6aa2573fa64c859ae8dcab709ddd25328d3356a8ae84374c2c7986daf8a7/five.grok-1.3.0.tar.gz" } ], "1.3.1": [ { "comment_text": "", "digests": { "md5": "eea1bb5dd180f54b3650eb1333fae7ad", "sha256": "5355318bdbf6c52ee9eb16f232aff2b41dd2ed930d3f00868aeb6a3186af0d29" }, "downloads": -1, "filename": "five.grok-1.3.1.tar.gz", "has_sig": false, "md5_digest": "eea1bb5dd180f54b3650eb1333fae7ad", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24868, "upload_time": "2012-05-02T12:29:23", "url": "https://files.pythonhosted.org/packages/99/d0/8e70af7c3a24151ee120b25b9f29d928f9d752cb08163d2080db5e279fa9/five.grok-1.3.1.tar.gz" } ], "1.3.2": [ { "comment_text": "", "digests": { "md5": "b7dd7ca97124b4e9688d2b78b2d9bda6", "sha256": "4585c84960ff2f6405eb74f3cb7582a4a75fdc3ea137e61ad2a0e7e4a178103b" }, "downloads": -1, "filename": "five.grok-1.3.2.tar.gz", "has_sig": false, "md5_digest": "b7dd7ca97124b4e9688d2b78b2d9bda6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 22806, "upload_time": "2012-08-17T13:05:59", "url": "https://files.pythonhosted.org/packages/c7/b3/eef0964a6b9ba1d23f30543b5f72dd8318471d38d4747c8df7e382676562/five.grok-1.3.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "b7dd7ca97124b4e9688d2b78b2d9bda6", "sha256": "4585c84960ff2f6405eb74f3cb7582a4a75fdc3ea137e61ad2a0e7e4a178103b" }, "downloads": -1, "filename": "five.grok-1.3.2.tar.gz", "has_sig": false, "md5_digest": "b7dd7ca97124b4e9688d2b78b2d9bda6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 22806, "upload_time": "2012-08-17T13:05:59", "url": "https://files.pythonhosted.org/packages/c7/b3/eef0964a6b9ba1d23f30543b5f72dd8318471d38d4747c8df7e382676562/five.grok-1.3.2.tar.gz" } ] }