【问题标题】:Include examples & docs with pip installed library from PyPi包含来自 PyPi 的 pip 安装库的示例和文档
【发布时间】:2019-06-01 16:47:28
【问题描述】:

我在 PyPi 上注册了一个库,可以通过 pip 安装。使用manifest.in 文件,我捆绑了docs 目录和examples 目录。 PyPi 上的“源存档”tarball 包含此内容,但是当我执行传统的 pip 安装时,这些内容不包括在内(至少看起来不如此,查看站点包目录)。

这方面的最佳做法是什么?没有文档和/或示例?将它们放入 setup.py 安装的包中?除了站点包之外,还有其他方法可以安装这些东西吗?

【问题讨论】:

  • HTML 文档通常上传到一些在线资源,例如readthedocs.org,而不是本地安装。如果您的意思是 Unix 手册页,则无法在用户端进行额外调整的情况下安装这些手册页,因为您将无法写入 /usr/share/man。这些示例可以通过include_package_data(源分布)或data_files(二进制分布)参数作为非python文件包含在setup()函数中。
  • 嗯。好的。我使用了include_package_data,但没有使用data_files。也许这就是为什么 pip 不包括它们。从源 dist 安装的 pip 命令是什么?也许这样就可以了……
  • 试试pip install yourpkg --no-cache-dir,可能缓存中有损坏的轮子是以前安装尝试遗留下来的。

标签: python pip pypi


【解决方案1】:

您首先在MANIFEST.in 文件中指定文件(相对路径或glob),然后将include_package_data=True 添加到您的setup.py。当您安装软件包时,这些文件将被复制到site-packages

但我认为将文档发布到 RTD 并从您的 README 链接到它们更为常见。见:https://readthedocs.org/

【讨论】:

  • 谢谢。我完全按照你的描述做了,但它们没有安装。我认为这可能是最近发布的一些 pip 的更改吗?这些文档对我来说并不那么重要,但是这些示例是因为我需要将 py 和其他示例文件类型捆绑在一起,这些文件类型是脚本的资源。
猜你喜欢
  • 2020-09-28
  • 1970-01-01
  • 2011-05-10
  • 1970-01-01
  • 1970-01-01
  • 2019-10-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多