Qodana 2024.1 ヘルプ

バージョン 2024.1 の新機能

Qodana のバージョン 2024.1 には、いくつかの更新が含まれています。

それに加えて、このバージョンの Qodana では、削除または無効化されたインスペクションとともに、以下にリストされている新しいインスペクションが提供されます。無効化されたインスペクションを有効にする方法については、インスペクションを分析範囲に含めるセクションを参照してください。

JVM 用 Qodana

いくつかのインスペクションが JVM 用 Qodana リンターに実装されています。

Id

説明

重大度

WhileCanBeDoWhile(英語)

Java/ 制御フローの問題 /'while' は 'do while' に置き換えることができます

WEAK WARNING

StringConcatenationArgumentToLogCall(英語)

Java/ ロギング / ロギング呼び出しの引数としての非定数文字列の連結

WARNING

UnreachableCode(英語)

Java/ バグの可能性 / 到達不可能なコード

WARNING

MappingBeforeCount(英語)

Java/ 冗長または冗長なコード構造 /count() の前のマッピング呼び出し

WARNING

JavaEmptyModuleInfoFile(英語)

Java/ 可視性 / 空の「module-info.java」ファイル

WARNING

LoggingSimilarMessage(英語)

JVM 言語 / ロギング / 区別できないロギング呼び出し

WEAK WARNING

SpringSecurityMethodCallsInspection(英語)

Spring/Spring セキュリティ /@PreFilter/@PreAuthorize/@PostFilter 自己呼び出しメソッド呼び出し

WARNING

TomlUnresolvedReference(英語)

TOML/ 未解決の参照

WARNING

HttpUrlsUsage(英語)

暗号化されていないプロトコルによるセキュリティ / リンク

WEAK WARNING

以下は、JVM 用 Qodana リンターから無効化または削除されたインスペクションのリストです。

Id

説明

重大度

状況

JUnit5AssertionsConverter(英語)

JUnit/JUnit 5 廃止されたアサーション

WARNING

無効

JUnitMixedFramework(英語)

単一のテストケースで複数のバージョンの JUnit/JUnit API を使用する

WARNING

無効

JUnitMalformedDeclaration(英語)

JUnit/JUnit 不正な宣言

ERROR

無効

JUnit3StyleTestMethodInJUnit4Class(英語)

JUnit/JUnit 4 クラスの旧式 JUnit テストメソッド

WARNING

無効

SpringSecurityPreFilterMethodCallsInspection

Spring/Spring セキュリティ /@PreFilter 自己呼び出しメソッド呼び出し

WARNING

除去

Android のための Qodana コミュニティ

Android のための Qodana コミュニティリンターに実装されているインスペクションのリストは次のとおりです。

Id

説明

重大度

WhileCanBeDoWhile(英語)

Java/ 制御フローの問題 /'while' は 'do while' に置き換えることができます

WEAK WARNING

StringConcatenationArgumentToLogCall(英語)

Java/ ロギング / ロギング呼び出しの引数としての非定数文字列の連結

WARNING

UnreachableCode(英語)

Java/ バグの可能性 / 到達不可能なコード

WARNING

MappingBeforeCount(英語)

Java/ 冗長または冗長なコード構造 /count() の前のマッピング呼び出し

WARNING

JavaEmptyModuleInfoFile(英語)

Java/ 可視性 / 空の「module-info.java」ファイル

WARNING

LoggingSimilarMessage(英語)

JVM 言語 / ロギング / 区別できないロギング呼び出し

WEAK WARNING

Android のための Qodana コミュニティリンターで無効化されたインスペクションのリストは次のとおりです。

Id

説明

重大度

AndroidDomInspection

Android/Android リソース検証

ERROR

AndroidElementNotAllowed

Android/Android XML 要素は許可されていません

WARNING

XmlWrongFileType

Android/Android XML ルートタグ検証

WARNING

NavigationFile

Android/ ナビゲーションファイル

ERROR

AndroidNonConstantResIdsInSwitch

Android/ スイッチ文内の非定数リソース ID

ERROR

AndroidRoomQuestionMarkBindParameter

Android/Room/'?' は、Room クエリのパラメーターとして使用されます

ERROR

AndroidRoomSqlBooleanLiteral

Android/Room/Room クエリで使用されるブールリテラル

WARNING

AndroidUnresolvedRoomSqlReference

Android/Room/Room SQL 内の未解決の参照

ERROR

R8IgnoredFlags

Android/ シュリンカー /R8 によって無視されるフラグ

WARNING

ShrinkerInvalidFlags

Android/Shrinker/ シュリンカー設定の無効なフラグ

ERROR

ShrinkerInnerClassSeparator

Android/Shrinker/ クラスと内部クラス間のセパレータが無効です

ERROR

ShrinkerArrayType

Android/Shrinker/ 配列型の無効な使用

ERROR

ShrinkerUnresolvedReference

Android/Shrinker/Shrinker Config ファイル内の未解決の参照

ERROR

AndroidUnknownAttribute

Android/ 不明な Android XML 属性

WARNING

AndroidUnresolvableTag

Android/ 解決できないタグ

ERROR

AndroidMissingOnClickHandler

関連するアクティビティに Android/onClick ハンドラーがありません

WARNING

JUnit5AssertionsConverter(英語)

JUnit/JUnit 5 廃止されたアサーション

WARNING

JUnitMixedFramework(英語)

単一のテストケースで複数のバージョンの JUnit/JUnit API を使用する

WARNING

JUnitMalformedDeclaration(英語)

JUnit/JUnit 不正な宣言

ERROR

JUnit3StyleTestMethodInJUnit4Class(英語)

JUnit/JUnit 4 クラスの旧式 JUnit テストメソッド

WARNING

JVM の Qodana コミュニティ

いくつかのインスペクションが JVM の Qodana コミュニティリンターに実装されています。

Id

説明

重大度

WhileCanBeDoWhile(英語)

Java/ 制御フローの問題 /'while' は 'do while' に置き換えることができます

WEAK WARNING

StringConcatenationArgumentToLogCall(英語)

Java/ ロギング / ロギング呼び出しの引数としての非定数文字列の連結

WARNING

StaticMethodImportLombok(英語)

Java/Lombok/lombok 生成メソッドの静的インポートの使用

WARNING

UnreachableCode(英語)

Java/ バグの可能性 / 到達不可能なコード

WARNING

MappingBeforeCount(英語)

Java/ 冗長または冗長なコード構造 /count() の前のマッピング呼び出し

WARNING

JavaEmptyModuleInfoFile(英語)

Java/ 可視性 / 空の「module-info.java」ファイル

WARNING

LoggingSimilarMessage(英語)

JVM 言語 / ロギング / 区別できないロギング呼び出し

WEAK WARNING

JVM の Qodana コミュニティリンターで無効化されたインスペクションのリストは次のとおりです。

Id

説明

重大度

JUnit5AssertionsConverter(英語)

JUnit/JUnit 5 廃止されたアサーション

WARNING

JUnitMixedFramework(英語)

単一のテストケースで複数のバージョンの JUnit/JUnit API を使用する

WARNING

JUnitMalformedDeclaration(英語)

JUnit/JUnit 不正な宣言

ERROR

JUnit3StyleTestMethodInJUnit4Class(英語)

JUnit/JUnit 4 クラスの旧式 JUnit テストメソッド

WARNING

PHP 用の Qodana

PHP 用の Qodana リンターに実装されたインスペクションのリストは次のとおりです。

Id

説明

重大度

PhpUnitDeprecatedCallsIn11VersionInspection(英語)

PHP/PHPUnit/ メソッドは PHPUnit 11 で非推奨になりました

WARNING

PhpUnitAnnotationToAttributeInspection(英語)

PHP/PHPUnit/PHPUnit アノテーションは PHPUnit 11 では非推奨となり、属性に置き換えることができます。

WARNING

SymfonyLibraryIsNotDownloaded(英語)

PHP/Symfony/HTTP リンク用のローカルに保存されたライブラリが見つかりません

WEAK WARNING

SymfonyImportMapModuleIsNotInstalled(英語)

PHP/Symfony/ モジュールがインポートマップにインストールされていません

WEAK WARNING

PhpDqlBuilderUnknownModelInspection(英語)

PHP/ 未定義のシンボル / 補完を有効にするために DQL モデルクラスを推測できません

WEAK WARNING

HttpUrlsUsage(英語)

暗号化されていないプロトコルによるセキュリティ / リンク

WEAK WARNING

JS 用 Qodana

JS 用 Qodana リンターに実装されたインスペクションは次のとおりです。

Id

説明

重大度

HttpUrlsUsage(英語)

暗号化されていないプロトコルによるセキュリティ / リンク

WEAK WARNING

JS 用 Qodana リンターから削除されたインスペクションは次のとおりです。

Id

説明

重大度

TypeScriptValidateJSTypes(英語)

JavaScript と TypeScript/TypeScript/「any」タイプの不一致

WEAK WARNING

Python 用 Qodana

Python 用 Qodana リンターに実装されたインスペクションのリストは次のとおりです。

Id

説明

重大度

TomlUnresolvedReference(英語)

TOML/ 未解決の参照

WARNING

HttpUrlsUsage(英語)

暗号化されていないプロトコルによるセキュリティ / リンク

WEAK WARNING

PoetryPackageVersionsInspection(英語)

Python/Poetry パッケージバージョン

WARNING

Go 用 Qodana

Go 用 Qodana リンターに実装されたインスペクションは次のとおりです。

Id

説明

重大度

HttpUrlsUsage(英語)

暗号化されていないプロトコルによるセキュリティ / リンク

WEAK WARNING

.NET 用 Qodana

.NET 用 Qodana リンターに実装されたインスペクションのリストは次のとおりです。

Id

説明

重大度

CSharpWarnings__CS0809

C#/ コンパイラー警告 / 廃止メンバーが廃止されていないメンバーをオーバーライドします

WARNING

CSharpWarnings__CS9197

C#/ コンパイラー警告 / パラメーターの参照種別修飾子が、非表示メンバー内の対応するパラメーターと一致しません。

WARNING

CSharpWarnings__CS9198

C#/ コンパイラー警告 / パラメーターの参照種別修飾子がターゲット内の対応するパラメーターと一致しません。

WARNING

CSharpWarnings__CS8305

C#/ コンパイラー警告 / タイプは評価目的のみであり、将来のアップデートで変更または削除される可能性があります。

WARNING

CSharpWarnings__CS9204

C#/ コンパイラー警告 / タイプは評価目的のみであり、将来のアップデートで変更または削除される可能性があります。続行するにはこの診断を抑制してください。

WARNING

NUnit.MissingCancelAfterAttribute

C#/NUnit/NUnit。テストメソッド宣言に CancelAfter 属性がありません。

WARNING

OutParameterWithHandlesResourceDisposalAttribute

C#/ 潜在的なコード品質の問題 / 出力パラメーターに対する意味のない [HandlesResourceDisposal] アノテーション

WARNING

PossibleInvalidOperationExceptionCollectionWasModified

C#/ 潜在的なコード品質の問題 /「System.InvalidOperationException: コレクションが変更されました」の可能性あり

WARNING

Odin.OdinUnknownGroupingPath

C#/Unity/ グループパスが定義されていません

WARNING

Unity.UnityObjectNullComparison

C#/Unity/Unity オブジェクトの有効期間の暗黙的なチェック

WEAK WARNING

Odin.OdinMemberWrongGroupingAttribute

C#/Unity/ オーディンのグループ属性タイプが正しくありません

WARNING

Odin.OdinMemberPresentInMultipleGroups

C#/Unity/ メンバーは複数のグループに存在します

WARNING

CppRedundantZeroInitializerInAggregateInitialization

C++/ コードの冗長性 / 集合初期化における冗長なゼロ初期化子

WEAK WARNING

Razor.AssemblyNotResolved

Razor/ 潜在的なコード品質の問題 / 不明な Razor アセンブリ

ERROR

Xaml.InvalidDynamicResourceType

XAML/ コード通知 / 無効なタイプの XAML 動的リソース

WEAK WARNING

HttpRequestPlaceholder(英語)

HTTP クライアント /HTTP リクエスト内の '$placeholder'

WARNING

HttpRequestEnvironmentAuthConfigurationValidationInspection(英語)

HTTP クライアント / 認証構成の検証

WARNING

HttpClientInappropriateProtocolUsageInspection(英語)

HTTP クライアント / 不適切な HTTP プロトコルの使用

WEAK WARNING

IncorrectHttpHeaderInspection(英語)

HTTP クライアント / 不正な HTTP ヘッダー

WARNING

HttpRequestRequestSeparatorXmlBodyInspection(英語)

HTTP クライアント /HTML/XML 本文にリクエストセパレータがありません

WEAK WARNING

HttpRequestRequestSeparatorJsonBodyInspection(英語)

HTTP クライアント /JSON 本文にリクエストセパレータがありません

WEAK WARNING

HttpRequestRequestSeparatorYamlBodyInspection(英語)

HTTP クライアント /YAML 本文にリクエストセパレータがありません

WEAK WARNING

HttpRequestContentLengthIsIgnored(英語)

HTTP クライアント / 冗長な「Content-Length」

WARNING

HttpClientUnresolvedAuthId(英語)

HTTP クライアント / 未解決の認証識別子

ERROR

HttpClientUnresolvedVariable(英語)

HTTP クライアント / 未解決の環境変数

WARNING

HttpRequestWhitespaceInsideRequestTargetPath(英語)

HTTP クライアント / リクエスト内の URL の空白

WEAK WARNING

LoggingSimilarMessage(英語)

JVM 言語 / ロギング / 区別できないロギング呼び出し

WEAK WARNING

GrazieInspection(英語)

校正 / 文法

GRAMMAR_ERROR

LanguageDetectionInspection(英語)

校正 / 自然言語検出

WARNING

XmlUnresolvedReference(英語)

XML/ 未解決の参照

ERROR

HttpUrlsUsage(英語)

暗号化されていないプロトコルによるセキュリティ / リンク

WEAK WARNING

以下は、.NET 用 Qodana リンターから無効化または削除されたインスペクションのリストです。

Id

説明

重大度

状況

NUnit.TestCaseSourceCannotBeResolved

C#/NUnit/NUnit。TestCaseSource または ValueSource 属性内のシンボルを解決できません。

WARNING

除去

CommentTypo

C#/ スペルの問題 / コメントの誤字

WEAK WARNING

除去

IdentifierTypo

C#/ スペルの問題 / 識別子のタイプミス

WEAK WARNING

除去

StringLiteralTypo

C#/ スペルの問題 / 文字列リテラルのタイプミス

WEAK WARNING

除去

Unity.NoNullCoalescing

C#/Unity/ 基盤となる Unity エンジンオブジェクトのライフタイムチェックが意図せずバイパスされる可能性がある ('UnityEngine.Object' から派生した型の null 合体は、基礎となる Unity エンジンオブジェクトの有効期間チェックをバイパスします。)

INFORMATION

無効

Unity.NoNullPropagation

C#/Unity/ 基盤となる Unity エンジンオブジェクトのライフタイムチェックが意図せずバイパスされる可能性がある ('UnityEngine.Object' から派生した型の null 合体は、基礎となる Unity エンジンオブジェクトの有効期間チェックをバイパスします。)

INFORMATION

無効

Unity.InefficientPropertyAccess

C#/Unity/ 組み込みコンポーネントのプロパティへの繰り返しアクセスは非効率的です

INFORMATION

無効

CppClangTidyClangDiagnosticMicrosoftMutableReference

C++/Clang 診断 /microsoft-mutable-reference clang 診断

INFORMATION

無効

CppClangTidyModernizeTypeTraits

C++/Clang-Tidy チェック /modernize-type-traits clang-tidy チェック

INFORMATION

無効

MarkupAttributeTypo

XML/ スペルの問題 / マークアップ属性値のタイプミス

WEAK WARNING

除去

MarkupTextTypo

XML/ スペルの問題 / マークアップテキストの誤字

WEAK WARNING

除去

関連ページ:

FlexInspect

IntelliJ IDEA のバージョン 2024.1 以降では、IntelliJ API と Kotlin を使用して、プロジェクト固有の独自のインスペクションを開発できます。次のことが可能です。ソースコードの PSI 表現にアクセスします。新しいインスペクションをオンザフライでデバッグします。期待どおりに動作しないコードフラグメントのハイライトなど、新しいカスタムインスペクションの動作を観察します。FlexInspect を使用すると、すべての IntelliJ IDEA および Qodana イ...

シェルコマンド

このセクションでは、Qodana の Docker イメージと Qodana CLI ツールを構成する方法について説明します。どちらのツールもローカルと CI/CD パイプラインで使用できます。いくつかのオプションは、Qodana CLI でのみ使用できます。場合によっては、このセクションでも説明されているファイルを使用して構成できます。Qodana のバージョン 2022.3 以降、Ultimate と Ultimate Plus リンターではプロジェクトトークンを参照するために変数が必要です。Qoda...

ライセンス監査

プロジェクトのライセンスが依存関係のライセンスと互換性があることを確認するのは決して簡単な作業ではありませんが、これは法的な目的のために必要です。このプロセスを自動化して間違いを避けるために、現在いくつかの Qodana リンターによってサポートされているライセンス監査機能を使用できます。JVM 用 QodanaMaven および GradlePHP 用の QodanaComposerJS 用 Qodananpm および YarnPython 用 QodanapipGo 用 QodanaGo モ...