2016-03-21 1 views
3

readthedocs.orgを使用して私のプロジェクト用のドキュメント(自動生成されたドキュメントを含む)を生成したいと思います。しかし、私のプロジェクトではPython 3.5の構文(asyncawait)が使われていて、それを扱うことはできません。ビルドは成功しますが、次のようなエラーが発生します。autodocと組み合わされたreadthedocsでPython 3.5の構文を使用するには?

/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

あなたはreadthedocs.org' 'からの助けを求めるしたいことがあります。たとえば、あなたは、単にあなたのパッケージをインストールするReadthedocs.orgを伝えるsetup.py使用する場合。 –

+0

@DietrichEpp:http://docs.readthedocs.org/en/latest/support.html:「ドキュメントを読む方法を使用するか、バグに関係しない問題がある場合は、スタックオーバーフロー」と答えています。:) – evertheylen

+0

Stack Overflowが間違っていると言っていますか? https://github.com/rtfd/readthedocs.org/issues/1990 –

答えて

2

Dietrichの回答(githubの問題を見つけられないのは悪い)のおかげで、私はcondaという非常に貴重なヒントを見つけました。これはvirtualenvのように見えますが、バイナリやPythonのバージョンをインストールする権限があります。

githubリポジトリに2つのファイルを追加することで、両方ともルートになりました(environment.ymlは別の場所に移動できます)。誰かが基本的な環境条件を取得したい場合は、自分で環境条件をインストールする必要はありません。

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ファイルに要件を追加することができます。私はすでにmomoko、psycopg2と竜巻で行ったように、condaを使うときにはenvironment.ymlファイルにそれらをリストアップしなければなりません。

1

Readthedocs.orgは現在Python 3.5をサポートしていません。issue 1990: python 3.5 support for build systemを参照してください。

+0

まあ、私はその問題を逃したようです。 'readthedocs'に関連するもののグーグルでは、探していないドキュメントがたくさんあります:) – evertheylen

1

他の回答は最近のところ古くなっていますが、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を介して処理することができます。

build: 
    image: latest 

python: 
    version: 3.5 
    setup_py_install: true 
関連する問題