【问题标题】:Readthedocs - need sphinx 2.1+ to process the :async: optionReadthedocs - 需要 sphinx 2.1+ 来处理 :async: 选项
【发布时间】:2020-05-13 11:34:55
【问题描述】:

我的第一个公共 Python 项目现在在 readthedocs (RTD) 上。我正在尝试解决一个问题,但到目前为止还没有成功。

我正在使用:async: 选项来标记协程。 sphinx 2.1+ 支持这一点。 RTD 在我的项目中使用了 sphinx 1.8.5。所有协程都只是从 HTML 输出中跳过,即根本没有记录。这很糟糕。

我在我的项目中创建了docs/requirements.txt 文件,其中包含:sphinx>=2.1.0 并在我输入的 RTD > 管理 > 高级设置中:/docs/requirements.txt as “构建文档所需的 pip 要求文件。路径来自您项目的根目录。”。不知道这是否是指定 sphinx 版本的正确方法。反正我试过了。

构建失败:

ERROR: Could not open requirements file: [Errno 2] No such file or directory: '../../../../../../../../docs/requirements.txt'

我怎样才能克服这些问题以正确记录所有协程?

【问题讨论】:

  • RTD 找不到您的需求文件。尝试通过删除前导斜杠来指定相对到项目根目录的路径,而不是绝对路径。
  • @StevePiercy 是的,它有帮助。谢谢!我的文档终于看起来像我应该的那样。

标签: python-sphinx read-the-docs


【解决方案1】:

RTD 找不到您的需求文件。尝试通过删除前导斜杠来指定相对到项目根目录的路径,而不是绝对路径。

【讨论】:

  • 我仍然不完全了解问题的根本原因。 “来自项目根目录的路径。” 是最终文件位置/ROOT/PATHPATH 部分,不是吗?那么如果一个相对路径给出/ROOT/PATH', an absolute should result in /ROOT//PATH` 是等价的。
  • / 是服务器的根目录,而不是项目的根目录。所有以/ 开头的路径都是绝对的,而不是相对的。 ./ 是您项目的根目录。它是相对于工作目录的。您可以使用前导 ./ 或不使用前导指定需求文件的位置。
  • 感谢您的解释。不知何故,我没想到会以这种方式使用路径,因为它可能允许用户项目之外的文件访问。
  • 您可以尝试查看那里,但您可能会被拒绝读取或写入它的权限。错误消息没有明确提及权限,但这可能是正在发生的事情。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2022-07-18
  • 1970-01-01
  • 2018-10-20
  • 2022-06-30
  • 1970-01-01
  • 2018-07-28
  • 1970-01-01
相关资源
最近更新 更多