blob: 618ea3ea52282f0b4975d52acc214b6584d5b6d2 [file] [log] [blame]
<!--
~ Copyright (C) 2019 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<idea-plugin>
<!-- IDE support for running Android Lint (which despite the name is not Android specific and -->
<!-- can warn about general programming issues in Kotlin and Java source files, Gradle files, etc). -->
<extensionPoints>
<extensionPoint qualifiedName="com.android.tools.idea.lint.common.lintIdeSupport"
interface="com.android.tools.idea.lint.common.LintIdeSupport"/>
<extensionPoint qualifiedName="com.android.tools.idea.lint.common.lintQuickFixProvider"
interface="com.android.tools.idea.lint.common.LintIdeQuickFixProvider" />
<extensionPoint qualifiedName="com.android.tools.idea.lint.common.updateDepsProvider"
interface="com.android.tools.idea.lint.common.DependencyUpdateProvider" />
</extensionPoints>
<extensions defaultExtensionNs="com.intellij">
<codeInsight.linkHandler prefix="#lint/" handlerClass="com.android.tools.idea.lint.common.LintInspectionDescriptionLinkHandler"/>
<codeInspection.InspectionExtension implementation="com.android.tools.idea.lint.common.LintInspectionExtensionsFactory"/>
<externalAnnotator language="JAVA" implementationClass="com.android.tools.idea.lint.common.LintExternalAnnotator"/>
<externalAnnotator language="kotlin" implementationClass="com.android.tools.idea.lint.common.LintExternalAnnotator"/>
<externalAnnotator language="XML" implementationClass="com.android.tools.idea.lint.common.LintExternalAnnotator"/>
<externalAnnotator language="TEXT" implementationClass="com.android.tools.idea.lint.common.LintExternalAnnotator"/>
<externalAnnotator language="Groovy" implementationClass="com.android.tools.idea.lint.common.LintExternalAnnotator"/>
<externalAnnotator language="Properties" implementationClass="com.android.tools.idea.lint.common.LintExternalAnnotator"/>
<externalAnnotator language="TOML" implementationClass="com.android.tools.idea.lint.common.LintExternalAnnotator"/>
<externalAnnotator language="Declarative" implementationClass="com.android.tools.idea.lint.common.LintExternalAnnotator"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintAccidentalOctal" groupName="Android Lint: Correctness" displayName="Accidental Octal" bundle="messages.LintBundle" enabledByDefault="true" level="ERROR" implementationClass="com.android.tools.idea.lint.common.AndroidLintAccidentalOctalInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintAssertionSideEffect" groupName="Android Lint: Performance" displayName="Assertions with Side Effects" bundle="messages.LintBundle" enabledByDefault="true" level="WARNING" implementationClass="com.android.tools.idea.lint.common.AndroidLintAssertionSideEffectInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintBadHostnameVerifier" groupName="Android Lint: Security" displayName="Insecure HostnameVerifier" bundle="messages.LintBundle" enabledByDefault="true" level="WARNING" implementationClass="com.android.tools.idea.lint.common.AndroidLintBadHostnameVerifierInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintBidiSpoofing" groupName="Android Lint: Security" displayName="Bidirectional text spoofing" bundle="messages.LintBundle" enabledByDefault="true" level="ERROR" implementationClass="com.android.tools.idea.lint.common.AndroidLintBidiSpoofingInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintBuildListAdds" groupName="Android Lint: Correctness" displayName="Missing add call in buildList" bundle="messages.LintBundle" enabledByDefault="true" level="WARNING" implementationClass="com.android.tools.idea.lint.common.AndroidLintBuildListAddsInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintCheckResult" groupName="Android Lint: Correctness" displayName="Ignoring results" bundle="messages.LintBundle" enabledByDefault="true" level="WARNING" implementationClass="com.android.tools.idea.lint.common.AndroidLintCheckResultInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintDefaultLocale" groupName="Android Lint: Correctness" displayName="Implied default locale in case conversion" bundle="messages.LintBundle" enabledByDefault="true" level="WARNING" implementationClass="com.android.tools.idea.lint.common.AndroidLintDefaultLocaleInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintDiscouragedApi" groupName="Android Lint: Correctness" displayName="Using discouraged APIs" bundle="messages.LintBundle" enabledByDefault="true" level="WARNING" implementationClass="com.android.tools.idea.lint.common.AndroidLintDiscouragedApiInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintEasterEgg" groupName="Android Lint: Security" displayName="Code contains easter egg" bundle="messages.LintBundle" enabledByDefault="false" level="WARNING" implementationClass="com.android.tools.idea.lint.common.AndroidLintEasterEggInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintEmptySuperCall" groupName="Android Lint: Correctness" displayName="Calling an empty super method" bundle="messages.LintBundle" enabledByDefault="true" level="WARNING" implementationClass="com.android.tools.idea.lint.common.AndroidLintEmptySuperCallInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintExpensiveAssertion" groupName="Android Lint: Performance" displayName="Expensive Assertions" bundle="messages.LintBundle" enabledByDefault="false" level="WARNING" implementationClass="com.android.tools.idea.lint.common.AndroidLintExpensiveAssertionInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintFileEndsWithExt" groupName="Android Lint: Correctness" displayName="File endsWith on file extensions" bundle="messages.LintBundle" enabledByDefault="true" level="WARNING" implementationClass="com.android.tools.idea.lint.common.AndroidLintFileEndsWithExtInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintGradleDependency" groupName="Android Lint: Correctness" displayName="Obsolete Gradle Dependency" bundle="messages.LintBundle" enabledByDefault="true" level="WARNING" implementationClass="com.android.tools.idea.lint.common.AndroidLintGradleDependencyInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintGradleDeprecatedConfiguration" groupName="Android Lint: Correctness" displayName="Deprecated Gradle Configuration" bundle="messages.LintBundle" enabledByDefault="true" level="WARNING" implementationClass="com.android.tools.idea.lint.common.AndroidLintGradleDeprecatedConfigurationInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintGradleDynamicVersion" groupName="Android Lint: Correctness" displayName="Gradle Dynamic Version" bundle="messages.LintBundle" enabledByDefault="true" level="WARNING" implementationClass="com.android.tools.idea.lint.common.AndroidLintGradleDynamicVersionInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintGradleIdeError" groupName="Android Lint: Correctness" displayName="Gradle IDE Support Issues" bundle="messages.LintBundle" enabledByDefault="true" level="ERROR" implementationClass="com.android.tools.idea.lint.common.AndroidLintGradleIdeErrorInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintGradlePath" groupName="Android Lint: Correctness" displayName="Gradle Path Issues" bundle="messages.LintBundle" enabledByDefault="true" level="WARNING" implementationClass="com.android.tools.idea.lint.common.AndroidLintGradlePathInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintIgnoreWithoutReason" groupName="Android Lint: Testing" displayName="@Ignore without Reason" bundle="messages.LintBundle" enabledByDefault="true" level="WARNING" implementationClass="com.android.tools.idea.lint.common.AndroidLintIgnoreWithoutReasonInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintImplicitSamInstance" groupName="Android Lint: Correctness" displayName="Implicit SAM Instances" bundle="messages.LintBundle" enabledByDefault="true" level="WARNING" implementationClass="com.android.tools.idea.lint.common.AndroidLintImplicitSamInstanceInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintJavaPluginLanguageLevel" groupName="Android Lint: Interoperability" displayName="No Explicit Java Language Level Given" bundle="messages.LintBundle" enabledByDefault="true" level="WARNING" implementationClass="com.android.tools.idea.lint.common.AndroidLintJavaPluginLanguageLevelInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintJcenterRepositoryObsolete" groupName="Android Lint: Correctness" displayName="JCenter Maven repository is read-only" bundle="messages.LintBundle" enabledByDefault="true" level="WARNING" implementationClass="com.android.tools.idea.lint.common.AndroidLintJcenterRepositoryObsoleteInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintKotlinPropertyAccess" groupName="Android Lint: Interoperability" displayName="Kotlin Property Access" bundle="messages.LintBundle" enabledByDefault="false" level="WARNING" implementationClass="com.android.tools.idea.lint.common.AndroidLintKotlinPropertyAccessInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintLambdaLast" groupName="Android Lint: Interoperability" displayName="Lambda Parameters Last" bundle="messages.LintBundle" enabledByDefault="false" level="WARNING" implementationClass="com.android.tools.idea.lint.common.AndroidLintLambdaLastInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintLocalSuppress" groupName="Android Lint: Correctness" displayName="@SuppressLint on invalid element" bundle="messages.LintBundle" enabledByDefault="true" level="ERROR" implementationClass="com.android.tools.idea.lint.common.AndroidLintLocalSuppressInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintMemberExtensionConflict" groupName="Android Lint: Correctness" displayName="Conflict applicable candidates of member and extension" bundle="messages.LintBundle" enabledByDefault="false" level="WARNING" implementationClass="com.android.tools.idea.lint.common.AndroidLintMemberExtensionConflictInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintMergeMarker" groupName="Android Lint: Correctness" displayName="Code contains merge marker" bundle="messages.LintBundle" enabledByDefault="true" level="ERROR" implementationClass="com.android.tools.idea.lint.common.AndroidLintMergeMarkerInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintMissingSuperCall" groupName="Android Lint: Correctness" displayName="Missing Super Call" bundle="messages.LintBundle" enabledByDefault="true" level="ERROR" implementationClass="com.android.tools.idea.lint.common.AndroidLintMissingSuperCallInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintNewerVersionAvailable" groupName="Android Lint: Correctness" displayName="Newer Library Versions Available" bundle="messages.LintBundle" enabledByDefault="true" level="WARNING" implementationClass="com.android.tools.idea.lint.common.AndroidLintNewerVersionAvailableInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintNoHardKeywords" groupName="Android Lint: Interoperability" displayName="No Hard Kotlin Keywords" bundle="messages.LintBundle" enabledByDefault="false" level="WARNING" implementationClass="com.android.tools.idea.lint.common.AndroidLintNoHardKeywordsInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintNoOp" groupName="Android Lint: Correctness" displayName="NoOp Code" bundle="messages.LintBundle" enabledByDefault="false" level="WARNING" implementationClass="com.android.tools.idea.lint.common.AndroidLintNoOpInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintNotConstructor" groupName="Android Lint: Correctness" displayName="Not a Constructor" bundle="messages.LintBundle" enabledByDefault="true" level="WARNING" implementationClass="com.android.tools.idea.lint.common.AndroidLintNotConstructorInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintNotInterpolated" groupName="Android Lint: Correctness" displayName="Incorrect Interpolation" bundle="messages.LintBundle" enabledByDefault="true" level="ERROR" implementationClass="com.android.tools.idea.lint.common.AndroidLintNotInterpolatedInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintOpenForTesting" groupName="Android Lint: Correctness" displayName="Extending API only allowed from tests" bundle="messages.LintBundle" enabledByDefault="true" level="ERROR" implementationClass="com.android.tools.idea.lint.common.AndroidLintOpenForTestingInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintPropertyEscape" groupName="Android Lint: Correctness" displayName="Incorrect property escapes" bundle="messages.LintBundle" enabledByDefault="true" level="ERROR" implementationClass="com.android.tools.idea.lint.common.AndroidLintPropertyEscapeInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintProxyPassword" groupName="Android Lint: Security" displayName="Proxy Password in Cleartext" bundle="messages.LintBundle" enabledByDefault="true" level="WARNING" implementationClass="com.android.tools.idea.lint.common.AndroidLintProxyPasswordInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintRange" groupName="Android Lint: Correctness" displayName="Outside Range" bundle="messages.LintBundle" enabledByDefault="true" level="ERROR" implementationClass="com.android.tools.idea.lint.common.AndroidLintRangeInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintRestrictedApi" groupName="Android Lint: Correctness" displayName="Restricted API" bundle="messages.LintBundle" enabledByDefault="true" level="ERROR" implementationClass="com.android.tools.idea.lint.common.AndroidLintRestrictedApiInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintReturnThis" groupName="Android Lint: Correctness" displayName="Method must return this" bundle="messages.LintBundle" enabledByDefault="true" level="ERROR" implementationClass="com.android.tools.idea.lint.common.AndroidLintReturnThisInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintSecretInSource" groupName="Android Lint: Security" displayName="Secret in source code" bundle="messages.LintBundle" enabledByDefault="true" level="WARNING" implementationClass="com.android.tools.idea.lint.common.AndroidLintSecretInSourceInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintSecureRandom" groupName="Android Lint: Security" displayName="Using a fixed seed with SecureRandom" bundle="messages.LintBundle" enabledByDefault="true" level="WARNING" implementationClass="com.android.tools.idea.lint.common.AndroidLintSecureRandomInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintShiftFlags" groupName="Android Lint: Correctness" displayName="Dangerous Flag Constant Declaration" bundle="messages.LintBundle" enabledByDefault="true" level="WARNING" implementationClass="com.android.tools.idea.lint.common.AndroidLintShiftFlagsInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintSimilarGradleDependency" groupName="Android Lint: Correctness" displayName="Multiple Versions Gradle Dependency" bundle="messages.LintBundle" enabledByDefault="true" level="WEAK WARNING" implementationClass="com.android.tools.idea.lint.common.AndroidLintSimilarGradleDependencyInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintSimpleDateFormat" groupName="Android Lint: Correctness" displayName="Implied locale in date format" bundle="messages.LintBundle" enabledByDefault="true" level="WARNING" implementationClass="com.android.tools.idea.lint.common.AndroidLintSimpleDateFormatInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintSQLiteString" groupName="Android Lint: Correctness" displayName="Using STRING instead of TEXT" bundle="messages.LintBundle" enabledByDefault="true" level="WARNING" implementationClass="com.android.tools.idea.lint.common.AndroidLintSQLiteStringInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintStopShip" groupName="Android Lint: Correctness" displayName="Code contains STOPSHIP marker" bundle="messages.LintBundle" enabledByDefault="false" level="ERROR" implementationClass="com.android.tools.idea.lint.common.AndroidLintStopShipInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintSupportAnnotationUsage" groupName="Android Lint: Correctness" displayName="Incorrect support annotation usage" bundle="messages.LintBundle" enabledByDefault="true" level="ERROR" implementationClass="com.android.tools.idea.lint.common.AndroidLintSupportAnnotationUsageInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintSuspiciousIndentation" groupName="Android Lint: Correctness" displayName="Suspicious indentation" bundle="messages.LintBundle" enabledByDefault="true" level="ERROR" implementationClass="com.android.tools.idea.lint.common.AndroidLintSuspiciousIndentationInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintTrimLambda" groupName="Android Lint: Correctness" displayName="Unnecessary lambda with trim()" bundle="messages.LintBundle" enabledByDefault="true" level="WEAK WARNING" implementationClass="com.android.tools.idea.lint.common.AndroidLintTrimLambdaInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintUnknownNullness" groupName="Android Lint: Interoperability" displayName="Unknown nullness" bundle="messages.LintBundle" enabledByDefault="false" level="WARNING" implementationClass="com.android.tools.idea.lint.common.AndroidLintUnknownNullnessInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintUnnecessaryArrayInit" groupName="Android Lint: Performance" displayName="Unnecessary array initialization" bundle="messages.LintBundle" enabledByDefault="true" level="WEAK WARNING" implementationClass="com.android.tools.idea.lint.common.AndroidLintUnnecessaryArrayInitInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintUseTomlInstead" groupName="Android Lint: Productivity" displayName="Use TOML Version Catalog Instead" bundle="messages.LintBundle" enabledByDefault="true" level="WARNING" implementationClass="com.android.tools.idea.lint.common.AndroidLintUseTomlInsteadInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintUseValueOf" groupName="Android Lint: Performance" displayName="Should use valueOf instead of new" bundle="messages.LintBundle" enabledByDefault="true" level="WARNING" implementationClass="com.android.tools.idea.lint.common.AndroidLintUseValueOfInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintUsingHttp" groupName="Android Lint: Security" displayName="Using HTTP instead of HTTPS" bundle="messages.LintBundle" enabledByDefault="true" level="WARNING" implementationClass="com.android.tools.idea.lint.common.AndroidLintUsingHttpInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintVisibleForTests" groupName="Android Lint: Correctness" displayName="Visible Only For Tests" bundle="messages.LintBundle" enabledByDefault="true" level="WARNING" implementationClass="com.android.tools.idea.lint.common.AndroidLintVisibleForTestsInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintWeekBasedYear" groupName="Android Lint: Internationalization" displayName="Week Based Year" bundle="messages.LintBundle" enabledByDefault="true" level="WARNING" implementationClass="com.android.tools.idea.lint.common.AndroidLintWeekBasedYearInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintWrongCommentType" groupName="Android Lint: Correctness" displayName="Wrong Comment Type" bundle="messages.LintBundle" enabledByDefault="true" level="WARNING" implementationClass="com.android.tools.idea.lint.common.AndroidLintWrongCommentTypeInspection"/>
<globalInspection hasStaticDescription="true" shortName="AndroidLintWrongGradleMethod" groupName="Android Lint: Correctness" displayName="Wrong Gradle method invoked" bundle="messages.LintBundle" enabledByDefault="true" level="ERROR" implementationClass="com.android.tools.idea.lint.common.AndroidLintWrongGradleMethodInspection"/>
<notificationGroup id="Wrote Baseline" displayType="BALLOON"/>
<lang.inspectionSuppressor
language="Groovy"
implementationClass="com.android.tools.idea.lint.common.AndroidLintJcenterInspectionSuppressor"/>
</extensions>
</idea-plugin>