【问题标题】:PyPI package: found module but no type hints or library stubsPyPI 包:找到模块但没有类型提示或库存根
【发布时间】: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


【解决方案1】:

我将文件py.typed 移动到src/pygraphsearch,这似乎解决了问题。

【讨论】:

    猜你喜欢
    • 2020-06-28
    • 2021-05-02
    • 1970-01-01
    • 2020-09-25
    • 1970-01-01
    • 1970-01-01
    • 2022-12-06
    • 1970-01-01
    • 2015-05-27
    相关资源
    最近更新 更多