On 18 Jul 2007, at 11:22 , Hermann Himmelbauer wrote:
- Please carefully weight boilerplate code against "black magic":
For newbies,
the generated code should on one hand be easily understandable,
which means
that there is no code in it that requires deep understandings of Zope3
internals. On the other hand, black magic should be avoided, as such
constructs are pitfalls later on.
Have you actually taken a look at the boilerplate (application.py
specifically)? It's very little IMO. I suppose it could use a few
more comments, but even now I think it's pretty clear what it does.
If not, we need to document it better or change it. This is why I
wanted you guys to check this out.
- If I understand this right, this is also a "server-centric"
against "application-centric" issue. In your case, it's probably
easier to
get a single Zope3-based application running, but will it also be
easy to
instantiate a Zope3 server with multiple, different applications on
it?
Running multiple different applications within one process is not my
goal. It's also very difficult to do due to the global state that we
keep in our component registries (different apps will likely conflict).
If I would want to support this at all, I would probably recommend
creating two entirely separate WSGI applications which would be
mounted to specific URL paths using PasteDeploy's composite-app. It
is already possible, for example, to run a Zope app and a TurboGears2
app within the same server process.
- Please don't forget about Grok in this approach, as the
simplicity of Grok
fits to a fast zope3 package setup. Perhaps a "zopeproject --grok"
would be a
good idea.
zopeproject is heavily influenced by grokproject. In fact, I have a
branch of grokproject that re-uses most of zopeproject's facilities
(I have posted a message to the Grok list announcing this branch a
few days ago already). I don't think we'll have to let grokproject
die in favour of zopeproject. grokrpoject will simply be a small shim
over zopeproject.
- How much work is it to implement this and how do you estimate the
timeline?
Not sure whether I was being imprecise or whether you simply haven't
read it all, but all of this is already implemented and fully
functional. I actually want you guys to *try it out* for feedback.
_______________________________________________
Zope3-dev mailing list
Zope3-dev@zope.org
Unsub: http://mail.zope.org/mailman/options/zope3-dev/archive%40mail-archive.com