私は Raspberry Pi と PiFace インターフェイス モジュールを含むプロジェクトに取り組んでいます。プロジェクトは Python で開発されており、Sphinx でいくつかのモジュールを自動ドキュメント化しようとすると問題が発生しました。ライブラリを使用していpifacedigitalio
ますが、このライブラリを開発マシンにインストールしましたが、Sphinx はモジュールのドキュメント化を拒否し、ハードウェアが存在しないために例外がスローされていると不平を言います。これは開発マシンであるため、ハードウェアは存在しません。ソフトウェアのテストには条件を使用するだけですif hwpresent then skip
が、実際にはこれらの部分を Sphinx でドキュメント化したいと考えています。実行時に生成されるエラーmake html
は次のとおりです。
/home/user/current/working/docs/src.rst:10: WARNING: autodoc: failed to import module u'src.billete'; the following exception was raised:
Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/sphinx/ext/autodoc.py", line 335, in import_object
__import__(self.modname)
File "/home/user/current/working/src/bill.py", line 4, in <module>
piface_obj = piface.PiFaceDigital()
File "/usr/local/lib/python2.7/dist-packages/pifacedigitalio/core.py", line 82, in __init__
self.init_board()
File "/usr/local/lib/python2.7/dist-packages/pifacedigitalio/core.py", line 107, in init_board
h=self.hardware_addr, b=self.bus, c=self.chip_select))
NoPiFaceDigitalDetectedError: No PiFace Digital board detected (hardware_addr=0, bus=0, chip_select=0).
Sphinx がコードを解釈するのを回避し、ソースを解析する方法はありますか? ダミーの戻り値を使用して手動で変更しようとしましpifacedigitalio/core.py
たが、Sphinx がフリーズします。