[Checkins] SVN: megrok.quarry/ adjust svn layout

Kevin Smith kevin at mcweekly.com
Wed May 2 03:15:31 EDT 2007


Log message for revision 74989:
  adjust svn layout

Changed:
  D   megrok.quarry/README.txt
  A   megrok.quarry/branches/
  D   megrok.quarry/buildout.cfg
  D   megrok.quarry/setup.py
  D   megrok.quarry/src/
  A   megrok.quarry/trunk/
  A   megrok.quarry/trunk/README.txt
  A   megrok.quarry/trunk/bootstrap/
  D   megrok.quarry/trunk/bootstrap/bootstrap.pyo
  A   megrok.quarry/trunk/buildout.cfg
  A   megrok.quarry/trunk/setup.py
  A   megrok.quarry/trunk/src/
  D   megrok.quarry/trunk/src/megrok/
  D   megrok.quarry/trunk/src/megrok.quarry.egg-info/

-=-
Deleted: megrok.quarry/README.txt
===================================================================
--- megrok.quarry/README.txt	2007-05-02 06:57:03 UTC (rev 74988)
+++ megrok.quarry/README.txt	2007-05-02 07:15:30 UTC (rev 74989)
@@ -1,201 +0,0 @@
-MEGROK.QUARRY
-=============
-
-author :: Kevin M. Smith
-
-Grok is an rapid application development framework built on top of the enterprise 
-class Zope3's component architecture. http://grok.zope.org
-
-As of 0.9dev, Grok has no way of associating different views with different skins.
-MEGROK.QUARRY is an implementation of skins, layers and template re-use. It is
-useable today and based on discussions from the mailing list. It is hoped these 
-new directives and grokkers will be considered for inclusion in the core one day.
-
-Change Log
-----------
-
-* 0.1 initial checkin
-
-Current Enhancements
---------------------
-
-* quarry.template directive enhancement
-
-* quarry.View (a skin-aware version of grok.View)
-
-* quarry.layer directive
-
-* quarry.Layer grokker
-
-* quarry.Skin grokker
-
-* quarry.ViewletManager, quarry.Viewlet (based Lennart Regebro's megrok.viewlet)
-
-* quarry.viewletmanager directive
-
-
-Template Sharing and Reuse
---------------------------
-
-Currently only inline pagetemplates are accessible via grok.template.
-
-	  >>> class Painting(grok.View):
-	  ...     grok.template('cavepainting')
-
-	  >>> cavepainting = grok.PageTemplate("""
-	  ... <html><body><h1>GROK PAINT MAMMOTH!</h1></body</html>
-	  ... """)
-
-This works fine, but you can only access templates located in the same 
-module, which limits template re-use.
-
-Using quarry.template, any template from any module may be accessed. Note,
-grok.View needs to be replaced with quarry.View, since grok.View has no notion
-of quarry.template.
-
-	   >>> class Painting(quarry.View):
-	   ...    quarry.template('myproject.shared.cavepainting')
-
-myproject/shared.py
-
-	  >>> cavepainting = grok.PageTemplate("""
-	  ... <html><body><h1>GROK PAINT MAMMOTH!</h1></body</html>
-	  ... """)
-
-Also works with grok.PageTemplateFile
-
-	  >>> cavepainting = grok.PageTemplateFile(os.path.join('shared', 
-	  ...                             'cavepainting.pt'))
-
-And plain strings
-   
-	  >>> cavepainting = """
-	  ... <html><body><h1>GROK PAINT MAMMOTH!</h1></body</html>
-	  ... """
-
-Even docstrings
-
-	 >>> class Painting(quarry.View):
-	 ...     """<html><body><h1>GROK PAINT MAMMOTH!</h1></body</html>
-	 ...     """
-	 ...     quarry.template('myproject.app.Painting.__doc__')
-
-
-Skins, layers and grok, oh my!
-------------------------------
-
-As mentioned, Grok 0.9dev has no notion of skins or layers. The quarry.View
-grokker recognizes the quarry.layer directive. This directive is both a 
-module level and class level driective.
-	
-First let us define an admin skin, and a public skin.
-
-	>>> class AdminLayer(quarry.Layer, IDebugLayer):
-	...     pass
-
-	>>> class Admin(quarry.Skin):
-	...     grok.name('admin') # default, accessible as ++skin++admin
-	...     grok.layer(AdminLayer)
-
-	>>> class PublicLayer(quarry.Layer):
-	...     pass
-
-	>>> class Public(quarry.Skin):
-	...    grok.name('public') # default name, accessible as ++skin++public
-	...    grok.layer(PublicLayer) # must pass interface     
-
-In our app, we associate layers to views as follows
-
-       >>> from skin import AdminLayer
-
-       >>> class AdminPanel(quarry.View):
-       ...     grok.layer(AdminLayer)
-
-Or we can associate layers at a module level
-
-      >>> grok.layer(PublicLayer)
-
-      >>> class MyPublicView(quarry.View):
-      ...     # defaults to PublicLayer
-
-      
-Viewlets
---------
-
-Since I'd been hoping Grok would be template neutral to better compete with
-the other frameworks, I've been very resistant to Zope Page Templates. I've
-even come up with multiple scenarios to avoid using macros.  But this is all
-nice and good but once you get hooked on ZPT's power, it's hard to deal with
-other templating options.
-
-Both quarry.ViewletManager and quarry.Viewlet are base on Lennart Regebro's
-megrok.viewlet. 
-
-In this version both quarry.Viewlet and quarry.ViewletManager have been 
-fashioned to be more grok.View-like. This means you can use quarry.template,
-view.url(), static, and any  other methods you might find on a regular view.
-
-Also the quarry.viewletmanager directive has been added to associate viewlet
-with viewletmanager.
-
-     >>> from megrok import quarry
-
-     >>> class MyView(quarry.View):
-     ...    """<html metal:use-macro="context/@@public/page">
-     ...       <body>
-     ...       <metal:block fill-slot="pagecontent">
-     ...       <span tal:replace="structure provider:body" />
-     ...       </metal:block>
-     ...       </body></html>
-     ...    """
-     ...    quarry.template('myproject.app.MyView.__doc__')
-
-     >>> class MenuManager(quarry.ViewletManager):
-     ...    grok.context(MyView) # associate viewletmanager with a view
-     ...    grok.name('body') #fill tal-namespace 'provide:body'
-     
-     >>> class Menu10(quarry.Viewlet):
-     ...    quarry.viewletmanager(MenuManager)
-     ...    def render(self):
-     ...        return "Fish Tacos"
-
-     >>> class Menu20(quarry.Viewlet):
-     ...    quarry.viewletmanager(MenuManager)	
-     ...    def render(self)l
-     ...        return "Buffalo Wings"
-
-     >>> class Menu30(quarry.Viewlet):
-     ...    """<i>Side of Blue Cheese </i>"""
-     ...    quarry.viewletmanager(MenuManager)
-     ...    quary.template('myproject.app.Menu30.__doc__')
-
-The quarry.ViewletManager automatically sorts by viewlet class name. So
-Menu10 appears first and Menu30 appears last.
-
-
-install
--------
-
-* checkout via subversion
-* add megrok.quarry-meta to zcml of buildout instance
-
-
-Todo
-----
-
-* better documentation
-* quarry.TALNamespace
-* tests, tests, tests, currently they are intertwined in a seperate project
-* currently grok.Layer inherits from IDefaultBrowserLayer, don't do this
-
-
-Thank You
----------
-
-The entire Grok team and Zope3 communities for making web programming
-fun again.
-
-
-
-
-

Deleted: megrok.quarry/buildout.cfg
===================================================================
--- megrok.quarry/buildout.cfg	2007-05-02 06:57:03 UTC (rev 74988)
+++ megrok.quarry/buildout.cfg	2007-05-02 07:15:30 UTC (rev 74989)
@@ -1,51 +0,0 @@
-[test]
-working-directory = parts/instance
-eggs = megrok.quarry
-	grok
-recipe = zc.recipe.testrunner
-extra-paths = /root/zope3/src
-defaults = ['--tests-pattern', '^f?tests$',
-	'-v'
-	]
-
-[data]
-recipe = zc.recipe.filestorage
-
-[zope3]
-location = /root/zope3
-
-[buildout]
-parts = data instance test
-develop = .
-          ../grok
-
-[instance]
-database = data
-eggs = setuptools
-	grok
-	megrok.quarry
-recipe = zc.recipe.zope3instance
-user = ksmith:123
-zcml = zope.annotation
-	zope.copypastemove
-	zope.formlib
-	zope.i18n-meta
-	zope.i18n.locales
-	zope.publisher
-	zope.security-meta
-	zope.size
-	zope.traversing
-	zope.traversing.browser
-	zope.app
-	zope.app-meta
-	zope.app.securitypolicy
-	zope.app.securitypolicy-meta
-	zope.app.authentication
-	zope.app.catalog
-	zope.app.intid
-	zope.app.keyreference
-	zope.app.twisted
-	megrok.quarry-meta
-	grok
-	grok-meta
-

Deleted: megrok.quarry/setup.py
===================================================================
--- megrok.quarry/setup.py	2007-05-02 06:57:03 UTC (rev 74988)
+++ megrok.quarry/setup.py	2007-05-02 07:15:30 UTC (rev 74989)
@@ -1,28 +0,0 @@
-from setuptools import setup, find_packages
-
-version = '0.1'
-
-setup(name='megrok.quarry',
-      version=version,
-      description="Skins and layers for Grok.",
-      long_description="""\
-""",
-      # Get strings from http://www.python.org/pypi?%3Aaction=list_classifiers
-      classifiers=[], 
-      keywords="",
-      author="Kevin Smith",
-      author_email="kevin at mcweekly.com",
-      url="",
-      license="ZPL",
-      package_dir={'': 'src'},
-      packages=find_packages('src'),
-      include_package_data=True,
-      zip_safe=False,
-      install_requires=['setuptools',
-                        'grok',
-                        # -*- Extra requirements: -*-
-                        ],
-      entry_points="""
-      # -*- Entry points: -*-
-      """,
-      )

Copied: megrok.quarry/trunk/README.txt (from rev 74987, megrok.quarry/README.txt)

Copied: megrok.quarry/trunk/bootstrap (from rev 74987, megrok.quarry/bootstrap)

Deleted: megrok.quarry/trunk/bootstrap/bootstrap.pyo
===================================================================
(Binary files differ)

Copied: megrok.quarry/trunk/buildout.cfg (from rev 74987, megrok.quarry/buildout.cfg)

Copied: megrok.quarry/trunk/setup.py (from rev 74987, megrok.quarry/setup.py)

Copied: megrok.quarry/trunk/src (from rev 74987, megrok.quarry/src)



More information about the Checkins mailing list