2011-07-23 6 views
7

Pylintレポートで新しいエラー(最新のPylint実行時に見つかったもの)と古いエラー(前回の実行時に見つかったもの)を区別する方法を知っている人はいますか?Pylint - 古いものと新しいエラーを区別する

私のプロジェクトではPylintを使用していますが、プロジェクトはかなり大きいです。 Pylintはかなり多くのエラーを報告しています(rcfileで多くのエラーを無効にしたとしても)。これらのエラーは時間とともに修正されますが、新しいエラーを導入しないことも重要です。しかし、Pylint HTMLと "parseable"レポートは、私がpersistent=yesオプションでPylintを実行しても、以前に識別されたものと新しいエラーを区別しません。

今のところ、古いレポートと新しいレポートを手動で比較します。しかし、Pylintが最新の実行時に見つかったエラーメッセージを何らかの形で強調しても、以前のものでは見つからなかったかどうかは本当に素晴らしいでしょう。 Pylintや既存のツールなどを使ってそうすることは可能ですか?もしそうでなければ、私は自分自身の比較と報告の世代を書くことになるだろう。

+1

私の質問によく似たPylintの機能要求があることに気づきました - http://www.logilab.org/ticket/20386。だから、Pylintはこれをまだサポートしていないようだ。 – Timur

答えて

2

2つの基本的なアプローチ。エラーが表示されたときに修正して、古いものがなくなるようにします。また、特定の種類のlintエラーを修正するつもりがない場合は、lintに報告を停止するよう伝えてください。

ファイルがたくさんある場合は、各ファイルのリントレポートを個別に取得することをお勧めします。リントレポートをsvnのようなリビジョンコントロールにコミットし、リビジョンコントロールシステムdiffユーティリティを使用して新しいリントを区切ります古い既存のものからのエラー。 .pyファイルごとに別々のレポートを作成する理由は、diff出力を読みやすくするためです。

Linuxを使用している場合、vim -d oldfile newfileはdiffを読むのに適しています。 Windowsの場合は、Tortoise SVNに組み込まれている差分機能を使用してください。

+1

ありがとう!しかし、実際には、1000以上のソースコードファイルを持つプロジェクトがあり、Pylintを使い始める前にすべてのものがコード化されていました。そしてさらに悪いことに、ソースコードは本当に悪い品質です(discalimer:それは私によってコード化されていませんでした:-))。私のrcfileはERRORのみを有効にしていますが、私は100以上もあります。警告を有効にするとエラーの数を想像することができます...私はこれらのエラーを1つずつ修正しますが、それは大変な作業であり、新しいコードを追加するのに時間がかかります。新しいエラー。ですから、私はまだ古いエラーと新しいエラーを区別したいのです。 – Timur

+0

diffツールの - はい、それは私が今実際それを行う方法です:) – Timur

関連する問題