阅读文档 autodoc 似乎在 Python 3.6 格式的字符串上失败

Read the Docs autodoc seems to fail on Python 3.6 formatted string

我正在使用 Sphinx autodoc 功能为我的 Python 项目制作文档。在本地构建 HTML 工作正常,但在 Read The Docs 上似乎失败了。我已将 RTD 连接到我的 Github 帐户,并在提交时使用挂钩。它似乎正在阅读我的代码并导入包就好了。

我看到的错误似乎表明它失败是因为我的 Python 代码中的格式化字符串:

WARNING: autodoc: failed to import module 'letterboxd.api'; the following exception was raised:
Traceback (most recent call last):
  ...
  File "/home/docs/checkouts/readthedocs.org/user_builds/letterboxd/envs/latest/lib/python3.5/site-packages/letterboxd-0.1.0a5-py3.5.egg/letterboxd/api.py", line 77
    headers["Authorization"] = f"Bearer {self.user.token}"
                                                         ^
SyntaxError: invalid syntax

我在本地 运行 Python 3.6,所以我 猜测 问题可能是阅读文档尚不支持 3.6。我确实将 RTD Admin > Advanced Settings > Python interpreter 设置为 CPython 3.x,并且还选中了“Install your project inside a virtualenv using setup.py install”框”

目前这是 RTD 的一个已知问题,还是我可以调整一些设置来纠正这个问题?

基于 bug link that @sehafoc provided in a comment above (thanks!), I read and clicked through to find this doc page 关于为 RTD 构建 YAML 配置文件的内容。

添加此配置文件解决了此问题,其中 build:image:python:version: 是相关位:

# .readthedocs.yml

build:
  image: latest

python:
  version: 3.6
  setup_py_install: true

requirements_file: requirements.txt