It happens in Importer.cs - there's a comment saying "// explicit relative 
import, calculate and store __package__"

It also happens in imp.new_module, when creating the sys module, and in 
PythonContext.CreateBuiltinModule, but I think those are all much less 
interesting.

Import bugs are really tough...  Anyone who has worked on the importer code has 
never looked at the CPython source code to see how it works - so there's subtle 
issues like this.  I'd suggest looking at CPython where it sets it and then 
making IronPython work the same.

From: ironpython-users-bounces+dinov=microsoft....@python.org 
[mailto:ironpython-users-bounces+dinov=microsoft....@python.org] On Behalf Of 
Slide
Sent: Wednesday, December 14, 2011 9:03 PM
To: ironpython-users@python.org
Subject: [Ironpython-users] __package__

Currently, I am working on implementing zipimport. I have modules being 
imported from egg files (very early and not a lot of testing done yet), but I 
notice that the __package__ attribute is not getting set up correctly, e.g.:

Python 2.7.2 (default, Jun 12 2011, 15:08:59) [MSC v.1500 32 bit (Intel)] on win
32
Type "help", "copyright", "credits" or "license" for more information.
>>> import oauth
>>> dir(oauth)
['__builtins__', '__doc__', '__file__', '__loader__', '__name__', '__package__',
 '__path__']


IronPython 3.0 DEBUG (3.0.0.0) on .NET 4.0.30319.237
Type "help", "copyright", "credits" or "license" for more information.
>>> import oauth
>>> dir(oauth)
['__builtins__', '__doc__', '__file__', '__loader__', '__name__', '__path__']


I see in the code that there are references to __package__, but following where 
it it set is proving to be a bit difficult. Can someone point me in the right 
direction?

Thanks,

slide
Website: http://earl-of-code.com

_______________________________________________
Ironpython-users mailing list
Ironpython-users@python.org
http://mail.python.org/mailman/listinfo/ironpython-users

Reply via email to