[Tim Peters]
>> The globals set up for running the script appear not to contain a
>> '__file__' key, and have a '__name__' key explicitly set to None.
>> If it set either of these to something useful, or didn't have a
>> '__name__' key explicitly set to None, warning.warn() would have
>> been able to make up *something* for warn_explicit's filename and/or
>> module arguments.

[Evan Simpson]
> Argh.  Scripts need a __name__ defined, or various activities choke.
> It can't be the Id of the Script, since that can contain '.', which
> screws up imports in the Script.

Since that's mondo obscure, let's point to your explanation:


That's especially worth reading because of Guido's profusely apologetic
response <wink -- "Too bad.">.

> It can't be None, since that will cause this problem.
> Are there hidden gotchas lurking around giving all Scripts the
> __name__ "Script (Python)"?  Other suggestions?

I don't really know about Python Script, I've been talking about what
Python's warnings module does.  Perhaps you could use the Id of the script
as __name__ after Id.replace('.', '-') (i.e., get rid of the dots)?  Or it
*looks* like you could leave name None, but set '__file__' to something
(non-None) explicitly.

Zope-Dev maillist  -  [EMAIL PROTECTED]
**  No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope )

Reply via email to