[ZWeb] reST + ZWiki

Jeffrey P Shell jeffrey@cuemedia.com
Wed, 9 Apr 2003 12:14:06 -0600


On Tuesday, April 8, 2003, at 01:04  PM, Simon Michael wrote:

>> Im sure youre not the only one. Simon says (:P) that it shouldnt be 
>> hard
>> to add reST as an option on the current ZWiki. Simon?
>
> Hi guys, correct. See
> http://mail.zope.org/pipermail/zope3-dev/2003-April/006264.html .

In that message you state:

> On current dev.zope.org, I'm not sure. The wiki code needs a function 
> it
> can call to format RST text. I think this was done by Andreas in a 
> future
> zope or branch. But WikiForNow assumes STX throughout as I recall and 
> it
> might be pretty messy to change, especially without requiring all 
> zope.org
> wiki pages to be converted to RST. Ken might know more.
>
> With Zwiki/nzo it will be easy - copy one of the render_stx... methods,
> replace the STX call with the RST call, add the new page type to
> ZWIKI_PAGE_TYPES and the editform. Old pages will keep working and 
> people
> can start creating/converting to RST at will.
>
> Performance and usability impacts are less certain.

It's obvious that you and I design software differently.  This is 
something that I think could and should be done by components (I was 
thinking this before Zope 3 even showed up), because I am always 
strangled by the text-processing situation - whether in the CMF or in 
ZWiki.  This fact alone caused me to give up on either solution and go 
for Roundup to deal with our internal issue and document tracking 
system - it was nine times easier to customize than any Zope solution 
that I've come across in the past. :\

Your architecture and proposed solution leaves me with a major concern:

Since you (nicely) release new ZWiki versions monthly, how can we add 
new features by "copying and adding a new method"?  Wouldn't we have to 
go through pains every month to copy our custom code to the newly 
released version, or any time that we decided we needed to upgrade?  Or 
does ZWiki allow me to register (and unregister) page types outside of 
the ZWiki product itself?  I don't like touching other peoples code, 
because it turns into a software configuration management headache real 
fast.  How well does ZWiki work if we subclass ZWikiPage or whatever 
that main class is?  Would it know to use the subclass?  My main 
concern is being able to keep any of our changes separate from your 
code, and under CVS control.  The way you describe modifying ZWiki does 
not make this sound plausible, but maybe I'm just reading the situation 
wrong.


I guess Monkey-Patching is a solution, but never one that I'm 
comfortable with (this was the only way I was able to get my hacked 
together componentized-text-handlers into CMF/Plone, which may have 
further contributed to the systems speed and stability issues).