Mercurial > kallithea
diff scripts/pyflakes @ 8240:51af7c12ffb1
cleanup: run pyflakes as a part of scripts/run-all-cleanup
pyflakes has no usable configuration options, so create a small wrapper script.
Instead of having two wrapper scripts (with one being almost nothing and the
other containing configuration), just keep it simple and use one combined.
author | Mads Kiilerich <mads@kiilerich.com> |
---|---|
date | Tue, 11 Feb 2020 05:17:03 +0100 |
parents | |
children | abb83e4edfd9 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/scripts/pyflakes Tue Feb 11 05:17:03 2020 +0100 @@ -0,0 +1,37 @@ +#!/usr/bin/env python3 +""" +pyflakes with filter configuration for Kallithea. +Inspired by pyflakes/api.py and flake8/plugins/pyflakes.py . +""" + +import sys +import pyflakes.api +import pyflakes.messages + +class Reporter: + + warned = False + + def flake(self, warning): + # ignore known warnings + if isinstance(warning, pyflakes.messages.UnusedVariable): + return + if warning.filename == 'kallithea/bin/kallithea_cli_ishell.py': + if isinstance(warning, pyflakes.messages.ImportStarUsed) and warning.message_args == ('kallithea.model.db',): + return + if isinstance(warning, pyflakes.messages.UnusedImport) and warning.message_args == ('kallithea.model.db.*',): + return + + print('%s:%s %s [%s %s]' % (warning.filename, warning.lineno, warning.message % warning.message_args, type(warning).__name__, warning.message_args)) + self.warned = True + + def unexpectedError(self, filename, msg): + print('Unexpected error for %s: %s' % (filename, msg)) + + +reporter = Reporter() + +for filename in sorted(set(sys.argv[1:])): + pyflakes.api.checkPath(filename, reporter=reporter) +if reporter.warned: + raise SystemExit(1)