<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><div class="">I am glad to see this mailing list come back to life.  </div><div class=""><br class=""></div><div class="">Let us start with zope.pulisher. </div><div class=""><br class=""></div><div class="">I hate autocorrect, it keeps typing hope.publisher.   Maybe I will just leave it like that. </div><div class=""><br class=""></div><div class="">Take a look at the WebOb website. </div><div class=""><br class=""></div><div class=""><a href="http://webob.org/" class="">http://webob.org/</a></div><div class=""><br class=""></div><div class="">Used by everyone .  100% test coverage.  Presumably no security risks, or they are instantly patched.  </div><div class=""><br class=""></div><div class="">At the very least zope.pulisher should be based on webob. </div><div class=""><br class=""></div><div class="">Are there any other changes to be made to zope.publisher?</div><div class=""><br class=""></div><div class="">Well the issue is the concepts.  What abstractions does ope.publisher support?  Damn Autocorrect.  </div><div class=""><br class=""></div><div class="">What concepts does pyramid.publisher support?</div><div class=""><br class=""></div><div class="">What concepts does cromlech.publisher support. </div><div class=""><br class=""></div><div class="">What do I need?  Port 80 and 443.  No webdav.   Maybe eventually the DNS port. </div><div class="">zope.publisher tries  transactions several times.  I want that part working correctly. </div><div class=""><br class=""></div><div class="">zope also does authentication.  It used to authenticate everyone.  No nginx caching.  I was quite surprised that the plone community had not fixed that.  So I changed it to only authenticate those who have an authentication cookie.  Or those who click on login.  Or who register.  </div><div class=""><br class=""></div><div class="">Yesterday I discovered that even when logged out, I have a authentication cookie, so it goes against the zope server and not the nginx cache.  Maybe I should have the nginx cache serve requests where the authentication cookie is older than the zope login timeout.</div><div class=""><br class=""></div><div class="">Okay, so that is another set of abstraction.  The point is that I do not want to be fixing these things.  I want to choose software that has a clear published abstraction, and maybe a bunch of switches. </div><div class=""><br class=""></div><div class="">Which tells me that I should take a closer look at pyramid.publisher.  Although I suspect that at the end of the day, I will find that it is too low level.  Too focused on computer performance, and not on supplying me with the abstractions which I need.  My take on Pyramid is that it is optimized for computer performance, and not for human efficiency. </div><div class=""><br class=""></div><div class="">On the other hand, maybe Souheil wants to bring cromlech closer to “Grok” so that he can benefit from the user manuals.  </div><div class=""><br class=""></div><div class="">And then I have to comment on Paul’s request as a user.  We are not in the space of large numbers of users.  If I can just get the software I need, then I am a happy man. </div><div class=""><br class=""></div><div class="">I am also hugely delighted to be reminded of Paul’s user documentation.  Thank you so much.  That is the first thing we need for more users. What do we do to get more users?</div><div class=""><br class=""></div><div class="">So we muddle on with what we have.  And so my part time attention continues to be on upgrading zope.pulisher.  </div><div class=""><br class=""></div><div class="">So paul which parts of zope.publisher do you use?  Is there any chance that the three of us could agree to share and use the same publisher object?</div><div class=""><br class=""></div><div class="">Warm Regards</div><div class="">Chris</div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""> </div></body></html>