コードをepydoc
ロードして最上位モジュールをロードすると、次のように失敗します。
Error: TypeError: 'NoneType' object is not callable (line 10)
それが参照している は、9 行目にロードしようとしたサブモジュールです。epydocNoneType
に、9 行目にモジュールをロードできなかった理由を説明させるにはどうすればよいですか?
noskoさんのリクエストで。次に、スタック トレースが指定されていない同様の例を示します。
# foo.py
import bar
bar.baz()
# bar.py
def baz():
print 'baz'
import os
os.environ['DOES_NOT_EXIST']
実行:
python2.6 epydoc --html foo.py
役に立たないものを生成します:
+---------------------------------------------------- | | /home/ross/foo.py で: | | インポートに失敗しました (ただし、ソース コードの解析は成功しました)。 | | エラー: KeyError: 'DOES_NOT_EXIST' (1 行目)失敗が の 6 行目にあることを epydoc に教えてもらいたいです
bar.py
。foo.py
の のインポートについて不平を言いたくありませんbar.py
。小さな例で特定の問題を再現することはできませんが、私の基本的な要求は、epydoc が失敗したときに、スタック トレースを出力して問題を指摘することです。サブモジュールをロードしているか、辞書でキーが見つからないかを呼び出します。
注: この問題の根本は、私が文書化しようとしているコードが、さまざまな環境セットアップの問題を持つ SCons への入力であることです。そのため、実行するepydoc
と機能しませんが、で実行するとスクリプトは引き続き機能しますscons -f SConstruct.py
。でドキュメントを生成しようとしていsphinx
ます。sphinx
実際に実行すると、スタックトレースが表示されます。多分私は一緒に行くでしょうsphinx
...