[Zope-dev] Zope 2.12 and Globals.DevelopmentMode

Tres Seaver tseaver at palladion.com
Sat Feb 6 02:14:07 EST 2010


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hanno Schlichting wrote:
> On Fri, Feb 5, 2010 at 2:35 PM, Sylvain Viollon <sylvain at infrae.com> wrote:
>>   Maybe I missed something, but it seems to me that
>>   Globals.DevelopmentMode in Zope 2.12 is always False, even if you
>>   start Zope in fg, or set debug-mode to on in the configuration file.
> 
> This works for me and DevelopmentMode is set correctly.
> 
> Make sure you don't try to get the value too early (like at module
> scope import time) but after the server has actually started up. So
> don't do: "from Globals import DevelopmentMode" but "import Globals;
> Globals.DevelopmentMode". I think the exact timing of the startup
> process is somewhat different compared to prior versions.

There was never any guarantee that Globals would be fully popluated
before the start of product initialization:  third-party code needs to
defer checking that flag at "import" time (which is the point of the
pattern Hanno outlines).

An even better pattern would probably be to avoid the Globals "dumping
ground" altogether and use the configuration object directly:

  from App.config import getConfiguration
  config = getConfiguration()
  if config.debug_mode:
     ....


Tres.
- --
===================================================================
Tres Seaver          +1 540-429-0999          tseaver at palladion.com
Palladion Software   "Excellence by Design"    http://palladion.com
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iEYEARECAAYFAkttFr8ACgkQ+gerLs4ltQ5gqQCeN168JLfr328HmkcBxaI8pHlj
qs4AoIZO+ojZJ5MSXjZuxV7ipyjtdZAD
=qr6k
-----END PGP SIGNATURE-----



More information about the Zope-Dev mailing list