我刚刚制作了第一个 python 包并将其上传到 PyPI (https://pypi.org/project/pygraphsearch/)。
然后我制作了一些使用它的测试代码。我运行
pip install pygraphsearch
下载我的包。一切工作正常,除了 mypy 抱怨“找到模块但没有类型提示或库存根”。
我在包中的任何地方都使用了打字,所以我不知道为什么它会抱怨这一点。我做错了什么?
我添加了一个
py.typed
文件,就像它在https://mypy.readthedocs.io/en/stable/installed_packages.html#making-pep-561-兼容-packages上所说的那样,但它仍然不起作用.
我还在
package_data
中对setuptools.setup
的调用中添加了setup.py
参数。
package_dir={"": "src"},
package_data={"pygraphsearch": ["py.typed"]},
我的文件结构(如果相关)如下所示:
pygraphsearch
├── pyproject.toml
├── py.typed
├── README.md
├── setup.py
└── src
└── pygraphsearch
├── Edge.py
├── Frontier.py
├── __init__.py
├── IterativeDeepeningFrontier.py
├── Node.py
├── search.py
├── Stack.py
├── State.py
└── UndirectedEdge.py
我将文件
py.typed
移至 src/pygraphsearch
,这似乎解决了问题。