I'm trying change my package over from using setup.py
to using pyproject.toml
and setup.cfg
.
My setup.cfg
is roughly as follows:
[metadata]
name = our_name
version = 0.1.1
author = me
[options]
install_requires =
networkx >= 3.0
My code is all under src
, and I'm relying on the automatic src-layout
discovery mechanism.
When I run
python -m build
it generates a proper wheel file (dist/our_name-0.1.1-py3-none-any.whl
). When I unpack that wheel file, everything is in there properly - it seems to have discovered all my code correctly.
However, when I install it (pip install dist/our_name*.whl
), only the distribution info directory shows up in site-packages
. Because the dist info is there, pip list
shows it as being there, but because the actual module directory is missing, I can't import anything from my module elsewhere, or do anything with it.
Any clue what I'm doing wrong?
Addendum: Per sinoroc's comment: pyproject.toml
:
[build-system]
requires = ["setuptools"]
build-backend = "setuptools.build_meta"
project structure:
README.md
requirements.txt
src
__init__.py
module_1
__init__.py
foo.py
module_2
__init__.py
bar.py
Wheel contents:
__init.py__
our_name-0.1.1.dist-info
METADATA
RECORD
top_level.txt
WHEEL
module_1
__init__.py
foo.py
module_2
__init__.py
bar.py
source https://stackoverflow.com/questions/75828200/pip-install-whl-file-installs-dist-info-but-doesnt-actually-install-the-pack
Comments
Post a Comment