env: browser: true globals: Components: false # TODO: Create custom rule for `Cu.import` AddonManager: false AppConstants: false Downloads: false File: false FileUtils: false HelperApps: true # TODO: Can be more specific here. JNI: true # TODO: Can be more specific here. LightweightThemeManager: false Messaging: false Notifications: false OS: false ParentalControls: false PrivateBrowsingUtils: false Prompt: false Services: false SharedPreferences: false strings: false Strings: false Task: false TelemetryStopwatch: false UITelemetry: false UserAgentOverrides: 0 WebappManager: false XPCOMUtils: false ctypes: false dump: false exports: false importScripts: false module: false require: false uuidgen: 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 comma-spacing: 0 consistent-return: 0 curly: 0 dot-notation: 0 eqeqeq: 0 key-spacing: 0 new-cap: 0 no-caller: 0 no-constant-condition: 0 no-empty: 0 no-extra-bind: 0 no-extra-semi: 0 no-loop-func: 0 no-multi-spaces: 0 no-new-object: 0 no-octal: 0 no-return-assign: 0 no-shadow: 0 no-trailing-spaces: 0 no-unused-vars: 0 no-use-before-define: 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 # "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"], #}