[zope2-tracker] [Bug 659968] [NEW] guarded_import does not support 5-args form

Vincent Pelletier 659968 at bugs.launchpad.net
Wed Oct 13 10:48:30 EDT 2010


Public bug reported:

Environment:
- python 2.6.5
- Zope 2.12.9

Symptom:
  TypeError: guarded_import() takes at most 4 arguments (5 given)

I triggered this problem indirectly, when calling xrags with a float argument.
This triggers this error, because xrange tries internally (disclaimer: I didn't check exactly what does the import) to import __doc__ from _warnings module using the 5-arguments form, and it uses ZopeGuards' version to do so, which fails with above error.

This bug report is just about guarded_import parameter count, but for completeness I must also say that, after adding a dummy fifth parameter to guarded_import, calling "xrange(0.1)" failed with
  Unauthorized: You are not allowed to access '__doc__' in this context

For the ones who are about to question the sanity of calling xrange with a float value:
- given error makes diagnostic non-straightforward (this is the most important point to me as I didn't intend to give it a float value)
- it does work in "pure" python (this is secondary to me, I won't use this - but I don't see a reason to prevent this from working)

Regards,
Vincent Pelletier

** Affects: zope2
     Importance: Undecided
         Status: New

-- 
guarded_import does not support 5-args form
https://bugs.launchpad.net/bugs/659968
You received this bug notification because you are a member of Zope 2
Developers, which is subscribed to Zope 2.


More information about the zope2-tracker mailing list