{"action":"closed","issue":{"url":"https://api.github.com/repos/PyCQA/pylint/issues/842","repository_url":"https://api.github.com/repos/PyCQA/pylint","labels_url":"https://api.github.com/repos/PyCQA/pylint/issues/842/labels{/name}","comments_url":"https://api.github.com/repos/PyCQA/pylint/issues/842/comments","events_url":"https://api.github.com/repos/PyCQA/pylint/issues/842/events","html_url":"https://github.com/PyCQA/pylint/issues/842","id":139581070,"number":842,"title":"Support imports of namespaces in python>=3.3 (modules without __init__.py files)","user":{"login":"mishas","id":3140736,"avatar_url":"https://avatars.githubusercontent.com/u/3140736?v=3","gravatar_id":"","url":"https://api.github.com/users/mishas","html_url":"https://github.com/mishas","followers_url":"https://api.github.com/users/mishas/followers","following_url":"https://api.github.com/users/mishas/following{/other_user}","gists_url":"https://api.github.com/users/mishas/gists{/gist_id}","starred_url":"https://api.github.com/users/mishas/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mishas/subscriptions","organizations_url":"https://api.github.com/users/mishas/orgs","repos_url":"https://api.github.com/users/mishas/repos","events_url":"https://api.github.com/users/mishas/events{/privacy}","received_events_url":"https://api.github.com/users/mishas/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/PyCQA/pylint/labels/blocker","name":"blocker","color":"e11d21"}],"state":"closed","locked":false,"assignee":{"login":"PCManticore","id":448166,"avatar_url":"https://avatars.githubusercontent.com/u/448166?v=3","gravatar_id":"","url":"https://api.github.com/users/PCManticore","html_url":"https://github.com/PCManticore","followers_url":"https://api.github.com/users/PCManticore/followers","following_url":"https://api.github.com/users/PCManticore/following{/other_user}","gists_url":"https://api.github.com/users/PCManticore/gists{/gist_id}","starred_url":"https://api.github.com/users/PCManticore/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PCManticore/subscriptions","organizations_url":"https://api.github.com/users/PCManticore/orgs","repos_url":"https://api.github.com/users/PCManticore/repos","events_url":"https://api.github.com/users/PCManticore/events{/privacy}","received_events_url":"https://api.github.com/users/PCManticore/received_events","type":"User","site_admin":false},"milestone":null,"comments":11,"created_at":"2016-03-09T13:45:50Z","updated_at":"2016-05-09T14:52:35Z","closed_at":"2016-05-09T14:52:35Z","body":"Python 3.3 introduced \"[Implicit Namespace Packages](https://docs.python.org/3.3/whatsnew/3.3.html#pep-420-implicit-namespace-packages)\" (based on [PEP-420](https://www.python.org/dev/peps/pep-0420/)), which states the following:\r\n\"Native support for package directories that don’t require `__init__.py` marker files [...]\".\r\n\r\nIn other words, if I have the following file structure (without any `__init__.py` files whatsoever):\r\n```\r\nfoo/\r\n    bar/\r\n        baz.py\r\nblah.py\r\n```\r\nAnd the content of blah.py is `from foo.bar import baz; print(baz)`, then `python3.5 ./blah.py` will successfully output: `<module 'foo.bar.baz' from '/tmp/foo/bar/baz.py'>`.\r\n\r\nThe problem is, that `pylint ./blah.py` outputs:\r\n`E:  1, 0: Unable to import 'foo.bar' (import-error)`\r\n\r\nI tried to manipulate `sys.path` (from `init-hook` of my `.pylintrc`) in any which way, and nothing seemed to help except for adding the `__init__.py` files everywhere :(."}}