Scheint, als hätte pip install watchdog
pyyaml nicht installiert.
Es wäre schön, wenn watchmedo nicht einmal versuchen würde, dieses Paket zu importieren, wenn es auch keine yaml-Datei zum Lesen gibt, was bei mir der Fall ist.
Hmm.. und wenn ich pyyaml installiere (was unangenehm war, weil pip install yaml
nicht funktioniert, da das Paket und das Modul unterschiedliche Namen haben), stürzt es mit ModuleNotFoundError: No module named 'argh'
.
Die Installation von argh scheint jedoch funktioniert zu haben.
Ich sehe, dass beide Pakete als extra_requirements enthalten sind, was es wie eine bewusste Entscheidung erscheinen lässt. Warum ist das so?
Ich bin auch auf diesen Fehler gestoßen, als ich versuchte, watchmedo
auszuführen, nachdem ich einfach mit pip install watchdog
installiert hatte.
Wie in der README erwähnt, ist watchmedo
ein optionales Skript und seine Abhängigkeiten können mit pip install watchdog[watchmedo]
installiert werden.
python -m pip install watchdog[watchmedo]
ist der gute Befehl, um watchmedo
und seine Abhängigkeiten zu installieren.
@BoboTiG Nun , das ist nicht sehr hilfreich. Warum installiert es nicht standardmäßig Abhängigkeiten wie alle anderen Pakete der Welt? Und wenn Sie nur den minimalen Befehl verwenden, warum stürzt es hart ab, anstatt Ihnen etwas Nützliches zu sagen?
watchmedo
wurde seit #297 in zusätzlichen Paketen verschoben. Dies ist mit der Absicht, dass es nicht mehr über ein einfaches python -m pip install watchdog
installiert werden kann.
Wenn Sie watchmedo
möchten, installieren Sie das zusätzliche Paket. Und Abhängigkeiten werden auch installiert.
Was die zweite Nachricht betrifft, könnten wir die Situation hier etwas verbessern, indem wir ImportError
überspringen, wenn yaml
nicht installiert ist. Es würde funktionieren, wenn man yaml
überhaupt nicht verwendet.
Was den "Absturz" angeht: Es ist kein Absturz. Die Fehlermeldung ist jedoch ziemlich explizit :)
Hilfreichster Kommentar
Hmm.. und wenn ich pyyaml installiere (was unangenehm war, weil
pip install yaml
nicht funktioniert, da das Paket und das Modul unterschiedliche Namen haben), stürzt es mitModuleNotFoundError: No module named 'argh'
.Die Installation von argh scheint jedoch funktioniert zu haben.