【发布时间】:2021-10-17 20:19:46
【问题描述】:
我刚刚制作了我的第一个 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-compatible-packages 上所说的那样,但它仍然不起作用。
我还在setup.py中对setuptools.setup的调用中添加了package_data参数。
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文件,对吧? -
好的,我看到你发布了一个安装
py.typed的新版本。所以如果你使用这个版本,你仍然会得到这个模块的相同消息,是真的吗? -
@MrBeanBremen 是的,但我认为问题在于 py.typed 文件位于错误的位置
标签: pypi mypy python-typing