Bug 1170804 - Add .eslintrc configuration file to mobile/android. r=margaret

eslint can be run by `cd`ing to mobile/android and running `eslint .` (assuming
eslint is installed). Note that .jsm files have not yet been configured.

Add an eslintignore to avoid the files that will take more work.

--HG--
extra : commitid : LcrYaNh2sSn
extra : rebase_source : 43a2b1988049003b1e225fa60671a04f62c3d44a
This commit is contained in:
Michael Comella 2015-06-24 22:37:55 -07:00
parent e5878ed965
commit 4deed539cd
2 changed files with 110 additions and 0 deletions

View File

@ -0,0 +1,9 @@
chrome/content
tests/
# Uses `#filter substitution`
app/mobile.js
# Not much JS to lint and non-standard at that
installer/
locales/

101
mobile/android/.eslintrc Normal file
View File

@ -0,0 +1,101 @@
env:
browser: true
es6: true
globals:
Components: false
# TODO: Create custom rule for `Cu.import`
AddonManager: false
AppConstants: false
Downloads: false
File: false
FileUtils: false
HelperApps: false
JNI: false
Messaging: false
OS: false
PrivateBrowsingUtils: false
Prompt: false
Services: false
Task: false
TelemetryStopwatch: false
UserAgentOverrides: 0
WebappManager: false
XPCOMUtils: false
dump: false
exports: false
importScripts: false
require: false
Iterator: false # TODO: Remove - deprecated!
rules:
global-strict: 0 # Overridden by "strict"
no-underscore-dangle: 0 # We allow trailing underscores in names.
# We disable everything to get all files to pass w/o updating them.
# We'll re-enable one by one.
camelcase: 0
comma-dangle: 0
consistent-return: 0
curly: 0
dot-notation: 0
eqeqeq: 0
key-spacing: 0
new-cap: 0
no-constant-condition: 0
no-extra-semi: 0
no-caller: 0
no-return-assign: 0
no-extra-bind: 0
no-empty: 0
no-multi-spaces: 0
no-loop-func: 0
no-new-object: 0
no-octal: 0
no-shadow: 0
no-trailing-spaces: 0
no-use-before-define: 0
no-unused-vars: 0
quotes: 0 # [2, "double"]
semi: 0
space-infix-ops: 0
space-unary-ops: 0 # 2: https://github.com/eslint/eslint/issues/2764
strict: 0
#"ecmaFeatures": {
# "forOf": true,
# "jsx": true,
#},
#"rules": {
# // turn off all kinds of stuff that we actually do want, because
# // right now, we're bootstrapping the linting infrastructure. We'll
# // want to audit these rules, and start turning them on and fixing the
# // problems they find, one at a time.
# // Eslint built-in rules are documented at <http://eslint.org/docs/rules/>
# "camelcase": 0, // TODO: Remove (use default)
# "consistent-return": 0, // TODO: Remove (use default)
# dot-location: 0, // [2, property],
# "eqeqeq": 0, // TBD. Might need to be separate for content & chrome
# "global-strict": 0, // Leave as zero (this will be unsupported in eslint 1.0.0)
# "linebreak-style": [2, "unix"],
# "new-cap": 0, // TODO: Remove (use default)
# "no-catch-shadow": 0, // TODO: Remove (use default)
# "no-console": 0, // Leave as 0. We use console logging in content code.
# "no-empty": 0, // TODO: Remove (use default)
# "no-extra-bind": 0, // Leave as 0
# "no-extra-boolean-cast": 0, // TODO: Remove (use default)
# "no-multi-spaces": 0, // TBD.
# "no-new": 0, // TODO: Remove (use default)
# "no-redeclare": 0, // TODO: Remove (use default)
# "no-return-assign": 0, // TODO: Remove (use default)
# "no-underscore-dangle": 0, // Leave as 0. Commonly used for private variables.
# "no-unneeded-ternary": 2,
# "no-unused-expressions": 0, // TODO: Remove (use default)
# "no-unused-vars": 0, // TODO: Remove (use default)
# "no-use-before-define": 0, // TODO: Remove (use default)
# "quotes": [2, "double", "avoid-escape"],
# "strict": 0, // [2, "function"],
#}