python / python/mypy

Separate output tool error and mypy warnings (stderr, stdout, file)

Offen
#16,974 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

feature
Vorherrschende Sprache
Python
Sterne
20.6k
Forks
3.3k
PR-Merge-Kennzahlen
PR-Kennzahlen ausstehend

Beschreibung

Today I run mypy > mypy.report to let jenkins parse the output log and present it. However then mypy crashes and prints errors, those also go on stdout and into my report file. It would be nice with some way of separating the output.

example on tool error:

$ mypy --no-incremental --disable-error-code import --follow-imports skip . > mypy.report
 Duplicate module named "benchmark" (also at "a/b/1/benchmark.py")
 a/b/2/benchmark.py: note: See https://mypy.readthedocs.io/en/stable/running_mypy.html#mapping-file-paths-to-modules for more info
 a/b/2/benchmark.py: note: Common resolutions include: a) using `--exclude` to avoid checking one of them, b) adding `__init__.py` somewhere, c) using `--explicit-package-bases` or adjusting MYPYPATH

Suggestion:

  1. Could these errors be printed to stderr? Should there in that case be an option to do so?
  2. option flag to set output_file for the report, but still output errors to stdout.

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne damit, mypy's aktuelle Behandlung von Tool-Fehlern über die Kommandozeile und die Berichtsausgabe nachzuverfolgen. Vergleiche die beiden angeforderten Verhaltensweisen – Tool-Fehler an stderr zu senden oder eine Berichtsdatei zu konfigurieren und dabei stdout beizubehalten – und lege fest, welche Schnittstelle implementiert werden soll; abgeschlossen ist die Aufgabe, wenn Jenkins Fehler zuverlässig vom Bericht trennen kann.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
python
Bereich
cli, tooling
Issue-Typ
Feature
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.