Status Update
Comments
uc...@google.com <uc...@google.com>
ga...@google.com <ga...@google.com>
sp...@google.com <sp...@google.com> #2
Lint options:
lintOptions {
lintConfig = file('lint.xml')
abortOnError true
xmlReport true
htmlReport true
checkDependencies true
}
Also, our project has custom lint rules. Failure happens with a dependency of 26.6.3 and 27.0.0.
Is any way to downgrade lint runner? This problem is keeping us from using AGP 4.0
pa...@gmail.com <pa...@gmail.com> #3
Attached slightly different stacktrace for the same problem.
Wonder if disabling some lint rules could help to "fix" this problem, as it is also blocking for us 4.0 AGP upgrade.
da...@gmail.com <da...@gmail.com> #4
Notes:
I suspect the exceptions are happening now because JetBrains recently changed an assert
statement into a hard failure (see
I.e., it's possible that Lint has been hitting this code path all along, and only now it is causing a problem.
This has been difficult to investigate so far because the failure is nondeterministic and also deep inside the Kotlin compiler. Plus, JetBrains seems to be hitting this code path occasionally too (hence why they changed the assert into a hard failure), so I'm not even sure whether Lint is implicated or not.
ts...@vewd.com <ts...@vewd.com> #5
It could also explain why not all lint rules were working from time to time (
Is any public issue created I could follow?
pa...@gmail.com <pa...@gmail.com> #6
Has anyone tried this with 4.1.0-beta2? We're using a more recent version of UAST and the Kotlin compiler there. It's not clear that it's fixed but -- there's a chance :-)
sp...@google.com <sp...@google.com> #7
I tried. The same error. I am wondering, is any way to know which lint checks cause failure? I have a few custom lint checks. Or, is any way downgrade compiler for lint checks?
Description
DESCRIBE THE ISSUE IN DETAIL:
It is possible to put
lint.xml
s in therootProject
and in every module individually. These will be considered together to set up configuration for each module. In the attach project the structure is:app
lint.xml
missing, will use../lint.xml
lib
lint.xml
exists, but empty (will be modified by step 6)lint.xml
exists, and suppresses the clear unused resources by pattern.STEPS TO REPRODUCE:
gradlew lint
:lib:lintDebug
telling us there's an unused resource called "unused" inlib/build/reports/lint-results-debug.html
gradlew lint
lib/lint.xml
and uncomment<ignore>
gradlew lint
Actual: Observe nothing was executed, everything up-to-date.
Expected: lint analysis re-executes and updates the HTML report with the findings based on the newly changed config file.
Bonus steps to prove that the uncommenting should have an effect:
gradlew clean lint --no-build-cache
Workaround
polyfill missing setup