whit wrote:
Adam Groszer wrote:

I personally am tired of restarting z3 each time I made an error even
if it is just one char mistype. I'm doing now a wx based app, and the
problem is the same... made an error, restart, click 10 times...
It would be also a way to have a developer version which might run

amen... In the plone community, we have several influential developers who don't use z3 tech I suspect because developing with pythonscript is *still faster* than writing views and adapters because one doesn't have to reload to see minor code changes.

also, in z2 land, refreshing a product loses all the related z3 registrations.

being able to dynamically reload without restart would be a huge fricking win.

I guess we need to make this a priority for the next release.

Python simply does not support a general robust reload, other than

I think that there are 2 ways we can make progress in this area:

- Speed up restart.  I think there are a lot of ways that restarts
  can be made faster:

  o Optimizae what we're doing now.  I suspect that there are some
    opportunuties here.

  o Load less.  A Zope 3 application that only loads what it actually
    uses will load much more quickly than a full Zope 3 checkout.

    The Zope 3 checkout has as much as it does to provide a
    way to test a range of applications when we modify Zope 3.
    We need to have a better way of solving this problem without
    such a bloated checkout configuration.

    Also, we need to make progress with packaging, to make
    it easier for people to get just the components they need.
    I wanted to switch to eggs for the 3.3 release, but, sadly,
    there wasn't enough time.  I think switching to package-based
    distributions and installation should be a top priority for

    Finally, there's a lot of interest in generating configuration
    actions in Python, rather than ZCML.  I suspect that avoiding
    XML processing, conversion, and validation might speed startup
    quite a bit.

- Look at opprtunities for limited robust reload.  Perhaps we could
  define reloadable modules, especially for defining adapters,
  with restrictions on their definitions and exports in a way
  that allows robust reload.  This would probably be based on the
  persistent-module experiments.  This is a fair bit of deep work
  though and I'm not sure who has the interest and ability to make
  it happen.

I'm really not interested in a reload faclity, like the one commonly
used in Zope 2, that is not robust.  I've wasted too many hours
helping people debug problems that were caused by reload misshaps.


Jim Fulton           mailto:[EMAIL PROTECTED]       Python Powered!
CTO                  (540) 361-1714            http://www.python.org
Zope Corporation     http://www.zope.com       http://www.zope.org
Zope3-dev mailing list
Unsub: http://mail.zope.org/mailman/options/zope3-dev/archive%40mail-archive.com

Reply via email to