We have a module containing a number of different classes inside different files named after the class; for example class XEncoder is inside a file called XEncoder.py inside the module directory. To prevent insane imports we import all classes inside a module into the module level namespace inside __init__.py and then import * from the module.
e.g.:
Module directory structure:
./foo/bar/__init__.py
./foo/bar/MyClassA.py
./foo/bar/MyClassB.py
__init__.py:
from .MyClassA import *
from .MyClassB import *
... etc
Within MyClassA.py we do:
from .bar import * to import class definitions from the other files inside the module.
This works if you run the script - but PyDev editor marks any of the imported class names as undefined variables.
Similarly if you do MyClassA.MyStaticClassVariable inside MyClassB having done the import "MyStaticClassVariable" is marked as undefined, but runs fine in reality.
Pydev version 1.5.4.2010011921
If you explicitly import
"from .bar import MyClassA"
Pydev works fine - so just looks like a name resolution error on relative imports containing "*".
Ah - .module is not a valid python import - my mistake.