I tried multiple things, first even if I install the package before running pylint it won't work except on one of my machines.
So I tried to narrow it down with setuptools : Working with 0.9.8 Not working with 2.2 (ImportError) Not working with 3.6 (ImportError) I guess setuptools changed something concerning namespaces packages, bug or not this is another story. I'll keep looking. Thanks a lot Sylvain 2014-05-16 15:01 GMT+02:00 Sylvain Thénault <sylvain.thena...@logilab.fr>: > On 16 mai 14:42, François Vanderkelen wrote: > > Hi Sylvain, > > > > First of all thanks for the quick answer. I tried to create a dummy > project > > (the real one is confidential and not mine to give to the community) and > it > > helped me narrow down my two issues. > > > > The ImportError: No module named project is linked to the relative > import, > > and I could not reproduce the error in a dummy project. I finally found > it, > > it has to do with my namespaces packages. > > > > What I mean by namespaces is in my python library I dispose of several > > packages like this : > > > > company.mongodb > > company.redis > > company.hbase > > > > And also : > > > > company.project.core > > company.project.app.dashboard > > company.project.app.security > > > > Where company and project are all the same things, this allows me and my > > team to easily identify each package and what it is supposed to do. We > try > > to foster the open-source spirit in my company, hence the company > top-level > > namespace. It is still internal but at least we share it across all > teams :) > > > > Going back to the issue, if one package of the namespace is installed, > then > > apparently pylint is looking directly inside the python path and can't > find > > my package since it is not yet installed. I have the same issue with the > > "python setup.py develop" command, so I guess I am doing namespacing > wrong, > > or it is not well defined in python ? > > > > The only thing I do is adding > > *_import__('pkg_resources').declare_namespace(__name__) > > *in the __init__.py of the namespace package. > > > > If I run pylint in another environment without any packages installed, it > > works like a charm (except I have a bunch of violations for missing > > imports). > > > > Do you want me to open an issue on bitbucket explaining all that or do > you > > think I am doing something I am not supposed to do ? > > I think what you're doing is right. > > The crash has already been supported: > > https://bitbucket.org/logilab/pylint/issue/203/importing-namespace-packages-crashes > > It seems to me that the namespace package issue is related to recent > version of > setuptools and has also been reported but can't find it right away. > > -- > Sylvain Thénault, LOGILAB, Paris (01.45.32.03.12) - Toulouse > (05.62.17.16.42) > Formations Python, Debian, Méth. Agiles: http://www.logilab.fr/formations > Développement logiciel sur mesure: http://www.logilab.fr/services > CubicWeb, the semantic web framework: http://www.cubicweb.org >
_______________________________________________ code-quality mailing list code-quality@python.org https://mail.python.org/mailman/listinfo/code-quality