The Artima Developer Community
Sponsored Link

Python Buzz Forum
Neckar Zope 3 sprint - summary

0 replies on 1 page.

Welcome Guest
  Sign In

Go back to the topic listing  Back to Topic List Click to reply to this topic  Reply to this Topic Click to search messages in this forum  Search Forum Click for a threaded view of the topic  Threaded View   
Previous Topic   Next Topic
Flat View: This topic has 0 replies on 1 page
Tarek Ziadé

Posts: 56
Nickname: tarek
Registered: Sep, 2005

Tarek Ziadé is R&D developer for Nuxeo Corp.
Neckar Zope 3 sprint - summary Posted: Oct 11, 2005 8:30 AM
Reply to this message Reply

This post originated from an RSS feed registered with Python Buzz by Tarek Ziadé.
Original Post: Neckar Zope 3 sprint - summary
Feed Title: Tarek Ziadé
Feed URL: http://blogs.nuxeo.com/sections/blogs/tarek_ziade/exportrss
Feed Description: Feed about Python, Zope and all related technos
Latest Python Buzz Posts
Latest Python Buzz Posts by Tarek Ziadé
Latest Posts From Tarek Ziadé

Advertisement
I went to the Neckar Sprint last week in Tubingen, Germany.

A lot of cool things were done/started there for Zope 3:
  • Twisted integration
  • Http publisher puggable sub-protocol
  • Viewlet/portlet framework
  • A static version of apidoc
  • Some Zope3.org work
  • Customizable container views, from the proposal here
  • XML-RPC introspection integration, from the proposal here

I guess I will decorate these points with some links when people that have worke on each tasks start to publish about it. The wiki page is definitly the place where all info will be added i guess.

I have worked on two tasks with Andreas Jung, the puggable publisher and the introspection stuff.

Http publisher pluggable sub-protocol


The main idea of this task was to change the publisher so anyone who wants to add a new publication class (to handle json for example) can do it smoothly by adding some configuration.

You needed to modify the publisher code to do so.

So we did a change based on a study of the incoming request, deciding
 which publication was best fitting, with registered utilities that would link a
publication class to a couple of interfaces that represented:

  • The mimetype of the request
  • The method

So we had our list of Interfaces a developer could gather to provide a publication configuration. This was done here.

I spent a part of the evening finishing up the work, as Andreas went home.
Friday morning when he came back he came up with a better idea:
"why don't we just create a new directive that would let the user configure the publication picker, without having to add all those IGet, IPut, etc.. interfaces"

Yup, brilliant idea ! So we refactored everything to let the user extend the publisher by simply giving a zcml "publisher" directives and a publication class.

Look how the default publication is, it is very intuitive to extend this way.
 

XML-RPC Introspection


The introspection stuff was very easy to code, based on some code greping from zope.app.apidoc. So we implemented it here.

The fact that Python does not (yet) have static typing (i am saying yet because I've seen some proposal for Python 3000) was a problem for the methodSignature API, so after a discussion with the others, we came up with the conclusion that a decorator would be the best pick for this static typing.

All is explained here.

Performance regression tester


On the last day, we had a very interesting discussion with Stephan Richter about a performance regression tester. I had a first shot on this a while ago here.

He came up with the conclusion that this would be perfect if it was based on Pystone so it can work the same for all boxes. Simple and Brilliant. :)

It's still visible here, but I have reverted this commit, as we need to discuss more on this and it relies on deep structural changes, so it is more likely to become a proposal.

Conclusions


I had a great experience there, met a lot of incredible people.
I came back home with this conclusion in mind: 
Zope 3 is absolutely terrific. I could literaly feel the power of it. You can do anything you want with it, as long as the design is well thaught.

But most important point: I had terrific chocolate pretzels at the Hotel, need to try to find some in Paris.



Read: Neckar Zope 3 sprint - summary

Topic: New Python Editors Previous Topic   Next Topic Topic: Work at Broadband Mechanics

Sponsored Links



Google
  Web Artima.com   

Copyright © 1996-2019 Artima, Inc. All Rights Reserved. - Privacy Policy - Terms of Use