Qodana 2023.3 Help

New in version 2023.3

Version 2023.3 of Qodana contains new things, such as:

Inspection update

Several new inspections are now available across all Qodana linters as per 2023.3:

Id

Description

Severity

Default mode

CssInvalidCustomPropertyAtRuleName

Invalid @property name

ERROR

Disabled

CssInvalidCustomPropertyAtRuleDeclaration

Invalid @property declaration

ERROR

Disabled

This inspection was removed from all linters.

Id

Description

Severity

Default mode

VulnerableLibrariesGlobal

Vulnerable imported dependency

WARNING

Disabled

Qodana for JVM

Several inspections have been added to the Qodana for JVM linter:

Id

Description

Severity

Default mode

CssInvalidCustomPropertyAtRuleName

Invalid @property name

ERROR

Disabled

CssInvalidCustomPropertyAtRuleDeclaration

Invalid @property declaration

ERROR

Disabled

HibernateFindAnnotationInspection

Incorrect use of @Find annotation

ERROR

Disabled

SystemGetProperty

Call to System.getProperty(str) could be simplified

WARNING

Disabled

SequencedCollectionMethodCanBeUsed

SequencedCollection method can be used

WARNING

Disabled

StringTemplateMigration

String template can be used

WARNING

Disabled

LombokSetterMayBeUsed

Lombok @Setter may be used

WARNING

Disabled

RedundantEmbeddedExpression

Redundant embedded expression in string template

WARNING

Disabled

NpmVulnerableApiCode

Vulnerable API usage

WARNING

Disabled

FilterIsInstanceCallWithClassLiteralArgument

filterIsInstance call with a class literal argument

WEAK WARNING

Disabled

KtorOpenApiUpdate

OpenAPI documentation for current module is outdated

WARNING

Disabled

KtorYamlConfig

Ktor application.yaml

WARNING

Disabled

UnknownIdInMetaInformation

Unknown inspection id in meta information

ERROR

Disabled

ActionPresentationInstantiatedInCtor

Eager creation of action presentation

WARNING

Disabled

ApplicationServiceAsStaticFinalFieldOrProperty

Application service assigned to a static final field or immutable property

WARNING

Disabled

IncorrectServiceRetrieving

Incorrect service retrieving

ERROR

Disabled

ListenerImplementationMustNotBeDisposable

Listener implementation implements Disposable

ERROR

Disabled

SimplifiableServiceRetrieving

Simplifiable service retrieving

WEAK WARNING

Disabled

StaticInitializationInExtensions

Static initialization in extension point implementations

WARNING

Disabled

UsePlatformProcessAwaitExit

Use com.intellij.util.io.ProcessKt.awaitExit()

ERROR

Disabled

SpringScheduledMethodsInspection

Incorrectly referenced bean in @Scheduled annotation

ERROR

Enabled

SpringSecurityPreFilterMethodCallsInspection

@PreFilter self-invocation method calls

WARNING

Enabled

Here is the list of inspections that are no longer present in the Qodana for JVM linter:

Id

Description

Severity

Default mode

AntDuplicateTargetsInspection

Duplicate targets

ERROR

Disabled

AntMissingPropertiesFileInspection

Missing properties file

ERROR

Disabled

AntResolveInspection

Ant references resolve problems

ERROR

Disabled

JavaAnnotator

Java annotator

ERROR

Disabled

JSConstructorReturnsPrimitive

Constructor returns primitive value

WARNING

Disabled

ActionPresentationInitializedInCtor

Eager creation of action presentation

WARNING

Disabled

ApplicationServiceAsStaticFinalField

Application service assigned to a static final field/property

WARNING

Disabled

RetrievingService

Incorrect or simplifiable retrieving service

ERROR

Disabled

UseCouple

Use Couple instead of Pair

WARNING

Disabled

SpringFacetProgrammaticInspection

Spring facet programmatic configuration

WEAK WARNING

Enabled

Qodana Community for Android

Several inspections have been added to the Qodana Community for Android linter:

Id

Description

Severity

Default mode

SystemGetProperty

Call to System.getProperty(str) could be simplified

WARNING

Enabled

SequencedCollectionMethodCanBeUsed

SequencedCollection method can be used

WARNING

Disabled

StringTemplateMigration

String template can be used

WARNING

Disabled

RedundantEmbeddedExpression

Redundant embedded expression in string template

WARNING

Disabled

FilterIsInstanceCallWithClassLiteralArgument

filterIsInstance call with a class literal argument

WEAK WARNING

Disabled

Qodana for Go

Several inspections have been added to the Qodana for Go linter:

Id

Description

Severity

Default mode

CssInvalidCustomPropertyAtRuleDeclaration

Invalid @property declaration

ERROR

Disabled

CssInvalidCustomPropertyAtRuleName

Invalid @property name

ERROR

Disabled

GoSwitchMissingCasesForIotaConsts

Missing case statements for iota consts in switch

WARNING

Enabled

NpmVulnerableApiCode

Vulnerable API usage

WARNING

Enabled

Here is the list of inspections that are no longer present in the Qodana for Go linter:

Id

Description

Severity

Default mode

JSConstructorReturnsPrimitive

Constructor returns primitive value

WARNING

Disabled

VulnerableLibrariesGlobal

Vulnerable imported dependency

WARNING

Disabled

Qodana for JS

Several inspections have been added to the Qodana for JS linter:

Id

Description

Severity

Default mode

AngularBindingTypeMismatch

Invalid binding type

ERROR

Disabled

AngularInaccessibleSymbol

Inaccessible component member or directive input

ERROR

Disabled

AngularNonStandaloneComponentImports

Invalid usage of imports in non-standalone components

ERROR

Disabled

CssInvalidCustomPropertyAtRuleDeclaration

Invalid @property declaration

ERROR

Disabled

CssInvalidCustomPropertyAtRuleName

Invalid @property name

ERROR

Disabled

NpmVulnerableApiCode

Vulnerable API usage

WARNING

Enabled

Here is the list of inspections that are no longer present in the Qodana for JS linter:

Id

Description

Severity

Default mode

AngularInaccessibleComponentMemberInAotMode

Inaccessible component member in AOT mode

WARNING

Disabled

JSConstructorReturnsPrimitive

Constructor returns primitive value

WARNING

Disabled

VulnerableLibrariesGlobal

Vulnerable imported dependency

WARNING

Disabled

Qodana for PHP

Several inspections have been added to the Qodana for PHP linter:

Id

Description

Severity

Default mode

CssInvalidCustomPropertyAtRuleDeclaration

Invalid @property declaration

ERROR

Disabled

CssInvalidCustomPropertyAtRuleName

Invalid @property name

ERROR

Disabled

PhpOverriddenMethodExistsInspection

Method does not override the method from its superclass

ERROR

Enabled

PhpConvertToJsonValidateInspection

json_decode() and json_last_error() can be converted to json_validate()

WEAK WARNING

Disabled

PhpFieldReferenceDoesNotMatchObjectShapeInspection

Field reference does not match object shape

WEAK WARNING

Disabled

Here is the list of inspections that are no longer present in the Qodana for PHP linter:

Id

Description

Severity

Default mode

JSConstructorReturnsPrimitive

Constructor returns primitive value

WARNING

Disabled

Qodana for Python

Several inspections have been added to the Qodana for Python linter:

Id

Description

Severity

Default mode

CssInvalidCustomPropertyAtRuleDeclaration

Invalid @property declaration

ERROR

Disabled

CssInvalidCustomPropertyAtRuleName

Invalid @property name

ERROR

Disabled

NpmVulnerableApiCode

Vulnerable API usage

WARNING

Disabled

PyNewStyleGenericSyntaxInspection

Invalid usage of new-style type parameters and type aliases

WARNING

Enabled

PyOverridesInspection

Invalid usages of @override decorator

WARNING

Enabled

PyTestUnpassedFixtureInspection

Fixture is not requested by test functions

WARNING

Enabled

PyVulnerableApiCodeInspection

Vulnerable API usage

WARNING

Enabled

Here is the list of inspections that are no longer present in the Qodana for Python linter:

Id

Description

Severity

Default mode

JSConstructorReturnsPrimitive

Constructor returns primitive value

WARNING

Disabled

JupyterPackageInspection

The jupyter package is not installed

WARNING

Disabled

VulnerableLibrariesGlobal

Vulnerable imported dependency

WARNING

Disabled

Qodana for .NET

Several inspections have been added to the Qodana for .NET linter:

Id

Description

Severity

Default mode

CanSimplifyDictionaryRemovingWithSingleCall

Dictionary item removing can be simplified with single Remove

WEAK WARNING

Enabled

CanSimplifyDictionaryTryGetValueWithGetValueOrDefault

Dictionary lookup can be simplified with GetValueOrDefault

WEAK WARNING

Enabled

CanSimplifySetAddingWithSingleCall

Can simplify Contains before Add

WEAK WARNING

Enabled

ReplaceAsyncWithTaskReturn

Replace async code with Task-return

WEAK WARNING

Enabled

CSharpWarnings__CS0728

Possibly incorrect assignment to local which is the argument to a using or lock statement

WARNING

Enabled

CSharpWarnings__CS9107

Parameter is captured into the state of the enclosing type and its value is also passed to the base constructor. The value might be captured by the base class as well.

WARNING

Enabled

CSharpWarnings__CS9124

Parameter is captured into the state of the enclosing type and its value is also used to initialize a field, property, or event.

WARNING

Enabled

CSharpWarnings__CS9179

Primary constructor parameter is shadowed by a member from base type.

WARNING

Enabled

CSharpWarnings__CS9181

Inline array indexer will not be used for element access expression.

WARNING

Enabled

CSharpWarnings__CS9182

Inline array Slice method will not be used for element access expression.

WARNING

Enabled

CSharpWarnings__CS9183

Inline array conversion operator will not be used for conversion from expression of the declaring type.

WARNING

Enabled

CSharpWarnings__CS9184

Inline arrays language feature is not supported for inline array types with element field which is either a ref field, or has type that is not valid as a type argument.

WARNING

Enabled

CSharpWarnings__CS9191

The ref modifier for an argument corresponding to in parameter is equivalent to in. Consider using in instead.

WARNING

Enabled

CSharpWarnings__CS9192

The ref modifier for an argument corresponding to in parameter is equivalent to in. Consider using in instead.

WARNING

Enabled

CSharpWarnings__CS9193

Argument should be a variable because it is passed to a ref readonly parameter.

WARNING

Enabled

CSharpWarnings__CS9195

Argument should be passed with the in keyword.

WARNING

Enabled

CSharpWarnings__CS9196

Reference kind modifier of parameter doesn't match the corresponding parameter in overridden or implemented member.

WARNING

Enabled

CSharpWarnings__CS9200

A default value is specified for ref readonly parameter, but ref readonly should be used only for references. Consider declaring the parameter as in.

WARNING

Enabled

EntityFramework.ClientSideDbFunctionCall

Database function must not be called in non-database context

WARNING

Enabled

EntityFramework.ModelValidation.CircularDependency

The relationship defined by this property contributes to a dependency loop

WARNING

Enabled

EntityFramework.ModelValidation.UnlimitedStringLength

Possible performance issues due to unlimited string length

WARNING

Enabled

EntityFramework.UnsupportedServerSideFunctionCall

Function is not convertible to SQL and must not be called in the database context

WARNING

Enabled

UseCollectionExpression

Use collection expression syntax

WEAK WARNING

Enabled

UseSymbolAlias

Use alias

TYPO

Enabled

ConstructorWithMustDisposeResourceAttributeBaseIsNotAnnotated

[MustDisposeResource] annotation is not inherited from the base constructor and should be placed explicitly

WARNING

Enabled

DisposeOnUsingVariable

Disposal of a variable already captured by the using statement

WARNING

Enabled

InParameterWithMustDisposeResourceAttribute

Meaningless [MustDisposeResource] annotation for an input parameter

WARNING

Enabled

LocalVariableHidesPrimaryConstructorParameter

Local variable hides primary constructor parameter

WARNING

Enabled

ObjectProducedWithMustDisposeAnnotatedMethodIsNotDisposed

Return value of a method annotated with [MustDisposeResource] is never disposed

WARNING

Enabled

ObjectProducedWithMustDisposeAnnotatedMethodIsReturned

Return value must be disposed but the method or function is not annotated with [MustDisposeResource]

WARNING

Enabled

ObjectProducedWithMustDisposeAnnotatedMethodIsReturnedByProperty

Return value of a property must be disposed by the callee

WARNING

Enabled

ParameterHidesPrimaryConstructorParameter

Parameter hides primary constructor parameter

WARNING

Enabled

VoidMethodWithMustDisposeResourceAttribute

void method is annotated with the [MustDisposeResource] attribute

WARNING

Enabled

VulnerableApi

Vulnerable API usage

WARNING

Enabled

CppClangTidyClangDiagnosticCoroNonAlignedAllocationFunction

No description

WARNING

Enabled

CppClangTidyClangDiagnosticCpp23DefaultCompRelaxedConstexpr

No description

WARNING

Enabled

CppClangTidyClangDiagnosticCpp23Extensions

No description

WARNING

Enabled

CppClangTidyClangDiagnosticCpp26Extensions

No description

WARNING

Enabled

CppClangTidyClangDiagnosticCpp2cExtensions

No description

WARNING

Enabled

CppClangTidyClangDiagnosticDeprecatedLiteralOperator

No description

WARNING

Enabled

CppClangTidyClangDiagnosticDeprecatedRedundantConstexprStaticDef

No description

WARNING

Enabled

CppClangTidyClangDiagnosticDxilValidation

No description

WARNING

Enabled

CppClangTidyClangDiagnosticEagerLoadCxxNamedModules

No description

WARNING

Enabled

CppClangTidyClangDiagnosticGenericTypeExtension

No description

WARNING

Enabled

CppClangTidyClangDiagnosticHipOmpTargetDirectives

No description

WARNING

Enabled

CppClangTidyClangDiagnosticInvalidStaticAssertMessage

No description

WARNING

Enabled

CppClangTidyClangDiagnosticInvalidUnevaluatedString

No description

WARNING

Enabled

CppClangTidyClangDiagnosticMicrosoftInitFromPredefined

No description

WARNING

Enabled

CppClangTidyClangDiagnosticMissingMultilib

No description

WARNING

Enabled

CppClangTidyClangDiagnosticMultiGpu

No description

WARNING

Enabled

CppClangTidyClangDiagnosticReservedModuleIdentifier

No description

WARNING

Enabled

CppClangTidyClangDiagnosticSyncAlignment

No description

WARNING

Enabled

CppClangTidyBugproneEmptyCatch

No description

WARNING

Enabled

CppClangTidyBugproneMultipleNewInOneExpression

No description

WARNING

Enabled

CppClangTidyBugproneNonZeroEnumToBoolConversion

No description

WARNING

Enabled

CppClangTidyBugproneUniquePtrArrayMismatch

No description

WARNING

Enabled

CppClangTidyBugproneUnsafeFunctions

No description

WARNING

Enabled

CppClangTidyCppcoreguidelinesAvoidCapturingLambdaCoroutines

No description

WARNING

Enabled

CppClangTidyCppcoreguidelinesMisleadingCaptureDefaultByValue

No description

WARNING

Enabled

CppClangTidyCppcoreguidelinesMissingStdForward

No description

WARNING

Enabled

CppClangTidyCppcoreguidelinesNoexceptDestructor

No description

WARNING

Enabled

CppClangTidyCppcoreguidelinesNoexceptMoveOperations

No description

WARNING

Enabled

CppClangTidyCppcoreguidelinesNoexceptSwap

No description

WARNING

Enabled

CppClangTidyCppcoreguidelinesRvalueReferenceParamNotMoved

No description

WARNING

Enabled

CppClangTidyMiscHeaderIncludeCycle

No description

WARNING

Enabled

CppClangTidyModernizeTypeTraits

No description

WEAK WARNING

Enabled

CppClangTidyModernizeUseStdPrint

No description

WEAK WARNING

Enabled

CppClangTidyPerformanceAvoidEndl

No description

WARNING

Enabled

CppClangTidyPerformanceNoexceptDestructor

No description

WARNING

Enabled

CppClangTidyPerformanceNoexceptSwap

No description

WARNING

Enabled

CppClangTidyReadabilityAvoidUnconditionalPreprocessorIf

No description

WARNING

Enabled

CppClangTidyReadabilityOperatorsRepresentation

No description

WEAK WARNING

Enabled

CppMultiCharacterLiteral

Multi-character character literal

WARNING

Enabled

CppMultiCharacterWideLiteral

Multi-character wide character literal

WARNING

Enabled

CppUnmatchedPragmaEndRegionDirective

Missing a matching #pragma region directive

WARNING

Enabled

CppUnmatchedPragmaRegionDirective

Missing a matching #pragma endregion directive

WARNING

Enabled

CppConditionalExpressionCanBeSimplified

Conditional expression can be simplified

WEAK WARNING

Enabled

CppRedundantConditionalExpression

Redundant conditional expression

WEAK WARNING

Enabled

CppRedundantExportKeyword

Keyword export is redundant, because there is enclosing export declaration

WARNING

Enabled

CppBoundToDelegateMethodIsNotMarkedAsUFunction

Method bound to delegate is not marked with UFUNCTION macro

WARNING

Enabled

CssInvalidCustomPropertyAtRuleDeclaration

Invalid @property declaration

ERROR

Disabled

CssInvalidCustomPropertyAtRuleName

Invalid @property name

ERROR

Disabled

NetCoverageInspection

Check .NET source code coverage

WARNING

Disabled

CheckDependencyLicenses

Check dependency licenses

WARNING

Disabled

CheckModuleLicenses

Check module licenses

WARNING

Disabled

CheckThirdPartySoftwareList

Check third party software list

WARNING

Disabled

Here is the list of inspections that are no longer present in the Qodana for .NET linter:

Id

Description

Severity

Default mode

GenericEnumeratorNotDisposed

Instance of IEnumerator is never disposed

WARNING

Enabled

RedundantSetContainsBeforeAdding

Redundant set Contains before Add

WARNING

Enabled

CppClangTidyClangDiagnosticCoroNonAlignedAllocationFunciton

No description

WARNING

Enabled

CppClangTidyClangDiagnosticDeprecatedExperimentalCoroutine

No description

WARNING

Enabled

CppClangTidyClangDiagnosticExportUsingDirective

No description

WARNING

Enabled

JSConstructorReturnsPrimitive

Constructor returns primitive value

WARNING

Disabled

Last modified: 29 February 2024