JavaScript Style Guidelines for OpenStack.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 

1055 lines
31 KiB

# For a detailed list of all options please see here:
# http://eslint.org/docs/configuring/
# By default, ESLint uses Espree as its parser.
parser: espree
# Most environment options are not explicitly enabled or disabled, only
# included here for completeness' sake. They are commented out, because the
# global updates.py script would otherwise override them during a global
# requirements synchronization.
#
# Individual projects should choose which platforms they deploy to.
env:
# browser global variables.
# browser: true
# Node.js global variables and Node.js-specific rules.
# node: true
# web workers global variables.
# worker: true
# defines require() and define() as global variables as per the amd spec.
# amd: true
# Adds all of the Jasmine testing global variables for version 1.3 and 2.0.
# jasmine: true
# phantomjs global variables.
# phantomjs: true
# jquery global variables.
# jquery: true
# prototypejs global variables.
# prototypejs: true
# shelljs global variables.
# shelljs: true
# meteor global variables.
# meteor: true
# OpenStack uses Jasmine, not Mocha.
# mocha: false
# Enables ES6 flags in ecmaFeatures.
# es6: false
# Below we activate and configure the linting rules for all javascript in
# OpenStack. These will be synchronized across all projects that make use of
# them.
rules:
#############################################################################
# Possible Errors
#############################################################################
# Prevent the assignment of a variable in a conditional.
# http://eslint.org/docs/rules/no-cond-assign
no-cond-assign: 2
# Do not permit the use of console logging statements.
# http://eslint.org/docs/rules/no-console
no-console: 2
# Do not permit if (true) or if(false)
# http://eslint.org/docs/rules/no-constant-condition
no-constant-condition: 2
# Do not permit ASCII 0-31 (control characters) in regular expressions.
# http://eslint.org/docs/rules/no-control-regex
no-control-regex: 2
# Do not permit debugger; statements.
# http://eslint.org/docs/rules/no-debugger
no-debugger: 2
# Do not permit duplicate argument names in function declaration.
# http://eslint.org/docs/rules/no-dupe-args
no-dupe-args: 2
# Do not permit duplicate keys in object declarations.
# http://eslint.org/docs/rules/no-dupe-keys
no-dupe-keys: 2
# Do not permit duplicate cases in switch statements.
# http://eslint.org/docs/rules/no-duplicate-case
no-duplicate-case: 2
# Do not require that all imports from a single module exist in a single
# import statement.
#http://eslint.org/docs/rules/no-duplicate-imports
no-duplicate-imports: 0
# Disallow empty regex character classes. (/[]/)
# http://eslint.org/docs/rules/no-empty-character-class
no-empty-character-class: 2
# Disallow empty block statements.
# http://eslint.org/docs/rules/no-empty
no-empty: 2
# Disallow assigning of the exception parameter in a catch block.
# http://eslint.org/docs/rules/no-ex-assign
no-ex-assign: 2
# Disallow the use of double negation (!!foo) if already in a boolean context
# http://eslint.org/docs/rules/no-extra-boolean-cast
no-extra-boolean-cast: 2
# Disallow extraneous parentheses around functions.
# http://eslint.org/docs/rules/no-extra-parens
no-extra-parens:
- 2
- "all"
# Disallow extraneous semicolons.
# http://eslint.org/docs/rules/no-extra-semi
no-extra-semi: 2
# Disallow overwriting functions written as function declarations
# http://eslint.org/docs/rules/no-func-assign
no-func-assign: 2
# Disallow function or variable declarations in nested blocks
# http://eslint.org/docs/rules/no-inner-declarations
no-inner-declarations: 2
# Disallow invalid regular expression strings in the RegExp constructor
# http://eslint.org/docs/rules/no-invalid-regexp
no-invalid-regexp: 2
# Disallow irregular whitespace outside of strings and comments
# http://eslint.org/docs/rules/no-irregular-whitespace
no-irregular-whitespace: 2
# Allow mixes of different operators without parantheses
# http://eslint.org/docs/rules/no-mixed-operators
no-mixed-operators: 0
# Disallow negation of the left operand of an in expression
# http://eslint.org/docs/rules/no-negated-in-lhs
no-negated-in-lhs: 2
# Disallow the use of object properties of the global object (Math and JSON) as functions
# http://eslint.org/docs/rules/no-obj-calls
no-obj-calls: 2
# Allow use of Object.prototypes builtins directly
# http://eslint.org/docs/rules/no-prototype-builtins
no-prototype-builtins: 0
# Disallow multiple spaces in a regular expression literal
# http://eslint.org/docs/rules/no-regex-spaces
no-regex-spaces: 2
# Disallow sparse arrays
# http://eslint.org/docs/rules/no-sparse-arrays
no-sparse-arrays: 2
# Disallow unreachable statements
# http://eslint.org/docs/rules/no-unreachable
no-unreachable: 2
# Re-allow return, throw, break, and continue statements inside finally blocks.
# http://eslint.org/docs/rules/no-unsafe-finally
no-unsafe-finally: 0
# Allow unnecessary computed property keys on objects
# http://eslint.org/docs/rules/no-useless-computed-key
no-useless-computed-key: 0
# Allow unnecessary escape usage
# http://eslint.org/docs/rules/no-useless-escape
no-useless-escape: 0
# Allow renaming import, export, and destructured assignments to the same name
# http://eslint.org/docs/rules/no-useless-rename
no-useless-rename: 0
# Disallow comparisons with the value NaN
# http://eslint.org/docs/rules/use-isnan
use-isnan: 2
# Ensure JSDoc comments are valid
# http://eslint.org/docs/rules/valid-jsdoc
valid-jsdoc: 2
# Ensure that the results of typeof are compared against a valid string
# http://eslint.org/docs/rules/valid-typeof
valid-typeof: 2
# Avoid code that looks like two expressions but is actually one
# http://eslint.org/docs/rules/no-unexpected-multiline
no-unexpected-multiline: 0
# Disallow space before function opening parenthesis
# http://eslint.org/docs/rules/space-before-function-paren
space-before-function-paren:
- 2
- "never"
#############################################################################
# Best Practices
#############################################################################
# Enforces getter/setter pairs in objects
# http://eslint.org/docs/rules/accessor-pairs
accessor-pairs: 2
# Enforces return statements in callbacks of array’s methods
# http://eslint.org/docs/rules/array-callback-return
array-callback-return: 0
# Treat var statements as if they were block scoped
# http://eslint.org/docs/rules/block-scoped-var
block-scoped-var: 2
# Specify the maximum cyclomatic complexity allowed in a program
# http://eslint.org/docs/rules/complexity
complexity:
- 1
- 10
# Require return statements to either always or never specify values
# http://eslint.org/docs/rules/consistent-return
consistent-return: 2
# Specify curly brace conventions for all control statements
# http://eslint.org/docs/rules/curly
curly: 2
# Require default case in switch statements
# http://eslint.org/docs/rules/default-case
default-case: 0
# encourages use of dot notation whenever possible
# http://eslint.org/docs/rules/dot-notation
dot-notation: 2
# Enforces consistent newlines before or after dots
# http://eslint.org/docs/rules/dot-location
dot-location: 0
# Require the use of === and !==
# http://eslint.org/docs/rules/eqeqeq
eqeqeq: 2
# Make sure for-in loops have an if statement
# http://eslint.org/docs/rules/guard-for-in
guard-for-in: 1
# Disallow the use of alert, confirm, and prompt
# http://eslint.org/docs/rules/no-alert
no-alert: 2
# Disallow use of arguments.caller or arguments.callee
# http://eslint.org/docs/rules/no-caller
no-caller: 2
# disallow lexical declarations in case clauses
# http://eslint.org/docs/rules/no-case-declarations
no-case-declarations: 2
# Disallow division operators explicitly at beginning of regular expression
# http://eslint.org/docs/rules/no-div-regex
no-div-regex: 2
# Disallow else after a return in an if
# http://eslint.org/docs/rules/no-else-return
no-else-return: 0
# Disallow use of empty functions
# http://eslint.org/docs/rules/no-empty-function
no-empty-function: 0
# disallow use of empty destructuring patterns
# http://eslint.org/docs/rules/no-empty-pattern
no-empty-pattern: 2
# Disallow comparisons to null without a type-checking operator
# http://eslint.org/docs/rules/no-eq-null
no-eq-null: 2
# Disallow use of eval()
# http://eslint.org/docs/rules/no-eval
no-eval: 2
# Disallow adding to native types
# http://eslint.org/docs/rules/no-extend-native
no-extend-native: 2
# Disallow unnecessary function binding
# http://eslint.org/docs/rules/no-extra-bind
no-extra-bind: 2
# disallow unnecessary labels
# http://eslint.org/docs/rules/no-extra-label
no-extra-label: 0
# Disallow fallthrough of case statements
# http://eslint.org/docs/rules/no-fallthrough
no-fallthrough: 2
# Disallow the use of leading or trailing decimal points in numeric literals
# http://eslint.org/docs/rules/no-floating-decimal
no-floating-decimal: 2
# disallow the type conversions with shorter notations
# http://eslint.org/docs/rules/no-implicit-coercion
no-implicit-coercion: 0
# disallow var and named functions in global scope
# http://eslint.org/docs/rules/no-implicit-globals
no-implicit-globals: 0
# Disallow use of eval()-like methods
# http://eslint.org/docs/rules/no-implied-eval
no-implied-eval: 2
# disallow this keywords outside of classes or class-like objects
# http://eslint.org/docs/rules/no-invalid-this
no-invalid-this: 0
# Disallow usage of __iterator__ property
# http://eslint.org/docs/rules/no-iterator
no-iterator: 2
# Disallow use of labeled statements
# http://eslint.org/docs/rules/no-labels
no-labels: 2
# Disallow unnecessary nested blocks
# http://eslint.org/docs/rules/no-lone-blocks
no-lone-blocks: 2
# Disallow creation of functions within loops
# http://eslint.org/docs/rules/no-loop-func
no-loop-func: 2
# disallow the use of magic numbers
# http://eslint.org/docs/rules/no-magic-numbers
no-magic-numbers: 0
# Disallow use of multiple spaces
# http://eslint.org/docs/rules/no-multi-spaces
no-multi-spaces: 2
# Disallow use of multiline strings
# http://eslint.org/docs/rules/no-multi-str
no-multi-str: 2
# Disallow reassignments of native objects
# http://eslint.org/docs/rules/no-native-reassign
no-native-reassign: 2
# Disallow use of new operator for Function object
# http://eslint.org/docs/rules/no-new-func
no-new-func: 2
# Disallows creating new instances of String,Number, and Boolean
# http://eslint.org/docs/rules/no-new-wrappers
no-new-wrappers: 2
# Disallow use of new operator when not part of the assignment or comparison
# http://eslint.org/docs/rules/no-new
no-new: 2
# Disallow use of octal escape sequences in string literals, such as var foo = "Copyright \251";
# http://eslint.org/docs/rules/no-octal-escape
no-octal-escape: 2
# Disallow use of octal literals
# http://eslint.org/docs/rules/no-octal
no-octal: 2
# Disallow reassignment of function parameters
# http://eslint.org/docs/rules/no-param-reassign
no-param-reassign: 0
# Disallow use of process.env
#
# Please consolidate all your env access to one single file, and apply
# by-line exceptions there.
#
# http://eslint.org/docs/rules/no-process-env
no-process-env: 2
# Disallow usage of __proto__ property
# http://eslint.org/docs/rules/no-proto
no-proto: 2
# Disallow declaring the same variable more than once
# http://eslint.org/docs/rules/no-redeclare
no-redeclare:
- 2
- builtinGlobals: true
# Disallow use of assignment in return statement
# http://eslint.org/docs/rules/no-return-assign
no-return-assign: 2
# Disallow use of javascript: urls.
# http://eslint.org/docs/rules/no-script-url
no-script-url: 2
# Disallow assignments where both sides are exactly the same
# http://eslint.org/docs/rules/no-self-assign
no-self-assign: 2
# Disallow comparisons where both sides are exactly the same
# http://eslint.org/docs/rules/no-self-compare
no-self-compare: 2
# Disallow use of comma operator
# http://eslint.org/docs/rules/no-sequences
no-sequences: 2
# Restrict what can be thrown as an exception
# http://eslint.org/docs/rules/no-throw-literal
no-throw-literal: 2
# disallow unmodified conditions of loops
# http://eslint.org/docs/rules/no-unmodified-loop-condition
no-unmodified-loop-condition: 2
# Disallow usage of expressions in statement position
# http://eslint.org/docs/rules/no-unused-expressions
no-unused-expressions: 2
# disallow unused labels
# http://eslint.org/docs/rules/no-unused-labels
no-unused-labels: 0
# disallow unnecessary .call() and .apply()
# http://eslint.org/docs/rules/no-useless-call
no-useless-call: 0
# disallow unnecessary concatenation of literals or template literals
# http://eslint.org/docs/rules/no-useless-concat
no-useless-concat: 0
# Disallow use of void operator
# http://eslint.org/docs/rules/no-void
no-void: 2
# Disallow usage of configurable warning terms in comments - e.g. TODO
# http://eslint.org/docs/rules/no-warning-comments
no-warning-comments:
- 1
- terms:
- "todo"
- "xxx"
- "fixme"
# Disallow use of the with statement
# http://eslint.org/docs/rules/no-with
no-with: 2
# Require use of the second argument for parseInt()
# http://eslint.org/docs/rules/radix
radix: 2
# Requires to declare all vars on top of their containing scope
#
# http://eslint.org/docs/rules/vars-on-top
vars-on-top: 0
# Require immediate function invocation to be wrapped in parentheses
# http://eslint.org/docs/rules/wrap-iife
wrap-iife:
- 2
- "any"
# Require or disallow Yoda conditions.
# http://eslint.org/docs/rules/yoda
yoda: 0
#############################################################################
# Strict Mode
#############################################################################
# controls location of Use Strict Directives
# http://eslint.org/docs/rules/strict
strict:
- 2
- "function"
#############################################################################
# Variable declaration rules
#############################################################################
# enforce or disallow variable initializations at definition
# http://eslint.org/docs/rules/init-declarations
init-declarations: 0
# Disallow the catch clause parameter name being the same as a variable in
# the outer scope
# http://eslint.org/docs/rules/no-catch-shadow
no-catch-shadow: 2
# Disallow deletion of variables
# http://eslint.org/docs/rules/no-delete-var
no-delete-var: 2
# Disallow labels that share a name with a variable
# http://eslint.org/docs/rules/no-label-var
no-label-var: 2
# restrict usage of specified global variables
# http://eslint.org/docs/rules/no-restricted-globals
no-restricted-globals: 0
# Disallow shadowing of names such as arguments
# http://eslint.org/docs/rules/no-shadow-restricted-names
no-shadow-restricted-names: 2
# Disallow declaration of variables already declared in the outer scope
# http://eslint.org/docs/rules/no-shadow
no-shadow: 0
# Disallow use of undefined when initializing variables
# http://eslint.org/docs/rules/no-undef-init
no-undef-init: 2
# Disallow use of undeclared variables unless mentioned in a /*global */ block
# http://eslint.org/docs/rules/no-undef
no-undef: 0
# Disallow use of undefined variable
# http://eslint.org/docs/rules/no-undefined
no-undefined: 0
# Disallow declaration of variables that are not used in the code
# http://eslint.org/docs/rules/no-unused-vars
no-unused-vars: 2
# Disallow use of variables before they are defined
# http://eslint.org/docs/rules/no-use-before-define
no-use-before-define:
- 2
- "nofunc"
#############################################################################
# Node.js rules
#############################################################################
# enforce return after a callback
# http://eslint.org/docs/rules/callback-return
callback-return: 2
# disallow require() outside of the top-level module scope
# http://eslint.org/docs/rules/global-require
global-require: 0
# Enforces error handling in callbacks
# http://eslint.org/docs/rules/handle-callback-err
handle-callback-err: 2
# Disallow mixing regular variable and require declarations
# http://eslint.org/docs/rules/no-mixed-requires
no-mixed-requires: 2
# Disallow use of new operator with the require function
# http://eslint.org/docs/rules/no-new-require
no-new-require: 2
# Disallow string concatenation with __dirname and __filename
# http://eslint.org/docs/rules/no-path-concat
no-path-concat: 2
# Disallow process.exit()
# http://eslint.org/docs/rules/no-process-exit
no-process-exit: 2
# Restrict usage of specified node modules
# http://eslint.org/docs/rules/no-restricted-modules
no-restricted-modules: 0
# Disallow use of synchronous methods
# http://eslint.org/docs/rules/no-sync
no-sync: 2
#############################################################################
# Stylistic Changes
#############################################################################
# enforce spacing inside array brackets
# http://eslint.org/docs/rules/array-bracket-spacing
array-bracket-spacing: 0
# disallow or enforce spaces inside of single line blocks
# http://eslint.org/docs/rules/block-spacing
block-spacing: 0
# Enforce one true brace style
# http://eslint.org/docs/rules/brace-style
brace-style:
- 2
- "1tbs"
- allowSingleLine: true
# Require camel case names
# http://eslint.org/docs/rules/camelcase
camelcase:
- 2
- properties: "never"
# Do not require or disallow trailing commas
# http://eslint.org/docs/rules/comma-dangle
comma-dangle: 0
# Enforce spacing before and after comma
# http://eslint.org/docs/rules/comma-spacing
comma-spacing: 0
# Enforce one true comma style
# http://eslint.org/docs/rules/comma-style
comma-style: 2
# require or disallow padding inside computed properties.
# http://eslint.org/docs/rules/computed-property-spacing
computed-property-spacing: 0
# Enforces consistent naming when capturing the current execution context
# http://eslint.org/docs/rules/consistent-this
consistent-this:
- 0
- "self"
# Enforce newline at the end of file, with no multiple empty lines
# http://eslint.org/docs/rules/eol-last
eol-last: 2
# Require function expressions to have a name
# http://eslint.org/docs/rules/func-names
func-names: 0
# Enforces use of function declarations or expressions
# http://eslint.org/docs/rules/func-style
func-style: 0
# blacklist certain identifiers to prevent them being used
# http://eslint.org/docs/rules/id-blacklist
id-blacklist: 0
# this option enforces minimum and maximum identifier lengths (variable names, property names...)
# http://eslint.org/docs/rules/id-length
id-length: 0
# require identifiers to match the provided regular expression
# http://eslint.org/docs/rules/id-match
id-match: 0
# This option sets a specific tab width for your code
# http://eslint.org/docs/rules/indent
indent:
- 2
- 2
- SwitchCase: 1
# specify whether double or single quotes should be used in JSX attributes
# http://eslint.org/docs/rules/jsx-quotes
jsx-quotes: 0
# Enforces spacing between keys and values in object literal properties
# http://eslint.org/docs/rules/key-spacing
key-spacing: 0
# enforce spacing before and after keywords
# http://eslint.org/docs/rules/keyword-spacing
keyword-spacing: 2
# Enforces empty lines around comments
# http://eslint.org/docs/rules/lines-around-comment
lines-around-comment: 0
# Disallow mixed 'LF' and 'CRLF' as linebreaks
# http://eslint.org/docs/rules/linebreak-style
linebreak-style:
- 2
- "unix"
# Do not enforce a maximum file length
# http://eslint.org/docs/rules/max-lines
max-lines: 0
# Specify the maximum depth callbacks can be nested
# http://eslint.org/docs/rules/max-nested-callbacks
max-nested-callbacks:
- 0
- 3
# Do not enforce a maximum number of statements allowed per line
#http://eslint.org/docs/rules/max-statements-per-line
max-statements-per-line: 0
# Require a capital letter for constructors
# http://eslint.org/docs/rules/new-cap
new-cap: 0
# Disallow the omission of parentheses when invoking a constructor
# http://eslint.org/docs/rules/new-parens
new-parens: 2
# allow/disallow an empty newline after var statement
# http://eslint.org/docs/rules/newline-after-var
newline-after-var: 0
# require newline before return statement
# http://eslint.org/docs/rules/newline-before-return
newline-before-return: 0
# enforce newline after each call when chaining the calls
# http://eslint.org/docs/rules/newline-per-chained-call
newline-per-chained-call: 0
# Disallow use of the Array constructor
# http://eslint.org/docs/rules/no-array-constructor
no-array-constructor: 0
# Disallow use of the continue statement
# http://eslint.org/docs/rules/no-continue
no-continue: 0
# Disallow comments inline after code
# http://eslint.org/docs/rules/no-inline-comments
no-inline-comments: 0
# disallow if as the only statement in an else block
# http://eslint.org/docs/rules/no-lonely-if
no-lonely-if: 0
# Disallow mixed spaces and tabs for indentation
# http://eslint.org/docs/rules/no-mixed-spaces-and-tabs
no-mixed-spaces-and-tabs: 2
# Disallow multiple empty lines
# http://eslint.org/docs/rules/no-multiple-empty-lines
no-multiple-empty-lines:
- 2
- max: 1
# Disallow negated conditions
# http://eslint.org/docs/rules/no-negated-condition
no-negated-condition: 0
# Disallow nested ternary expressions
# http://eslint.org/docs/rules/no-nested-ternary
no-nested-ternary: 0
# Disallow use of the Object constructor
# http://eslint.org/docs/rules/no-new-object
no-new-object: 1
# Disallow certain syntax (no-restricted-syntax)
# http://eslint.org/docs/rules/no-restricted-syntax
no-restricted-syntax: 0
# Disallow space between function identifier and application
# http://eslint.org/docs/rules/no-spaced-func
no-spaced-func: 0
# Disallow the use of ternary operators
# http://eslint.org/docs/rules/no-ternary
no-ternary: 0
# Disallow trailing whitespace at the end of lines
# http://eslint.org/docs/rules/no-trailing-spaces
no-trailing-spaces: 2
# Disallow dangling underscores in identifiers
# http://eslint.org/docs/rules/no-underscore-dangle
no-underscore-dangle: 0
# Disallow the use of Boolean literals in conditional expressions
# http://eslint.org/docs/rules/no-unneeded-ternary
no-unneeded-ternary: 2
# disallow whitespace before properties
# http://eslint.org/docs/rules/no-whitespace-before-property
no-whitespace-before-property: 0
# Do not enforce consistent line breaks inside braces
# http://eslint.org/docs/rules/object-curly-newline
object-curly-newline: 0
# Require or disallow padding inside curly braces
# http://eslint.org/docs/rules/object-curly-spacing
object-curly-spacing: 0
# Do not enforce placing object properties on separate lines
# http://eslint.org/docs/rules/object-property-newline
object-property-newline: 0
# Allow or disallow one variable declaration per function
# http://eslint.org/docs/rules/one-var
one-var:
- 2
- uninitialized: "always"
initialized: "never"
# require or disallow an newline around variable declarations
# http://eslint.org/docs/rules/one-var-declaration-per-line
one-var-declaration-per-line: 0
# Prevent assignment operator shorthand where possible
# http://eslint.org/docs/rules/operator-assignment
operator-assignment:
- 0
- "never"
# Enforce operators to be placed before or after line breaks
# http://eslint.org/docs/rules/operator-linebreak
operator-linebreak: 2
# Enforce padding within blocks
# http://eslint.org/docs/rules/padded-blocks
padded-blocks: 0
# Require quotes around object literal property names
# http://eslint.org/docs/rules/quote-props
quote-props:
- 2
- "as-needed"
# Specify whether backticks, double or single quotes should be used
# http://eslint.org/docs/rules/quotes
quotes: 0
# Require JSDoc comment
# http://eslint.org/docs/rules/require-jsdoc
require-jsdoc: 0
# Do not enforce spacing between rest and spread operators and their expressions
# http://eslint.org/docs/rules/rest-spread-spacing
rest-spread-spacing: 0
# Enforce spacing before and after semicolons
# http://eslint.org/docs/rules/semi-spacing
semi-spacing:
- 2
- before: false
after: true
# sort import declarations within module
# http://eslint.org/docs/rules/sort-imports
sort-imports: 0
# Require or disallow use of semicolons instead of ASI
# http://eslint.org/docs/rules/semi
semi:
- 2
- 'always'
# Sort variables within the same declaration block
# http://eslint.org/docs/rules/sort-vars
sort-vars: 0
# require or disallow space before blocks
# http://eslint.org/docs/rules/space-before-blocks
space-before-blocks:
- 2
- "always"
# require or disallow spaces inside parentheses
# http://eslint.org/docs/rules/space-in-parens
space-in-parens:
- 2
- "never"
# Require spaces around operators
# http://eslint.org/docs/rules/space-infix-ops
space-infix-ops: 2
# Require or disallow spaces before/after unary operators (words on by default, nonwords)
# http://eslint.org/docs/rules/space-unary-ops
space-unary-ops:
- 2
- words: true
nonwords: false
# require or disallow a space immediately following the // or /* in a comment
# http://eslint.org/docs/rules/spaced-comment
spaced-comment: 0
# Do not require or disallow the Unicode Byte Order Mark (BOM)
# http://eslint.org/docs/rules/unicode-bom
unicode-bom: 0
# require regex literals to be wrapped in parentheses
# http://eslint.org/docs/rules/wrap-regex
wrap-regex: 0
#############################################################################
# ECMAScript 6
#############################################################################
# require braces in arrow function body
# http://eslint.org/docs/rules/arrow-body-style
arrow-body-style: 0
# require parens in arrow function arguments
# http://eslint.org/docs/rules/arrow-parens
arrow-parens: 2
# require space before/after arrow function's arrow
# http://eslint.org/docs/rules/arrow-spacing
arrow-spacing: 2
# verify calls of super() in constructors
# http://eslint.org/docs/rules/constructor-super
constructor-super: 2
# enforce the spacing around the * in generator functions
# http://eslint.org/docs/rules/generator-star-spacing
generator-star-spacing: 0
# disallow modifying variables of class declarations
# http://eslint.org/docs/rules/no-class-assign
no-class-assign: 2
# disallow arrow functions where they could be confused with comparisons
# http://eslint.org/docs/rules/no-confusing-arrow
no-confusing-arrow: 0
# disallow modifying variables that are declared using const
# http://eslint.org/docs/rules/no-const-assign
no-const-assign: 2
# disallow duplicate name in class members
# http://eslint.org/docs/rules/no-dupe-class-members
no-dupe-class-members: 2
# disallow use of the new operator with the Symbol object
# http://eslint.org/docs/rules/no-new-symbol
no-new-symbol: 0
# restrict usage of specified modules when loaded by import declaration
# http://eslint.org/docs/rules/no-restricted-imports
no-restricted-imports: 0
# disallow use of this/super before calling super() in constructors
# http://eslint.org/docs/rules/no-this-before-super
no-this-before-super: 2
# disallow unnecessary constructor
# http://eslint.org/docs/rules/no-useless-constructor
no-useless-constructor: 0
# require let or const instead of var
# http://eslint.org/docs/rules/no-var
no-var: 0
# require method and property shorthand syntax for object literals
# http://eslint.org/docs/rules/object-shorthand
object-shorthand: 0
# suggest using arrow functions as callbacks
# http://eslint.org/docs/rules/prefer-arrow-callback
prefer-arrow-callback: 0
# suggest using of const declaration for variables that are never modified after declared
# http://eslint.org/docs/rules/prefer-const
prefer-const: 0
# suggest using the spread operator instead of .apply().
# http://eslint.org/docs/rules/prefer-spread
prefer-spread: 0
# suggest using Reflect methods where applicable
# http://eslint.org/docs/rules/prefer-reflect
prefer-reflect: 0
# suggest using the rest parameters instead of arguments
# http://eslint.org/docs/rules/prefer-rest-params
prefer-rest-params: 0
# suggest using template literals instead of strings concatenation
# http://eslint.org/docs/rules/prefer-template
prefer-template: 0
# disallow generator functions that do not have yield
# http://eslint.org/docs/rules/require-yield
require-yield: 0
# enforce spacing around embedded expressions of template strings
# http://eslint.org/docs/rules/template-curly-spacing
template-curly-spacing: 0
# enforce spacing around the * in yield* expressions
# http://eslint.org/docs/rules/yield-star-spacing
yield-star-spacing: 0
#############################################################################
# Legacy
#############################################################################
# specify the maximum depth that blocks can be nested
# http://eslint.org/docs/rules/max-depth
max-depth: 0
# specify the maximum length of a line in your program
# http://eslint.org/docs/rules/max-len
max-len:
- 2
- 100
- 2
# Limits the number of parameters that can be used in function declaration.
# http://eslint.org/docs/rules/max-params
max-params: 0
# Specify the maximum number of statements allowed in a function
# http://eslint.org/docs/rules/max-statements
max-statements: 0
# Disallow use of bitwise operators
# http://eslint.org/docs/rules/no-bitwise
no-bitwise: 0
# Disallow use of unary operators, ++ and --
# http://eslint.org/docs/rules/no-plusplus
no-plusplus: 0
# Parser options are used to specify language-level options which you want to
# supprt. The defaults enable ECMAScript 5, which may be overridden on a per
# project basis. Please enable these settings to meet the needs of your own
# project.
#
parserOptions:
# The ECMAScript version. Supported values are: 3, 5, 6, 7.
# ecmaVersion: 5
# Set sourceType to "module" if your project uses ES6 modules.
# sourceType: script
ecmaFeatures:
# Permit return statements in the global scope.
globalReturn: false
# Enable global strict mode (if ecmaVersion is 5 or greater)
impliedStrict: false
# Enable JSX
jsx: false
# Enable support for the experimental object rest/spread properties
experimentalObjectRestSpread: false