| <?xml version="1.0" encoding="UTF-8"?> |
| <issues format="6" by="lint 8.3.0-dev" type="baseline" client="" dependencies="true" name="" variant="all" version="8.3.0-dev"> |
| |
| <issue |
| id="DefaultLocale" |
| message="Implicitly using the default locale is a common source of bugs: Use `String.format(Locale, ...)` instead" |
| errorLine1=" return String.format("mcc%1$d", code); //$NON-NLS-1$" |
| errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/resources/configuration/CountryCodeQualifier.java" |
| line="68" |
| column="20"/> |
| </issue> |
| |
| <issue |
| id="DefaultLocale" |
| message="Implicitly using the default locale is a common source of bugs: Use `String.format(Locale, ...)` instead" |
| errorLine1=" return String.format("MCC %1$d", mCode);" |
| errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/resources/configuration/CountryCodeQualifier.java" |
| line="147" |
| column="20"/> |
| </issue> |
| |
| <issue |
| id="DefaultLocale" |
| message="Implicitly using the default locale is a common source of bugs: Use `toLowerCase(Locale)` instead. For strings meant to be internal use `Locale.ROOT`, otherwise `Locale.getDefault()`." |
| errorLine1=" .get(in.nextString().toLowerCase());" |
| errorLine2=" ~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/blame/MessageJsonSerializer.java" |
| line="170" |
| column="46"/> |
| </issue> |
| |
| <issue |
| id="DefaultLocale" |
| message="Implicitly using the default locale is a common source of bugs: Use `String.format(Locale, ...)` instead" |
| errorLine1=" return String.format("MNC %1$d", mCode);" |
| errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/resources/configuration/NetworkCodeQualifier.java" |
| line="159" |
| column="20"/> |
| </issue> |
| |
| <issue |
| id="DefaultLocale" |
| message="Implicitly using the default locale is a common source of bugs: Use `String.format(Locale, ...)` instead" |
| errorLine1=" String name = String.format("xmlns:ns%d", i++);" |
| errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/resources/NodeUtils.java" |
| line="252" |
| column="27"/> |
| </issue> |
| |
| <issue |
| id="DefaultLocale" |
| message="Implicitly using the default locale is a common source of bugs: Use `String.format(Locale, ...)` instead" |
| errorLine1=" mShortDisplayValue = String.format("%1$dx%2$d", value1, value2);" |
| errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/resources/configuration/ScreenDimensionQualifier.java" |
| line="54" |
| column="30"/> |
| </issue> |
| |
| <issue |
| id="DefaultLocale" |
| message="Implicitly using the default locale is a common source of bugs: Use `String.format(Locale, ...)` instead" |
| errorLine1=" return String.format(sPrintPattern, mValue);" |
| errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/resources/configuration/ScreenHeightQualifier.java" |
| line="139" |
| column="16"/> |
| </issue> |
| |
| <issue |
| id="DefaultLocale" |
| message="Implicitly using the default locale is a common source of bugs: Use `String.format(Locale, ...)` instead" |
| errorLine1=" return String.format(sPrintPattern, mValue);" |
| errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/resources/configuration/ScreenWidthQualifier.java" |
| line="141" |
| column="16"/> |
| </issue> |
| |
| <issue |
| id="DefaultLocale" |
| message="Implicitly using the default locale is a common source of bugs: Use `String.format(Locale, ...)` instead" |
| errorLine1=" return String.format(sPrintPattern, mValue);" |
| errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/resources/configuration/SmallestScreenWidthQualifier.java" |
| line="141" |
| column="16"/> |
| </issue> |
| |
| <issue |
| id="VisibleForTests" |
| message="This class should only be accessed from tests or within private scope" |
| errorLine1="public class Aapt2ErrorNoPathParser extends AbstractAaptOutputParser {" |
| errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/blame/parser/aapt/Aapt2ErrorNoPathParser.java" |
| line="29" |
| column="45"/> |
| </issue> |
| |
| <issue |
| id="VisibleForTests" |
| message="This method should only be accessed from tests or within private scope" |
| errorLine1=" Message msg = createMessage(Message.Kind.ERROR, msgText, null, null, "", logger);" |
| errorLine2=" ~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/blame/parser/aapt/Aapt2ErrorNoPathParser.java" |
| line="52" |
| column="23"/> |
| </issue> |
| |
| <issue |
| id="VisibleForTests" |
| message="This method should only be accessed from tests or within private scope" |
| errorLine1=" createMessage(" |
| errorLine2=" ~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/blame/parser/aapt/Aapt2ErrorParser.kt" |
| line="132" |
| column="17"/> |
| </issue> |
| |
| <issue |
| id="VisibleForTests" |
| message="This class should only be accessed from tests or within private scope" |
| errorLine1=" private final AbstractAaptOutputParser[] parsers;" |
| errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/blame/parser/aapt/Aapt2OutputParser.java" |
| line="31" |
| column="19"/> |
| </issue> |
| |
| <issue |
| id="VisibleForTests" |
| message="This class should only be accessed from tests or within private scope" |
| errorLine1=" private static final AbstractAaptOutputParser[] PARSERS = {" |
| errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/blame/parser/aapt/AaptOutputParser.java" |
| line="31" |
| column="26"/> |
| </issue> |
| |
| <issue |
| id="VisibleForTests" |
| message="This class should only be accessed from tests or within private scope" |
| errorLine1="class BadXmlBlockParser extends AbstractAaptOutputParser {" |
| errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/blame/parser/aapt/BadXmlBlockParser.java" |
| line="28" |
| column="33"/> |
| </issue> |
| |
| <issue |
| id="VisibleForTests" |
| message="This class should only be accessed from tests or within private scope" |
| errorLine1="class Error1Parser extends AbstractAaptOutputParser {" |
| errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/blame/parser/aapt/Error1Parser.java" |
| line="29" |
| column="28"/> |
| </issue> |
| |
| <issue |
| id="VisibleForTests" |
| message="This method should only be accessed from tests or within private scope" |
| errorLine1=" m = getNextLineMatcher(reader, MSG_PATTERNS.get(1));" |
| errorLine2=" ~~~~~~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/blame/parser/aapt/Error1Parser.java" |
| line="53" |
| column="13"/> |
| </issue> |
| |
| <issue |
| id="VisibleForTests" |
| message="This method should only be accessed from tests or within private scope" |
| errorLine1=" Message msg = createMessage(Message.Kind.ERROR, msgText, sourcePath," |
| errorLine2=" ~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/blame/parser/aapt/Error1Parser.java" |
| line="59" |
| column="23"/> |
| </issue> |
| |
| <issue |
| id="VisibleForTests" |
| message="This class should only be accessed from tests or within private scope" |
| errorLine1="class Error2Parser extends AbstractAaptOutputParser {" |
| errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/blame/parser/aapt/Error2Parser.java" |
| line="29" |
| column="28"/> |
| </issue> |
| |
| <issue |
| id="VisibleForTests" |
| message="This method should only be accessed from tests or within private scope" |
| errorLine1=" m = getNextLineMatcher(reader, MSG_PATTERNS.get(1));" |
| errorLine2=" ~~~~~~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/blame/parser/aapt/Error2Parser.java" |
| line="51" |
| column="13"/> |
| </issue> |
| |
| <issue |
| id="VisibleForTests" |
| message="This method should only be accessed from tests or within private scope" |
| errorLine1=" Message msg = createMessage(Message.Kind.ERROR, msgText, sourcePath," |
| errorLine2=" ~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/blame/parser/aapt/Error2Parser.java" |
| line="58" |
| column="23"/> |
| </issue> |
| |
| <issue |
| id="VisibleForTests" |
| message="This class should only be accessed from tests or within private scope" |
| errorLine1="class Error3Parser extends AbstractAaptOutputParser {" |
| errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/blame/parser/aapt/Error3Parser.java" |
| line="28" |
| column="28"/> |
| </issue> |
| |
| <issue |
| id="VisibleForTests" |
| message="This method should only be accessed from tests or within private scope" |
| errorLine1=" Message msg = createMessage(Message.Kind.ERROR, msgText, sourcePath," |
| errorLine2=" ~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/blame/parser/aapt/Error3Parser.java" |
| line="49" |
| column="23"/> |
| </issue> |
| |
| <issue |
| id="VisibleForTests" |
| message="This class should only be accessed from tests or within private scope" |
| errorLine1="class Error4Parser extends AbstractAaptOutputParser {" |
| errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/blame/parser/aapt/Error4Parser.java" |
| line="29" |
| column="28"/> |
| </issue> |
| |
| <issue |
| id="VisibleForTests" |
| message="This method should only be accessed from tests or within private scope" |
| errorLine1=" m = getNextLineMatcher(reader, MSG_PATTERNS.get(1));" |
| errorLine2=" ~~~~~~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/blame/parser/aapt/Error4Parser.java" |
| line="51" |
| column="13"/> |
| </issue> |
| |
| <issue |
| id="VisibleForTests" |
| message="This method should only be accessed from tests or within private scope" |
| errorLine1=" Message msg = createMessage(Message.Kind.ERROR, msgText, sourcePath," |
| errorLine2=" ~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/blame/parser/aapt/Error4Parser.java" |
| line="58" |
| column="23"/> |
| </issue> |
| |
| <issue |
| id="VisibleForTests" |
| message="This class should only be accessed from tests or within private scope" |
| errorLine1="class Error5Parser extends AbstractAaptOutputParser {" |
| errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/blame/parser/aapt/Error5Parser.java" |
| line="30" |
| column="28"/> |
| </issue> |
| |
| <issue |
| id="VisibleForTests" |
| message="This method should only be accessed from tests or within private scope" |
| errorLine1=" Message msg = createMessage(kind, msgText, sourcePath, lineNumber, "", logger);" |
| errorLine2=" ~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/blame/parser/aapt/Error5Parser.java" |
| line="63" |
| column="31"/> |
| </issue> |
| |
| <issue |
| id="VisibleForTests" |
| message="This class should only be accessed from tests or within private scope" |
| errorLine1="class Error6Parser extends AbstractAaptOutputParser {" |
| errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/blame/parser/aapt/Error6Parser.java" |
| line="29" |
| column="28"/> |
| </issue> |
| |
| <issue |
| id="VisibleForTests" |
| message="This method should only be accessed from tests or within private scope" |
| errorLine1=" Message msg = createMessage(Message.Kind.ERROR, msgText, sourcePath," |
| errorLine2=" ~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/blame/parser/aapt/Error6Parser.java" |
| line="61" |
| column="23"/> |
| </issue> |
| |
| <issue |
| id="VisibleForTests" |
| message="This class should only be accessed from tests or within private scope" |
| errorLine1="class Error7Parser extends AbstractAaptOutputParser {" |
| errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/blame/parser/aapt/Error7Parser.java" |
| line="28" |
| column="28"/> |
| </issue> |
| |
| <issue |
| id="VisibleForTests" |
| message="This method should only be accessed from tests or within private scope" |
| errorLine1=" Message msg = createMessage(Message.Kind.ERROR, text, sourcePath, null, "", logger);" |
| errorLine2=" ~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/blame/parser/aapt/Error7Parser.java" |
| line="42" |
| column="23"/> |
| </issue> |
| |
| <issue |
| id="VisibleForTests" |
| message="This class should only be accessed from tests or within private scope" |
| errorLine1="class Error8Parser extends AbstractAaptOutputParser {" |
| errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/blame/parser/aapt/Error8Parser.java" |
| line="28" |
| column="28"/> |
| </issue> |
| |
| <issue |
| id="VisibleForTests" |
| message="This method should only be accessed from tests or within private scope" |
| errorLine1=" Message msg = createMessage(Message.Kind.ERROR, msgText, null, null, "", logger);" |
| errorLine2=" ~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/blame/parser/aapt/Error8Parser.java" |
| line="52" |
| column="23"/> |
| </issue> |
| |
| <issue |
| id="VisibleForTests" |
| message="This class should only be accessed from tests or within private scope" |
| errorLine1="class SkippingHiddenFileParser extends AbstractAaptOutputParser {" |
| errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/blame/parser/aapt/SkippingHiddenFileParser.java" |
| line="28" |
| column="40"/> |
| </issue> |
| |
| <issue |
| id="VisibleForTests" |
| message="This class should only be accessed from tests or within private scope" |
| errorLine1="class SkippingWarning1Parser extends AbstractAaptOutputParser {" |
| errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/blame/parser/aapt/SkippingWarning1Parser.java" |
| line="28" |
| column="38"/> |
| </issue> |
| |
| <issue |
| id="VisibleForTests" |
| message="This method should only be accessed from tests or within private scope" |
| errorLine1=" Message msg = createMessage(Message.Kind.WARNING, line, sourcePath," |
| errorLine2=" ~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/blame/parser/aapt/SkippingWarning1Parser.java" |
| line="53" |
| column="23"/> |
| </issue> |
| |
| <issue |
| id="VisibleForTests" |
| message="This class should only be accessed from tests or within private scope" |
| errorLine1="class SkippingWarning2Parser extends AbstractAaptOutputParser {" |
| errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/blame/parser/aapt/SkippingWarning2Parser.java" |
| line="28" |
| column="38"/> |
| </issue> |
| |
| <issue |
| id="VisibleForTests" |
| message="This method should only be accessed from tests or within private scope" |
| errorLine1=" Message msg = createMessage(Message.Kind.WARNING, line, sourcePath," |
| errorLine2=" ~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/blame/parser/aapt/SkippingWarning2Parser.java" |
| line="49" |
| column="23"/> |
| </issue> |
| |
| <issue |
| id="VisibleForTests" |
| message="This class should only be accessed from tests or within private scope" |
| errorLine1="class Warning1Parser extends AbstractAaptOutputParser {" |
| errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/blame/parser/aapt/Warning1Parser.java" |
| line="28" |
| column="30"/> |
| </issue> |
| |
| <issue |
| id="VisibleForTests" |
| message="This method should only be accessed from tests or within private scope" |
| errorLine1=" Message msg = createMessage(Message.Kind.WARNING, msgText, sourcePath," |
| errorLine2=" ~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/blame/parser/aapt/Warning1Parser.java" |
| line="47" |
| column="23"/> |
| </issue> |
| |
| <issue |
| id="FileComparisons" |
| message="Do not compare java.io.File with `equals` or `==`: will not work correctly on case insensitive file systems! See `go/files-howto`." |
| errorLine1=" if (current.equals(stop)) {" |
| errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/resources/AssetItem.java" |
| line="58" |
| column="13"/> |
| </issue> |
| |
| <issue |
| id="FileComparisons" |
| message="Do not compare java.io.File with `equals` or `==`: will not work correctly on case insensitive file systems! See `go/files-howto`." |
| errorLine1=" while (parent != null && !parent.equals(sourceFolder)) {" |
| errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/resources/AssetSet.java" |
| line="77" |
| column="35"/> |
| </issue> |
| |
| <issue |
| id="FileComparisons" |
| message="Do not compare java.io.File with `equals` or `==`: will not work correctly on case insensitive file systems! See `go/files-howto`." |
| errorLine1=" return source.getFile().equals(otherSource.getFile());" |
| errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/resources/DataItem.java" |
| line="260" |
| column="16"/> |
| </issue> |
| |
| <issue |
| id="FileComparisons" |
| message="Do not compare java.io.File with `equals` or `==`: will not work correctly on case insensitive file systems! See `go/files-howto`." |
| errorLine1=" if (sourceFile.equals(file)) {" |
| errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/resources/DataSet.java" |
| line="193" |
| column="17"/> |
| </issue> |
| |
| <issue |
| id="FileComparisons" |
| message="Do not compare java.io.File with `equals` or `==`: will not work correctly on case insensitive file systems! See `go/files-howto`." |
| errorLine1=" if (sdkHome != newSdkHome) {" |
| errorLine2=" ~~~~~~~~~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/fonts/FontLoader.kt" |
| line="118" |
| column="17"/> |
| </issue> |
| |
| <issue |
| id="FileComparisons" |
| message="Do not compare java.io.File with `equals` or `==`: will not work correctly on case insensitive file systems! See `go/files-howto`." |
| errorLine1=" if (removedFile.equals(replacedFile)) {" |
| errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/resources/MergedResourceWriter.java" |
| line="439" |
| column="25"/> |
| </issue> |
| |
| <issue |
| id="FileComparisons" |
| message="Do not compare java.io.File with `equals` or `==`: will not work correctly on case insensitive file systems! See `go/files-howto`." |
| errorLine1=" return resFolder.getParentFile().equals(sourceFolder) &&" |
| errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/resources/ResourceSet.java" |
| line="303" |
| column="16"/> |
| </issue> |
| |
| <issue |
| id="CommonForkJoinPool" |
| message="Avoid using common ForkJoinPool, directly or indirectly (for example via CompletableFuture). It has a limited set of threads on some machines which leads to hangs. See `go/do-not-freeze`." |
| errorLine1=" return new WaitableExecutor(ForkJoinPool.commonPool(), false);" |
| errorLine2=" ~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/internal/WaitableExecutor.java" |
| line="74" |
| column="50"/> |
| </issue> |
| |
| <issue |
| id="NewForkJoinPool" |
| message="Avoid using new ForkJoinPool instances when possible. Prefer using the IntelliJ application pool via `com.intellij.openapi.application.Application#executeOnPooledThread`, or for the Android Gradle Plugin use `com.android.build.gradle.internal.tasks.Workers`. See `go/do-not-freeze`." |
| errorLine1=" return new WaitableExecutor(new ForkJoinPool(nThreads), true);" |
| errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/internal/WaitableExecutor.java" |
| line="87" |
| column="37"/> |
| </issue> |
| |
| <issue |
| id="NewForkJoinPool" |
| message="Avoid using new ForkJoinPool instances when possible. Prefer using the IntelliJ application pool via `com.intellij.openapi.application.Application#executeOnPooledThread`, or for the Android Gradle Plugin use `com.android.build.gradle.internal.tasks.Workers`. See `go/do-not-freeze`." |
| errorLine1=" return new WaitableExecutor(new ForkJoinPool(1), true);" |
| errorLine2=" ~~~~~~~~~~~~~~~~~~~"> |
| <location |
| file="src/main/java/com/android/ide/common/internal/WaitableExecutor.java" |
| line="100" |
| column="37"/> |
| </issue> |
| |
| </issues> |