このリポジトリには、すべてのプログラミング言語の静的分析ツール、ビルド ツール、構成ファイルなどがリストされています。リンターやフォーマッタなどのコード品質を向上させるツールに焦点を当てています。公式 Web サイトの Analysis-tools.dev はこのリポジトリに基づいており、各ツールのランキング、ユーザー コメント、ビデオなどの追加リソースが追加されています。
このプロジェクトはスポンサーの多大なるご支援なしには実現できません。
このプロジェクトをサポートしたい場合は、Github スポンサー ページにアクセスしてください。
プルリクエストは大歓迎です!
姉妹プロジェクトである awesome-dynamic-analyses もチェックしてください。
abaplint — TypeScript で書かれた ABAP 用のリンター。
abapOpenChecks — 新しいカスタマイズ可能なチェックを使用して SAP コード インスペクターを強化します。
Codepeer ©️ — 実行時エラーとロジック エラーを検出します。
Polyspace for Ada ©️ — ソース コードにオーバーフロー、ゼロ除算、範囲外の配列アクセス、およびその他の特定の実行時エラーがないことを証明するコード検証を提供します。
SPARK ©️ — Ada の静的分析および形式的検証ツールセット。
Astrée ©️ — Astrée は、C/C++ アプリケーションにランタイム エラーや無効な同時動作がないことを自動的に証明します。これは浮動小数点計算に適しており、非常に高速で、非常に正確です。このアナライザーは、MISRA/CERT/CWE/Adaptive Autosar コーディング ルールもチェックし、ISO 26262、DO-178C レベル A、およびその他の安全規格の認定をサポートします。 Jenkins および Eclipse プラグインが利用可能です。
CBMC — C プログラム、ユーザー定義アサーション、標準アサーション、いくつかのカバレッジ メトリック分析用の有界モデル チェッカー。
Clang-tidy — 問題を修正する (限定的な) 機能も備えた Clang ベースの C++ リンター ツール。
clazy — Clang フレームワークに基づく Qt 指向の静的コード アナライザー。 clazy は、clang が Qt セマンティクスを理解できるようにするコンパイラ プラグインです。不必要なメモリ割り当てから自動リファクタリングのための修正を含む API の誤用に至るまで、50 を超える Qt 関連のコンパイラ警告が表示されます。
CMetrics — C ファイルのサイズと複雑さを測定します。
CPAchecker — C プログラムの構成可能なソフトウェア検証のためのツール。 CPAchecker という名前は、このツールが CPA の概念に基づいており、ソフトウェア プログラムのチェックに使用されることを反映して選ばれました。
cppcheck — C/C++ コードの静的分析。
CppDepend ©️ — コードを測定、クエリ、視覚化して、予期せぬ問題、技術的負債、複雑さを回避します。
cpplint — Google のスタイルガイドに準拠した自動 C++ チェッカー。
cqmetrics — C コードの品質メトリクス。
CScout — C および C プリプロセッサ コードの複雑さと品質のメトリクス。
ENRE-cpp — ENRE (ENtity Relationship Extractor) は、ソース コードからコード エンティティの依存関係または関係を抽出するためのツールです。 ENRE-cpp は、@eclipse/CDT に基づく C/C++ 用の ENtity Relationship Extractor です。 (開発中)
ESBMC — ESBMC は、シングルスレッドおよびマルチスレッドの C/C++ プログラムを検証するための、充足可能性モジュロ理論に基づく、オープンソースで許容的にライセンスされたコンテキスト境界モデル チェッカーです。
欠陥発見者
フリント++
Frama-C — C コード用のサウンドと拡張可能な静的アナライザー。
GCC — GCC コンパイラーには、バージョン 10 以降の静的解析機能があります。このオプションは、GCC がアナライザーのサポートを有効にして構成されている場合にのみ使用できます。また、診断を SARIF 形式で JSON ファイルに出力することもできます (v13 以降)。
ゴブリント — マルチスレッド C プログラムを分析するための静的アナライザー。その主な焦点はデータ競合の検出ですが、バッファ オーバーフローや null ポインタの逆参照などの他の実行時エラーも報告します。
Helix QAC ©️ — 組み込みソフトウェア向けのエンタープライズ グレードの静的解析。 MISRA、CERT、および AUTOSAR コーディング標準をサポートします。
IKOS — LLVM に基づく C/C++ コード用のサウンド静的アナライザー。
Joern — コード プロパティ グラフに基づく C/C++ 用のオープンソース コード分析プラットフォーム
KLEE — LLVM コンパイラ インフラストラクチャ上に構築された動的シンボリック実行エンジン。テスト ケースがプログラムの可能な限り多くの部分を実行するように、プログラムのテスト ケースを自動生成できます。
LDRA ©️ — MISRA C および C++、JSF++ AV、CWE、CERT C、CERT C++、カスタム ルールなどのさまざまな標準に対する静的分析 (TBVISION) を含むツール スイート。
メイト
PC-lint ©️ — C/C++ の静的解析。 Windows/Linux/MacOS でネイティブに動作します。事実上あらゆるプラットフォームのコードを分析し、C11/C18 および C++17 をサポートします。
Phasar — 汚染および型状態分析を備えた LLVM ベースの静的分析フレームワーク。
Polyspace Bug Finder ©️ — C および C++ 組み込みソフトウェアの実行時エラー、同時実行の問題、セキュリティの脆弱性、その他の欠陥を特定します。
Polyspace Code Prover ©️ — C および C++ ソース コードにオーバーフロー、ゼロ除算、範囲外の配列アクセス、およびその他の特定の実行時エラーがないことを証明するコード検証を提供します。
scan-build — 通常のビルドを介して Clang に組み込まれた Clang Static Analyzer を駆動するフロントエンド。
splint — アノテーションを利用した静的プログラム チェッカー。
SVF — C および C++ プログラムのスケーラブルで正確なプロシージャー間の依存関係分析を可能にする静的ツール。
TrustInSoft Analyzer ©️ — コーディング エラーとそれに関連するセキュリティ脆弱性を徹底的に検出します。これには、健全な未定義動作の検出 (バッファ オーバーフロー、範囲外の配列アクセス、null ポインタの逆参照、解放後の使用、ゼロによる除算、初期化されていないメモリ アクセス、符号付きオーバーフロー、無効なポインタ演算など) が含まれます。 、データフローと制御フローの検証、および正式な仕様の完全な機能検証。 C18 までの C および C++20 までの C++ のすべてのバージョンがサポートされています。 TrustInSoft Analyzer は、2023 年第 2 四半期に ISO 26262 認定を取得する予定です (TCL3)。 MISRA Cチェッカーも同梱されています。
ベラ++
.NET Analyzers — .NET Compiler Platform を使用したアナライザー (診断とコード修正) の開発のための組織。
ArchUnitNET — 自動テストのために C# でアーキテクチャ ルールを指定およびアサートする AC# アーキテクチャ テスト ライブラリ。
code-cracker — Roslyn を使用してリファクタリング、コード分析、その他の機能を生成する C# および VB 用のアナライザー ライブラリ。
Cシャープエッセンシャル
Designite ©️ — Designite は、さまざまなアーキテクチャ、設計、実装の匂いの検出、さまざまなコード品質メトリクスの計算、傾向分析をサポートしています。
Gendarme — Gendarme は、ECMA CIL 形式 (Mono および .NET) のコードを含むプログラムとライブラリを検査します。
推論#
Meziantou.Analyzer — 設計、使用法、セキュリティ、パフォーマンス、スタイルの観点から C# のいくつかのグッド プラクティスを強制する Roslyn アナライザー。
NDepend ©️ — コードを測定、クエリ、視覚化して、予期せぬ問題、技術的負債、複雑さを回避します。
Puma Scan — Puma Scan は、開発チームが Visual Studio でコードを作成するときに、一般的な脆弱性 (XSS、SQLi、CSRF、LDAPi、暗号化、逆シリアル化など) に対するリアルタイムの安全なコード分析を提供します。
Roslynator — Roslyn を利用した、C# 用の 190 個以上のアナライザーと 190 個以上のリファクタリングのコレクション。
SonarAnalyzer.CSharp — これらの Roslyn アナライザーを使用すると、コードベース内のバグ、脆弱性、コード臭を見つけて修正できるため、安全で信頼性が高く、保守しやすいクリーン コードを作成できます。
VSD 診断
Wintellect.Analyzers — .NET コンパイラー プラットフォーム (「Roslyn」) 診断アナライザーとコード修正。
Astrée ©️ — Astrée は、C/C++ アプリケーションにランタイム エラーや無効な同時動作がないことを自動的に証明します。これは浮動小数点計算に適しており、非常に高速で、非常に正確です。このアナライザーは、MISRA/CERT/CWE/Adaptive Autosar コーディング ルールもチェックし、ISO 26262、DO-178C レベル A、およびその他の安全規格の認定をサポートします。 Jenkins および Eclipse プラグインが利用可能です。
CBMC — C プログラム、ユーザー定義アサーション、標準アサーション、いくつかのカバレッジ メトリック分析用の有界モデル チェッカー。
Clang-tidy — 問題を修正する (限定的な) 機能も備えた Clang ベースの C++ リンター ツール。
clazy — Clang フレームワークに基づく Qt 指向の静的コード アナライザー。 clazy は、clang が Qt セマンティクスを理解できるようにするコンパイラ プラグインです。不必要なメモリ割り当てから自動リファクタリングのための修正を含む API の誤用に至るまで、50 を超える Qt 関連のコンパイラ警告が表示されます。
CMetrics — C ファイルのサイズと複雑さを測定します。
cppcheck — C/C++ コードの静的分析。
CppDepend ©️ — コードを測定、クエリ、視覚化して、予期せぬ問題、技術的負債、複雑さを回避します。
cpplint — Google のスタイルガイドに準拠した自動 C++ チェッカー。
cqmetrics — C コードの品質メトリクス。
CScout — C および C プリプロセッサ コードの複雑さと品質のメトリクス。
ENRE-cpp — ENRE (ENtity Relationship Extractor) は、ソース コードからコード エンティティの依存関係または関係を抽出するためのツールです。 ENRE-cpp は、@eclipse/CDT に基づく C/C++ 用の ENtity Relationship Extractor です。 (開発中)
ESBMC — ESBMC は、シングルスレッドおよびマルチスレッドの C/C++ プログラムを検証するための、充足可能性モジュロ理論に基づく、オープンソースで許容的にライセンスされたコンテキスト境界モデル チェッカーです。
欠陥発見者
フリント++
Frama-C — C コード用のサウンドと拡張可能な静的アナライザー。
Helix QAC ©️ — 組み込みソフトウェア向けのエンタープライズ グレードの静的解析。 MISRA、CERT、および AUTOSAR コーディング標準をサポートします。
IKOS — LLVM に基づく C/C++ コード用のサウンド静的アナライザー。
Joern — コード プロパティ グラフに基づく C/C++ 用のオープンソース コード分析プラットフォーム
KLEE — LLVM コンパイラ インフラストラクチャ上に構築された動的シンボリック実行エンジン。テスト ケースがプログラムの可能な限り多くの部分を実行するように、プログラムのテスト ケースを自動生成できます。
LDRA ©️ — MISRA C および C++、JSF++ AV、CWE、CERT C、CERT C++、カスタム ルールなどのさまざまな標準に対する静的分析 (TBVISION) を含むツール スイート。
メイト
PC-lint ©️ — C/C++ の静的解析。 Windows/Linux/MacOS でネイティブに動作します。事実上あらゆるプラットフォームのコードを分析し、C11/C18 および C++17 をサポートします。
Phasar — 汚染および型状態分析を備えた LLVM ベースの静的分析フレームワーク。
Polyspace Bug Finder ©️ — C および C++ 組み込みソフトウェアの実行時エラー、同時実行の問題、セキュリティの脆弱性、その他の欠陥を特定します。
Polyspace Code Prover ©️ — C および C++ ソース コードにオーバーフロー、ゼロ除算、範囲外の配列アクセス、およびその他の特定の実行時エラーがないことを証明するコード検証を提供します。
scan-build — 通常のビルドを介して Clang に組み込まれた Clang Static Analyzer を駆動するフロントエンド。
splint — アノテーションを利用した静的プログラム チェッカー。
SVF — C および C++ プログラムのスケーラブルで正確なプロシージャー間の依存関係分析を可能にする静的ツール。
TrustInSoft Analyzer ©️ — コーディング エラーとそれに関連するセキュリティ脆弱性を徹底的に検出します。これには、健全な未定義動作の検出 (バッファ オーバーフロー、範囲外の配列アクセス、null ポインタの逆参照、解放後の使用、ゼロによる除算、初期化されていないメモリ アクセス、符号付きオーバーフロー、無効なポインタ演算など) が含まれます。 、データフローと制御フローの検証、および正式な仕様の完全な機能検証。 C18 までの C および C++20 までの C++ のすべてのバージョンがサポートされています。 TrustInSoft Analyzer は、2023 年第 2 四半期に ISO 26262 認定を取得する予定です (TCL3)。 MISRA Cチェッカーも同梱されています。
ベラ++
ameba — Crystal 用の静的コード分析ツール。
Crystal — Crystal コンパイラには lint 機能が組み込まれています。
Dart コードのメトリクス
効果的な_dart — 効果的な Dart のガイドラインに対応するリンター ルール
糸くず
ダーツ用リンター — ダーツ用のスタイルリンター。
DelphiLint — SonarDelphi を利用した、オンザフライのコード分析とリンティングを提供する Delphi IDE パッケージ。
Fix Insight ©️ — 静的コード分析用の無料の IDE プラグイン。 Proエディションには、自動化を目的としたコマンド ライン ツールが含まれています。
Pascal Analyzer ©️ — 多数のレポートを備えた静的コード分析ツール。レポート機能が制限された無料のLiteバージョンも利用できます。
Pascal Expert ©️ — コード分析用の IDE プラグイン。 Pascal Analyzer レポート機能のサブセットが含まれており、Delphi バージョン 2007 以降で利用できます。
SonarDelphi — SonarQube コード品質プラットフォーム用の Delphi 静的アナライザー。
credo — コードの一貫性と教育に重点を置いた静的コード分析ツール。
Dialyxir — Elixir プロジェクトでの Dialyzer の使用を簡素化するためにタスクを混合します。
sobelow — Phoenix Framework のセキュリティに重点を置いた静的分析。
ニレの分析
elm-review — Elm コンパイラでは提供されない保証を追加する Elm で記述された共有可能なカスタム ルールに焦点を当てて、Elm プロジェクト全体を分析します。
Dialyzer — DIALYZER、ERlang プログラムの不一致アナライザー。 Dialyzer は、単一の Erlang モジュールまたはアプリケーション全体 (セット) で、明確な型エラー、プログラミング エラーが原因で無効になったコードまたは到達不能になったコード、不必要なテストなどのソフトウェアの不一致を特定する静的分析ツールです。 Dialyzer は、デバッグでコンパイルされた BEAM バイトコードまたは Erlang ソース コードから分析を開始します。不一致のファイルと行番号が、不一致の内容とともに報告されます。 Dialyzer は、成功タイピングの概念に基づいて分析を行うため、音声による警告 (誤検知なし) が可能になります。
elvis — Erlang スタイル レビュアー。
Primitive Erlang Security Tool (PEST) — Erlang ソース コードの基本的なスキャンを実行し、Erlang ソース コードの安全性を低下させる可能性のある関数呼び出しを報告するツール。
fantomas — F# ソース コード フォーマッタ。
FSharpLint — F# 用の lint ツール。
ionide-analyzers — FSharp.Analyzers.SDK で構築された F# アナライザーのコレクション。
fprettify — Python で書かれた最新の Fortran ソース コード用のオートフォーマッタ。 Fprettify は、コード内で一貫した空白、インデント、区切り文字の配置を提供するツールです。これには、大文字と小文字を変更したり、プリプロセッサ ディレクティブを処理したりする機能も含まれます。すべてリビジョン履歴を保持し、エディターの統合についてテストされています。
i-Code CNES for Fortran — Fortran 77、Fortran 90、および Shell 用のオープンソース静的コード分析ツール。
aligncheck — 非効率的にパックされた構造体を見つけます。
bodyclose — HTTP 応答本文が閉じられているかどうかを確認します。
Deadcode — 未使用のコードを検索します。
ディンゴハンター
Dogsled — 空白の識別子が多すぎる割り当て/宣言を検索します。
重複
errcheck — エラー戻り値が使用されていることを確認します。
errwrap — 新しい %w 動詞ディレクティブを使用して Go エラーをラップして修正します。このツールは fmt.Errorf() 呼び出しを分析し、Go v1.13 で導入された新しい %w 動詞ディレクティブとは異なる動詞ディレクティブを含む呼び出しをレポートします。また、新しい %w ラップ動詞ディレクティブを使用するように呼び出しを書き換えることもできます。
flen — Go パッケージ内の関数の長さに関する情報を取得します。
ゴーメタリンターgolangci-lint
使用してください。
go tool vet --shadow — 意図せずシャドウされた可能性のある変数をレポートします。
go vet — Go のソースコードを検査し、疑わしいものを報告します。
go-consistent — Go プログラムの一貫性を高めるのに役立つアナライザー。
go-critic — 現在他のリンターに実装されていないチェックを維持する Go ソースコード リンター。
go/ast — パッケージ ast は、Go パッケージの構文ツリーを表すために使用される型を宣言します。
ゴースト
ゴーチェックノグローバル
goconst — 定数に置き換えられる可能性のある繰り返し文字列を検索します。
ゴシクロ
gofmt -s — コードが適切にフォーマットされており、これ以上簡略化できないかどうかをチェックします。
gofumpt — gofmt
よりも厳密な形式を適用しますが、下位互換性があります。つまり、 gofumpt
gofmt
が満足する形式のサブセットで満足します。このツールは Go 1.19 時点のgofmt
のフォークであり、Go 1.18 以降が必要です。 Go コードをフォーマットするためのドロップイン置換として使用でき、gofumpt の後に gofmt を実行しても変更は生じません。 gofumpt
gofmt
書式設定と一致しないルールを追加することはありません。したがって、私たちは、gofmt と競合するのではなく、 gofmt
拡張します。
goimports — 欠落している、または参照されていないパッケージのインポートをチェックします。
gokart — 誤検知を最小限に抑えることに重点を置いた Golang セキュリティ分析。変数と関数の引数のソースを追跡して、入力ソースが安全かどうかを判断できます。
GolangCI-Lint — Go Meta Linter
の代替: GolangCI-Lint はリンター アグリゲータです。
golint — Go ソースコードのコーディングスタイルの間違いを出力します。
goreporter — 多くのリンターを同時に実行し、その出力をレポートに正規化します。
goroutine-inspect — Golang の goroutine ダンプを分析する対話型ツール。
gosec (gas) — Go AST をスキャンして、ソース コードにセキュリティ上の問題がないか検査します。
gotype — Go コンパイラーに似た構文分析および意味分析。
govulncheck — Govulncheck は、Go コードに影響を与える既知の脆弱性を報告します。ソース コードまたはバイナリのシンボル テーブルの静的分析を使用して、アプリケーションに影響を与える可能性のあるレポートのみを絞り込みます。デフォルトでは、govulncheck は https://vuln.go.dev にある Go 脆弱性データベースにリクエストを作成します。脆弱性データベースへのリクエストにはモジュール パスのみが含まれ、プログラムのコードやその他のプロパティは含まれません。
ineffassign — Go コード内の効果のない代入を検出します。
インターフェース
ll
中傷された
misspell — よくスペルミスのある英単語を検索します。
ネイキッドレット — ネイキッドリターンを検索します。
nargs — 関数宣言内の未使用の引数を検索します。
prealloc — 事前割り当てされる可能性のあるスライス宣言を検索します。
Reviewdog — コード ホスティング サービスのリンターからレビュー コメントを投稿するためのツール。
revive — 高速、構成可能、拡張可能、柔軟で美しい Go 用リンター。ゴリントのドロップイン交換。
セーフSQL
師匠
staticcheck — バグの発見、コードの簡素化、パフォーマンスの向上に特化した Go 静的分析。
structcheck — 未使用の構造体フィールドを検索します。
structslop — 最大のスペース/割り当て効率を提供するために構造体フィールドの再配置を推奨する Go 用の静的アナライザー
test — stdlib テスト モジュールからのテスト失敗の場所を表示します。
変換を解除する
unparam — 未使用の関数パラメータを検索します。
varcheck — 未使用のグローバル変数と定数を検索します。
wsl — 空行を適切な位置に強制します。
ブルターニュ
HLint — HLint は、Haskell コードの改善の可能性を提案するツールです。
Liquid Haskell — Liquid Haskell は、Haskell プログラムの改良型チェッカーです。
Stan — Stan は、Haskell プロジェクトを分析し、検出された問題に対する考えられる解決策とともに、発見された脆弱性を役立つ方法で出力するためのコマンドライン ツールです。
Weeder — Haskell コード内の無効なエクスポートまたはパッケージ インポートを検出するツール。
Checker Framework — Java のプラグイン可能な型チェック。これは単なるバグ発見ではなく、正確性を保証する検証ツールです。 27 の事前構築済み型システムが付属しており、ユーザーは独自の型システムを定義できます。マニュアルには、ユーザーが提供した 30 を超えるタイプ システムがリストされています。
checkstyle — Java ソース コードがコード標準または一連の検証ルール (ベスト プラクティス) に準拠しているかどうかをチェックします。
ck — ソース Java ファイルを処理して、Chidamber および Kemerer のオブジェクト指向メトリックを計算します。
ckjm — コンパイルされた Java ファイルのバイトコードを処理することによって、Chidamber および Kemerer のオブジェクト指向メトリクスを計算します。
CogniCrypt — Java ソースとバイトコードをチェックして、暗号化 API が不正に使用されていないかどうかを確認します。
Dataflow Framework — 業界で強力な Java 用データフロー フレームワーク。 Dataflow フレームワークは、Checker Framework、Google の Error Prone、Uber の NullAway、Meta の Nullsafe、およびその他のコンテキストで使用されます。これは Checker Framework とともに配布されます。
DesigniteJava ©️ — DesigniteJava は、さまざまなコード品質メトリクスの計算とともに、さまざまなアーキテクチャ、設計、実装の匂いの検出をサポートします。
Diffblue ©️ — Diffblue は、ソフトウェア開発チームに AI を活用したコード分析およびテスト ソリューションを提供するソフトウェア会社です。そのテクノロジーは、開発者がソフトウェア開発プロセスでテストを自動化し、バグを発見し、手作業を削減するのに役立ちます。同社の主力製品である Diffblue Cover は、AI を使用して Java コードの単体テストを生成および実行し、エラーを検出してコードの品質を向上させます。
Doop — Doop は、ポインタ分析アルゴリズムを中心とした、Java/Android プログラムの静的分析のための宣言型フレームワークです。 Doop は、多種多様な分析と、エンドツーエンドで分析 (ファクト生成、処理、統計など) を実行するための周囲の足場を提供します。
ENRE-java — ENRE (ENtity Relationship Extractor) は、ソース コードからコード エンティティの依存関係または関係を抽出するためのツールです。 ENRE-java は、@Eclipse JDT/パーサーに基づく Java プロジェクト用の ENtity Relationship Extractor です。
エラーが発生しやすい — Java の一般的な間違いをコンパイル時エラーとして検出します。
fb-contrib — 追加のバグ検出機能を備えた FindBugs のプラグイン。
allowed-apis — 特定のメソッド/クラス/フィールドの呼び出し (文字セットなしのテキスト ストリームからの読み取りなど) を検出して禁止します。 Maven/Gradle/Ant と互換性があります。
google-java-format — Java ソース コードを Google Java スタイルに準拠するように再フォーマットします
ハントバグズ
IntelliJ IDEA ©️ — Java と Kotlin の多くのインスペクションがバンドルされており、リファクタリングやフォーマットなどのためのツールが含まれています。
JArchitect ©️ — コードを測定、クエリ、視覚化して、予期せぬ問題、技術的負債、複雑さを回避します。
JBMC — Java 用の有界モデル チェッカー (バイトコード) は、ユーザー定義のアサーション、標準アサーション、いくつかのカバレッジ メトリック分析を検証します。
Mariana Trench — Android および Java アプリケーション向けのセキュリティに重点を置いた静的分析ツール。 Mariana Trench は Dalvik バイトコードを分析し、大規模なコードベース (数千万行のコード) で高速に実行できるように構築されています。コードが変更されると、リポジトリに到達する前に脆弱性を見つけることができます。
NullAway — ビルド時のオーバーヘッドが低い型ベースの null ポインター チェッカー。 Error Proneプラグイン。
OWASP 依存関係チェック — 既知の公開された脆弱性の依存関係をチェックします。
qulice — いくつかの (事前設定された) 静的分析ツール (checkstyle、PMD、Findbugs など) を組み合わせます。
RefactorFirst — 最初にリファクタリングする必要がある Java コードベース内の神クラスと高度に結合されたクラスを特定し、優先順位を付けます。
Soot — Java および Android アプリケーションを分析および変換するためのフレームワーク。
Spoon — Spoon は、Java ソース コード (Java 9、10、11、12、13、14 を含む) を分析および変換するためのメタプログラミング ライブラリです。ソース ファイルを解析して、強力な分析および変換 API を備えた適切に設計された AST を構築します。 Maven および Gradle に統合できます。
SpotBugs — SpotBugs は FindBugs の後継です。 Java コードのバグを探すための静的分析ツール。
steady — 静的分析とテストの両方を使用して、Java アプリケーションの既知の脆弱性を伴うオープンソースの依存関係を分析し、コードのコンテキストと使用状況をより正確に判断します。
Violations Lib — 静的コード分析からのレポート ファイルを解析するための Java ライブラリ。多くの Jenkins、Maven、Gradle プラグインによって使用されます。
エーテル
Closure Compiler — 効率を高め、サイズを削減し、JavaScript ファイル内のコード警告を提供するコンパイラ ツール。
クロージャリンター
複雑さのレポート
DeepScan ©️ — コーディング規約ではなく、実行時エラーと品質問題を対象とする JavaScript 用のアナライザーです。
es6-プラトン
エスコンプレックス
エスプリマ
flow — JavaScript の静的型チェッカー。
hegel — 型推論と強力な型システムに重点を置いた JavaScript 用の静的型チェッカー。
jshint — JavaScript コード内のエラーと潜在的な問題を検出し、チームのコーディング規約を強制します。
JSLint — JavaScript コード品質ツール。
JSPrime
NodeJSScan — njsscan cli ツール上に構築された libsast および semgrep を利用した Node.js アプリケーション用の静的セキュリティ コード スキャナー。アプリケーションのセキュリティ ステータスに関するさまざまなダッシュボードを備えた UI が特徴です。
プラトン
Polymer-analyzer — Web コンポーネント用の静的解析フレームワーク。
tire.js — 既知の脆弱性を持つ JavaScript ライブラリの使用を検出するスキャナー。
RSLint
standard — Javascript スタイルガイドの問題をチェックする npm モジュール。
tern — エディターを超えた詳細な言語サポートのための JavaScript コード アナライザー。
タイプL
xo — 意見はありますが、多くの利点を備えた構成可能な ESLint ラッパー。厳密で読みやすいコードを強制します。
物差し
JET — バグと型の不安定性を検出する静的型推論システム。
StaticLint — Julia の静的コード分析
detekt — Kotlin コードの静的コード分析。
diktat — Kotlin の厳格なコーディング標準と、コードの臭いを検出して自動修正するリンター。
ktfmt — Kotlin コード規約の共通コミュニティ標準に準拠するように Kotlin ソース コードを再フォーマットするプログラム。 ktfmt IntelliJ プラグインは、プラグイン リポジトリから入手できます。これをインストールするには、IDE の設定に移動し、プラグイン カテゴリを選択します。 「マーケットプレイス」タブをクリックし、ktfmt プラグインを検索して、「インストール」ボタンをクリックします。
ktlint — 組み込みフォーマッタを備えたバイクシェディング防止 Kotlin リンター。
luacheck — Lua コードの lint および静的分析のためのツール。
lualint — lualint は、Lua ソース コードでのグローバル変数の使用状況の luac ベースの静的分析を実行します。
ルアナリシス
DrNim — DrNim は、Nim で書かれたソフトウェアの検証/検証を可能にするために、Nim フロントエンドと Z3 証明エンジンを組み合わせています。
nimfmt — Nim コードフォーマッタ/リンター/スタイルチェッカー
Sys — (ブラウザー) コードのバグを見つけるための静的/シンボリック ツール。 LLVM AST を使用して、初期化されていないメモリ アクセスなどのバグを検出します。
Verifast - 分離ロジックで書かれた前提条件と事後条件で注釈が付けられた、単一スレッドおよびマルチスレッドCおよびJavaプログラムの正確性特性のモジュール形式的検証のためのツール。豊富な仕様を表現するために、プログラマーは誘導データ型、これらのデータ型に対する原始的な再帰的純粋な機能、および抽象的な分離ロジックの述語を定義できます。
CakeFuzzer - CakePHPベースのWebアプリケーション用のWebアプリケーションセキュリティテストツール。 CakeFuzzerは、実行前にランダムに変更される事前定義された一連の攻撃を採用しています。 Cake PHPフレームワークの深い理解を活用して、Cake Fuzzerはすべての潜在的なアプリケーションエントリポイントで攻撃を開始します。
Churn-PHP - リファクタリングの優れた候補者を発見するのに役立ちます。
作曲家依存性 - 分析器 - 作曲家依存関係の問題の迅速な検出。
Dephpend - 依存関係分析ツール。
DepRECATION-DETECTOR - 非推奨(Symfony)コードの使用法を見つけます。
DEPTRAC - ソフトウェアレイヤー間の依存関係のルールを強制します。
DesignPatternDetector - PHPコードの設計パターンの検出。
EasyCodingStandard - php_codesnifferとphp-cs-fixerを組み合わせます。
Enlightn - Laravelアプリのパフォーマンス、セキュリティ、コードの信頼性を向上させるための推奨事項を提供するLaravelアプリケーション用の静的および動的分析ツール。 120の自動チェックが含まれています。
Exakat - PHPのエンジンをレビューする自動コード。
grumphp - すべてのコミットでコードをチェックします。
Larastan - Laravelの発達者の生産性とコードの品質を改善するために静的分析を追加します。 Phpstan周辺のラッパーです。
モンドリアン
nitpick ci©€ - 自動PHPコードレビュー。
Parallel-Lint - このツールは、Fancier出力を使用したシリアルチェックよりも速くPHPファイルの構文をチェックします。
解析 - 静的セキュリティスキャナー。
PDENDIT - PHPコードのCyclomaticの複雑さなどのソフトウェアメトリックを計算します。
Phan - Etsyの最新の静的分析器。
PHPアーキテクチャテスター - PHP用の使いやすいアーキテクチャテストツール。
PHP仮定 - 弱い仮定をチェックします。
PHPコーディング標準フィクサー - PSR-1、PSR-2、Symfony Standardなどの標準に従ってコードを修正します。
PHP Insights - コンソールからのインスタントPHP品質チェック。コードの品質とコーディングスタイルの分析と、コードアーキテクチャとその複雑さの概要。
PHP検査(EA拡張) - PHPの静的コードアナライザー。
PHPリファクタリングブラウザ - リファクタリングヘルパー。
PHPセマンティックバージョンチェッカー
PHP-Parser - PHPで書かれたPHPパーサー。
PHPスペラー - PHPスペルチェックライブラリ。
PHPトークン反射
php7cc
php7mar
PHP_CODESNIFFER - 定義された一連のコーディング標準の違反を検出します。
phparkitect - phparkitectは、ワークフローにアーキテクチャ制約チェックを追加することを許可することにより、PHPコードベースのコヒーレントで固体を維持するのに役立ちます。シンプルで読み取り可能なPHPコードで、強制したい制約を表現できます。
phpca
phpcpd
phpdcd
phpdependencyanalysis
PHPDEPRECATIONDETECTOR - 新しいインタープリターバージョンで非推奨機能を伴う問題を検索するPHPコードの分析装置。削除されたオブジェクト(関数、変数、定数、およびINIディレクティブ)、非推奨機能、および禁じられた名前またはトリックの使用(新しいバージョンの予約済み識別子など)が見つかります。
phpdoc-to-typehint
PHPDocumentor - PHPソースコードを分析してドキュメントを生成します。
PHPLOC - サイズを迅速に測定し、PHPプロジェクトの構造を分析するためのツール。
PHPMD - コードで可能なバグを見つけます。
phpmetrics - さまざまなコード品質メトリックを計算および視覚化します。
phpmnd - 魔法の数字を検出するのに役立ちます。
phpqa
PHPQA -Jakzal - 1つの容器でのPHP静的分析のための多くのツール。
PHPQA-JMOLIVAS - PHPQAオールインワンアナライザーCLIツール。
phpsa
PHPSTAN - PHP静的分析ツール - 実行せずにコードでバグを発見してください!
ProgPilot - セキュリティ目的のための静的分析ツール。
詩編 - PHPアプリケーションでタイプエラーを見つけるための静的分析ツール。
Qafoo Quality Analyzer
レクター - PHP 5.3+コードのインスタントアップグレードと自動リファクタリング。 PHP 7.4、8.0以降のコードをアップグレードします。 Rectorは、狭く定義されたAST(要約構文ツリー)パターンを探すため、低い偽陽性率を約束します。主なユースケースは、レガシーコードの技術的債務に取り組み、死んだコードを削除することです。 Rectorは、Symfony、Doctrine、Phpunitなどの特別なルールのセットを提供します。
リフレクション - PHPプロジェクトの静的分析を行うリフレクションライブラリ
Symfony Insight©il - セキュリティリスクを検出し、バグを見つけ、PHPプロジェクトに実用的なメトリックを提供します。
Tuli - 静的分析エンジン。
Twig-Lint - Twig-Lintは、Twigファイルの糸くずツールです。
WAP - PHP(4.0以上)Webアプリケーションの入力検証の脆弱性を検出および修正するツール。静的分析とデータマイニングを組み合わせることにより、誤検知を予測します。
Perl :: Analyzer - Perl-Analyzerは、ユーザーが名前空間とその関係、依存関係、継承、およびパッケージで実装され、継承され、再定義された方法に関する情報を提供することにより、ユーザーがPerlコードベースを分析および視覚化できるようにする一連のプログラムとモジュールです。 Super経由の親パッケージからの方法への呼び出しとして。
Perl ::批評家 - ベストプラクティスの批評Perlソースコード。
Perltidy - Perltidyは、読みやすくするためにPerlスクリプトをインデントおよび再フォーマットするPerlスクリプトです。フォーマットは、コマンドラインパラメーターで制御できます。デフォルトのパラメーター設定は、Perlスタイルガイドの提案にほぼ従います。スクリプトの再フォーマットに加えて、Perltidyは、エラーのローカライズに非常に優れているため、欠落または余分なブレース、括弧、四角い括弧でエラーを追跡するのに大きな助けになります。
ZARN - 最新のPERLアプリ向けの軽量静的セキュリティ分析ツール
Autoflake - Autoflakeは、Pythonコードから未使用のインポートと未使用の変数を削除します。
AUTOPEP8 - Pype 8スタイルガイドに準拠するPythonコードを自動的にフォーマットするツール。 PycodeStyleユーティリティを使用して、コードのフォーマットが必要な部分を決定します。
Bandit - Pythonコードで一般的なセキュリティ問題を見つけるツール。
Bellybutton - カスタムプロジェクト固有のルールをサポートする糸くずエンジン。
ブラック - 妥協のないPythonコードフォーマッタ。
ボウラー - 最新のPythonの安全なコードリファクタリング。 Bowlerは、構文ツリーレベルでPythonを操作するためのリファクタリングツールです。結果として得られたコードがコンパイルされて実行されることを保証しながら、安全で大規模なコードの変更を可能にします。コードで複雑なコード変更を生成するために、Pythonの単純なコマンドラインインターフェイスとFluent APIの両方を提供します。
CioCheckpep8
、 pydocstyle
、 flake8
、およびpylint
のラッパーです。
凝集
取引 - Pythonの契約による設計。バグのないコードを書きます。コードにいくつかのデコレータを追加することで、無料テスト、静的分析、正式な検証などを取得できます。
DLINT - Pythonコードを確保するためのツールが安全です。
危険 - Dodgyは、コードベースに対して実行して「危険な」見た目の価値を検索するための非常に基本的なツールです。これは、ファイルにハードコード化された偶発的なSCM DIFFチェックイン、またはパスワードやシークレットキーなどを検出するために設計された一連の簡単な正規表現です。
enre-py
FIXIT - リントルールとソースコードの対応する自動フィックスを作成するためのフレームワーク。
FLAKE8 - pyflakes
、 pycodestyle
、 mccabe
のラッパー。
Flakeheaven - Flakeheavenは、継承可能で複雑なTOML構成を可能にするために、Flake8の周りに構築されたPythonリナーです。
グリフ - Pythonプログラム全体の署名。構造、フレーム、プロジェクトのスケルトンを抽出して、APIドキュメントを生成するか、APIの壊れた変更を見つけます。
Inceptortiger
JEDI - Python用の自動補完/静的分析ライブラリ。
Linty Fresh - 糸くずエラーを解析し、プルリクエストに関するコメントとしてGitHubに報告します。
MCCABE - McCabeの複雑さを確認してください。
マルチリントflake8
、 isort
、およびmodernize
のラッパー。
Mypy - モンキータイプで頻繁に使用されるアヒルのタイピングと静的タイピングの利点を組み合わせることを目的とした静的タイプチェッカー。
探検家 - pylint
、 pep8
、 mccabe
などのラッパー。
py-find-injection
Pyanalyze - 未定義の変数やタイプエラーへの参照など、Pythonコードの一般的な間違いをプログラム的に検出するためのツール。追加のルールを追加し、特定の機能に固有のチェックを実行するために拡張できます。
pycodequal©♥ - pycodequalは、複雑さとバグのリスクに関する洞察を提供します。プルリクエストに自動レビューを追加します。
PYCODESTYLE - (以前のpep8
)PEP 8のスタイルコンベンションの一部に対してPythonコードを確認します。
Pydocstyle
Pyflakes - エラーがある場合はPythonソースファイルを確認してください。
Pylint - プログラミングエラーを探し、コーディング標準を実施し、一部のコードの匂いにスニッフィングします。さらに、 pyreverse
(UMLダイアグラムジェネレーター)とsymilar
(類似チェッカー)が含まれます。
Pylyzers - Python用の静的コードアナライザー /言語サーバー、Rustで記述され、タイプチェックと読み取り可能な出力に焦点を当てています。
Pyre-check - 大きなPythonコードベース用の高速でスケーラブルなタイプチェッカー。
Pyright - Pythonの静的タイプチェッカー。MyPyなどの既存のツールのギャップに対処するために作成されました。
Pyroma
PYSA - FacebookのPyre-checkに基づいたツールで、汚染分析で特定されたPythonコードの潜在的なセキュリティ問題を特定します。
PYT -Python Taint
PyType - Pythonコードの静的型アナライザー。
Pyupgrade - 新しいバージョンの言語の構文を自動的にアップグレードするツール(および事前コミットフック)。
定量コード
Radon - ソースコードからさまざまなメトリックを計算するPythonツール。
改装 - Pythonコードベースを改装および近代化するためのツール。 Refurbは、Rustのための組み込みのリナーであるClippyに大きく触発されています。
Ruff - 錆で書かれた高速パイソンリナー。既存のリナーよりも10〜100倍高速。 Python 3.10と互換性があります。ファイルウォッチャーをサポートします。
Unimport - 未使用のインポートステートメントを見つけて削除するためのリナー、フォーマッタ。
ハゲタカ - Pythonコードで未使用のクラス、関数、変数を見つけます。
Wemake-Python-Styleguide - これまでで最も厳格で最も意見の高いPythonリナー。
賢い