Mobile/Fennec/Android/Static analysis
Jump to navigation
Jump to search
Android Lint
Catches various errors & optimizations specifically related to Android code and resources
./mach gradle app:lint
Notes:
- example checks? `lint --show`
- in automation? TBPL tier 2 "unit" job
- config? mobile/android/app/lint.xml
- open issues? Run locally for a complete list.
- meta bug? meta bug
- If you fix all issues for a warning, modify lint.xml to change your warning into an error!
Facebook Infer
Currently detects NullPointerExceptions and resource leaks in Android applications.
It's currently unknown how to run locally.
- in automation? updated daily – planned move to Task Cluster
- config? N/A
- open issues? See the automation link
- meta bug? meta bug
checkstyle
Checks code style
./mach gradle app:checkstyle
- example checks? Google's style guide
- in automation? In progress
- config? mobile/android/app/checkstyle.xml
- open issues? Issues we care about are blocking the meta
- meta bug? meta bug
eslint
Checks for Javascript errors (e.g. syntax errors, almost like a compiled language! :D)
./mach eslint --setup # run once, or if the command breaks for some reason ./mach eslint mobile/android
- example checks? http://eslint.org/docs/rules/
- in automation? Treeherder tier 1 "ES" job
- config? mobile/*.eslintrc & root .eslintignore
- open issues? Open a .eslintrc and enable checks.
- meta bug? meta bug
- If you fix all issues for a warning, modify the appropriate .eslintrc to change your warning into an error!