我想使用readthedocs.org为我的项目生成文档(包括使用autodoc自动生成的文档)。但是,我的项目使用Python 3.5语法(async
和await
)并且看起来它不能处理它。构建成功,虽然我遇到了很多这样的错误:
/home/docs/checkouts/readthedocs.org/user_builds/sparrow/checkouts/latest/docs/source/entity.rst:176: WARNING: autodoc: failed to import module 'sparrow.entity'; the following exception was raised:
Traceback (most recent call last):
File "/home/docs/checkouts/readthedocs.org/user_builds/sparrow/envs/latest/local/lib/python3.4/site-packages/sphinx/ext/autodoc.py", line 385, in import_object
__import__(self.modname)
File "/home/docs/checkouts/readthedocs.org/user_builds/sparrow/checkouts/latest/sparrow/__init__.py", line 26, in <module>
from .model import *
File "/home/docs/checkouts/readthedocs.org/user_builds/sparrow/checkouts/latest/sparrow/model.py", line 37
async def install(self):
有没有办法解决这个问题?
答案 0 :(得分:4)
其他答案有点过时,因为现在Readthedocs.org确实支持Python 3.5和3.6。要使用它,必须配置readthedocs.yml
。有关此内容的文档可在此处找到:http://docs.readthedocs.io/en/latest/yaml-config.html。
使Readthedocs.org使用Python 3.5的最小例子是:
build:
image: latest
python:
version: 3.5
如果您有任何依赖关系,可以通过requirements.txt
文件或setup.py
处理。例如,如果您想使用setup.py
,只需告诉Readthedocs.org安装您的软件包:
build:
image: latest
python:
version: 3.5
setup_py_install: true
答案 1 :(得分:2)
感谢Dietrich的回答(我没有找到github问题),我发现了一个关于 conda 的非常有价值的提示。它看起来有点像virtualenv,但它有能力自己安装二进制文件和python版本。
我能够通过在我的github repo中添加两个文件来使其工作,两者都在根目录中(虽然environment.yml可以去其他地方)。如果有人想要获得基本的conda环境,你可以使用它而不必自己安装conda。
<强> readthedocs.yml 强>
conda:
file: environment.yml
<强> environment.yml 强>
name: py35
dependencies:
- openssl=1.0.2g=0
- pip=8.1.1=py35_0
- python=3.5.1=0
- readline=6.2=2
- setuptools=20.3=py35_0
- sqlite=3.9.2=0
- tk=8.5.18=0
- wheel=0.29.0=py35_0
- xz=5.0.5=1
- zlib=1.2.8=0
- pip:
- momoko>=2.2.3
- psycopg2>=2.6.1
- tornado==4.3
通常,您可以在requirements.txt文件中添加需求,然后通过pip安装。当使用conda时,你必须在environment.yml文件中列出它们,就像我已经使用momoko,psycopg2和tornado一样。
答案 2 :(得分:1)
Readthedocs.org目前不支持Python 3.5,请参阅issue 1990: python 3.5 support for build system。