Reputation: 294228
I have a package directory setup like this
package_dir
|-src
| |-mypackage
| |-__init__.py
|
|-setup.py
How do I set up setup.py
to enable me to import mypackage
I've tried: I run python setup.py bdist_wheel
where setup.py
has options...
packages=find_packages(include=["src"]),
package_dir={"": "src"},
When I run pip install path/to/mypackage.whl it installs fine
But when I do python -c "import mypackage"
it fails with ModuleNotFoundError
while python -c "import src.mypackage"
is fine
Upvotes: 11
Views: 5148
Reputation: 94423
find_packages(where='src')
Use where
, not include
. exclude/include
are for further filtering found packages. See:
$ python
Python 2.7.13 (default, Nov 24 2017, 17:33:09)
[GCC 6.3.0 20170516] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from setuptools import find_packages
>>> find_packages()
[]
>>> find_packages(include=['src'])
[]
>>> find_packages(where='src')
['mypackage']
Upvotes: 16