mypy-editor-integration 581 B

1234567891011121314151617181920
  1. #!/usr/bin/env python
  2. import os
  3. import subprocess
  4. import sys
  5. base = os.path.dirname(os.path.abspath(__file__))
  6. files = [os.path.relpath(x, base) for x in sys.argv[1:] if not x.startswith('-')]
  7. if not files:
  8. raise SystemExit(subprocess.Popen(['mypy'] + sys.argv[1:]).wait())
  9. output = subprocess.run('dmypy run -- --follow-imports=error --show-column-numbers --no-color-output'.split(), stdout=subprocess.PIPE).stdout
  10. q = files[0] + ':'
  11. rc = 0
  12. for line in output.decode('utf-8').splitlines():
  13. if line.startswith(q):
  14. print(line)
  15. rc = 1
  16. raise SystemExit(rc)