apriendeau/apachelog-stream

View on GitHub
.jshintrc

Summary

Maintainability
Test Coverage
{
  "asi"           : true, // true: Tolerate Automatic Semicolon Insertion (no semicolons)
  "camelcase"     : false,    // true: Identifiers must be in camelCase
  "curly"         : false,    // true: Require {} for every new block or scope
  "eqeqeq"        : true,     // true: Require triple equals (===) for comparison
  "forin"         : true,     // true: Require filtering for..in loops with obj.hasOwnProperty()
  "immed"         : true,     // true: Require immediate invocations to be wrapped in parens e.g. `(function() { } ());`
  "indent"        : 2,        // {int} Number of spaces to use for indentation
  "latedef"       : false,    // true: Require variables/functions to be defined before being used
  "newcap"        : false,    // true: Require capitalization of all constructor functions e.g. `new F()`
  "noarg"         : true,     // true: Prohibit use of `arguments.caller` and `arguments.callee`
  "noempty"       : true,     // true: Prohibit use of empty blocks
  "nonew"         : false,    // true: Prohibit use of constructors for side-effects (without assignment)
  "plusplus"      : true,     // true: Prohibit use of `++` &
  "quotmark"      : "single", // Quotation mark consistency:
  "undef"         : true,     // true: Require all non-global variables to be declared (prevents global leaks)
  "unused"        : true,     // true: Require all defined variables be used
  "strict"        : false,    // true: Requires all functions run in ES5 Strict Mode
  "trailing"      : false,    // true: Prohibit trailing commas
  "maxparams"     : 3,        // {int} Max number of formal params allowed per function
  "maxdepth"      : 2,        // {int} Max depth of nested blocks (within functions)
  "maxstatements" : 12,       // {int} Max number statements per function
  "maxcomplexity" : 4,        // {int} Max cyclomatic complexity per function
  "maxlen"        : false,    // {int} Max number of characters per line

  // Relaxing
  "boss"          : true,     // true: Tolerate assignments where comparisons would be expected
  "debug"         : false,    // true: Allow debugger statements e.g. browser breakpoints.
  "eqnull"        : false,    // true: Tolerate use of `== null`
  "esnext"        : false,    // true: Allow ES.next (ES6) syntax (ex: `const`)
  "moz"           : false,    // true: Allow Mozilla specific syntax (extends and overrides esnext features)
                              // (ex: `for each`, multiple try/catch, function expression…)
  "evil"          : false,    // true: Tolerate use of `eval` and `new Function()`
  "expr"          : true,     // true: Tolerate `ExpressionStatement` as Programs (needed for statements like "expect(foo).to.be.true")
  "funcscope"     : false,    // true: Tolerate defining variables inside control statements"
  "globalstrict"  : false,    // true: Allow global "use strict" (also enables 'strict')
  "iterator"      : false,    // true: Tolerate using the `__iterator__` property
  "lastsemic"     : false,    // true: Tolerate omitting a semicolon for the last statement of a 1-line block
  "laxbreak"      : false,    // true: Tolerate possibly unsafe line breakings
  "laxcomma"      : false,    // true: Tolerate comma-first style coding
  "loopfunc"      : false,    // true: Tolerate functions being defined in loops
  "multistr"      : false,    // true: Tolerate multi-line strings
  "proto"         : true,     // true: Tolerate using the `__proto__` property
  "scripturl"     : false,    // true: Tolerate script-targeted URLs
  "smarttabs"     : false,    // true: Tolerate mixed tabs/spaces when used for alignment
  "shadow"        : false,    // true: Allows re-define variables later in code e.g. `var x=1; x=2;`
  "sub"           : false,    // true: Tolerate using `[]` notation when it can still be expressed in dot notation
  "supernew"      : false,    // true: Tolerate `new function () { ... };` and `new Object;`
  "validthis"     : true,     // true: Tolerate using this in a non-constructor function

  // environments
  "node"          : true,     // Node.js lol node is allowed

  // Legacy
  "nomen"         : false,    // true: Prohibit dangling `_` in variables
  "onevar"        : false,    // true: Allow only one `var` statement per function
  "passfail"      : false,    // true: Stop on first error
  "white"         : false,    // true: Check against strict whitespace and indentation rules

  // Custom Globals
  "globals": { // additional predefined global variables
    "describe": true,
    "it": true,
    "before": true,
    "beforeEach": true,
    "after": true,
    "afterEach": true,
    "$": true
  }
}