尽管软件包中包含py.typed标记,但分发文件中未包含存根文件

时间:2018-09-30 06:07:57

标签: python python-3.x distutils type-hinting typehints

我已将contributed存根文件保存到ordered-set库中。为了包含存根文件,我followedMyPyPEP-561建议。但是当我做python setup.py sdist时,我得到的分发没有ordered_set.pyi文件:

$ tar -tvf dist/ordered-set-*.tar.gz --wildcards '*pyi'
tar: *pyi: Not found in archive
tar: Exiting with failure status due to previous errors

我做错了什么?

另外,distutils库中与存根文件包含有关的代码在哪里?我已经searched尝试调试问题,但没有找到任何东西。

1 个答案:

答案 0 :(得分:1)

Robyn Speer(ordered-set库的作者)找到了答案:

  

哦,我知道了。 py.typed应该放在包装中,从技术上讲,ordered_set没有任何包装。它有一个模块。

     

在PEP 561中,我发现:“该PEP不支持将键入信息作为纯模块分发的一部分进行分发。应将代码重构为基于程序包的分发,并指示程序包支持如上所述的键入。”