pip install watchdog
はpyyamlをインストールしなかったようです。
読み取るyamlファイルがない場合でも、watchmedoがこのパッケージをインポートしようとしなかったとしたら、それは私の場合です。
うーん..そしてpyyamlをインストールすると(パッケージとモジュールの名前が異なるためpip install yaml
が機能しないため、不快ModuleNotFoundError: No module named 'argh'
でクラッシュします。
arghのインストールはうまくいったようです。
両方のパッケージがextra_requirementsとして含まれているので、意識的な決定のように見えます。 どうしてこんなことに?
pip install watchdog
インストールした後、 watchmedo
を実行しようとしたときにも、このエラーが発生しました。
READMEに記載されているように、 watchmedo
はオプションのスクリプトであり、その依存関係はpip install watchdog[watchmedo]
インストールできます。
python -m pip install watchdog[watchmedo]
watchmedo
とその依存関係をインストールするために使用するのに適したコマンドです。
@BoboTiGまあそれはあまり役に立ちません。 世界の他のすべてのパッケージのように、デフォルトで依存関係をインストールしないのはなぜですか? そして、最小限のコマンドだけを使用する場合、何か有用なことを伝えるのではなく、なぜそれがハードクラッシュするのでしょうか。
watchmedo
は、#297以降の追加パッケージに移動されました。 これは、単純なpython -m pip install watchdog
介してインストールできなくなったことを意図したものです。
watchmedo
が必要な場合は、追加のパッケージをインストールします。 また、依存関係もインストールされます。
2番目のメッセージについては、 yaml
がインストールされていないときにImportError
スキップすることで、ここでの状況をわずかに改善できます。 yaml
をまったく使用しない場合に機能します。
「クラッシュ」に関しては、クラッシュではありません。 エラーメッセージは非常に明白ですが:)
最も参考になるコメント
うーん..そしてpyyamlをインストールすると(パッケージとモジュールの名前が異なるため
pip install yaml
が機能しないため、不快ModuleNotFoundError: No module named 'argh'
でクラッシュします。arghのインストールはうまくいったようです。